- Feb 22, 2025
-
-
Pierre-Yves David authored
Same rational the parent changesets.
-
Pierre-Yves David authored
Same rational as the parent changeset.
-
Pierre-Yves David authored
This is a follow up to e6069f84abbb. It turns about that there are multiple test condition that needs cleanup. This handle the usage of the first one.
-
- Jan 10, 2025
-
-
Arseniy Alekseyev authored
While we're at it, forbid empty path components (aka repeated slashes) as well because they can cause problems (at the very least a crash failing HgPath validation in rust code path).
-
Arseniy Alekseyev authored
Forbid whitespace at the edges of the pattern because it just doesn't work correctly.
-
- Dec 16, 2023
-
-
Martin von Zweigbergk authored
Commit 17a822d7943e broke some of our internal tests at Google because the `dir` variable contains a trailing slash since that commit. Let's restore the old behavior by stripping that trailing slash.
-
- Dec 18, 2023
-
-
Martin von Zweigbergk authored
This demonstrates a bug introduced in 17a822d7943e.
-
- Jun 21, 2023
-
-
Jason R. Coombs authored
-
- May 31, 2023
-
-
Pierre-Yves David authored
There does not seems to be anything wrong with running the current logic on them. So we remove the limitation.
-
- Apr 12, 2022
-
-
Arseniy Alekseyev authored
Differential Revision: https://phab.mercurial-scm.org/D12542
-
- Jun 18, 2021
-
-
Martin von Zweigbergk authored
Same reasoning as the previous change. This affects a few tests because of the hack from d7304434390f (changegroup: move message about added changes to transaction summary, 2019-09-08). Differential Revision: https://phab.mercurial-scm.org/D10886
-
- Apr 20, 2021
-
-
Martin von Zweigbergk authored
Each of the steps I added status messages for in this patch frequently take minutes or tens of minutes for our internal users. It would be nice to also have a progress bar but that will have to come later. Differential Revision: https://phab.mercurial-scm.org/D10503
-
- Apr 09, 2021
-
-
Charles Chamberlain authored
This fixes the bug where running `hg clone --narrow ./local-repo` fails with abort: server does not support narrow clones even when the server has narrow enabled. Differential Revision: https://phab.mercurial-scm.org/D10357
-
- Feb 24, 2021
-
-
Martin von Zweigbergk authored
The user can always modify the working copy, including while they're running `hg tracked --remove-include <path>`. Nothing really bad happens when they do that, and we already have code for printing a nice warning, so we can safely remove the assertion we had. Differential Revision: https://phab.mercurial-scm.org/D10063
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D10062
-
- Feb 03, 2021
-
-
Martin von Zweigbergk authored
Most of our users at Google use Mercurial on a file system that keeps backups of previous versions of all files, including those in `.hg/`. They therefore don't need a separate backup in the file system when narrowing their repo (which they typically do by running `hg tracked --auto-remove-includes`). Backups can be very slow. `hg strip` already has a `--no-backup` option. This patch adds the same option to `hg tracked --removeinclude/--addexclude`. Differential Revision: https://phab.mercurial-scm.org/D9951
-
- Nov 19, 2020
-
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D9386
-
- Sep 13, 2019
-
-
Martin von Zweigbergk authored
It's been a somewhat common request among our users to have Mercurial automatically pick includes to remove. This patch adds an option for that: `hg tracked --auto-remove-includes`. I'm not sure if this is the right name and semantics for it. Perhaps the feature should also add excludes of large subdirectories even if other files in the include are needed? Narrow clones are experimental, so we can change the name and/or semantics later if necessary. Differential Revision: https://phab.mercurial-scm.org/D6848
-
Martin von Zweigbergk authored
I'm about to add another test that depends on this config. Differential Revision: https://phab.mercurial-scm.org/D6849
-
- Oct 14, 2018
-
-
Pierre-Yves David authored
We are going to improve the way this message is issued in the core codebase. This will make it appears for `hg debugobsolete` too. Since this seems like a good idea, we make the output change in a previous changesets to clarify the next changeset.
-
- May 21, 2019
-
-
Pulkit Goyal authored
Few releases ago, we introduce narrow_widen wireproto command to be used to widen narrow repositories. Before this patch, that was used in non-ellipses cases only. In ellipses cases, we still do exchange.pull() which can pull more data than required. After this patch, the client will first check whether server supports doing ellipses widening using wireproto command or not by checking server's wireproto capability. If the server is upto date and support latest ellipses capability, we call the wireproto command. Otherwise we fallback to exchange.pull() like before. The compat code make sure that things works even if one of the client or server is old. The initial version of this patch does not had this compat code. It's added to help Google release things smoothly internally. I plan to drop the compat code before the upcoming major release. Due to change to wireproto command, the code looks a bit dirty, next patches will clean that up. Differential Revision: https://phab.mercurial-scm.org/D6436
-
Danny Hooper authored
It doesn't seem useful to exclude them, or harmful to include them. Users writing log templates using outsidenarrow as a predicate might consider it unexpected if their locally created empty drafts are treated as if they contained something outside the clone. Differential Revision: https://phab.mercurial-scm.org/D6414
-
- Dec 06, 2018
-
-
Martin von Zweigbergk authored
When widening inserts older commits in the changelog, we have to preserve bookmarks so they are not removed by the call to repair.strip() we temporarily do. We didn't have any tests for that before. Differential Revision: https://phab.mercurial-scm.org/D5396
-
- Dec 04, 2018
-
-
Martin von Zweigbergk authored
If you have an old obsolescence-chain of commits that has been pruned and you narrow your repo so that some of those commits get stripped (because they affected the removed paths), then we would currently resurrect the commit that came before (along the obsmarker chain) the last stripped commit. That happens by the usual rules for obsmarker-stripping. However, it's quite surprising when it happens when you narrow your repo. This patch makes narrowing not strip obsmarkers. Differential Revision: https://phab.mercurial-scm.org/D5364
-
- Oct 22, 2018
-
-
Matt Harbison authored
I added a testcase for lfs to all narrow tests, and the following failed: test-narrow-acl.t test-narrow-exchange.t test-narrow-patterns.t test-narrow-strip.t test-narrow-trackedcmd.t test-narrow-widen.t test-narrow.t The first two still have errors in the pretxnchangegroup on clone and (receiving a) push, which I'm still looking into (4d63f3bc1e1a fixed something in this area already). These two modified tests seem to cover the things that failed in the remaining narrow tests, i.e. `hg tracked` and `hg strip`, so I didn't bother enabling the testcases elsewhere. Maybe we should, but it's 68 tests total.
-
- Sep 12, 2018
-
-
Gregory Szorc authored
These arguments are defined by the narrow extension. Let's teach core to recognize them so we can delete some code from the narrow extension and start to exercise the in-core code for performing a narrow clone. We have no way of easily testing it, but this change should result in .hg/requires having the narrow requirement from the time the file is written rather than added as part of pull. We'll confirm this when we delete some monkeypatched functions from the narrow extension in later commits. Test output changed because hg.clone() is now receiving patterns and validation of those values is occurring sooner, before the exchange code runs and prints the message that was deleted. Differential Revision: https://phab.mercurial-scm.org/D4538
-
- Aug 29, 2018
-
-
Martin von Zweigbergk authored
I think we used {node|short} because they were first written for only flat manifests and we didn't think to change the format when we started testing tree manifests. Differential Revision: https://phab.mercurial-scm.org/D4421
-
- Apr 04, 2018
-
-
Gregory Szorc authored
Before, we used the default store, which was based on fncache and dotencode. After attempting to port tests to work with the simple store, I realized that fncache was more trouble than it is worth. This commit implements a proper store type for the simple repo - one that isn't based off fncache. This causes a number of new test failures because of tests expecting the full fncache store filename encoding. I may extend the store format in a subsequent commit to take the filename encoding parts of fncache that we can take (basically everything except hash encoding, since that isn't reversible). But for now, let's use encoded store. As part of this, we implement proper requirements support for repos created with the simple store. This should have been done from the beginning, as a requirement is needed to lock out clients that don't understand a storage format. A new hghave feature advertising the presence of fncache in repos has been added. Most tests touching the fncache are now conditional on that feature. Other tests have added the optional repo requirement to output. Differential Revision: https://phab.mercurial-scm.org/D3095
-
Gregory Szorc authored
Differential Revision: https://phab.mercurial-scm.org/D3061
-
- Feb 13, 2018
-
-
Augie Fackler authored
This test passed on our workstations, including on Macs, so we never noticed, but it fails on both the Linux and FreeBSD buildbots. Today I learned about a bash feature, wherein $RANDOM gives a random int every time you read it. check-code rule to follow. Differential Revision: https://phab.mercurial-scm.org/D2236
-
- Feb 01, 2018
-
-
Augie Fackler authored
These tests predate the testcases functionality in run-tests.py, so it was never done in narrowhg. Differential Revision: https://phab.mercurial-scm.org/D1979
-
- Jan 29, 2018
-
-
Augie Fackler authored
Adjustments: * renamed src to hgext/narrow * marked extension experimental * added correct copyright header where it was missing * updated hgrc extension enable line in library.sh * renamed library.sh to narrow-library.sh * dropped all files from repo root as they're not interesting * dropped test-pyflakes.t, test-check-code.t and test-check-py3-compat.t * renamed remaining tests to all be test-narrow-* when they didn't already * fixed test-narrow-expanddirstate.t to refer to narrow and not narrowhg * fixed tests that wanted `update -C .` instead of `merge --abort` * corrected a two-space indent in narrowspec.py * added a missing _() in narrowcommands.py * fixed imports to pass the import checker * narrow only adds its --include and --exclude to clone if sparse isn't enabled to avoid breaking test-duplicateoptions.py. This is a kludge, and we'll need to come up with a better solution in the future. These were more or less the minimum to import something that would pass tests and not create a bunch of files we'll never use. Changes I intend to make as followups: * rework the test-narrow-*-tree.t tests to use the new testcases functionality in run-tests.py * remove lots of monkeypatches of core things Differential Revision: https://phab.mercurial-scm.org/D1974
-