Mercurial > hg
annotate relnotes/next @ 42574:d28d91f9f35a
py3: don't run source transformer on hgext3rd (extensions)
It's unclear why the source transformer runs on hgext3rd. It's been
like that since it was introduced in 1c22400db72d (mercurial:
implement a source transforming module loader on Python 3,
2016-07-04), and that commit didn't say anything about it (but it says
that it doesn't have "support [...] for extensions").
I find that the current handling of hgext3rd just makes it harder to
convert extensions to Python 3. It makes you convert a bunch of
strings passed to getattr() and kwargs[] to r'' that could otherwise
have been left alone. It's also really confusing that the source
transformer runs when you import the extension as "extensions.foo=",
but not as "extension.foo=/some/path".
I suppose there is small number of (very simple) extensions that would
have worked without this patch that would now be broken. It seems okay
to me to break those.
Differential Revision: https://phab.mercurial-scm.org/D6614
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Sun, 07 Jul 2019 23:04:55 -0700 |
parents | 4cafbd3b50c6 |
children | 9f73620a65fe |
rev | line source |
---|---|
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
1 == New Features == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
2 |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
3 * New config `commands.commit.post-status` shows status after successful |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
4 commit. |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
5 |
42498
089f14dd7df3
relnotes: document template support for `hg root`
Martin von Zweigbergk <martinvonz@google.com>
parents:
42405
diff
changeset
|
6 * `hg root` now has templating support, including support for showing |
089f14dd7df3
relnotes: document template support for `hg root`
Martin von Zweigbergk <martinvonz@google.com>
parents:
42405
diff
changeset
|
7 where a repo share's source is. See `hg help -v root` for details. |
089f14dd7df3
relnotes: document template support for `hg root`
Martin von Zweigbergk <martinvonz@google.com>
parents:
42405
diff
changeset
|
8 |
42552
4cafbd3b50c6
relnotes: document the new --force-close-branch flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
42541
diff
changeset
|
9 * New `--force-close-branch` flag for `hg commit` to forcibly close |
4cafbd3b50c6
relnotes: document the new --force-close-branch flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
42541
diff
changeset
|
10 branch from a non-head changeset. |
4cafbd3b50c6
relnotes: document the new --force-close-branch flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
42541
diff
changeset
|
11 |
42309
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
12 |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
13 == New Experimental Features == |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
14 |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
15 * New config `experimental.log.topo` makes `hg log -G` use |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
16 topological sorting. This is especially useful for aliases since it |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
17 lets the alias accept an `-r` option while still using topological |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
18 sorting with or without the `-r` (unlike if you use the `sort(..., |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
19 topo)` revset). |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
20 |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
21 |
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
22 == Bug Fixes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
23 |
42405
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
24 * issue4292: "hg log and {files} {file_adds} {file_mods} {file_dels} |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
25 in template show wrong files on merged revision". See details in |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
26 "Backwards Compatibility Changes". |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
27 |
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
28 |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
29 == Backwards Compatibility Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
30 |
42334
bcb1a2b6cd00
relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents:
42309
diff
changeset
|
31 * Removed (experimental) support for log graph lines mixing |
bcb1a2b6cd00
relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents:
42309
diff
changeset
|
32 parent/grandparent styles. Setting |
bcb1a2b6cd00
relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents:
42309
diff
changeset
|
33 e.g. `experimental.graphstyle.parent = !` and |
bcb1a2b6cd00
relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents:
42309
diff
changeset
|
34 `experimental.graphstyle.grandparent = 3.` would use `!` for the |
bcb1a2b6cd00
relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents:
42309
diff
changeset
|
35 first three lines of the graph and then `.`. This is no longer |
bcb1a2b6cd00
relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents:
42309
diff
changeset
|
36 supported. |
bcb1a2b6cd00
relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents:
42309
diff
changeset
|
37 |
42372
ba6ca4e80607
relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents:
42343
diff
changeset
|
38 * If `ui.origbackuppath` had been (incorrectly) configured to point |
ba6ca4e80607
relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents:
42343
diff
changeset
|
39 to a file, we will now replace that file by a directory and put |
ba6ca4e80607
relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents:
42343
diff
changeset
|
40 backups in that directory. This is similar to how we would |
ba6ca4e80607
relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents:
42343
diff
changeset
|
41 previously replace files *in* the configured directory by |
ba6ca4e80607
relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents:
42343
diff
changeset
|
42 subdirectories. |
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
43 |
42405
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
44 * Template keyword `{file_mods}`, `{file_adds}`, and `{file_dels}` |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
45 have changed behavior on merge commits. They used to be relative to |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
46 the first parent, but they now consider both parents. `{file_adds}` |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
47 shows files that exists in the commit but did not exist in either |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
48 parent. `{file_dels}` shows files that do not exist in the commit |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
49 but existed in either parent. `{file_mods}` show the remaining |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
50 files from `{files}` that were not in the other two |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
51 sets. |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
52 |
0c72eddb4be5
templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42372
diff
changeset
|
53 |
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
54 == Internal API Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
55 |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
56 * Matchers are no longer iterable. Use `match.files()` instead. |
42341
27d6956d386b
match: use '' instead of '.' for root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42334
diff
changeset
|
57 |
27d6956d386b
match: use '' instead of '.' for root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42334
diff
changeset
|
58 * `match.visitdir()` and `match.visitchildrenset()` now expect the |
27d6956d386b
match: use '' instead of '.' for root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42334
diff
changeset
|
59 empty string instead of '.' to indicate the root directory. |
42343
d8e55c0c642c
util: make util.dirs() and util.finddirs() include root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42341
diff
changeset
|
60 |
d8e55c0c642c
util: make util.dirs() and util.finddirs() include root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42341
diff
changeset
|
61 * `util.dirs()` and `util.finddirs()` now include an entry for the |
d8e55c0c642c
util: make util.dirs() and util.finddirs() include root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42341
diff
changeset
|
62 root directory (empty string). |
42535
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
63 |
42541
3de4f17f4824
shelve: move shelve extension to core
Navaneeth Suresh <navaneeths1998@gmail.com>
parents:
42535
diff
changeset
|
64 * shelve is no longer an extension now. it will be turned on by default. |
3de4f17f4824
shelve: move shelve extension to core
Navaneeth Suresh <navaneeths1998@gmail.com>
parents:
42535
diff
changeset
|
65 |
42535
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
66 * New API to manage unfinished operations: Earlier there were distinct APIs |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
67 which dealt with unfinished states and separate lists maintaining them |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
68 that are `cmdutil.afterresolvestates`, `cmdutil.unfinishedstates` and |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
69 `cmdutil.STATES`. Now these have been unified to a single |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
70 API which handles the various states and their utilities. This API |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
71 has been added to `state.py`. Now instead of adding to these 3 lists |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
72 independently a state for a new operation can be registered using |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
73 `addunfinished()` in `state` module. |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
74 |
df5f674050b7
relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents:
42498
diff
changeset
|
75 * `cmdutil.checkunfinished()` now includes detection for merge too. |
42574
d28d91f9f35a
py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42552
diff
changeset
|
76 |
d28d91f9f35a
py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42552
diff
changeset
|
77 * We used to automatically attempt to make extensions compatible with |
d28d91f9f35a
py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42552
diff
changeset
|
78 Python 3 (by translating their source code while loading it). We no |
d28d91f9f35a
py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42552
diff
changeset
|
79 longer do that. |