Mercurial 6.6.3
- tests: don't use "status" operand of dd in test-censor.t (issue6858)
- tests: make sha256line.py available for all tests
- tests: use sha256line.py instead of /dev/random in test-censor.t (issue6858)
- tests: fix nondeterministic test failure in test-contrib-perf.t
- rust-changelog: don't panic on empty file lists
- grep: restore usage of --include/--exclude options
Mercurial 6.6.2
- histedit: remove superfluous echo() and endwin() calls (issue6859)
- persistent-nodemap: avoid writing nodemap for empty revlog
- persistent-nodemap: respect the mmap setting when refreshing data
- bundle: do not detect --base argument that match nothing as lack of argument
- narrow: prevent removal of ACL-defined excludes
- pycompat: fix bytestr(bytes) in Python 3.11
Mercurial 6.6.1
The first two patches fix aborted transactions that could happen since 6.6.
- revlog: avoid exposing delayed index entry too widely in non-inline revlog
- revlog: avoid wrongly updating the data file location on "divert"
- tests: do not fail tests in a state with uncommitted .py file removal
- perf-tags: fix the --clear-fnode-cache-rev code
- perf-tags: fix clear_cache_fnodes to actually clear that cache
- censor: fix things around inlining
- Various Python 3 cleanups
- Various Windows test suite fixes
Mercurial 6.6
As usual, a *lot* of patches don't make it to this list.
New Features
- rust-config: add support for default config items
- rhg: add config defaults to configitems.toml
- rhg: support "status FILE"
- rhg: support rhg files [FILE]
- commands: add admin namespace
- admin-command: add verify command
- debug-delta-chain: add options to control what we compute
- Added some caching for uncompressed revlog chunks that speed up some operations
New Experimental Features
Bug Fixes
- Improve OpenVMS support
- byteify-strings: passe sysstr to attr function and wrapper
- journal: track bookmark deletion
- transaction: actually delete file created during the transaction on rollback
- pull: avoid referencing a variable before it is initialized
rust-filepatterns: also normalize RelPath
- narrow: hoist a variable to a higher level to avoid use-before-init warning
- convert: stabilize subversion date sorter
- run-tests: detect HGWITHRUSTEXT value
- censor: accept censored revision during upgrade
rust-matchers: fix quadratic complexity in FileMatcher
- unstable: do not consider internal phases when computing unstable
Still a whole bunch of Python 2 -> 3 migration leftovers
Backwards Compatibility Changes
- perf: display all timing by default
- infinitepush: drop the extension
- debug-delta-chain: print less data by default
Internal API Changes
- The revlog interface has been significantly cleaned up.
configitems: add documentation field
- configitems: declare items in a TOML file
- configitems: move blackbox's config items to the new configitems.toml
- path-suboption: deprecated specifying the attributes as bytes
- pycompat: deprecate using bytes
check-code: drop the safehasattr rule
- safehasattr: drop usage in favor of hasattr
rust: add UncheckedRevision type
rust: implement the Graph trait for all revlogs
rust: make Revision a newtype
- perf: change the way we approach revlog reading
perf: ensure all readlog's reading is done within a reading context
- delta-chain: move the debugdeltachain command in revlogutils