Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 May 2022 11:27:16 +0200] rev 49332
bundlespec: do not check for `-` in the params portion of the bundlespec
Otherwise bundle parameter with `-` in their names result in a crash.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 18 May 2022 10:38:11 +0100] rev 49331
bundlespec: add processing of some parameter value
The boolean option needs to be turned into boolean.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 18 May 2022 10:06:43 +0100] rev 49330
bundlespec: extract the parseparams closure
It has no value being a closure. We extract it before modifying it further.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 May 2022 10:30:11 +0200] rev 49329
bundlespec: test `no` value for the `obsolescence` parameter
This is currently broken, but let us test for it first.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 May 2022 03:18:47 +0200] rev 49328
bundlespec: test that parameter overwrite the local config
This is currently working, but havint it explicitly tested seems useful.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 May 2022 18:43:24 +0200] rev 49327
bundlespec: do not overwrite bundlespec value with the config one
This is finally making the `obsolete` bundlespec paramater work.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 May 2022 18:14:32 +0100] rev 49326
bundlespec: add a `overwrite` parameter to set_param
This will open the way for the configuration value to yield in front of the
explicit bundle type.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 May 2022 16:36:32 +0100] rev 49325
bundlespec: merge the contentopts and params dictionnary
They are content using the same keys. Using differents object for access open
the gates for confusion in the code using them (this is already the case). So we
start fusing their usages to make the parameters more useful.
More work will be needed to make them really useful, but the first step is
here: not throwing the value away.
However this is still not making the previously introduced test useful because
currently, the default config value overwrite the one from the bundlespec. We
will fix this in the coming changesets.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 May 2022 03:16:53 +0200] rev 49324
bundlespec: test if the "obsolete=" parameter is read
Narrator voice: Actually it is not.
We will fix it in the next changeset.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 May 2022 16:59:31 +0100] rev 49323
bundlespec: fix lack of title in a evolve tests
This is a full new test case and should be "flagged" as such.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 May 2022 14:25:53 +0100] rev 49322
bundlespec: make the `stream` case less special
The handling of the stream case seems fragile (does not account for newer parts
and options that will arise) and has special code dedicated to it.
To simplify and strengthen things, we make it use the same mechanism as the other
options. So we make it less special by making it a special value in the common case.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 May 2022 11:57:17 +0100] rev 49321
bundlespec: phase out the `_bundlespeccgversions` mapping
The `_bundlespeccgversions` mapping is redundant with the `cg.version`
parameter. We move all users to the `cg.version` version and phase out the
`_bundlespeccgversions` mapping.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 14 Jun 2022 04:04:08 +0200] rev 49320
commit: allow to close branch when committing change over a closed head
Otherwise, an explicit other commit become necessary, which seems both silly and
verbose.
This is useful when merging closed heads on the same branches, for example when
merging multiple repositories together.
Matt Harbison <matt_harbison@yahoo.com> [Mon, 13 Jun 2022 11:20:57 -0400] rev 49319
typing: add a missing suppression directive for `msvcrt`
Matt Harbison <matt_harbison@yahoo.com> [Mon, 13 Jun 2022 11:18:41 -0400] rev 49318
windows: drop some py2 compatibility code
The comment was wrong- the exception handler was the py3 case.
Matt Harbison <matt_harbison@yahoo.com> [Mon, 13 Jun 2022 11:06:33 -0400] rev 49317
windows: prevent bytes from being passed to registry APIs
There was a TortoiseHg bug report in this area[1], and from inspection, it looks
like passing `b""` as `valname` would fail to convert to unicode. The
underlying API allows both `""` and `NULL` to return the default value for the
key.
[1] https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5803
Raphaël Gomès <rgomes@octobus.net> [Thu, 02 Jun 2022 16:56:39 +0200] rev 49316
relnotes: add 6.1.3
Anton Shestakov <av6@dwimlabs.net> [Thu, 12 May 2022 13:53:50 +0400] rev 49315
logcmdutil: use the same data as {file*} template keywords (
issue6642)
Since
0c72eddb4be5 template keywords that show files use a different source of
data than ctx.p1().status(ctx). These two functions in logcmdutil also show
file lists when needed (e.g. log with --debug flag), but previously they used
the old way of just looking at status compared to p1 and it resulted in
differences between e.g. hg log --debug and hg log -T '{file*}'.
test-phases.t needs an adjustment because 7 is a merge commit of two
topological branches and one of them introduces files C, D and E.
Anton Shestakov <av6@dwimlabs.net> [Thu, 12 May 2022 13:52:10 +0400] rev 49314
tests: show that hg log --debug output differs from {file*} template keywords
hg log --debug -T xml doesn't differ, but let's test it because we can.
Manuel Jacob <me@manueljacob.de> [Wed, 01 Jun 2022 01:45:49 +0200] rev 49313
cleanup: return directly instead of assigning variable
Manuel Jacob <me@manueljacob.de> [Wed, 01 Jun 2022 01:30:48 +0200] rev 49312
commit: remove special handling of IOError (actually dead code)
In the past, IOError was used to mark a file as removed. The differentiation
between OSError and IOError in this place was introduced in
e553a425751d, to
avoid that “normal” OSErrors / IOErrors accidentally mark files as removed.
This weird internal API was removed in
650b5b6e75ed. It seems like that
changeset should have removed the differentiation, at least I don’t see any
reason for keeping it.
On Python 3, OSError and IOError are aliased. Therefore the removed code was
actually dead.
Manuel Jacob <me@manueljacob.de> [Wed, 01 Jun 2022 02:21:41 +0200] rev 49311
py3: catch specific OSError subclasses instead of checking errno
On Python 3, the "not a directory" error is mapped to ENOTDIR instead of
EINVAL. Therefore, catching the NotADirectoryError subclass is sufficient.
Manuel Jacob <me@manueljacob.de> [Wed, 01 Jun 2022 00:47:25 +0200] rev 49310
py3: catch specific OSError subclasses instead of checking errno
Contrary to the previous changesets in this series, this covers cases where
errno was checked for multiple values.
EACCES -> PermissionError
ENOENT -> FileNotFoundError
ENOTDIR -> NotADirectoryError
EISDIR -> IsADirectoryError
Manuel Jacob <me@manueljacob.de> [Tue, 31 May 2022 23:45:33 +0200] rev 49309
py3: catch ProcessLookupError instead of checking errno == ESRCH