- Sep 05, 2022
-
-
Georges Racinet authored
-
- Jun 05, 2021
-
-
Georges Racinet authored
-
- May 31, 2021
-
-
Georges Racinet authored
This is enough to launch functional tests and more generally experiment on development instances, but must not come near a production server, as it is essentially an infinitely growing cache.
-
Georges Racinet authored
This is the main cache logic, based on the previously introduced "mutation id" primitives. clear_repo_classes() and its usage in the instance reclaim hook are taken from heptapod.wsgi, where they have been introduced to avoid a memory leak.
-
Georges Racinet authored
Since we're about to introduce a repository instance cache, whose invalidation will be tied on store lock acquire/release, it is necessary for all tests that will use this cache (HGitaly gRPC tests notably) that operations from the test helpers also acquire the lock. As the comment says, this should actually have been the default, but we need to exert some caution and we need it right away.
-
Georges Racinet authored
Closes #10 All writes to the repository store should be protected by `repo.lock()`. This change makes it so that a new mutation id, as previously introduced gets written upon lock release. This is enough for a caching mechanism to perform invalidations
-
Georges Racinet authored
This introduces a new file in the Mercurial store, whose purpose will be to change at each mutation of the store contents, so that a cache invalidation logic can be based on its value.
-
- Jun 20, 2022
-
-
Georges Racinet authored
various CI improvements come with this merge, as well as a patch version bump for next release.
-
Georges Racinet authored
Compat tests: fixing test failing on current Mercurial stable See merge request !79
-
Georges Racinet authored
This failure affected the test itself only: `pycompat.bytesio` has been removed from Mercurial stable branch. We haven't been needing it since Heptapod became Python 3 only. This is a good example why Mercurial compat primitives should not be used in py-heptapod and hgitaly code bases.
-
Georges Racinet authored
The requirements file shipping with Heptapod is actually accepting patch version bumps for Mercurial and Evolve. Therefore we must test against their respecive heads of stable branches. (motivated by an actual test failure due to a compat change)
-
Georges Racinet authored
-
Georges Racinet authored
-
- Jun 12, 2022
-
-
Georges Racinet authored
-
Georges Racinet authored
-
- May 31, 2022
-
-
Georges Racinet authored
-
- May 16, 2022
-
-
-
Georges Racinet authored
At least with 6.2.5, pytest enforces that expected exceptions are subclasses of `BaseException`, which `error.Hint` is not. Thankfully we are now using Mercurial 6.1, which allows us to get back to the precise exception class without any version conditional.
-
- Apr 05, 2022
-
-
Georges Racinet authored
-
Georges Racinet authored
The publication of the final 1.0.0 version of hg-git brings in a minor incompatibility, that we will address once the current default branch becomes the stable branch (heptapod#658). This is not a problem for shipped versions because the requirements specified with the Rails app (both in heptapod and in release branch) already pin hg-git to 0.10.x
-
- Mar 14, 2022
-
-
Georges Racinet authored
-
Georges Racinet authored
-
- Feb 05, 2022
-
-
Georges Racinet authored
With the Mercurial 6.1 (core see heptapod#633) taking obsolescence into account while updating branchmap, it is no longer necessary to perform the (very slow) post-processing provided by the evolve extension. Because of the big jump in minimum required Mercurial version, we make it a major version change. Fixing heptapod#632 will thus boil down to requiring py-heptapod>=4.0.0dev0 This post-processing was the standard if evolve is activated (through the single heads enforcement logic), but the heptapod extension was (and still is) disabling it because it needs to call it itself anyway. See 834eb9379d73 for details.
-
- Feb 26, 2022
-
-
Georges Racinet authored
The new hgrc file creates some duplication with `required.hgrc` but at this point, an inclusion would probably be not worth the packaging risk.
-
Georges Racinet authored
We want the tests to pass on the version of hg-evolve that will eventually be shipped in the Heptapod release. Perhaps this indicates that we should have a permanent requirements file for dependencies to update on CI, but this will be for another day.
-
Georges Racinet authored
-
- Jan 25, 2022
-
-
Georges Racinet authored
[skip ci]
-
- Jan 23, 2022
-
-
Georges Racinet authored
-
- Jan 03, 2022
-
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
Nothing interesting, but will prevent some conflicts later on.
-
Georges Racinet authored
The setting used is the same as the one introduced by de2e04fe4897 in Mercurial core. The logging will help adjust values in production. Part of heptapod#601
-
- Jan 02, 2022
-
-
Georges Racinet authored
Useful if Git mirrorring was suspended for experimentation of fully native Mercurial without Git, but resuming is needed. Part of heptapod#580 (perhaps call it `hpd-resume-git-mirrorring`?)
-
- Nov 26, 2021
-
-
Georges Racinet authored
This is a bit formal, as it produces actually an empty diff (py-heptapod hasn't changed between 0.26 and 0.27)
-
- Nov 15, 2021
-
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
-