Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 02:10:51 -0400] rev 50850
summary: migrate `opts` to native kwargs
This has the added benefit of unconfusing PyCharm- it thought `opts` in the
nested functions were str based for some reason.
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 02:01:37 -0400] rev 50849
revert: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:56:23 -0400] rev 50848
rename: drop an unnecessary variable declaration at a wider scope
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:54:59 -0400] rev 50847
rename: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:53:47 -0400] rev 50846
remove: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:51:52 -0400] rev 50845
purge: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:49:48 -0400] rev 50844
pull: avoid referencing a variable before it is initialized
If `urlutil.get_pull_paths()` somehow yields nothing, the reference after the
loop appears to be a problem. I noticed this because PyCharm flagged (and still
flags) the initialization of this inside the loop as somehow unused. I'm not
sure why 1 isn't returned directly where it is set to the result of
`postincoming()`, but maybe the code is structured this way in anticipation of
future work.
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:40:50 -0400] rev 50843
pull: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:35:14 -0400] rev 50842
paths: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:32:22 -0400] rev 50841
merge: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:29:27 -0400] rev 50840
manifest: migrate `opts` to native kwargs
Matt Harbison <matt_harbison@yahoo.com> [Sun, 20 Aug 2023 01:27:36 -0400] rev 50839
locate: migrate `opts` to native kwargs
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