Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:24:29 -0400] rev 50838
import: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:20:59 -0400] rev 50837
heads: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:17:45 -0400] rev 50836
forget: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:15:15 -0400] rev 50835
copy: drop an unused variable
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:14:42 -0400] rev 50834
copy: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:12:26 -0400] rev 50833
config: use the writefile() utility to create the sample hgrc
This function uses a context manager.
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:08:58 -0400] rev 50832
config: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:02:52 -0400] rev 50831
clone: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:00:11 -0400] rev 50830
bundle: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 00:56:58 -0400] rev 50829
branches: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 00:55:52 -0400] rev 50828
branch: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 00:44:15 -0400] rev 50827
bookmark: migrate `opts` to native kwargs
There are a bunch of callers for `ui.formatter()`, so convert to bytes only for
that call.
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 00:35:28 -0400] rev 50826
archive: migrate `opts` to native kwargs
I'm not sure how to handle migrating core APIs like `scmutil.match`, so kick
that can down the road. (Plus it's used all over, so the callers need to be
migrated first.)
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 00:27:27 -0400] rev 50825
backout: migrate `opts` to native kwargs
It will take a bit to unwind `cmdutil.commit`, so there's a conversion to
byteskwargs there, without changing the type of `opts` in this function. That's
also useful to flag it as needing to be changed.
Matt Harbison <matt_harbison@yahoo.com> [Sat, 19 Aug 2023 23:06:40 -0400] rev 50824
cmdutil: migrate `opts` on commitstatus() to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sat, 19 Aug 2023 22:56:14 -0400] rev 50823
cat: avoid round tripping **opts -> byteskwargs -> strkwargs
Some internal users still want byteskwargs, so they are serviced in place. Once
this pattern of changing types is eliminated everywhere, the remaining internal
uses can be cleaned up individually (hopefully).
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 16:32:18 -0400] rev 50822
gpg: fix an UnboundLocalError whenever using --force
It looks like this has been broke for almost a decade, since
9c89ac99690e.
Arseniy Alekseyev <aalekseyev@janestreet.com> [Thu, 10 Aug 2023 19:00:19 +0100] rev 50821
rhg: fix the bug where sparse config is interpreted as relglob instead of glob
relglob apparently (in contrast with relpath) matches everywhere in the tree,
whereas glob only matches at the root.
The python version interprets these patterns as "glob" (see
"normalize(include, b'glob', ...)" in match.py)
Manuel Jacob <me@manueljacob.de> [Mon, 07 Aug 2023 23:12:02 +0200] rev 50820
hgweb: encode WSGI environment using the ISO-8859-1 codec
The WSGI specification (PEP 3333) specifies that on Python 3 all strings passed
by the server must be of type str with code points encodable using the ISO
8859-1 codec.
For some reason, I introduced a bug in
2632c1ed8f34 by applying the reverse
change. Maybe I got confused because PEP 3333 says that arbitrary operating
system environment variables may be contained in the WSGI environment and
therefore we need to handle the WSGI environment variables like we would handle
operating system environment variables.
The bug mentioned in the previous paragraph and fixed by this changeset
manifested e.g. in the path of the URL being encoded in the wrong way. Browsers
encode non-ASCII bytes with the percent-encoding. WSGI servers will decode the
percent-encoded bytes and pass them to the application as strings where each
byte is mapped to the corresponding code point with the same ordinal (i.e. it
is decoded using the ISO-8859-1 codec). Mercurial uses the bytes type for these
strings (which makes much more sense), so we need to encode it again using the
ISO-8859-1 codec. If we use another codec, it can result in nonsense.
Raphaël Gomès <rgomes@octobus.net> [Mon, 07 Aug 2023 11:08:00 +0200] rev 50819
branching: merge stable into default
Raphaël Gomès <rgomes@octobus.net> [Mon, 07 Aug 2023 11:05:43 +0200] rev 50818
Added signature for changeset
787af4e0e8b7
Raphaël Gomès <rgomes@octobus.net> [Mon, 07 Aug 2023 11:05:27 +0200] rev 50817
Added tag 6.5.1 for changeset
787af4e0e8b7
Raphaël Gomès <rgomes@octobus.net> [Mon, 07 Aug 2023 11:04:53 +0200] rev 50816
relnotes: add 6.5.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Jun 2023 16:02:12 +0200] rev 50815
perf: fix perf::tags
That return is invalid and unnecessary.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jul 2023 15:50:56 +0200] rev 50814
revlog: fix the naming scheme use by split temporary file
The `-s` is now added on the first piece only and the `.i` is added to the
index. This match the initially intended naming scheme.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jul 2023 15:15:43 +0200] rev 50813
revlog: show that temporary split file use broken name scheme
The `-s` is added on the wrong part and the `.i` is missing.
Arseniy Alekseyev <aalekseyev@janestreet.com> [Thu, 13 Jul 2023 19:36:43 +0100] rev 50812
fncache: fix a bug that corrupts the fncache after transaction rollback
Arseniy Alekseyev <aalekseyev@janestreet.com> [Thu, 13 Jul 2023 19:26:45 +0100] rev 50811
fncache: add a test demonstrating fncache corruption
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Jul 2023 05:13:52 +0200] rev 50810
transaction: actually delete file created during the transaction on rollback
Transaction currently has two modes:
- one where file created during the transaction are deleted on rollback,
- one where file created during the transaction are truncated to 0 on rollback.
Before this change, `hg rollback` and `hg recover` are using the "delete" mode
and transaction abort is using the "truncate" option. This difference is never
really explained. A long time ago, there was two code paths, with this
divergence existing for unclear reasons. When the two code paths got merged into
a single one, a boolean argument have been added to preserve this divergence,
mostly probably as a cargo cult.
The divergence is weird and induce bad surprises, and the truncate behavior is a
bit odds, introducing other bad surprises (e.g.
08ecbdba186f)
So solve this, we stop using the "truncate" behavior and unify on the "delete"
behavior. Despite being currently more "common", the truncate behavior seems
less natural, resulting in the transaction leaving empty file around.
This is landed on default, early in the cycle, to help us catch problems that
could emerge.
Arseniy Alekseyev <aalekseyev@janestreet.com> [Fri, 28 Jul 2023 17:08:37 +0100] rev 50809
rhg: tweak rhg fallback code structure
The goal here is to share the code that accesses the config setting,
but also move it to the top-level, so that we can more easily change
this code later.
(in fact in Jane Street we want to make it choose chg in some cases)
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jul 2023 15:26:15 +0200] rev 50808
journal: track bookmark deletion
Bookmark deletion are now properly tracked by the journal extensions.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jul 2023 15:28:52 +0200] rev 50807
journal: show that we do not track deletion
This was an oversight for the initial implementation.
Martin von Zweigbergk <martinvonz@google.com> [Fri, 21 Jul 2023 09:22:18 -0700] rev 50806
contrib: upgrade merge-lists from clap v3 to clap v4
Mostly to avoid having clap v3 in our dependencies, due to
https://osv.dev/vulnerability/GHSA-g98v-hv3f-hcfr (even though that seems pretty
harmless).
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 19 Jul 2023 21:45:39 +0200] rev 50805
compat: use cp -R in `test-revlog-delta-find.t` (
issue6835)
This follow POSIX and make things compatible with NetBSD.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 19 Jul 2023 17:42:33 +0200] rev 50804
compat: use cp -R in `test-bundle-phase-internal.t` (
issue6835)
This follow POSIX and make things compatible with NetBSD.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jul 2023 03:56:28 +0200] rev 50803
infinitepush: drop the extension
The writing have been on the wall for a long time.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 23 Jun 2023 13:27:09 +0200] rev 50802
perf: display all timing by default
This is much more useful and end up enable it everywhere.
I don't think we have strong backward compatibility guarantee for perf.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 10:53:12 +0200] rev 50801
wrapfunction: deprecated calling "wrapfunction" with bytes
This will help us to detect and eradicates legacy calls. This is on the path to
deprecating `util.safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 15:39:19 +0200] rev 50800
wrapfunction: deprecates calling `wrappedfunction` with bytes
This will help us to detect and eradicates legacy calls.
This is on the path to deprecating `util.safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 19:34:04 +0200] rev 50799
wrapfunction: use sysstr instead of bytes as argument in various tests
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 19:33:14 +0200] rev 50798
wrapfunction: use sysstr instead of bytes as argument in "exthelper"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 15:38:53 +0200] rev 50797
wrapfunction: use sysstr instead of bytes as argument in "sqlitestore"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 19:32:17 +0200] rev 50796
wrapfunction: use sysstr instead of bytes as argument in "share"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 19:31:26 +0200] rev 50795
wrapfunction: use sysstr instead of bytes as argument in "perf"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:30:44 +0100] rev 50794
wrapfunction: use sysstr instead of bytes as argument in "zeroconf"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:27:17 +0100] rev 50793
wrapfunction: use sysstr instead of bytes as argument in "sqlitestore"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:26:18 +0100] rev 50792
wrapfunction: use sysstr instead of bytes as argument in "sparse"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:25:57 +0100] rev 50791
wrapfunction: use sysstr instead of bytes as argument in "schemes"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:25:43 +0100] rev 50790
wrapfunction: use sysstr instead of bytes as argument in "remotenames"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:25:07 +0100] rev 50789
wrapfunction: use sysstr instead of bytes as argument in "remotefilelog"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:24:53 +0100] rev 50788
wrapfunction: use sysstr instead of bytes as argument in "pager"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:24:40 +0100] rev 50787
wrapfunction: use sysstr instead of bytes as argument in "narrow"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:23:12 +0100] rev 50786
wrapfunction: use sysstr instead of bytes as argument in "lfs"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:22:41 +0100] rev 50785
wrapfunction: use sysstr instead of bytes as argument in "largefiles"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:22:28 +0100] rev 50784
wrapfunction: use sysstr instead of bytes as argument in "keyword"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:22:15 +0100] rev 50783
wrapfunction: use sysstr instead of bytes as argument in "journal"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:21:55 +0100] rev 50782
wrapfunction: use sysstr instead of bytes as argument in "infinitepush"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:21:32 +0100] rev 50781
wrapfunction: use sysstr instead of bytes as argument in "histedit"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Feb 2023 04:20:58 +0100] rev 50780
wrapfunction: use sysstr instead of bytes as argument in "highlight"
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 10 Jul 2023 16:47:25 +0200] rev 50779
wrapfunction: use sysstr instead of bytes as argument in the "git" extension
This is as valid and simpler, it will help us to eventually get ride of
`safehasattr`.