- May 31, 2022
-
-
Pierre-Yves David authored
This will be useful in case of corrupted index.
-
Pierre-Yves David authored
We are about to add a bunch of new column and most of them are probably only relevant to --verbose. We add some more testing of the `--verbose` mode in a sidedata context.
-
Pierre-Yves David authored
We will add new columns with the "revnum" version of the parent. It will be useful in case we need to inspect a corrupted revlog index.
-
Pierre-Yves David authored
It will be simpler to align everything on the same side, and the right seems a better side as it match the value alignment.
-
- May 30, 2022
-
-
Pierre-Yves David authored
The command dump some content of the revlog index and omit a lot of information. I am going to make it display the missing information. For clarity, we rename the command to explicitly mention revlog.
-
Manuel Jacob authored
Changeset f574cc00831a introduced the wrapper, to make bin() behave like on Python 2, where it raised TypeError in many cases. Another previous approach, changing callers to catch binascii.Error in addition to TypeError, was backed out after negative review feedback [1]. However, I think it’s worth reconsidering the approach. Now that we’re on Python 3 only, callers have to catch only binascii.Error instead of both. Catching binascii.Error instead of TypeError has the advantage that it’s less likely to cover a programming error (e.g. passing an int to bin() raises TypeError). Also, raising TypeError never made sense semantically when bin() got an argument of valid type. As a side-effect, this fixed an exception in test-http-bad-server.t. The TODO was outdated: it was not an uncaught ValueError in batch.results() but uncaught TypeError from the now removed wrapper. Now that bin() raises binascii.Error instead of TypeError, it gets converted to a proper error in wirepeer.heads.<locals>.decode() that catches ValueError (superclass of binascii.Error). This is a good example of why this changeset is a good idea. Catching TypeError instead of ValueError there would not make much sense. [1] https://phab.mercurial-scm.org/D2244
-
- Jun 02, 2022
-
-
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 27, 2022
-
-
Pierre-Yves David authored
We add a revision with null parent but that is not the first revision of the revlog. It make it a different a case that is worthy of testing.
-
Pierre-Yves David authored
Using a revision with non-null parents makes it a different case that is worthy of testing.
-
Pierre-Yves David authored
We need to be careful to not create invalid delta for changelog. Changelog is special because it does not use any delta in practice and don't use general delta in its format. Using the new patch will help use to test more cases.
-
Anton Shestakov authored
Since pylint does its own directory traversal to find files to check and doesn't use hg locate command, this requirement is not valid. See also a29f071751df.
-
Anton Shestakov authored
This requirement exists to make sure for hg has locate command, which is used in this test file for getting a list of files to check. Since in theory current versions of tests could be run on older hg, it doesn't hurt to mark even this version requirement (as old as it is). See also: a29f071751df.
-
- May 29, 2022
-
-
Manuel Jacob authored
-
- May 20, 2022
-
-
Pierre-Yves David authored
See command documentation for details. For some reason, pytype is confused by our usage of None/deltainfo variable, so I had to quiet it.
-
- May 19, 2022
-
-
Pierre-Yves David authored
This provide a way to enable the code introduced in the previous changeset. This will provide a large amount of output when applying a bundle with details about each delta "computation".
-
- Apr 21, 2022
-
-
Pierre-Yves David authored
This got changed at some point.
-
- May 18, 2022
-
-
Pierre-Yves David authored
Looking at the parents is a common need when trying to understanding why a delta was chosen, having it readily available helps a lot.
-
Pierre-Yves David authored
We mostly care about generaldelta happening, the exact details of storage size variation is not really important so we can glob it instead of having multiple lines for each variances. This will make updating the output of the command simpler.
-
Pierre-Yves David authored
Snapshot are expected to be healthy behavior, while "other" is a bit more suspicious. So we distinct between the two to make it easier to inspect repositories.
-
- May 25, 2022
-
-
Raphaël Gomès authored
-
- May 24, 2022
-
-
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.
-
- Apr 05, 2022
-
-
Pierre-Yves David authored
This seems like a fine default behavior for now. If some users wants something more aggressive we can make the behavior configurable in the future. Differential Revision: https://phab.mercurial-scm.org/D12619
-
Pierre-Yves David authored
This show the current behavior when the repository to auto-upgrade is already locked. The current behavior is to abort, which is probably not great. Now that we have a proper test, we can think about the behavior we wants in a later tests. Differential Revision: https://phab.mercurial-scm.org/D12618
-
Pierre-Yves David authored
This make the utility more useful, for example to wait on a lock file. We also add an explicit -L check since the lock are "weird" symlink. Differential Revision: https://phab.mercurial-scm.org/D12617
-
Pierre-Yves David authored
This show the current behavior when the repository is unlockable. The current behavior is to abort, which is probably not great. Now that we have a proper test, we can think about the behavior we want in a later changeset. Differential Revision: https://phab.mercurial-scm.org/D12615
-
- Mar 22, 2022
-
-
Pierre-Yves David authored
This is similar to what we introduced for `share-safe`, but apply to the tracked-hint feature. Differential Revision: https://phab.mercurial-scm.org/D12614
-
- Apr 05, 2022
-
-
Pierre-Yves David authored
This is similar to what we introduced for `share-safe`, but apply to the tracked-hint feature. Differential Revision: https://phab.mercurial-scm.org/D12613
-
Pierre-Yves David authored
This is the first "automatic-upgrade" capability. In the following commits, similar features are coming for other "fast to upgrade" formats. This is different from the `safe-mismatch.source-not-safe` and `safe-mismatch.source-safe` configuration that deal with mismatch between a share and its share-source. Here we are dealing with mismatch between a repository configuration and its actual format. We will need further work for cases were the repository cannot be locked. A basic protection is in place to avoid a infinite loop for now, but it will get proper attention in a later changeset. Differential Revision: https://phab.mercurial-scm.org/D12611
-
- May 02, 2022
-
-
Anton Shestakov authored
Differential Revision: https://phab.mercurial-scm.org/D12620
-
- May 19, 2022
-
-
Pierre-Yves David authored
We don't need to recompute the other revlog to add the changelog-v2 feature. This simplify upgrade that use copies-sdc (as shown in the tests).
-
Pierre-Yves David authored
To make sure the upgrade simplification we need are taken into account, we need to see more of the output of `debugupgraderepo`. The --quiet flag simplify the output a lot and globing the `preserved` field mean this output should remains stable across (future) unrelated changes.
-
Pierre-Yves David authored
We only need changelog-v2 and its usage is automatically inferred. So we can simplify the test by dropping this. This is important to test future simplification of the update process in the coming changesets.
-
- 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 chg variant of the CI see a failure on `tests/test-narrow-pull.t`. Bisecting point the failure as starting at this small changeset… Backing it out, restore the CI on default. It was never broken on stable, which is even more puzzling.
-
- 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
-