- Jun 16, 2022
-
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
- Jun 14, 2022
-
-
Pierre-Yves David authored
if --files is passed, there was no directory to checks and `msg` was undefined. This is now fixed and tested.
-
- Jun 08, 2022
-
-
Raphaël Gomès authored
The assumption that we need to rewrite (or append to) the dirstate if the ignore pattern hash has changed or if any cached directory mtimes have changed is only valid when using dirstate-v2. In dirstate-v1, neither of these things are written to disk.
-
- Jun 14, 2022
-
-
Pierre-Yves David authored
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.
-
- May 12, 2022
-
-
Anton Shestakov authored
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 authored
hg log --debug -T xml doesn't differ, but let's test it because we can.
-
- Jun 08, 2022
-
-
Mathias De Mare authored
-
- Jun 04, 2022
-
-
Manuel Jacob authored
The deleted code didn’t work on Python 3. On Python 2 (or Python 3 after adapting it), the function returned in the error case. The subsequent creation of SSL socket fails during handshake with a nonsense error. Instead, the user should get an error of what went wrong. I don’t see how the deleted code would be useful in the error case. The new code is also closer of what the standard library is doing nowadays that it has proxy support (which we don’t use in the moment). In the test, I use port 0 because all the HGPORTs were already taken. In practice, there should not be any server listening on port 0.
-
- Jun 03, 2022
-
-
Pierre-Yves David authored
This should maybe be called "nodesfromfile", but at least the documentation is correct (it was previously a copy past from follow).
-
- Jun 02, 2022
-
-
Manuel Jacob authored
On Python 2, socket.error was subscriptable. On Python 3, socket.error is an alias to OSError and is not subscriptable. The except block passes the exception to self.send_error(). This fails on both Python 2 (if it was executed) and Python 3, as it expects a string. Getting the attribute .strerror works on Python 2 and Python 3, and has the same effect as the previous code on Python 2.
-
Manuel Jacob authored
-
- Jun 01, 2022
-
-
Pierre-Yves David authored
Now that phabricator is no longer in us, we should avoid this useless step to save time and simplify things.
-
- May 21, 2022
-
-
Manuel Jacob authored
Black commit 117891878e5be4d6b771ae5de299e51b679cea27 (included in black >= 21.11b0) dropped the string "version " from the output of "black --version". To make the regex work with newer black versions, make matching of "version " optional.
-
- May 24, 2022
-
-
kiilerix authored
This "15.0.*" requirement came from 0d99778af68a and is now replaced with plain "15.0". AFAICS, it really should allow (but not necessarily require) im-rc 15.1 . Narrow requirement requirements with wildcard in the version is not used in other places.
-
- Jun 02, 2022
-
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
- May 04, 2022
-
-
idlsoft authored
Reviewer note: this was sent by the author as a simple bugfix, but can be considered a security patch, since it allows users to access things outside of the ACL, hence the (SEC) prefix. However, this affects the `narrow` extention which is still marked as experimental and has relatively few users aside from large companies with their own security layers on top from what we can gather. We feel (Alphare: or at least, I feel) like pinging the packaging list is enough in this case.
-
- May 30, 2022
-
-
Raphaël Gomès authored
This should fix this error we see in the CI from time to time: ``` --- /tmp/mercurial-ci/tests/test-chg.t +++ /tmp/mercurial-ci/tests/test-chg.t.err @@ -187,6 +187,26 @@ $ chg bulkwrite --pager=on --color no --config ui.formatted=True paged! 'going to write massive data\n' killed! (?) + Traceback (most recent call last): + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 509, in _serverequest + sv.cleanup() + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 382, in cleanup + self._restoreio() + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 461, in _restoreio + os.close(fd) + OSError: [Errno 9] Bad file descriptor + Traceback (most recent call last): + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 693, in _acceptnewconnection + self._runworker(conn) + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 744, in _runworker + prereposetups=[self._reposetup], + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 509, in _serverequest + sv.cleanup() + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 382, in cleanup + self._restoreio() + File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 461, in _restoreio + os.close(fd) + OSError: [Errno 9] Bad file descriptor [255] ```
-
- May 29, 2022
-
-
Manuel Jacob authored
-
- May 24, 2022
-
-
Pierre-Yves David authored
Introduce a first basic template to try the feature.
-
Pierre-Yves David authored
Before this, multiple jobs could search the list at the same time and pick the same free channel. We now project this search/assignment with a simple lock.
-
Pierre-Yves David authored
Sending the message about the test being "done" signals to the main thread that a new test can be started. Before this changeset, we sent this signal before freeing the channel, there is room for a race condition where a new test would search for a channel before the old test freed the one it used. This is an example of the failure it would produce: https://foss.heptapod.net/mercurial/mercurial-devel/-/jobs/552404
-
Pierre-Yves David authored
The next patch will do something equivalent, so lets do the change in an independant changeset first in case we need to bisect something in the future.
-
- May 22, 2022
-
-
Arseniy Alekseyev authored
returning a valid entry for nullrev fix chain that delta against nullrev.
-
Arseniy Alekseyev authored
We are witnessing a crash in the rust code, so we lets make sure this case is tested.
-
- May 17, 2022
-
-
Matt Harbison authored
Python 3.8.0 is the latest I can load on Ubuntu 18.04, and I regularly hit the TypeError because this function is missing. While it can be avoided by disabling worker usage via config option, that's a bit obscure. I'm limiting the function definition to the narrow range of affected pythons because there were other bugs in this area that were worked around, that I don't fully understand. See the bug report for discussions on why the narrow range, and related commits working around other bugs. Differential Revision: https://phab.mercurial-scm.org/D12627
-
- May 04, 2022
-
-
Anton Shestakov authored
The idea and rationale is similar to https://phab.mercurial-scm.org/D12599 (landed as 1b6e381521c5). Differential Revision: https://phab.mercurial-scm.org/D12622
-
Anton Shestakov authored
The idea and rationale is similar to https://phab.mercurial-scm.org/D12599 (landed as 1b6e381521c5). Differential Revision: https://phab.mercurial-scm.org/D12621
-
- May 19, 2022
-
-
Arseniy Alekseyev authored
Use the same algorithm of file append as python does, where we do a manual seek instead of relying on O_APPEND. (see the reasons in the inline comment)
-
- May 17, 2022
-
-
Arseniy Alekseyev authored
Apparently it's not sufficient to modify a file to force the dirstate write-out, so the append code path was untested. By removing a file instead of changing we're forcing append to happen.
-
- May 16, 2022
-
-
Pierre-Yves David authored
The fast the phabricator steps has a `rules` entry makes it selected for the special `merge_requests` pipelines. The other ones behave as default and are not selected tot the mrege_request pipelines. This result in a second pipeline to be created, with only the phabricator pipeline in it. Which usually succeed fast (since there is nothing to do). This is harmful as this create a false sense of "the series is passing" and Gitlab will use this simplistic pipeline for validation. By explicitly preventing the pipeline to be created in the merge-request case, we prevent this situation to happens Note that the job will be dropped (alonside phabricator) in the next two weeks anyway.
-
- May 12, 2022
-
-
Kyle Lippincott authored
When we're recreating the commit that we'll be committing, we don't want to filter our copy information based on just the *new* [versions of the] files we're amending. The test has an example of this case, but for clarity, the situation is: ``` $ hg cp src dst && hg commit <do some work> $ hg amend some_unrelated_file.txt $ hg status --copies A dst A some_unrelated_file.txt ``` What *should* happen is that `dst` should remain marked as a copy of `src`, but this did not previously happen. `matcher` here only includes the files that were specified on the commandline, so it only gets the copy information (if any, in this example there's not) for `some_unrelated_file.txt`. When it goes to apply the memctx to actually create the commit, the file copy information is incomplete and loses the information for the files that shouldn't have been affected at all by the amend. Differential Revision: https://phab.mercurial-scm.org/D12625
-
Kyle Lippincott authored
Differential Revision: https://phab.mercurial-scm.org/D12624
-
- May 04, 2022
-
-
Arseniy Alekseyev authored
Differential Revision: https://phab.mercurial-scm.org/D12604
-
- Apr 22, 2022
-
-
Arseniy Alekseyev authored
Differential Revision: https://phab.mercurial-scm.org/D12584
-
- May 04, 2022
-
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
Raphaël Gomès authored
Nobody cares about this very narrow usecase, and py2 support is over by July 1st. This helps with the CI load, and removes some flakiness.
-
Raphaël Gomès authored
-