hgitaly 17.11.0__tar.gz → 17.11.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {hgitaly-17.11.0 → hgitaly-17.11.1}/PKG-INFO +1 -1
- hgitaly-17.11.1/hgitaly/VERSION +1 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/revision.py +4 -1
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/commit.py +21 -8
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_commit.py +3 -0
- hgitaly-17.11.1/hgitaly/stub/mercurial_operations_pb2.py +95 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/mercurial_operations_pb2_grpc.py +46 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly.egg-info/PKG-INFO +1 -1
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly.egg-info/SOURCES.txt +1 -132
- hgitaly-17.11.1/tests_with_gitaly/test_mercurial_operations.py +68 -0
- hgitaly-17.11.0/.coveragerc +0 -5
- hgitaly-17.11.0/.gitlab-ci.yml +0 -154
- hgitaly-17.11.0/.hgignore +0 -34
- hgitaly-17.11.0/.hgtags +0 -142
- hgitaly-17.11.0/ci/heptapod-sftp-push +0 -31
- hgitaly-17.11.0/ci/heptapod-sign-package +0 -34
- hgitaly-17.11.0/ci/heptapod_known_hosts.ssh +0 -4
- hgitaly-17.11.0/ci/upload-rhgitaly +0 -43
- hgitaly-17.11.0/conftest.py +0 -92
- hgitaly-17.11.0/dev-requirements.txt +0 -2
- hgitaly-17.11.0/examples/client.py +0 -48
- hgitaly-17.11.0/examples/client_list_lcft.py +0 -55
- hgitaly-17.11.0/generate-stubs +0 -34
- hgitaly-17.11.0/hgitaly/VERSION +0 -1
- hgitaly-17.11.0/hgitaly/license_detector/GPL-2.sample +0 -339
- hgitaly-17.11.0/hgitaly/stub/mercurial_operations_pb2.py +0 -87
- hgitaly-17.11.0/hgitaly/testing/data/authorized_keys +0 -1
- hgitaly-17.11.0/hgitaly/testing/data/backup_additional_no_git.tar +0 -0
- hgitaly-17.11.0/hgitaly/testing/data/id_ecdsa_user +0 -38
- hgitaly-17.11.0/hgitaly/testing/data/known_hosts +0 -2
- hgitaly-17.11.0/hgitaly/testing/data/ssh_host_ecdsa_key +0 -9
- hgitaly-17.11.0/hgitaly/testing/data/ssh_host_ecdsa_key.pub +0 -1
- hgitaly-17.11.0/hgitaly/testing/data/ssh_host_ed25519 +0 -8
- hgitaly-17.11.0/hgitaly/testing/data/ssh_host_ed25519.pub +0 -1
- hgitaly-17.11.0/hgitaly/testing/data/sshd_config +0 -17
- hgitaly-17.11.0/lint +0 -7
- hgitaly-17.11.0/protos/analysis.proto +0 -62
- hgitaly-17.11.0/protos/blob.proto +0 -299
- hgitaly-17.11.0/protos/cleanup.proto +0 -88
- hgitaly-17.11.0/protos/cluster.proto +0 -126
- hgitaly-17.11.0/protos/commit.proto +0 -985
- hgitaly-17.11.0/protos/conflicts.proto +0 -137
- hgitaly-17.11.0/protos/diff.proto +0 -622
- hgitaly-17.11.0/protos/errors.proto +0 -228
- hgitaly-17.11.0/protos/hook.proto +0 -205
- hgitaly-17.11.0/protos/internal.proto +0 -37
- hgitaly-17.11.0/protos/lint.proto +0 -75
- hgitaly-17.11.0/protos/log.proto +0 -134
- hgitaly-17.11.0/protos/mercurial-changeset.proto +0 -96
- hgitaly-17.11.0/protos/mercurial-operations.proto +0 -213
- hgitaly-17.11.0/protos/mercurial-repository.proto +0 -364
- hgitaly-17.11.0/protos/namespace.proto +0 -98
- hgitaly-17.11.0/protos/objectpool.proto +0 -173
- hgitaly-17.11.0/protos/operations.proto +0 -1139
- hgitaly-17.11.0/protos/packfile.proto +0 -26
- hgitaly-17.11.0/protos/partition.proto +0 -70
- hgitaly-17.11.0/protos/praefect.proto +0 -222
- hgitaly-17.11.0/protos/ref.proto +0 -593
- hgitaly-17.11.0/protos/remote.proto +0 -153
- hgitaly-17.11.0/protos/repository.proto +0 -1440
- hgitaly-17.11.0/protos/server.proto +0 -123
- hgitaly-17.11.0/protos/service_config.proto +0 -86
- hgitaly-17.11.0/protos/shared.proto +0 -248
- hgitaly-17.11.0/protos/smarthttp.proto +0 -121
- hgitaly-17.11.0/protos/ssh.proto +0 -109
- hgitaly-17.11.0/protos/transaction.proto +0 -104
- hgitaly-17.11.0/protos/wiki.proto +0 -211
- hgitaly-17.11.0/ruby/.ruby-version +0 -1
- hgitaly-17.11.0/ruby/Gemfile +0 -5
- hgitaly-17.11.0/ruby/README.md +0 -48
- hgitaly-17.11.0/ruby/generate-grpc-lib +0 -63
- hgitaly-17.11.0/ruby/hgitaly.gemspec +0 -25
- hgitaly-17.11.0/ruby/lib/hgitaly/mercurial-changeset_pb.rb +0 -69
- hgitaly-17.11.0/ruby/lib/hgitaly/mercurial-changeset_services_pb.rb +0 -25
- hgitaly-17.11.0/ruby/lib/hgitaly/mercurial-operations_pb.rb +0 -125
- hgitaly-17.11.0/ruby/lib/hgitaly/mercurial-operations_services_pb.rb +0 -49
- hgitaly-17.11.0/ruby/lib/hgitaly/mercurial-repository_pb.rb +0 -163
- hgitaly-17.11.0/ruby/lib/hgitaly/mercurial-repository_services_pb.rb +0 -79
- hgitaly-17.11.0/ruby/lib/hgitaly/version.rb +0 -4
- hgitaly-17.11.0/ruby/lib/hgitaly.rb +0 -13
- hgitaly-17.11.0/ruby/run.rb +0 -39
- hgitaly-17.11.0/run-all-tests +0 -24
- hgitaly-17.11.0/rust/Cargo.lock +0 -3266
- hgitaly-17.11.0/rust/Cargo.toml +0 -4
- hgitaly-17.11.0/rust/Makefile +0 -69
- hgitaly-17.11.0/rust/build-from-tarball.sh +0 -30
- hgitaly-17.11.0/rust/check-line-width +0 -48
- hgitaly-17.11.0/rust/dependencies/README.md +0 -19
- hgitaly-17.11.0/rust/dependencies/mercurial.patch +0 -39
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/any.proto +0 -158
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/api.proto +0 -208
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/compiler/plugin.proto +0 -183
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/descriptor.proto +0 -911
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/duration.proto +0 -116
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/empty.proto +0 -52
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/field_mask.proto +0 -245
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/source_context.proto +0 -48
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/struct.proto +0 -95
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/timestamp.proto +0 -147
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/type.proto +0 -187
- hgitaly-17.11.0/rust/dependencies/proto/google/protobuf/wrappers.proto +0 -123
- hgitaly-17.11.0/rust/go-enry.rev +0 -1
- hgitaly-17.11.0/rust/lint +0 -14
- hgitaly-17.11.0/rust/mercurial.rev +0 -1
- hgitaly-17.11.0/rust/rhgitaly/Cargo.toml +0 -48
- hgitaly-17.11.0/rust/rhgitaly/build.rs +0 -46
- hgitaly-17.11.0/rust/rhgitaly/clippy.toml +0 -6
- hgitaly-17.11.0/rust/rhgitaly/src/config.rs +0 -167
- hgitaly-17.11.0/rust/rhgitaly/src/errors.rs +0 -123
- hgitaly-17.11.0/rust/rhgitaly/src/generated/README.md +0 -7
- hgitaly-17.11.0/rust/rhgitaly/src/git.rs +0 -293
- hgitaly-17.11.0/rust/rhgitaly/src/gitlab/mod.rs +0 -50
- hgitaly-17.11.0/rust/rhgitaly/src/gitlab/reference.rs +0 -83
- hgitaly-17.11.0/rust/rhgitaly/src/gitlab/revision.rs +0 -320
- hgitaly-17.11.0/rust/rhgitaly/src/gitlab/state.rs +0 -508
- hgitaly-17.11.0/rust/rhgitaly/src/glob.rs +0 -227
- hgitaly-17.11.0/rust/rhgitaly/src/lib.rs +0 -44
- hgitaly-17.11.0/rust/rhgitaly/src/main.rs +0 -121
- hgitaly-17.11.0/rust/rhgitaly/src/mercurial.rs +0 -1366
- hgitaly-17.11.0/rust/rhgitaly/src/message.rs +0 -468
- hgitaly-17.11.0/rust/rhgitaly/src/metadata.rs +0 -27
- hgitaly-17.11.0/rust/rhgitaly/src/oid.rs +0 -86
- hgitaly-17.11.0/rust/rhgitaly/src/process.rs +0 -39
- hgitaly-17.11.0/rust/rhgitaly/src/repository/spawner.rs +0 -559
- hgitaly-17.11.0/rust/rhgitaly/src/service/analysis.rs +0 -184
- hgitaly-17.11.0/rust/rhgitaly/src/service/blob.rs +0 -260
- hgitaly-17.11.0/rust/rhgitaly/src/service/commit/find_commits.rs +0 -203
- hgitaly-17.11.0/rust/rhgitaly/src/service/commit/get_tree_entries.rs +0 -291
- hgitaly-17.11.0/rust/rhgitaly/src/service/commit/last_commits.rs +0 -569
- hgitaly-17.11.0/rust/rhgitaly/src/service/commit/tree_entry.rs +0 -154
- hgitaly-17.11.0/rust/rhgitaly/src/service/diff.rs +0 -97
- hgitaly-17.11.0/rust/rhgitaly/src/service/mercurial_repository.rs +0 -435
- hgitaly-17.11.0/rust/rhgitaly/src/service/mod.rs +0 -15
- hgitaly-17.11.0/rust/rhgitaly/src/service/ref.rs +0 -660
- hgitaly-17.11.0/rust/rhgitaly/src/service/remote.rs +0 -669
- hgitaly-17.11.0/rust/rhgitaly/src/service/repository.rs +0 -777
- hgitaly-17.11.0/rust/rhgitaly/src/service/server.rs +0 -34
- hgitaly-17.11.0/rust/rhgitaly/src/sidecar.rs +0 -186
- hgitaly-17.11.0/rust/rhgitaly/src/ssh.rs +0 -102
- hgitaly-17.11.0/rust/rhgitaly/src/streaming.rs +0 -402
- hgitaly-17.11.0/rust/rhgitaly/src/util.rs +0 -132
- hgitaly-17.11.0/rust/rs-enry.rev +0 -1
- hgitaly-17.11.0/rust/src-tarball.sh +0 -63
- hgitaly-17.11.0/test-requirements.txt +0 -8
- {hgitaly-17.11.0 → hgitaly-17.11.1}/LICENSE +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/MANIFEST.in +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/README.md +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgext3rd/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgext3rd/hgitaly/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgext3rd/hgitaly/revset.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgext3rd/hgitaly/tests/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgext3rd/hgitaly/tests/test_revset.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgext3rd/hgitaly/tests/test_serve.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/branch.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/changelog.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/diff.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/errors.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/feature.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/file_content.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/file_context.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/git.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/gitlab_ref.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/identification.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/license_detector/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/license_detector/spdx-licenses.json +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/linguist/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/linguist/languages.json +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/logging.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/manifest.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/message.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/oid.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/pagination.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/path.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/peer.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/procutil.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/repository.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/revset.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/scripts.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/address.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/mono.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/prefork.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/tests/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/tests/test_address.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/tests/test_mono.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/tests/test_prefork.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/tests/test_worker.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/server/worker.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/analysis.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/blob.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/diff.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/interceptors.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/mercurial_changeset.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/mercurial_operations.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/mercurial_repository.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/operations.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/ref.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/repository.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/server.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/fixture.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_analysis.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_blob.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_default_branch.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_diff.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_mercurial_changeset.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_mercurial_operations.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_mercurial_repository.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_operations.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_ref.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_repository_service.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/service/tests/test_server.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/servicer.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/ssh.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stream.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/analysis_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/analysis_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/blob_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/blob_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/commit_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/commit_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/diff_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/diff_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/errors_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/errors_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/lint_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/lint_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/mercurial_aux_git_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/mercurial_aux_git_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/mercurial_changeset_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/mercurial_changeset_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/mercurial_repository_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/mercurial_repository_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/operations_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/operations_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/ref_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/ref_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/remote_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/remote_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/repository_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/repository_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/server_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/server_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/shared_pb2.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/stub/shared_pb2_grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tag.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/bundle.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/context.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/grpc.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/multiprocessing.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/ssh.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/sshd.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/storage.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/tests/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/testing/tests/test_sshd.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/common.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_branch.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_diff.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_errors.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_feature.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_file_context.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_gitlab_ref.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_identification.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_license_detector.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_linguist.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_manifest.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_messages.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_oid.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_peer.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_repository.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_revision.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_revset.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_servicer.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_stream.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_tag.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/tests/test_workdir.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/util.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly/workdir.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly.egg-info/dependency_links.txt +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly.egg-info/entry_points.txt +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly.egg-info/requires.txt +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/hgitaly.egg-info/top_level.txt +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/install-requirements.txt +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/setup.cfg +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/setup.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/__init__.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/comparison.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/conftest.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/gitaly.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/hgitaly_rhgitaly_comparison.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/rhgitaly.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_blob_tree.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_commit.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_comparison.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_diff.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_gitaly_server.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_mercurial_aux_git.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_mercurial_repository.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_operations.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_ref.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_remote.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_repository_service.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_rhgitaly_server.py +0 -0
- {hgitaly-17.11.0 → hgitaly-17.11.1}/tests_with_gitaly/test_server.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
17.11.1
|
|
@@ -145,6 +145,7 @@ def gitlab_revision_hash(repo, revision):
|
|
|
145
145
|
|
|
146
146
|
|
|
147
147
|
ALL_CHANGESETS = object()
|
|
148
|
+
VISIBLE_CHANGESETS = object()
|
|
148
149
|
|
|
149
150
|
|
|
150
151
|
def resolve_revspecs_positive_negative(repo, revisions,
|
|
@@ -184,9 +185,11 @@ def resolve_revspecs_positive_negative(repo, revisions,
|
|
|
184
185
|
else:
|
|
185
186
|
if rev == b'ALL':
|
|
186
187
|
positive = ALL_CHANGESETS
|
|
188
|
+
elif rev == b'--visible':
|
|
189
|
+
positive = VISIBLE_CHANGESETS
|
|
187
190
|
collection = positive
|
|
188
191
|
|
|
189
|
-
if collection
|
|
192
|
+
if collection in (ALL_CHANGESETS, VISIBLE_CHANGESETS):
|
|
190
193
|
# resolution is useless
|
|
191
194
|
continue
|
|
192
195
|
|
|
@@ -51,6 +51,7 @@ from ..pagination import (
|
|
|
51
51
|
extract_limit,
|
|
52
52
|
)
|
|
53
53
|
from ..revision import (
|
|
54
|
+
VISIBLE_CHANGESETS,
|
|
54
55
|
RevisionNotFound,
|
|
55
56
|
gitlab_revision_changeset,
|
|
56
57
|
resolve_revspecs_positive_negative,
|
|
@@ -902,14 +903,21 @@ class CommitServicer(CommitServiceServicer, HGitalyServicer):
|
|
|
902
903
|
context.abort(StatusCode.INTERNAL,
|
|
903
904
|
"Revision %r could not be resolved" % exc.args[0])
|
|
904
905
|
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
906
|
+
if positive is VISIBLE_CHANGESETS:
|
|
907
|
+
# do not switch to unfiltered view!
|
|
908
|
+
if negative:
|
|
909
|
+
revset = b'not ::%ls'
|
|
910
|
+
else:
|
|
911
|
+
revset = b'all()'
|
|
911
912
|
else:
|
|
912
|
-
|
|
913
|
+
# now that resolution is done, we can and have to switch to
|
|
914
|
+
# the unfiltered view, because the resulting hashes can be of
|
|
915
|
+
# obsolete changesets.
|
|
916
|
+
repo = repo.unfiltered()
|
|
917
|
+
if negative:
|
|
918
|
+
revset = b'only(%ls, %ls)'
|
|
919
|
+
else:
|
|
920
|
+
revset = b'::%ls'
|
|
913
921
|
|
|
914
922
|
msg_patterns = request.commit_message_patterns
|
|
915
923
|
ignore_case = request.ignore_case
|
|
@@ -937,7 +945,12 @@ class CommitServicer(CommitServiceServicer, HGitalyServicer):
|
|
|
937
945
|
revset = b'sort(%s, %s)' % (revset, sort_key)
|
|
938
946
|
|
|
939
947
|
try:
|
|
940
|
-
if
|
|
948
|
+
if positive is VISIBLE_CHANGESETS:
|
|
949
|
+
if negative:
|
|
950
|
+
revs = repo.revs(revset, negative)
|
|
951
|
+
else:
|
|
952
|
+
revs = repo.revs(revset)
|
|
953
|
+
elif negative:
|
|
941
954
|
revs = repo.revs(revset, positive, negative)
|
|
942
955
|
else:
|
|
943
956
|
revs = repo.revs(revset, positive)
|
|
@@ -1333,6 +1333,7 @@ def test_list_commits(commit_fixture_empty_repo):
|
|
|
1333
1333
|
ctx0 = wrapper.commit_file('foo', message="root changeset")
|
|
1334
1334
|
sha0 = ctx0.hex()
|
|
1335
1335
|
ctx1 = wrapper.commit_file('foo', topic='sampletop')
|
|
1336
|
+
sha1 = ctx1.hex()
|
|
1336
1337
|
wrapper.update(ctx0.rev())
|
|
1337
1338
|
wrapper.command(b'mv', wrapper.repo.root + b'/foo',
|
|
1338
1339
|
wrapper.repo.root + b'/zoo')
|
|
@@ -1351,6 +1352,8 @@ def test_list_commits(commit_fixture_empty_repo):
|
|
|
1351
1352
|
def caret(ctx):
|
|
1352
1353
|
return b'^' + ctx.hex()
|
|
1353
1354
|
|
|
1355
|
+
assert list_commits('--visible') == [sha4, sha3, sha2, sha1, sha0]
|
|
1356
|
+
assert list_commits('--visible', caret(ctx3)) == [sha4, sha2, sha1]
|
|
1354
1357
|
assert list_commits(sha4, caret(ctx1)) == [sha4, sha3, sha2]
|
|
1355
1358
|
assert list_commits(sha4, caret(ctx1), reverse=True) == [sha2, sha3, sha4]
|
|
1356
1359
|
assert list_commits(sha4, caret(ctx1), skip=1) == [sha3, sha2]
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: mercurial-operations.proto
|
|
4
|
+
# Protobuf Python Version: 5.26.1
|
|
5
|
+
"""Generated protocol buffer code."""
|
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
|
7
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
8
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
9
|
+
from google.protobuf.internal import builder as _builder
|
|
10
|
+
# @@protoc_insertion_point(imports)
|
|
11
|
+
|
|
12
|
+
_sym_db = _symbol_database.Default()
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from . import errors_pb2 as errors__pb2
|
|
16
|
+
from . import lint_pb2 as lint__pb2
|
|
17
|
+
from . import shared_pb2 as shared__pb2
|
|
18
|
+
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
|
|
19
|
+
from . import operations_pb2 as operations__pb2
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1amercurial-operations.proto\x12\x07hgitaly\x1a\x0c\x65rrors.proto\x1a\nlint.proto\x1a\x0cshared.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x10operations.proto\"\x94\x01\n\x14MergeAnalysisRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x17\n\x0fsource_revision\x18\x02 \x01(\x0c\x12\x17\n\x0ftarget_revision\x18\x03 \x01(\x0c\x12\x1c\n\x14skip_conflicts_check\x18\x04 \x01(\x08\"\xad\x02\n\x15MergeAnalysisResponse\x12\x17\n\x0fis_fast_forward\x18\x01 \x01(\x08\x12\x1f\n\x17has_obsolete_changesets\x18\x02 \x01(\x08\x12\x1f\n\x17has_unstable_changesets\x18\x03 \x01(\x08\x12\x15\n\rhas_conflicts\x18\x04 \x01(\x08\x12\x18\n\x10target_is_public\x18\x05 \x01(\x08\x12\x16\n\x0etarget_node_id\x18\x06 \x01(\t\x12\x15\n\rtarget_branch\x18\x07 \x01(\x0c\x12\x14\n\x0ctarget_topic\x18\x08 \x01(\x0c\x12\x16\n\x0esource_node_id\x18\t \x01(\t\x12\x15\n\rsource_branch\x18\n \x01(\x0c\x12\x14\n\x0csource_topic\x18\x0b \x01(\x0c\"N\n\x1eInvalidateMergeAnalysisRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\"<\n\x1fInvalidateMergeAnalysisResponse\x12\x19\n\x11invalidated_count\x18\x01 \x01(\r\"\xad\x01\n\x17PublishChangesetRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x1a\n\x04user\x18\x02 \x01(\x0b\x32\x0c.gitaly.User\x12/\n\x08hg_perms\x18\x03 \x01(\x0e\x32\x1d.hgitaly.MercurialPermissions\x12\x17\n\x0fgitlab_revision\x18\x04 \x01(\x0c\"\x1a\n\x18PublishChangesetResponse\"P\n\x15PublishChangesetError\x12.\n\x0bgitlab_hook\x18\x01 \x01(\x0b\x32\x17.gitaly.CustomHookErrorH\x00\x42\x07\n\x05\x65rror\"\xa1\x02\n\x12MergeBranchRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x1a\n\x04user\x18\x02 \x01(\x0b\x32\x0c.gitaly.User\x12/\n\x08hg_perms\x18\x03 \x01(\x0e\x32\x1d.hgitaly.MercurialPermissions\x12\x11\n\tcommit_id\x18\x04 \x01(\t\x12\x0e\n\x06\x62ranch\x18\x05 \x01(\x0c\x12\x0f\n\x07message\x18\x06 \x01(\x0c\x12-\n\ttimestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10\x65xpected_old_oid\x18\x08 \x01(\t\x12\x13\n\x0bsemi_linear\x18\t \x01(\x08\"K\n\x13MergeBranchResponse\x12\x34\n\rbranch_update\x18\x01 \x01(\x0b\x32\x1d.gitaly.OperationBranchUpdate\"\xe7\x01\n\x10MergeBranchError\x12.\n\x0bgitlab_hook\x18\x01 \x01(\x0b\x32\x17.gitaly.CustomHookErrorH\x00\x12.\n\x08\x63onflict\x18\x02 \x01(\x0b\x32\x1a.gitaly.MergeConflictErrorH\x00\x12\x37\n\x0freference_check\x18\x03 \x01(\x0b\x32\x1c.gitaly.ReferenceUpdateErrorH\x00\x12\x31\n\tpre_check\x18\x04 \x01(\x0e\x32\x1c.hgitaly.PreCheckUpdateErrorH\x00\x42\x07\n\x05\x65rror\"\x9a\x01\n\rCensorRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x1a\n\x04user\x18\x02 \x01(\x0b\x32\x0c.gitaly.User\x12\x19\n\x11\x63hangeset_node_id\x18\x03 \x01(\t\x12\x11\n\tfile_path\x18\x04 \x01(\x0c\x12\x11\n\ttombstone\x18\x05 \x01(\x0c\"\x10\n\x0e\x43\x65nsorResponse\"\x87\x01\n\x1aGetWorkingDirectoryRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x11\n\tclient_id\x18\x02 \x01(\t\x12\x16\n\x0eincarnation_id\x18\x03 \x01(\t\x12\x10\n\x08revision\x18\x04 \x01(\x0c\"R\n\x1bGetWorkingDirectoryResponse\x12\x1c\n\x14working_directory_id\x18\x01 \x01(\r\x12\x15\n\rrelative_path\x18\x02 \x01(\t\"\x97\x01\n\x1eReleaseWorkingDirectoryRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x11\n\tclient_id\x18\x02 \x01(\t\x12\x16\n\x0eincarnation_id\x18\x03 \x01(\t\x12\x1c\n\x14working_directory_id\x18\x04 \x01(\r\"!\n\x1fReleaseWorkingDirectoryResponse*8\n\x14MercurialPermissions\x12\x08\n\x04READ\x10\x00\x12\t\n\x05WRITE\x10\x01\x12\x0b\n\x07PUBLISH\x10\x02*k\n\x13PreCheckUpdateError\x12\x0e\n\nNO_PROBLEM\x10\x00\x12\x14\n\x10NOT_FAST_FORWARD\x10\x01\x12\x16\n\x12OBSOLETE_CHANGESET\x10\x02\x12\x16\n\x12UNSTABLE_CHANGESET\x10\x03\x32\xc0\x05\n\x1aMercurialOperationsService\x12V\n\rMergeAnalysis\x12\x1d.hgitaly.MergeAnalysisRequest\x1a\x1e.hgitaly.MergeAnalysisResponse\"\x06\xfa\x97(\x02\x08\x02\x12t\n\x17InvalidateMergeAnalysis\x12\'.hgitaly.InvalidateMergeAnalysisRequest\x1a(.hgitaly.InvalidateMergeAnalysisResponse\"\x06\xfa\x97(\x02\x08\x02\x12_\n\x10PublishChangeset\x12 .hgitaly.PublishChangesetRequest\x1a!.hgitaly.PublishChangesetResponse\"\x06\xfa\x97(\x02\x08\x01\x12\x41\n\x06\x43\x65nsor\x12\x16.hgitaly.CensorRequest\x1a\x17.hgitaly.CensorResponse\"\x06\xfa\x97(\x02\x08\x01\x12P\n\x0bMergeBranch\x12\x1b.hgitaly.MergeBranchRequest\x1a\x1c.hgitaly.MergeBranchResponse\"\x06\xfa\x97(\x02\x08\x01\x12h\n\x13GetWorkingDirectory\x12#.hgitaly.GetWorkingDirectoryRequest\x1a$.hgitaly.GetWorkingDirectoryResponse\"\x06\xfa\x97(\x02\x08\x01\x12t\n\x17ReleaseWorkingDirectory\x12\'.hgitaly.ReleaseWorkingDirectoryRequest\x1a(.hgitaly.ReleaseWorkingDirectoryResponse\"\x06\xfa\x97(\x02\x08\x01\x62\x06proto3')
|
|
23
|
+
|
|
24
|
+
_globals = globals()
|
|
25
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
26
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'mercurial_operations_pb2', _globals)
|
|
27
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
28
|
+
DESCRIPTOR._loaded_options = None
|
|
29
|
+
_globals['_MERGEANALYSISREQUEST'].fields_by_name['repository']._loaded_options = None
|
|
30
|
+
_globals['_MERGEANALYSISREQUEST'].fields_by_name['repository']._serialized_options = b'\230\306,\001'
|
|
31
|
+
_globals['_INVALIDATEMERGEANALYSISREQUEST'].fields_by_name['repository']._loaded_options = None
|
|
32
|
+
_globals['_INVALIDATEMERGEANALYSISREQUEST'].fields_by_name['repository']._serialized_options = b'\230\306,\001'
|
|
33
|
+
_globals['_PUBLISHCHANGESETREQUEST'].fields_by_name['repository']._loaded_options = None
|
|
34
|
+
_globals['_PUBLISHCHANGESETREQUEST'].fields_by_name['repository']._serialized_options = b'\230\306,\001'
|
|
35
|
+
_globals['_MERGEBRANCHREQUEST'].fields_by_name['repository']._loaded_options = None
|
|
36
|
+
_globals['_MERGEBRANCHREQUEST'].fields_by_name['repository']._serialized_options = b'\230\306,\001'
|
|
37
|
+
_globals['_CENSORREQUEST'].fields_by_name['repository']._loaded_options = None
|
|
38
|
+
_globals['_CENSORREQUEST'].fields_by_name['repository']._serialized_options = b'\230\306,\001'
|
|
39
|
+
_globals['_GETWORKINGDIRECTORYREQUEST'].fields_by_name['repository']._loaded_options = None
|
|
40
|
+
_globals['_GETWORKINGDIRECTORYREQUEST'].fields_by_name['repository']._serialized_options = b'\230\306,\001'
|
|
41
|
+
_globals['_RELEASEWORKINGDIRECTORYREQUEST'].fields_by_name['repository']._loaded_options = None
|
|
42
|
+
_globals['_RELEASEWORKINGDIRECTORYREQUEST'].fields_by_name['repository']._serialized_options = b'\230\306,\001'
|
|
43
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['MergeAnalysis']._loaded_options = None
|
|
44
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['MergeAnalysis']._serialized_options = b'\372\227(\002\010\002'
|
|
45
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['InvalidateMergeAnalysis']._loaded_options = None
|
|
46
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['InvalidateMergeAnalysis']._serialized_options = b'\372\227(\002\010\002'
|
|
47
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['PublishChangeset']._loaded_options = None
|
|
48
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['PublishChangeset']._serialized_options = b'\372\227(\002\010\001'
|
|
49
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['Censor']._loaded_options = None
|
|
50
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['Censor']._serialized_options = b'\372\227(\002\010\001'
|
|
51
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['MergeBranch']._loaded_options = None
|
|
52
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['MergeBranch']._serialized_options = b'\372\227(\002\010\001'
|
|
53
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['GetWorkingDirectory']._loaded_options = None
|
|
54
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['GetWorkingDirectory']._serialized_options = b'\372\227(\002\010\001'
|
|
55
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['ReleaseWorkingDirectory']._loaded_options = None
|
|
56
|
+
_globals['_MERCURIALOPERATIONSSERVICE'].methods_by_name['ReleaseWorkingDirectory']._serialized_options = b'\372\227(\002\010\001'
|
|
57
|
+
_globals['_MERCURIALPERMISSIONS']._serialized_start=2202
|
|
58
|
+
_globals['_MERCURIALPERMISSIONS']._serialized_end=2258
|
|
59
|
+
_globals['_PRECHECKUPDATEERROR']._serialized_start=2260
|
|
60
|
+
_globals['_PRECHECKUPDATEERROR']._serialized_end=2367
|
|
61
|
+
_globals['_MERGEANALYSISREQUEST']._serialized_start=131
|
|
62
|
+
_globals['_MERGEANALYSISREQUEST']._serialized_end=279
|
|
63
|
+
_globals['_MERGEANALYSISRESPONSE']._serialized_start=282
|
|
64
|
+
_globals['_MERGEANALYSISRESPONSE']._serialized_end=583
|
|
65
|
+
_globals['_INVALIDATEMERGEANALYSISREQUEST']._serialized_start=585
|
|
66
|
+
_globals['_INVALIDATEMERGEANALYSISREQUEST']._serialized_end=663
|
|
67
|
+
_globals['_INVALIDATEMERGEANALYSISRESPONSE']._serialized_start=665
|
|
68
|
+
_globals['_INVALIDATEMERGEANALYSISRESPONSE']._serialized_end=725
|
|
69
|
+
_globals['_PUBLISHCHANGESETREQUEST']._serialized_start=728
|
|
70
|
+
_globals['_PUBLISHCHANGESETREQUEST']._serialized_end=901
|
|
71
|
+
_globals['_PUBLISHCHANGESETRESPONSE']._serialized_start=903
|
|
72
|
+
_globals['_PUBLISHCHANGESETRESPONSE']._serialized_end=929
|
|
73
|
+
_globals['_PUBLISHCHANGESETERROR']._serialized_start=931
|
|
74
|
+
_globals['_PUBLISHCHANGESETERROR']._serialized_end=1011
|
|
75
|
+
_globals['_MERGEBRANCHREQUEST']._serialized_start=1014
|
|
76
|
+
_globals['_MERGEBRANCHREQUEST']._serialized_end=1303
|
|
77
|
+
_globals['_MERGEBRANCHRESPONSE']._serialized_start=1305
|
|
78
|
+
_globals['_MERGEBRANCHRESPONSE']._serialized_end=1380
|
|
79
|
+
_globals['_MERGEBRANCHERROR']._serialized_start=1383
|
|
80
|
+
_globals['_MERGEBRANCHERROR']._serialized_end=1614
|
|
81
|
+
_globals['_CENSORREQUEST']._serialized_start=1617
|
|
82
|
+
_globals['_CENSORREQUEST']._serialized_end=1771
|
|
83
|
+
_globals['_CENSORRESPONSE']._serialized_start=1773
|
|
84
|
+
_globals['_CENSORRESPONSE']._serialized_end=1789
|
|
85
|
+
_globals['_GETWORKINGDIRECTORYREQUEST']._serialized_start=1792
|
|
86
|
+
_globals['_GETWORKINGDIRECTORYREQUEST']._serialized_end=1927
|
|
87
|
+
_globals['_GETWORKINGDIRECTORYRESPONSE']._serialized_start=1929
|
|
88
|
+
_globals['_GETWORKINGDIRECTORYRESPONSE']._serialized_end=2011
|
|
89
|
+
_globals['_RELEASEWORKINGDIRECTORYREQUEST']._serialized_start=2014
|
|
90
|
+
_globals['_RELEASEWORKINGDIRECTORYREQUEST']._serialized_end=2165
|
|
91
|
+
_globals['_RELEASEWORKINGDIRECTORYRESPONSE']._serialized_start=2167
|
|
92
|
+
_globals['_RELEASEWORKINGDIRECTORYRESPONSE']._serialized_end=2200
|
|
93
|
+
_globals['_MERCURIALOPERATIONSSERVICE']._serialized_start=2370
|
|
94
|
+
_globals['_MERCURIALOPERATIONSSERVICE']._serialized_end=3074
|
|
95
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -44,6 +44,11 @@ class MercurialOperationsServiceStub(object):
|
|
|
44
44
|
request_serializer=mercurial__operations__pb2.MergeAnalysisRequest.SerializeToString,
|
|
45
45
|
response_deserializer=mercurial__operations__pb2.MergeAnalysisResponse.FromString,
|
|
46
46
|
_registered_method=True)
|
|
47
|
+
self.InvalidateMergeAnalysis = channel.unary_unary(
|
|
48
|
+
'/hgitaly.MercurialOperationsService/InvalidateMergeAnalysis',
|
|
49
|
+
request_serializer=mercurial__operations__pb2.InvalidateMergeAnalysisRequest.SerializeToString,
|
|
50
|
+
response_deserializer=mercurial__operations__pb2.InvalidateMergeAnalysisResponse.FromString,
|
|
51
|
+
_registered_method=True)
|
|
47
52
|
self.PublishChangeset = channel.unary_unary(
|
|
48
53
|
'/hgitaly.MercurialOperationsService/PublishChangeset',
|
|
49
54
|
request_serializer=mercurial__operations__pb2.PublishChangesetRequest.SerializeToString,
|
|
@@ -83,6 +88,15 @@ class MercurialOperationsServiceServicer(object):
|
|
|
83
88
|
context.set_details('Method not implemented!')
|
|
84
89
|
raise NotImplementedError('Method not implemented!')
|
|
85
90
|
|
|
91
|
+
def InvalidateMergeAnalysis(self, request, context):
|
|
92
|
+
"""Invalidate cache for MergeAnalysis
|
|
93
|
+
|
|
94
|
+
Will be used in mergeability checks and last-minute checks if needed.
|
|
95
|
+
"""
|
|
96
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
97
|
+
context.set_details('Method not implemented!')
|
|
98
|
+
raise NotImplementedError('Method not implemented!')
|
|
99
|
+
|
|
86
100
|
def PublishChangeset(self, request, context):
|
|
87
101
|
"""Publish a changeset
|
|
88
102
|
|
|
@@ -140,6 +154,11 @@ def add_MercurialOperationsServiceServicer_to_server(servicer, server):
|
|
|
140
154
|
request_deserializer=mercurial__operations__pb2.MergeAnalysisRequest.FromString,
|
|
141
155
|
response_serializer=mercurial__operations__pb2.MergeAnalysisResponse.SerializeToString,
|
|
142
156
|
),
|
|
157
|
+
'InvalidateMergeAnalysis': grpc.unary_unary_rpc_method_handler(
|
|
158
|
+
servicer.InvalidateMergeAnalysis,
|
|
159
|
+
request_deserializer=mercurial__operations__pb2.InvalidateMergeAnalysisRequest.FromString,
|
|
160
|
+
response_serializer=mercurial__operations__pb2.InvalidateMergeAnalysisResponse.SerializeToString,
|
|
161
|
+
),
|
|
143
162
|
'PublishChangeset': grpc.unary_unary_rpc_method_handler(
|
|
144
163
|
servicer.PublishChangeset,
|
|
145
164
|
request_deserializer=mercurial__operations__pb2.PublishChangesetRequest.FromString,
|
|
@@ -202,6 +221,33 @@ class MercurialOperationsService(object):
|
|
|
202
221
|
metadata,
|
|
203
222
|
_registered_method=True)
|
|
204
223
|
|
|
224
|
+
@staticmethod
|
|
225
|
+
def InvalidateMergeAnalysis(request,
|
|
226
|
+
target,
|
|
227
|
+
options=(),
|
|
228
|
+
channel_credentials=None,
|
|
229
|
+
call_credentials=None,
|
|
230
|
+
insecure=False,
|
|
231
|
+
compression=None,
|
|
232
|
+
wait_for_ready=None,
|
|
233
|
+
timeout=None,
|
|
234
|
+
metadata=None):
|
|
235
|
+
return grpc.experimental.unary_unary(
|
|
236
|
+
request,
|
|
237
|
+
target,
|
|
238
|
+
'/hgitaly.MercurialOperationsService/InvalidateMergeAnalysis',
|
|
239
|
+
mercurial__operations__pb2.InvalidateMergeAnalysisRequest.SerializeToString,
|
|
240
|
+
mercurial__operations__pb2.InvalidateMergeAnalysisResponse.FromString,
|
|
241
|
+
options,
|
|
242
|
+
channel_credentials,
|
|
243
|
+
insecure,
|
|
244
|
+
call_credentials,
|
|
245
|
+
compression,
|
|
246
|
+
wait_for_ready,
|
|
247
|
+
timeout,
|
|
248
|
+
metadata,
|
|
249
|
+
_registered_method=True)
|
|
250
|
+
|
|
205
251
|
@staticmethod
|
|
206
252
|
def PublishChangeset(request,
|
|
207
253
|
target,
|
|
@@ -1,24 +1,8 @@
|
|
|
1
|
-
.coveragerc
|
|
2
|
-
.gitlab-ci.yml
|
|
3
|
-
.hgignore
|
|
4
|
-
.hgtags
|
|
5
1
|
LICENSE
|
|
6
2
|
MANIFEST.in
|
|
7
3
|
README.md
|
|
8
|
-
conftest.py
|
|
9
|
-
dev-requirements.txt
|
|
10
|
-
generate-stubs
|
|
11
4
|
install-requirements.txt
|
|
12
|
-
lint
|
|
13
|
-
run-all-tests
|
|
14
5
|
setup.py
|
|
15
|
-
test-requirements.txt
|
|
16
|
-
ci/heptapod-sftp-push
|
|
17
|
-
ci/heptapod-sign-package
|
|
18
|
-
ci/heptapod_known_hosts.ssh
|
|
19
|
-
ci/upload-rhgitaly
|
|
20
|
-
examples/client.py
|
|
21
|
-
examples/client_list_lcft.py
|
|
22
6
|
hgext3rd/__init__.py
|
|
23
7
|
hgext3rd/hgitaly/__init__.py
|
|
24
8
|
hgext3rd/hgitaly/revset.py
|
|
@@ -61,7 +45,6 @@ hgitaly.egg-info/dependency_links.txt
|
|
|
61
45
|
hgitaly.egg-info/entry_points.txt
|
|
62
46
|
hgitaly.egg-info/requires.txt
|
|
63
47
|
hgitaly.egg-info/top_level.txt
|
|
64
|
-
hgitaly/license_detector/GPL-2.sample
|
|
65
48
|
hgitaly/license_detector/__init__.py
|
|
66
49
|
hgitaly/license_detector/spdx-licenses.json
|
|
67
50
|
hgitaly/linguist/__init__.py
|
|
@@ -144,15 +127,6 @@ hgitaly/testing/multiprocessing.py
|
|
|
144
127
|
hgitaly/testing/ssh.py
|
|
145
128
|
hgitaly/testing/sshd.py
|
|
146
129
|
hgitaly/testing/storage.py
|
|
147
|
-
hgitaly/testing/data/authorized_keys
|
|
148
|
-
hgitaly/testing/data/backup_additional_no_git.tar
|
|
149
|
-
hgitaly/testing/data/id_ecdsa_user
|
|
150
|
-
hgitaly/testing/data/known_hosts
|
|
151
|
-
hgitaly/testing/data/ssh_host_ecdsa_key
|
|
152
|
-
hgitaly/testing/data/ssh_host_ecdsa_key.pub
|
|
153
|
-
hgitaly/testing/data/ssh_host_ed25519
|
|
154
|
-
hgitaly/testing/data/ssh_host_ed25519.pub
|
|
155
|
-
hgitaly/testing/data/sshd_config
|
|
156
130
|
hgitaly/testing/tests/__init__.py
|
|
157
131
|
hgitaly/testing/tests/test_sshd.py
|
|
158
132
|
hgitaly/tests/__init__.py
|
|
@@ -177,112 +151,6 @@ hgitaly/tests/test_servicer.py
|
|
|
177
151
|
hgitaly/tests/test_stream.py
|
|
178
152
|
hgitaly/tests/test_tag.py
|
|
179
153
|
hgitaly/tests/test_workdir.py
|
|
180
|
-
protos/analysis.proto
|
|
181
|
-
protos/blob.proto
|
|
182
|
-
protos/cleanup.proto
|
|
183
|
-
protos/cluster.proto
|
|
184
|
-
protos/commit.proto
|
|
185
|
-
protos/conflicts.proto
|
|
186
|
-
protos/diff.proto
|
|
187
|
-
protos/errors.proto
|
|
188
|
-
protos/hook.proto
|
|
189
|
-
protos/internal.proto
|
|
190
|
-
protos/lint.proto
|
|
191
|
-
protos/log.proto
|
|
192
|
-
protos/mercurial-changeset.proto
|
|
193
|
-
protos/mercurial-operations.proto
|
|
194
|
-
protos/mercurial-repository.proto
|
|
195
|
-
protos/namespace.proto
|
|
196
|
-
protos/objectpool.proto
|
|
197
|
-
protos/operations.proto
|
|
198
|
-
protos/packfile.proto
|
|
199
|
-
protos/partition.proto
|
|
200
|
-
protos/praefect.proto
|
|
201
|
-
protos/ref.proto
|
|
202
|
-
protos/remote.proto
|
|
203
|
-
protos/repository.proto
|
|
204
|
-
protos/server.proto
|
|
205
|
-
protos/service_config.proto
|
|
206
|
-
protos/shared.proto
|
|
207
|
-
protos/smarthttp.proto
|
|
208
|
-
protos/ssh.proto
|
|
209
|
-
protos/transaction.proto
|
|
210
|
-
protos/wiki.proto
|
|
211
|
-
ruby/.ruby-version
|
|
212
|
-
ruby/Gemfile
|
|
213
|
-
ruby/README.md
|
|
214
|
-
ruby/generate-grpc-lib
|
|
215
|
-
ruby/hgitaly.gemspec
|
|
216
|
-
ruby/run.rb
|
|
217
|
-
ruby/lib/hgitaly.rb
|
|
218
|
-
ruby/lib/hgitaly/mercurial-changeset_pb.rb
|
|
219
|
-
ruby/lib/hgitaly/mercurial-changeset_services_pb.rb
|
|
220
|
-
ruby/lib/hgitaly/mercurial-operations_pb.rb
|
|
221
|
-
ruby/lib/hgitaly/mercurial-operations_services_pb.rb
|
|
222
|
-
ruby/lib/hgitaly/mercurial-repository_pb.rb
|
|
223
|
-
ruby/lib/hgitaly/mercurial-repository_services_pb.rb
|
|
224
|
-
ruby/lib/hgitaly/version.rb
|
|
225
|
-
rust/Cargo.lock
|
|
226
|
-
rust/Cargo.toml
|
|
227
|
-
rust/Makefile
|
|
228
|
-
rust/build-from-tarball.sh
|
|
229
|
-
rust/check-line-width
|
|
230
|
-
rust/go-enry.rev
|
|
231
|
-
rust/lint
|
|
232
|
-
rust/mercurial.rev
|
|
233
|
-
rust/rs-enry.rev
|
|
234
|
-
rust/src-tarball.sh
|
|
235
|
-
rust/dependencies/README.md
|
|
236
|
-
rust/dependencies/mercurial.patch
|
|
237
|
-
rust/dependencies/proto/google/protobuf/any.proto
|
|
238
|
-
rust/dependencies/proto/google/protobuf/api.proto
|
|
239
|
-
rust/dependencies/proto/google/protobuf/descriptor.proto
|
|
240
|
-
rust/dependencies/proto/google/protobuf/duration.proto
|
|
241
|
-
rust/dependencies/proto/google/protobuf/empty.proto
|
|
242
|
-
rust/dependencies/proto/google/protobuf/field_mask.proto
|
|
243
|
-
rust/dependencies/proto/google/protobuf/source_context.proto
|
|
244
|
-
rust/dependencies/proto/google/protobuf/struct.proto
|
|
245
|
-
rust/dependencies/proto/google/protobuf/timestamp.proto
|
|
246
|
-
rust/dependencies/proto/google/protobuf/type.proto
|
|
247
|
-
rust/dependencies/proto/google/protobuf/wrappers.proto
|
|
248
|
-
rust/dependencies/proto/google/protobuf/compiler/plugin.proto
|
|
249
|
-
rust/rhgitaly/Cargo.toml
|
|
250
|
-
rust/rhgitaly/build.rs
|
|
251
|
-
rust/rhgitaly/clippy.toml
|
|
252
|
-
rust/rhgitaly/src/config.rs
|
|
253
|
-
rust/rhgitaly/src/errors.rs
|
|
254
|
-
rust/rhgitaly/src/git.rs
|
|
255
|
-
rust/rhgitaly/src/glob.rs
|
|
256
|
-
rust/rhgitaly/src/lib.rs
|
|
257
|
-
rust/rhgitaly/src/main.rs
|
|
258
|
-
rust/rhgitaly/src/mercurial.rs
|
|
259
|
-
rust/rhgitaly/src/message.rs
|
|
260
|
-
rust/rhgitaly/src/metadata.rs
|
|
261
|
-
rust/rhgitaly/src/oid.rs
|
|
262
|
-
rust/rhgitaly/src/process.rs
|
|
263
|
-
rust/rhgitaly/src/sidecar.rs
|
|
264
|
-
rust/rhgitaly/src/ssh.rs
|
|
265
|
-
rust/rhgitaly/src/streaming.rs
|
|
266
|
-
rust/rhgitaly/src/util.rs
|
|
267
|
-
rust/rhgitaly/src/generated/README.md
|
|
268
|
-
rust/rhgitaly/src/gitlab/mod.rs
|
|
269
|
-
rust/rhgitaly/src/gitlab/reference.rs
|
|
270
|
-
rust/rhgitaly/src/gitlab/revision.rs
|
|
271
|
-
rust/rhgitaly/src/gitlab/state.rs
|
|
272
|
-
rust/rhgitaly/src/repository/spawner.rs
|
|
273
|
-
rust/rhgitaly/src/service/analysis.rs
|
|
274
|
-
rust/rhgitaly/src/service/blob.rs
|
|
275
|
-
rust/rhgitaly/src/service/diff.rs
|
|
276
|
-
rust/rhgitaly/src/service/mercurial_repository.rs
|
|
277
|
-
rust/rhgitaly/src/service/mod.rs
|
|
278
|
-
rust/rhgitaly/src/service/ref.rs
|
|
279
|
-
rust/rhgitaly/src/service/remote.rs
|
|
280
|
-
rust/rhgitaly/src/service/repository.rs
|
|
281
|
-
rust/rhgitaly/src/service/server.rs
|
|
282
|
-
rust/rhgitaly/src/service/commit/find_commits.rs
|
|
283
|
-
rust/rhgitaly/src/service/commit/get_tree_entries.rs
|
|
284
|
-
rust/rhgitaly/src/service/commit/last_commits.rs
|
|
285
|
-
rust/rhgitaly/src/service/commit/tree_entry.rs
|
|
286
154
|
tests_with_gitaly/__init__.py
|
|
287
155
|
tests_with_gitaly/comparison.py
|
|
288
156
|
tests_with_gitaly/conftest.py
|
|
@@ -295,6 +163,7 @@ tests_with_gitaly/test_comparison.py
|
|
|
295
163
|
tests_with_gitaly/test_diff.py
|
|
296
164
|
tests_with_gitaly/test_gitaly_server.py
|
|
297
165
|
tests_with_gitaly/test_mercurial_aux_git.py
|
|
166
|
+
tests_with_gitaly/test_mercurial_operations.py
|
|
298
167
|
tests_with_gitaly/test_mercurial_repository.py
|
|
299
168
|
tests_with_gitaly/test_operations.py
|
|
300
169
|
tests_with_gitaly/test_ref.py
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Copyright 2025 Georges Racinet <georges.racinet@cloudcrane.io>
|
|
2
|
+
#
|
|
3
|
+
# This software may be used and distributed according to the terms of the
|
|
4
|
+
# GNU General Public License version 2 or any later version.
|
|
5
|
+
#
|
|
6
|
+
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
7
|
+
import pytest
|
|
8
|
+
|
|
9
|
+
from hgitaly.stub.mercurial_operations_pb2 import (
|
|
10
|
+
MergeAnalysisRequest,
|
|
11
|
+
InvalidateMergeAnalysisRequest,
|
|
12
|
+
)
|
|
13
|
+
from hgitaly.stub.mercurial_operations_pb2_grpc import (
|
|
14
|
+
MercurialOperationsServiceStub,
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
from . import skip_comparison_tests
|
|
18
|
+
|
|
19
|
+
if skip_comparison_tests(): # pragma no cover
|
|
20
|
+
pytestmark = pytest.mark.skip
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def test_compare_merge_analysis(hgitaly_rhgitaly_comparison):
|
|
24
|
+
fixture = hgitaly_rhgitaly_comparison
|
|
25
|
+
repo_wrapper = fixture.hg_repo_wrapper
|
|
26
|
+
commit_file = repo_wrapper.commit_file
|
|
27
|
+
default_ctx = commit_file('foo')
|
|
28
|
+
top_cs = commit_file('foo', parent=default_ctx, topic='zetop')
|
|
29
|
+
|
|
30
|
+
rpc_helper = fixture.rpc_helper(
|
|
31
|
+
stub_cls=MercurialOperationsServiceStub,
|
|
32
|
+
method_name='MergeAnalysis',
|
|
33
|
+
request_cls=MergeAnalysisRequest,
|
|
34
|
+
)
|
|
35
|
+
assert_compare = rpc_helper.assert_compare
|
|
36
|
+
target_rev = b'branch/default'
|
|
37
|
+
assert_compare(source_revision=b'topic/default/zetop',
|
|
38
|
+
target_revision=target_rev)
|
|
39
|
+
# second time to exert the cache
|
|
40
|
+
assert_compare(source_revision=b'topic/default/zetop',
|
|
41
|
+
target_revision=target_rev)
|
|
42
|
+
|
|
43
|
+
obs_hex = top_cs.hex()
|
|
44
|
+
repo_wrapper.amend_file('foo')
|
|
45
|
+
|
|
46
|
+
# without invalidation, we have a problem:
|
|
47
|
+
obs_args = dict(source_revision=obs_hex, target_revision=target_rev)
|
|
48
|
+
resp = rpc_helper.rpc('rhgitaly', **obs_args)
|
|
49
|
+
assert not resp.has_obsolete_changesets # oops
|
|
50
|
+
resp = rpc_helper.rpc('hgitaly', **obs_args)
|
|
51
|
+
assert resp.has_obsolete_changesets # as expected
|
|
52
|
+
|
|
53
|
+
# invalidation (RHGitaly only)
|
|
54
|
+
resp = rpc_helper.stubs['rhgitaly'].InvalidateMergeAnalysis(
|
|
55
|
+
InvalidateMergeAnalysisRequest(
|
|
56
|
+
repository=fixture.hgitaly_repo)
|
|
57
|
+
)
|
|
58
|
+
assert resp.invalidated_count == 1
|
|
59
|
+
|
|
60
|
+
# third time that works thanks to cache invalidation.
|
|
61
|
+
assert_compare(**obs_args)
|
|
62
|
+
|
|
63
|
+
# resolution errors (uncached)
|
|
64
|
+
assert_errors = rpc_helper.assert_compare_errors
|
|
65
|
+
assert_errors(source_revision=b'topic/default/unknown',
|
|
66
|
+
target_revision=b'branch/default')
|
|
67
|
+
assert_errors(source_revision=b'topic/default/zetop',
|
|
68
|
+
target_revision=b'branch/unknown')
|