- 13 Feb, 2021 1 commit
-
-
Georges Racinet authored
Merged default branch into stable --HG-- branch : stable
-
- 27 Jan, 2021 1 commit
-
-
Georges Racinet authored
For the match logic by `/`-separated segment provided by this method, it would be quite unreasonable to *compute* the GitLab branches, hence we bite the bullet and use the state file. A comparison test makes sure the intended behaviour was well understood.
-
- 09 Feb, 2021 1 commit
-
-
Georges Racinet authored
In case there is a corruption on just one line, we'll just skip it instead of letting the error propagate (of course with a big error log), so that it won't block all branch listing capabilities. Causes of error could be bugs in the state file, especially having an obsolete changeset there if `repo` is filtered. The state file is not supposed to have obsolete changesets, so that would be a bug. With this, we'll lose a bit of early bug detection, but we considerably reduce user impediment if something goes wrong.
-
- 27 Jan, 2021 2 commits
-
-
Georges Racinet authored
it will be useful in some special cases, notably hg-git.
-
Georges Racinet authored
It will be useful right away, and we'll probably make it systematic later, or just take the state file for granted (after we'd made the necessary systematic upgrades of existing repos, of course) The underlying method is not present in py-heptapod 2.1.1, hence we bump the requirement.
-
- 09 Feb, 2021 2 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
with the exclusion rule, it was inconvenient to launch flake8 manually, I was always doing it by a copy-paste from the CI config file.
-
- 29 Jan, 2021 4 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
-
- 18 Jan, 2021 1 commit
-
-
Sushil Khanchi authored
Also, link them with their respective issue on heptapod.
-
- 14 Jan, 2021 3 commits
-
-
Georges Racinet authored
--HG-- branch : stable
-
Georges Racinet authored
--HG-- branch : stable
-
Georges Racinet authored
This is necessary for upload to PyPI (and that check by twine or pypi.org is very welcome) --HG-- branch : stable
-
- 11 Jan, 2021 1 commit
-
-
Sushil Khanchi authored
-
- 08 Jan, 2021 1 commit
-
-
Georges Racinet authored
This is the first step towards #31
-
- 18 Dec, 2020 1 commit
-
-
Sushil Khanchi authored
-
- 13 Jan, 2021 1 commit
-
-
Georges Racinet authored
-
- 10 Jan, 2021 1 commit
-
-
Georges Racinet authored
-
- 06 Jan, 2021 1 commit
-
-
Georges Racinet authored
Significant change to subset implemented in HGitaly: GitCommit message now has `tree_id` to be always filled. This can be indicative of a serious problem to circumvent on the client side (or not) before we implement the tree/blob API.
-
- 18 Dec, 2020 2 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
This is hooked in the "current" test, and indeed the Heptapod base image with Gitaly is supposed to have the Mercurial version for the current heptapod. The environment variable triggers coverage of the tests with Gitaly, which proves in particular that they are indeed launched.
-
- 20 Dec, 2020 3 commits
-
-
Georges Racinet authored
This provides the `gitaly_comparison` fixture, which stores channels to both Gitaly and HGitaly servers, as well as a whole hg-git mirroring setup, thanks to the `GitLabMirrorFixture` class provided by py-heptapod. As before, the fixture is declared in `conftest.py` (with the docstring now making fully sense), but the main class if elsewhere, namely in the `comparison` module. A first comparison test is written, which already uncovers two differences that should be fixed.
-
Georges Racinet authored
The GitalyServer class is able to configure, start and shutdown a Gitaly server, using the binaries from the Gitaly installation. The gitaly_channel fixture starts a `GitalyServer`, opens a client channel to it and waits for readiness. The fixture is defined in a package-local `conftest.py`, which has drawbacks, but it the only way to share it in practice. Most of the code is in the `gitaly` submodule anyway. Finally, `test_gitaly_server` ensures that this is working. The test is skipped if there is not known Gitaly installation, thanks to the utility provided at toplevel. Neither HGitaly nor Mercurial are involved at this point.
-
Georges Racinet authored
The ultimate goal being to be able to compare HGitaly responses to Gitaly responses, this defines concepts to describe Gitaly installations and adds a discovery system. A Gitaly installation is at this point a directory with all the compiled executables and a `ruby` subdirectory for the gitaly-ruby side. The CI will run on a base image with an existing installation, which will be specified by passing the `GITALY_INSTALL_DIR` environment variable, interpreted by these tests as a strong promise, and triggering the coverage of `tests_with_gitaly` in the `run-all-tests` script. Otherwise, the tests are able to detect the common case where HGitaly is part of a HDK workspace and use the standard location for the Gitaly checkout (after minimal checking).
-
- 19 Dec, 2020 2 commits
-
-
Georges Racinet authored
With 3.0.0, the way to skip an entire test module changed, and we'd prefer to avoid pollution by test harness conditionals. Such skipping will occur with the Gitaly comparison tests
-
Georges Racinet authored
This gives us some shortcuts with wrapper path and config.
-
- 18 Dec, 2020 4 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
We're importing a function for the GitLab branches state file, that appeared in the just released `heptapod==2.1.0`
-
Georges Racinet authored
-
- 17 Dec, 2020 6 commits
-
-
Georges Racinet authored
Could have spotted this in review, but better late than never.
-
Georges Racinet authored
`RepoWrapper` does have a convenient `prune` method.
-
Georges Racinet authored
As usual, this can happen if GitLab kept track of a changeset ID that since then has become obsolete. In that case, we must use the revset on the unfiltered repo and that's just the repo of the `changectx` returned by `gitlab_revision_changeset()`.
-
Georges Racinet authored
Relies on caching reader provided by py-heptapod!46 This completes the first incarnation of heptapod#373
-
Georges Racinet authored
Actually it would already have been `INTERNAL`, but for wrong reasons. Now we have the proper message and are ready to switch if Gitaly decides to use a different error code.
-
Georges Racinet authored
Usually, that wouldn't be what the server does on purpose, but it happens.
-
- 16 Dec, 2020 1 commit
-
-
Sushil Khanchi authored
--HG-- branch : stable
-
- 12 Jan, 2021 1 commit
-
-
Georges Racinet authored
--HG-- branch : stable
-