File: 5.9

package info (click to toggle)
mercurial 7.2-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 46,124 kB
  • sloc: python: 214,491; ansic: 56,606; tcl: 3,715; sh: 1,879; lisp: 1,483; cpp: 864; makefile: 792; javascript: 649; xml: 36
file content (83 lines) | stat: -rw-r--r-- 3,277 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# Mercurial 5.9 (2021-08-16)

## New Features 

- `hg config` now has a `--source` option to show where each
   configuration value comes from.
- Introduced a command (debug-repair-issue6528) to repair repositories affected
   by issue6528 where certain files would show up as modified even if they were
   clean due to an issue in the copy-tracing code.

## New Experimental Features 

- A `changelogv2` format has been introduced. It is not ready for use yet, but
   will be used later to address some of the weaknesses of the current revlog
   format.
- Initial experiment and support for `dirstatev2`, a new dirstate format that
   addresses some of the weaknesses of the current dirstate format. Python + C
   and Rust support are being implemented, but the Rust solution is the one
   currently getting the attention for performance.
- Initial support for `rhg status`. `rhg` is the Rust wrapper executable for hg
   that shortcuts some commands for faster execution speed.

## Bug Fixes 

- Fixed committing empty files with `narrow`
- Allow overriding `pip`'s pep517 compliance to build C or Rust extensions
- Fixed regression on outgoing email when not specifying revisions
- Fixed a regression causing bookmarks to disappear when using Rust persistent nodemap
- Fixed a regression (in 5.9.1) introduced in 5.9 when cloning repos with
   deep filenames
- Fixed detection of directories becoming symlinks, but only when using the
   Rust extensions.
- Fixed ignore and include not composing in the Rust status
- `hg commit --interactive` now handles deselecting edits of a rename
- Fixed a case where `hg evolve` gives different results when interrupted
- Fixed a memory leak in phases computation
- `histedit` and `shelve` don't swallow errors when updating the working copy
   anymore
- Improve error message when detecting content-divergence with a hidden
   common predecessor
- No longer re-order parents in filelog, see issue6533
- Fix revisions affected by issue6533 on the fly during exchange
- Many Windows fixes for stability and py3 compatibility improvements
- Many other miscellaneous fixes

## Backwards Compatibility Changes 


## Internal API Changes 

The Dirstate API have been updated as the previous function leaked some
internal details and did not distinguish between two important cases: "We are
changing parent and need to adjust the dirstate" and "some command is changing
which file is tracked". To clarify the situation:

- the following functions have been deprecated,
 - `dirstate.add`,
 - `dirstate.normal`,
 - `dirstate.normallookup`,
 - `dirstate.merge`,
 - `dirstate.otherparent`,
 - `dirstate.remove`,
 - `dirstate.drop`,
 - `dirstateitem.__getitem__`,

- these new functions are added for the "adjusting parents" use-case:
 - `dirstate.update_file`,
 - `dirstate.update_file_p1`,

- these new function are added for the "adjusting wc file" use-case":
 - `dirstate.set_tracked`,
 - `dirstate.set_untracked`,
 - `dirstate.set_clean`,
 - `dirstate.set_possibly_dirty`,

See inline documentation of the new functions for details.

- Additionally, the following have been deprecated:
 - `urlutil.getpath` function
 - `localrepository.updatecaches`' `full` argument

- The following have been removed:
 - `revlog.revlogio` has been removed