parent
0b75ef5168
commit
48bbf81c29
|
|
@ -43,6 +43,11 @@ UI, Workflows & Features
|
|||
output has been optimized to reserve a column for marks (caret,
|
||||
question mark, or asterisk) only when such marks are actually shown.
|
||||
|
||||
* Option parsing with 'git rev-parse --parseopt' and in most 'git'
|
||||
subcommands has been updated to exit with 0 (instead of 129) when the
|
||||
help option ('-h' or '--help') is requested directly by the user,
|
||||
aligning with standard Unix convention.
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
--------------------------------------------------------------
|
||||
|
|
@ -108,6 +113,56 @@ Performance, Internal Implementation, Development Support etc.
|
|||
the generated header file 'hook-list.h' is built before compiling
|
||||
files in 'builtin_sources' that depend on it.
|
||||
|
||||
* The repository discovery and repository configuration phases, which
|
||||
were previously intertwined in 'setup.c', have been split. Repository
|
||||
discovery has been updated to populate a 'struct repo_discovery'
|
||||
without modifying the repository state, which is then taken by
|
||||
repository configuration to initialize the repository, paving the way
|
||||
for clean unification of repository configuration.
|
||||
|
||||
* The 'SubmittingPatches' document has been updated to explicitly
|
||||
describe the expectation for contributors to retract or abandon their
|
||||
patch series when they are no longer pursuing it.
|
||||
|
||||
* The contributor guide has been updated to advise new contributors to
|
||||
trim irrelevant quoted text when replying to review comments, matching
|
||||
the existing advice given to reviewers.
|
||||
|
||||
* The build system has been updated to support building universal macOS
|
||||
binaries when 'Rust' is enabled, by compiling separate static archives
|
||||
for each target triple listed in 'RUST_TARGETS' and combining them
|
||||
using the macOS 'lipo' tool. The 'git-credential-osxkeychain' helper
|
||||
has been updated to link against '$(RUST_LIB)' when 'Rust' is enabled.
|
||||
|
||||
* The test suite has been updated to use the 'test_grep' helper instead
|
||||
of bare 'grep' for test assertions, allowing file contents to be
|
||||
printed on failure for easier debugging. A new 'greplint' linter has
|
||||
been introduced to detect and prevent new bare 'grep' assertions from
|
||||
being added to the test suite.
|
||||
|
||||
* The pipelines in 't1410-reflog.sh' have been replaced with the
|
||||
'test_stdout_line_count' helper to avoid suppressing the exit code of
|
||||
'git' commands, ensuring failures are not hidden from the test suite.
|
||||
|
||||
* The cache-scanning loop in 'next_cache_entry()' has been optimized
|
||||
to avoid rescanning already-unpacked index entries, preventing a
|
||||
quadratic performance slow-down when diffing the working tree
|
||||
against a commit with a pathspec matching early index entries.
|
||||
|
||||
* The global configuration variable 'ignore_case' (representing the
|
||||
'core.ignorecase' configuration) has been migrated into 'struct
|
||||
repo_config_values' to tie it to a specific repository instance.
|
||||
|
||||
* The performance of ref updates and reads using the 'reftable' backend
|
||||
in the presence of many deletion tombstone records has been optimized
|
||||
by removing the tombstone suppression flag from the merged iterator
|
||||
and instead skipping tombstones at higher-level call sites where
|
||||
iteration bounds are known.
|
||||
|
||||
* Various code paths have been hardened against potential NULL-pointer
|
||||
dereferences and invalid file descriptor accesses flagged by
|
||||
Coverity.
|
||||
|
||||
|
||||
Fixes since v2.55
|
||||
-----------------
|
||||
|
|
@ -215,3 +270,31 @@ Fixes since v2.55
|
|||
escape sequences that use colon-separated subfields (e.g., for
|
||||
256-color or true-color codes).
|
||||
(merge 3792b2aea4 mm/sideband-ansi-sgr-colon-fix later to maint).
|
||||
|
||||
* The 'reftable' code has been hardened against corrupted tables by
|
||||
fixing out-of-bounds writes, out-of-bounds reads, and abort calls
|
||||
during parsing.
|
||||
(merge ca93c27328 ps/reftable-hardening later to maint).
|
||||
|
||||
* A description in the release notes for Git 2.55.0 has been
|
||||
retroactively updated to clarify that Rust support is enabled by
|
||||
default, but still optional, and will become mandatory in Git 3.0.
|
||||
(merge 18b2009d14 jc/relnotes-2.55-rust-fix later to maint).
|
||||
|
||||
* The early-exit optimization in 'paint_down_to_common()' has been
|
||||
gated on the queue being generation-ordered, fixing a bug where
|
||||
'git merge-base' (without '--all') could return incorrect results
|
||||
on repositories with v1 commit graphs and clock skew.
|
||||
(merge ae68032a8d kk/commit-reach-find-all-fix later to maint).
|
||||
|
||||
* The client-side parser of the server-advertised bundle-URI list has
|
||||
been updated to drain the remaining response in order to avoid
|
||||
protocol desynchronization when the server sends a misconfigured list.
|
||||
Also, the server-side has been taught to omit empty configuration
|
||||
values instead of sending invalid key-value lines.
|
||||
(merge 50de1169e4 tc/bundle-uri-empty-fix later to maint).
|
||||
|
||||
* The 'topo_levels' slab was propagated only to the topmost layer of a
|
||||
split commit-graph chain, causing topological levels for commits in
|
||||
base layers to be recomputed during incremental writes. This has been
|
||||
corrected.
|
||||
|
|
|
|||
Loading…
Reference in New Issue