hgitaly 18.0.0a1__tar.gz → 18.1.0a0__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.
Files changed (315) hide show
  1. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/PKG-INFO +58 -9
  2. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/README.md +57 -8
  3. hgitaly-18.1.0a0/hgitaly/VERSION +1 -0
  4. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/license_detector/__init__.py +1 -1
  5. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/scripts.py +2 -0
  6. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/commit.py +20 -1
  7. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_commit.py +29 -3
  8. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/diff_pb2.py +36 -36
  9. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_aux_git_pb2.py +3 -4
  10. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/repository_pb2.py +37 -37
  11. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly.egg-info/PKG-INFO +58 -9
  12. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly.egg-info/SOURCES.txt +0 -139
  13. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_commit.py +82 -5
  14. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_repository_service.py +24 -3
  15. hgitaly-18.0.0a1/.coveragerc +0 -5
  16. hgitaly-18.0.0a1/.gitlab-ci.yml +0 -154
  17. hgitaly-18.0.0a1/.hgignore +0 -34
  18. hgitaly-18.0.0a1/.hgtags +0 -146
  19. hgitaly-18.0.0a1/ci/heptapod-sftp-push +0 -31
  20. hgitaly-18.0.0a1/ci/heptapod-sign-package +0 -34
  21. hgitaly-18.0.0a1/ci/heptapod_known_hosts.ssh +0 -4
  22. hgitaly-18.0.0a1/ci/upload-rhgitaly +0 -43
  23. hgitaly-18.0.0a1/conftest.py +0 -92
  24. hgitaly-18.0.0a1/dev-requirements.txt +0 -2
  25. hgitaly-18.0.0a1/examples/client.py +0 -48
  26. hgitaly-18.0.0a1/examples/client_list_lcft.py +0 -55
  27. hgitaly-18.0.0a1/generate-stubs +0 -34
  28. hgitaly-18.0.0a1/hgitaly/VERSION +0 -1
  29. hgitaly-18.0.0a1/hgitaly/license_detector/GPL-2.sample +0 -339
  30. hgitaly-18.0.0a1/hgitaly/testing/data/authorized_keys +0 -1
  31. hgitaly-18.0.0a1/hgitaly/testing/data/backup_additional_no_git.tar +0 -0
  32. hgitaly-18.0.0a1/hgitaly/testing/data/id_ecdsa_user +0 -38
  33. hgitaly-18.0.0a1/hgitaly/testing/data/known_hosts +0 -2
  34. hgitaly-18.0.0a1/hgitaly/testing/data/ssh_host_ecdsa_key +0 -9
  35. hgitaly-18.0.0a1/hgitaly/testing/data/ssh_host_ecdsa_key.pub +0 -1
  36. hgitaly-18.0.0a1/hgitaly/testing/data/ssh_host_ed25519 +0 -8
  37. hgitaly-18.0.0a1/hgitaly/testing/data/ssh_host_ed25519.pub +0 -1
  38. hgitaly-18.0.0a1/hgitaly/testing/data/sshd_config +0 -17
  39. hgitaly-18.0.0a1/lint +0 -7
  40. hgitaly-18.0.0a1/protos/analysis.proto +0 -62
  41. hgitaly-18.0.0a1/protos/blob.proto +0 -299
  42. hgitaly-18.0.0a1/protos/cleanup.proto +0 -88
  43. hgitaly-18.0.0a1/protos/cluster.proto +0 -126
  44. hgitaly-18.0.0a1/protos/commit.proto +0 -985
  45. hgitaly-18.0.0a1/protos/conflicts.proto +0 -137
  46. hgitaly-18.0.0a1/protos/diff.proto +0 -622
  47. hgitaly-18.0.0a1/protos/errors.proto +0 -228
  48. hgitaly-18.0.0a1/protos/hook.proto +0 -205
  49. hgitaly-18.0.0a1/protos/internal.proto +0 -37
  50. hgitaly-18.0.0a1/protos/lint.proto +0 -75
  51. hgitaly-18.0.0a1/protos/log.proto +0 -134
  52. hgitaly-18.0.0a1/protos/mercurial-aux-git.proto +0 -33
  53. hgitaly-18.0.0a1/protos/mercurial-changeset.proto +0 -96
  54. hgitaly-18.0.0a1/protos/mercurial-operations.proto +0 -230
  55. hgitaly-18.0.0a1/protos/mercurial-repository.proto +0 -364
  56. hgitaly-18.0.0a1/protos/namespace.proto +0 -98
  57. hgitaly-18.0.0a1/protos/objectpool.proto +0 -173
  58. hgitaly-18.0.0a1/protos/operations.proto +0 -1139
  59. hgitaly-18.0.0a1/protos/packfile.proto +0 -26
  60. hgitaly-18.0.0a1/protos/partition.proto +0 -70
  61. hgitaly-18.0.0a1/protos/praefect.proto +0 -222
  62. hgitaly-18.0.0a1/protos/ref.proto +0 -593
  63. hgitaly-18.0.0a1/protos/remote.proto +0 -153
  64. hgitaly-18.0.0a1/protos/repository.proto +0 -1440
  65. hgitaly-18.0.0a1/protos/server.proto +0 -123
  66. hgitaly-18.0.0a1/protos/service_config.proto +0 -86
  67. hgitaly-18.0.0a1/protos/shared.proto +0 -248
  68. hgitaly-18.0.0a1/protos/smarthttp.proto +0 -121
  69. hgitaly-18.0.0a1/protos/ssh.proto +0 -109
  70. hgitaly-18.0.0a1/protos/transaction.proto +0 -104
  71. hgitaly-18.0.0a1/protos/wiki.proto +0 -211
  72. hgitaly-18.0.0a1/ruby/.ruby-version +0 -1
  73. hgitaly-18.0.0a1/ruby/Gemfile +0 -5
  74. hgitaly-18.0.0a1/ruby/README.md +0 -48
  75. hgitaly-18.0.0a1/ruby/generate-grpc-lib +0 -63
  76. hgitaly-18.0.0a1/ruby/hgitaly.gemspec +0 -25
  77. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-aux-git_pb.rb +0 -15
  78. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-aux-git_services_pb.rb +0 -29
  79. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-changeset_pb.rb +0 -69
  80. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-changeset_services_pb.rb +0 -25
  81. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-operations_pb.rb +0 -133
  82. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-operations_services_pb.rb +0 -53
  83. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-repository_pb.rb +0 -163
  84. hgitaly-18.0.0a1/ruby/lib/hgitaly/mercurial-repository_services_pb.rb +0 -79
  85. hgitaly-18.0.0a1/ruby/lib/hgitaly/version.rb +0 -4
  86. hgitaly-18.0.0a1/ruby/lib/hgitaly.rb +0 -13
  87. hgitaly-18.0.0a1/ruby/run.rb +0 -39
  88. hgitaly-18.0.0a1/run-all-tests +0 -24
  89. hgitaly-18.0.0a1/rust/Cargo.lock +0 -3747
  90. hgitaly-18.0.0a1/rust/Cargo.toml +0 -4
  91. hgitaly-18.0.0a1/rust/Makefile +0 -69
  92. hgitaly-18.0.0a1/rust/build-from-tarball.sh +0 -30
  93. hgitaly-18.0.0a1/rust/check-line-width +0 -48
  94. hgitaly-18.0.0a1/rust/dependencies/README.md +0 -19
  95. hgitaly-18.0.0a1/rust/dependencies/mercurial.patch +0 -39
  96. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/any.proto +0 -158
  97. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/api.proto +0 -208
  98. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/compiler/plugin.proto +0 -183
  99. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/descriptor.proto +0 -911
  100. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/duration.proto +0 -116
  101. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/empty.proto +0 -52
  102. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/field_mask.proto +0 -245
  103. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/source_context.proto +0 -48
  104. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/struct.proto +0 -95
  105. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/timestamp.proto +0 -147
  106. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/type.proto +0 -187
  107. hgitaly-18.0.0a1/rust/dependencies/proto/google/protobuf/wrappers.proto +0 -123
  108. hgitaly-18.0.0a1/rust/go-enry.rev +0 -1
  109. hgitaly-18.0.0a1/rust/lint +0 -14
  110. hgitaly-18.0.0a1/rust/mercurial.rev +0 -1
  111. hgitaly-18.0.0a1/rust/rhgitaly/Cargo.toml +0 -51
  112. hgitaly-18.0.0a1/rust/rhgitaly/build.rs +0 -48
  113. hgitaly-18.0.0a1/rust/rhgitaly/clippy.toml +0 -6
  114. hgitaly-18.0.0a1/rust/rhgitaly/src/bundle.rs +0 -300
  115. hgitaly-18.0.0a1/rust/rhgitaly/src/config.rs +0 -167
  116. hgitaly-18.0.0a1/rust/rhgitaly/src/errors.rs +0 -131
  117. hgitaly-18.0.0a1/rust/rhgitaly/src/generated/README.md +0 -7
  118. hgitaly-18.0.0a1/rust/rhgitaly/src/git.rs +0 -293
  119. hgitaly-18.0.0a1/rust/rhgitaly/src/gitlab/mod.rs +0 -50
  120. hgitaly-18.0.0a1/rust/rhgitaly/src/gitlab/reference.rs +0 -83
  121. hgitaly-18.0.0a1/rust/rhgitaly/src/gitlab/revision.rs +0 -320
  122. hgitaly-18.0.0a1/rust/rhgitaly/src/gitlab/state.rs +0 -508
  123. hgitaly-18.0.0a1/rust/rhgitaly/src/glob.rs +0 -227
  124. hgitaly-18.0.0a1/rust/rhgitaly/src/lib.rs +0 -44
  125. hgitaly-18.0.0a1/rust/rhgitaly/src/main.rs +0 -143
  126. hgitaly-18.0.0a1/rust/rhgitaly/src/mercurial.rs +0 -1366
  127. hgitaly-18.0.0a1/rust/rhgitaly/src/message.rs +0 -468
  128. hgitaly-18.0.0a1/rust/rhgitaly/src/metadata.rs +0 -27
  129. hgitaly-18.0.0a1/rust/rhgitaly/src/oid.rs +0 -86
  130. hgitaly-18.0.0a1/rust/rhgitaly/src/process.rs +0 -39
  131. hgitaly-18.0.0a1/rust/rhgitaly/src/repository/spawner.rs +0 -569
  132. hgitaly-18.0.0a1/rust/rhgitaly/src/repository.rs +0 -587
  133. hgitaly-18.0.0a1/rust/rhgitaly/src/service/analysis.rs +0 -183
  134. hgitaly-18.0.0a1/rust/rhgitaly/src/service/blob.rs +0 -260
  135. hgitaly-18.0.0a1/rust/rhgitaly/src/service/commit/find_commits.rs +0 -203
  136. hgitaly-18.0.0a1/rust/rhgitaly/src/service/commit/get_tree_entries.rs +0 -291
  137. hgitaly-18.0.0a1/rust/rhgitaly/src/service/commit/last_commits.rs +0 -569
  138. hgitaly-18.0.0a1/rust/rhgitaly/src/service/commit/tree_entry.rs +0 -154
  139. hgitaly-18.0.0a1/rust/rhgitaly/src/service/commit.rs +0 -624
  140. hgitaly-18.0.0a1/rust/rhgitaly/src/service/diff.rs +0 -137
  141. hgitaly-18.0.0a1/rust/rhgitaly/src/service/mercurial_aux_git.rs +0 -180
  142. hgitaly-18.0.0a1/rust/rhgitaly/src/service/mercurial_repository.rs +0 -496
  143. hgitaly-18.0.0a1/rust/rhgitaly/src/service/mod.rs +0 -18
  144. hgitaly-18.0.0a1/rust/rhgitaly/src/service/ref.rs +0 -778
  145. hgitaly-18.0.0a1/rust/rhgitaly/src/service/remote.rs +0 -793
  146. hgitaly-18.0.0a1/rust/rhgitaly/src/service/repository.rs +0 -732
  147. hgitaly-18.0.0a1/rust/rhgitaly/src/service/server.rs +0 -53
  148. hgitaly-18.0.0a1/rust/rhgitaly/src/sidecar.rs +0 -230
  149. hgitaly-18.0.0a1/rust/rhgitaly/src/ssh.rs +0 -102
  150. hgitaly-18.0.0a1/rust/rhgitaly/src/streaming.rs +0 -402
  151. hgitaly-18.0.0a1/rust/rhgitaly/src/util.rs +0 -132
  152. hgitaly-18.0.0a1/rust/rs-enry.rev +0 -1
  153. hgitaly-18.0.0a1/rust/src-tarball.sh +0 -63
  154. hgitaly-18.0.0a1/test-requirements.txt +0 -8
  155. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/LICENSE +0 -0
  156. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/MANIFEST.in +0 -0
  157. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgext3rd/__init__.py +0 -0
  158. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgext3rd/hgitaly/__init__.py +0 -0
  159. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgext3rd/hgitaly/revset.py +0 -0
  160. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgext3rd/hgitaly/tests/__init__.py +0 -0
  161. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgext3rd/hgitaly/tests/test_revset.py +0 -0
  162. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgext3rd/hgitaly/tests/test_serve.py +0 -0
  163. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/__init__.py +0 -0
  164. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/branch.py +0 -0
  165. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/changelog.py +0 -0
  166. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/diff.py +0 -0
  167. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/errors.py +0 -0
  168. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/feature.py +0 -0
  169. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/file_content.py +0 -0
  170. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/file_context.py +0 -0
  171. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/git.py +0 -0
  172. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/gitlab_ref.py +0 -0
  173. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/identification.py +0 -0
  174. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/license_detector/spdx-licenses.json +0 -0
  175. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/linguist/__init__.py +0 -0
  176. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/linguist/languages.json +0 -0
  177. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/logging.py +0 -0
  178. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/manifest.py +0 -0
  179. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/message.py +0 -0
  180. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/oid.py +0 -0
  181. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/pagination.py +0 -0
  182. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/path.py +0 -0
  183. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/peer.py +0 -0
  184. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/procutil.py +0 -0
  185. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/repository.py +0 -0
  186. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/revision.py +0 -0
  187. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/revset.py +0 -0
  188. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/__init__.py +0 -0
  189. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/address.py +0 -0
  190. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/mono.py +0 -0
  191. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/prefork.py +0 -0
  192. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/tests/__init__.py +0 -0
  193. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/tests/test_address.py +0 -0
  194. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/tests/test_mono.py +0 -0
  195. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/tests/test_prefork.py +0 -0
  196. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/tests/test_worker.py +0 -0
  197. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/server/worker.py +0 -0
  198. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/__init__.py +0 -0
  199. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/analysis.py +0 -0
  200. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/blob.py +0 -0
  201. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/diff.py +0 -0
  202. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/interceptors.py +0 -0
  203. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/mercurial_changeset.py +0 -0
  204. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/mercurial_operations.py +0 -0
  205. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/mercurial_repository.py +0 -0
  206. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/operations.py +0 -0
  207. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/ref.py +0 -0
  208. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/repository.py +0 -0
  209. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/server.py +0 -0
  210. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/__init__.py +0 -0
  211. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/fixture.py +0 -0
  212. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_analysis.py +0 -0
  213. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_blob.py +0 -0
  214. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_default_branch.py +0 -0
  215. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_diff.py +0 -0
  216. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_mercurial_changeset.py +0 -0
  217. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_mercurial_operations.py +0 -0
  218. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_mercurial_repository.py +0 -0
  219. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_operations.py +0 -0
  220. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_ref.py +0 -0
  221. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_repository_service.py +0 -0
  222. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/service/tests/test_server.py +0 -0
  223. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/servicer.py +0 -0
  224. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/ssh.py +0 -0
  225. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stream.py +0 -0
  226. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/__init__.py +0 -0
  227. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/analysis_pb2.py +0 -0
  228. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/analysis_pb2_grpc.py +0 -0
  229. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/blob_pb2.py +0 -0
  230. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/blob_pb2_grpc.py +0 -0
  231. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/commit_pb2.py +0 -0
  232. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/commit_pb2_grpc.py +0 -0
  233. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/diff_pb2_grpc.py +0 -0
  234. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/errors_pb2.py +0 -0
  235. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/errors_pb2_grpc.py +0 -0
  236. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/lint_pb2.py +0 -0
  237. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/lint_pb2_grpc.py +0 -0
  238. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_aux_git_pb2_grpc.py +0 -0
  239. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_changeset_pb2.py +0 -0
  240. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_changeset_pb2_grpc.py +0 -0
  241. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_operations_pb2.py +0 -0
  242. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_operations_pb2_grpc.py +0 -0
  243. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_repository_pb2.py +0 -0
  244. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/mercurial_repository_pb2_grpc.py +0 -0
  245. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/operations_pb2.py +0 -0
  246. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/operations_pb2_grpc.py +0 -0
  247. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/ref_pb2.py +0 -0
  248. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/ref_pb2_grpc.py +0 -0
  249. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/remote_pb2.py +0 -0
  250. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/remote_pb2_grpc.py +0 -0
  251. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/repository_pb2_grpc.py +0 -0
  252. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/server_pb2.py +0 -0
  253. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/server_pb2_grpc.py +0 -0
  254. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/shared_pb2.py +0 -0
  255. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/stub/shared_pb2_grpc.py +0 -0
  256. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tag.py +0 -0
  257. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/__init__.py +0 -0
  258. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/bundle.py +0 -0
  259. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/context.py +0 -0
  260. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/grpc.py +0 -0
  261. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/multiprocessing.py +0 -0
  262. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/ssh.py +0 -0
  263. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/sshd.py +0 -0
  264. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/storage.py +0 -0
  265. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/tests/__init__.py +0 -0
  266. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/testing/tests/test_sshd.py +0 -0
  267. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/__init__.py +0 -0
  268. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/common.py +0 -0
  269. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_branch.py +0 -0
  270. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_diff.py +0 -0
  271. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_errors.py +0 -0
  272. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_feature.py +0 -0
  273. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_file_context.py +0 -0
  274. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_gitlab_ref.py +0 -0
  275. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_identification.py +0 -0
  276. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_license_detector.py +0 -0
  277. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_linguist.py +0 -0
  278. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_manifest.py +0 -0
  279. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_messages.py +0 -0
  280. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_oid.py +0 -0
  281. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_peer.py +0 -0
  282. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_repository.py +0 -0
  283. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_revision.py +0 -0
  284. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_revset.py +0 -0
  285. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_servicer.py +0 -0
  286. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_stream.py +0 -0
  287. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_tag.py +0 -0
  288. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/tests/test_workdir.py +0 -0
  289. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/util.py +0 -0
  290. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly/workdir.py +0 -0
  291. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly.egg-info/dependency_links.txt +0 -0
  292. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly.egg-info/entry_points.txt +0 -0
  293. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly.egg-info/requires.txt +0 -0
  294. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/hgitaly.egg-info/top_level.txt +0 -0
  295. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/install-requirements.txt +0 -0
  296. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/setup.cfg +0 -0
  297. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/setup.py +0 -0
  298. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/__init__.py +0 -0
  299. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/comparison.py +0 -0
  300. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/conftest.py +0 -0
  301. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/gitaly.py +0 -0
  302. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/hgitaly_rhgitaly_comparison.py +0 -0
  303. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/rhgitaly.py +0 -0
  304. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_blob_tree.py +0 -0
  305. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_comparison.py +0 -0
  306. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_diff.py +0 -0
  307. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_gitaly_server.py +0 -0
  308. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_mercurial_aux_git.py +0 -0
  309. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_mercurial_operations.py +0 -0
  310. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_mercurial_repository.py +0 -0
  311. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_operations.py +0 -0
  312. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_ref.py +0 -0
  313. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_remote.py +0 -0
  314. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_rhgitaly_server.py +0 -0
  315. {hgitaly-18.0.0a1 → hgitaly-18.1.0a0}/tests_with_gitaly/test_server.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hgitaly
3
- Version: 18.0.0a1
3
+ Version: 18.1.0a0
4
4
  Summary: Server-side implementation of Gitaly protocol for Mercurial
5
5
  Home-page: https://foss.heptapod.net/heptapod/hgitaly
6
6
  Author: Georges Racinet
@@ -34,9 +34,11 @@ It comes in two overlapping variants:
34
34
  - RHGitaly is a high-performance partial implementation written in Rust, and
35
35
  based on the [`tonic`](https://crates.io/crates/tonic) gRPC framework.
36
36
 
37
- As of this writing, RHGitaly implements a strict subset of the methods
38
- implemented in HGitaly, but it is possible that some methods would be
39
- implemented in RHGitaly only in the future.
37
+ As of Heptapod 18.0, RHGitaly is able to treat all requests, sometimes by
38
+ deferring to HGitaly. All clients should be configured to target RHGitaly,
39
+ but a HGitaly service must still exist, and RHGitaly must be configured
40
+ with the address of the HGitaly server. We have [plans](hgitaly#235)
41
+ to make HGitaly become a sidecar of RHGitaly.
40
42
 
41
43
  ## Installation
42
44
 
@@ -101,10 +103,12 @@ We distribute a self-contained source tarball. It includes the appropriate
101
103
 
102
104
  [Service]
103
105
  User=hgitaly
104
- # HGRCPATH not needed yet but probably will be at some point
105
106
  Environment=HGRCPATH=/etc/heptapod/heptapod.hgrc
106
107
  Environment=RHGITALY_LISTEN_URL=unix:/run/heptapod/rhgitaly.socket
107
108
  Environment=RHGITALY_REPOSITORIES_ROOT=/home/hg/repositories
109
+ Environment=RHGITALY_HG_EXECUTABLE=/usr/local/bin/hg
110
+ Environment=RHGITALY_SIDECAR_ADDRESS=http://127.0.0.1:9237
111
+ Environment=RHGITALY_CONFIG_DIRECTORY=/home/hg/repositories/+hgitaly
108
112
  ExecStartPre=rm -f /run/heptapod/rhgitaly.socket
109
113
  ExecStart=/user/local/bin/rhgitaly
110
114
  Restart=on-failure
@@ -123,9 +127,14 @@ each executable can be configured.
123
127
 
124
128
  #### Tokei
125
129
 
130
+ As of Heptapod 18.0, the `tokei` executable is no longer necessary, as
131
+ RHGitaly provides a direct implementation, using `tokei` as a library (hence
132
+ an internal dependency, resolved at compilation).
133
+
126
134
  [Tokei](https://crates.io/crates/tokei) is a programming languages analysis
127
135
  tool written in Rust. It is used by the [CommitLanguages](protos/commit.proto)
128
- method.
136
+ method of HGitaly (python), which should now be in use only in Comparison
137
+ Tests.
129
138
 
130
139
  Tokei is available in several Linux distributions.
131
140
 
@@ -145,12 +154,20 @@ This is for example the case of [GetPatchID](protos/diff.proto): the
145
154
  `git patch-id` command does not access any repository. Instead it computes any
146
155
  patch into an identifier.
147
156
 
157
+ RHGitaly spawns Git subprocesses for operations on the auxiliary Git repository
158
+ used for mirroring to Git. For instance, this is how the `git push` part of
159
+ the mirroring is implemented.
160
+
161
+ The path to the `git` executable can be configured with the
162
+ `RHGITALY_GIT_EXECUTABLE` enviroment variable (defaulting to just `git`).
163
+
148
164
  #### Mercurial
149
165
 
150
- In forthcoming versions, it is probable that HGitaly and/or RHGitaly will
151
- invoke Mercurial subprocesses.
166
+ RHGitaly can invoke Mercurial subprocesses for various operations that
167
+ are better accomodated this way.
152
168
 
153
- This is not yet the case as of this writing (HGitaly 1.1 / Heptapod 1.1).
169
+ The Mercurial executable is configured by the mandatory
170
+ `RHGITALY_HG_EXECUTABLE` environment variable.
154
171
 
155
172
  ### Configuration
156
173
 
@@ -421,6 +438,38 @@ The virtualenv has to be activated
421
438
 
422
439
  5. perform necessary `hg add` after close inspection of `hg status`
423
440
 
441
+ ### Feature flags
442
+
443
+ GitLab uses special feature flags to control Gitaly. They are transmitted
444
+ to the Gitaly server by means of invocation metadata (part of the gRPC
445
+ protocol, actually implemented as HTTP/2 headers).
446
+ This is documented in Gitaly's `doc/` subdirectory.
447
+
448
+ Gitaly feature flags have become important in HGitaly development since
449
+ every request now goes to RHGitaly first. We used before that to introduce
450
+ ordinary feature flags in GitLab Rails to control which requests would go
451
+ to HGitaly (Python) and which would go to RHGitaly. This was instrumental
452
+ in the progressive reimplementation in Rust of many gRPC methods, and has
453
+ obviously to be replaced by the use of Gitaly feature flags.
454
+
455
+ GitLab's development workflow is heavily centered around "chatops", they make
456
+ it a rule that feature flags should start as being disabled by default, then
457
+ gradually rolled out by percentage chatops commands. On the other hand,
458
+ Heptapod often feature flag to provide an opt-out option, with many starting
459
+ as enabled by default.
460
+
461
+ An important property of Gitaly feature flags is that nothing is passed at
462
+ all if the feature flag has not been set in the Rails application. In other
463
+ words, the default value is implemented by the Gitaly server and meaningless
464
+ in the Rails app.
465
+
466
+ As a consequence, creating a Gitaly feature flag defaulting to `true` does
467
+ nothing unless (R)HGitaly itself interprets the absence of the value as `true`.
468
+
469
+ TL;DR: for opt-out by a feature flag seen as `gitaly_my_feature` by Rails,
470
+ just use `rhgitaly::metadata::is_feature_enabled?("my-feature", true)` in the RHGitaly
471
+ code.
472
+
424
473
  ### Updating the HGitaly specific gRPC protocol
425
474
 
426
475
  This package defines and implements an additional gRPC protocol, with
@@ -12,9 +12,11 @@ It comes in two overlapping variants:
12
12
  - RHGitaly is a high-performance partial implementation written in Rust, and
13
13
  based on the [`tonic`](https://crates.io/crates/tonic) gRPC framework.
14
14
 
15
- As of this writing, RHGitaly implements a strict subset of the methods
16
- implemented in HGitaly, but it is possible that some methods would be
17
- implemented in RHGitaly only in the future.
15
+ As of Heptapod 18.0, RHGitaly is able to treat all requests, sometimes by
16
+ deferring to HGitaly. All clients should be configured to target RHGitaly,
17
+ but a HGitaly service must still exist, and RHGitaly must be configured
18
+ with the address of the HGitaly server. We have [plans](hgitaly#235)
19
+ to make HGitaly become a sidecar of RHGitaly.
18
20
 
19
21
  ## Installation
20
22
 
@@ -79,10 +81,12 @@ We distribute a self-contained source tarball. It includes the appropriate
79
81
 
80
82
  [Service]
81
83
  User=hgitaly
82
- # HGRCPATH not needed yet but probably will be at some point
83
84
  Environment=HGRCPATH=/etc/heptapod/heptapod.hgrc
84
85
  Environment=RHGITALY_LISTEN_URL=unix:/run/heptapod/rhgitaly.socket
85
86
  Environment=RHGITALY_REPOSITORIES_ROOT=/home/hg/repositories
87
+ Environment=RHGITALY_HG_EXECUTABLE=/usr/local/bin/hg
88
+ Environment=RHGITALY_SIDECAR_ADDRESS=http://127.0.0.1:9237
89
+ Environment=RHGITALY_CONFIG_DIRECTORY=/home/hg/repositories/+hgitaly
86
90
  ExecStartPre=rm -f /run/heptapod/rhgitaly.socket
87
91
  ExecStart=/user/local/bin/rhgitaly
88
92
  Restart=on-failure
@@ -101,9 +105,14 @@ each executable can be configured.
101
105
 
102
106
  #### Tokei
103
107
 
108
+ As of Heptapod 18.0, the `tokei` executable is no longer necessary, as
109
+ RHGitaly provides a direct implementation, using `tokei` as a library (hence
110
+ an internal dependency, resolved at compilation).
111
+
104
112
  [Tokei](https://crates.io/crates/tokei) is a programming languages analysis
105
113
  tool written in Rust. It is used by the [CommitLanguages](protos/commit.proto)
106
- method.
114
+ method of HGitaly (python), which should now be in use only in Comparison
115
+ Tests.
107
116
 
108
117
  Tokei is available in several Linux distributions.
109
118
 
@@ -123,12 +132,20 @@ This is for example the case of [GetPatchID](protos/diff.proto): the
123
132
  `git patch-id` command does not access any repository. Instead it computes any
124
133
  patch into an identifier.
125
134
 
135
+ RHGitaly spawns Git subprocesses for operations on the auxiliary Git repository
136
+ used for mirroring to Git. For instance, this is how the `git push` part of
137
+ the mirroring is implemented.
138
+
139
+ The path to the `git` executable can be configured with the
140
+ `RHGITALY_GIT_EXECUTABLE` enviroment variable (defaulting to just `git`).
141
+
126
142
  #### Mercurial
127
143
 
128
- In forthcoming versions, it is probable that HGitaly and/or RHGitaly will
129
- invoke Mercurial subprocesses.
144
+ RHGitaly can invoke Mercurial subprocesses for various operations that
145
+ are better accomodated this way.
130
146
 
131
- This is not yet the case as of this writing (HGitaly 1.1 / Heptapod 1.1).
147
+ The Mercurial executable is configured by the mandatory
148
+ `RHGITALY_HG_EXECUTABLE` environment variable.
132
149
 
133
150
  ### Configuration
134
151
 
@@ -399,6 +416,38 @@ The virtualenv has to be activated
399
416
 
400
417
  5. perform necessary `hg add` after close inspection of `hg status`
401
418
 
419
+ ### Feature flags
420
+
421
+ GitLab uses special feature flags to control Gitaly. They are transmitted
422
+ to the Gitaly server by means of invocation metadata (part of the gRPC
423
+ protocol, actually implemented as HTTP/2 headers).
424
+ This is documented in Gitaly's `doc/` subdirectory.
425
+
426
+ Gitaly feature flags have become important in HGitaly development since
427
+ every request now goes to RHGitaly first. We used before that to introduce
428
+ ordinary feature flags in GitLab Rails to control which requests would go
429
+ to HGitaly (Python) and which would go to RHGitaly. This was instrumental
430
+ in the progressive reimplementation in Rust of many gRPC methods, and has
431
+ obviously to be replaced by the use of Gitaly feature flags.
432
+
433
+ GitLab's development workflow is heavily centered around "chatops", they make
434
+ it a rule that feature flags should start as being disabled by default, then
435
+ gradually rolled out by percentage chatops commands. On the other hand,
436
+ Heptapod often feature flag to provide an opt-out option, with many starting
437
+ as enabled by default.
438
+
439
+ An important property of Gitaly feature flags is that nothing is passed at
440
+ all if the feature flag has not been set in the Rails application. In other
441
+ words, the default value is implemented by the Gitaly server and meaningless
442
+ in the Rails app.
443
+
444
+ As a consequence, creating a Gitaly feature flag defaulting to `true` does
445
+ nothing unless (R)HGitaly itself interprets the absence of the value as `true`.
446
+
447
+ TL;DR: for opt-out by a feature flag seen as `gitaly_my_feature` by Rails,
448
+ just use `rhgitaly::metadata::is_feature_enabled?("my-feature", true)` in the RHGitaly
449
+ code.
450
+
402
451
  ### Updating the HGitaly specific gRPC protocol
403
452
 
404
453
  This package defines and implements an additional gRPC protocol, with
@@ -0,0 +1 @@
1
+ 18.1.0a0
@@ -54,7 +54,7 @@ COMMON_LICENSE_FILES = ('LICENSE', 'COPYING')
54
54
  def license_content(name):
55
55
  """Return the full test content of one of the licenses we ship.
56
56
 
57
- Intendend for gRPC tests and Gitaly comparison tests.
57
+ Intended for gRPC tests and Gitaly comparison tests.
58
58
  """
59
59
  return (DATA_DIR / (name + '.sample')).read_text()
60
60
 
@@ -159,6 +159,7 @@ def stats(): # pragma no cover
159
159
  'timing:median',
160
160
  'timing:worst_decile',
161
161
  'timing:worst_centile',
162
+ 'timing:total',
162
163
  ),
163
164
  default='calls')
164
165
 
@@ -210,6 +211,7 @@ def stats(): # pragma no cover
210
211
  timing = req_stats['completion_stats_ms'] = dict(
211
212
  mean=statistics.mean(succ),
212
213
  median=statistics.median(succ),
214
+ total=sum(s for s in succ),
213
215
  )
214
216
  if nb_succ > 1:
215
217
  timing['standard_deviation'] = statistics.pstdev(succ)
@@ -903,6 +903,8 @@ class CommitServicer(CommitServiceServicer, HGitalyServicer):
903
903
  context.abort(StatusCode.INTERNAL,
904
904
  "Revision %r could not be resolved" % exc.args[0])
905
905
 
906
+ walk = not request.disable_walk
907
+
906
908
  if positive is VISIBLE_CHANGESETS:
907
909
  # do not switch to unfiltered view!
908
910
  if negative:
@@ -916,8 +918,10 @@ class CommitServicer(CommitServiceServicer, HGitalyServicer):
916
918
  repo = repo.unfiltered()
917
919
  if negative:
918
920
  revset = b'only(%ls, %ls)'
919
- else:
921
+ elif walk:
920
922
  revset = b'::%ls'
923
+ else:
924
+ revset = b'%ls'
921
925
 
922
926
  msg_patterns = request.commit_message_patterns
923
927
  ignore_case = request.ignore_case
@@ -930,6 +934,21 @@ class CommitServicer(CommitServiceServicer, HGitalyServicer):
930
934
  else:
931
935
  revset += b' and ' + greps[0]
932
936
 
937
+ after = request.after.ToSeconds()
938
+ before = request.before.ToSeconds()
939
+ date = getdate(after, before)
940
+ if date is not None:
941
+ revset += b" and date('%s')" % date.encode('ascii')
942
+
943
+ author = request.author
944
+ if author:
945
+ revset += b" and user(r're:%s')" % author
946
+
947
+ # no octopuses in Mercurial, hence max_parents > 1 does not filter
948
+ # anything
949
+ if request.max_parents == 1:
950
+ revset += b" and not merge()"
951
+
933
952
  Order = ListCommitsRequest.Order
934
953
  reverse = request.reverse
935
954
 
@@ -1337,7 +1337,7 @@ def test_list_commits(commit_fixture_empty_repo):
1337
1337
  wrapper.update(ctx0.rev())
1338
1338
  wrapper.command(b'mv', wrapper.repo.root + b'/foo',
1339
1339
  wrapper.repo.root + b'/zoo')
1340
- ts = int(time.time())
1340
+ ts = int(time.time() - 50)
1341
1341
  sha2 = wrapper.commit([b'foo', b'zoo'],
1342
1342
  message=b"rename foo to zoo",
1343
1343
  utc_timestamp=ts - 10,).hex()
@@ -1346,7 +1346,9 @@ def test_list_commits(commit_fixture_empty_repo):
1346
1346
  user='testuser <testuser@heptapod.test')
1347
1347
  sha3 = ctx3.hex()
1348
1348
  wrapper.update(2)
1349
- ctx4 = wrapper.merge_commit(ctx3, message=b'merge with stable')
1349
+ ctx4 = wrapper.merge_commit(ctx3, message=b'merge with stable',
1350
+ utc_timestamp=ts+20)
1351
+
1350
1352
  sha4 = ctx4.hex()
1351
1353
 
1352
1354
  def caret(ctx):
@@ -1365,11 +1367,15 @@ def test_list_commits(commit_fixture_empty_repo):
1365
1367
  # orderings
1366
1368
  Order = ListCommitsRequest.Order
1367
1369
  assert list_commits(sha4, order=Order.TOPO) == [sha4, sha3, sha2, sha0]
1368
- assert list_commits(sha4, order=Order.DATE) == [sha2, sha0, sha4, sha3]
1370
+ # having no explicit date, ctx0 looks to be the most recent one.
1371
+ assert list_commits(sha4, order=Order.DATE) == [sha2, sha3, sha4, sha0]
1369
1372
 
1370
1373
  # no result
1371
1374
  assert list_commits(sha4, caret(ctx4)) == []
1372
1375
 
1376
+ # disable walk
1377
+ assert list_commits(sha4, disable_walk=True) == [sha4]
1378
+
1373
1379
  # message patterns
1374
1380
  assert list_commits(sha4, commit_message_patterns=[b'foo']) == [sha2]
1375
1381
  assert set(
@@ -1379,6 +1385,26 @@ def test_list_commits(commit_fixture_empty_repo):
1379
1385
  commit_message_patterns=[b'FOO'],
1380
1386
  ignore_case=True) == [sha2]
1381
1387
 
1388
+ # max_parents
1389
+ assert list_commits(sha4, max_parents=2) == list_commits(sha4)
1390
+ assert list_commits(sha4, max_parents=3) == list_commits(sha4)
1391
+ assert list_commits(sha4, max_parents=1) == [sha3, sha2, sha0]
1392
+
1393
+ # dates
1394
+ date, date2 = Timestamp(), Timestamp()
1395
+ date.FromSeconds(ts+10)
1396
+ assert list_commits(sha4, before=date) == [sha3, sha2]
1397
+ assert list_commits(sha4, after=date) == [sha4, sha3, sha0]
1398
+ # gracinet: given that before is < and after is > I didn't expect
1399
+ # after=before to return anything, but `hg help dates` says that
1400
+ # the `to` range specifier is inclusive.
1401
+ assert list_commits(sha4, after=date, before=date) == [sha3]
1402
+ date2.FromSeconds(ts+40)
1403
+ assert list_commits(sha4, after=date, before=date2) == [sha4, sha3]
1404
+
1405
+ # author regexp
1406
+ assert list_commits(sha4, author=b't.stuser') == [sha3]
1407
+
1382
1408
  # unknown revision, including special cases:
1383
1409
  for unknown in ('branch/unknown',
1384
1410
  'f' * 39, # wdir node id, prefix
@@ -16,7 +16,7 @@ from . import lint_pb2 as lint__pb2
16
16
  from . import shared_pb2 as shared__pb2
17
17
 
18
18
 
19
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\ndiff.proto\x12\x06gitaly\x1a\nlint.proto\x1a\x0cshared.proto\"\xd8\x06\n\x11\x43ommitDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\x12\r\n\x05paths\x18\x05 \x03(\x0c\x12\x16\n\x0e\x63ollapse_diffs\x18\x06 \x01(\x08\x12\x16\n\x0e\x65nforce_limits\x18\x07 \x01(\x08\x12\x11\n\tmax_files\x18\x08 \x01(\x05\x12\x11\n\tmax_lines\x18\t \x01(\x05\x12\x11\n\tmax_bytes\x18\n \x01(\x05\x12\x17\n\x0fmax_patch_bytes\x18\x0e \x01(\x05\x12\x16\n\x0esafe_max_files\x18\x0b \x01(\x05\x12\x16\n\x0esafe_max_lines\x18\x0c \x01(\x05\x12\x16\n\x0esafe_max_bytes\x18\r \x01(\x05\x12\x35\n\tdiff_mode\x18\x0f \x01(\x0e\x32\".gitaly.CommitDiffRequest.DiffMode\x12h\n\"max_patch_bytes_for_file_extension\x18\x10 \x03(\x0b\x32<.gitaly.CommitDiffRequest.MaxPatchBytesForFileExtensionEntry\x12G\n\x12whitespace_changes\x18\x11 \x01(\x0e\x32+.gitaly.CommitDiffRequest.WhitespaceChanges\x12\x19\n\x11\x63ollect_all_paths\x18\x12 \x01(\x08\x1a\x44\n\"MaxPatchBytesForFileExtensionEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05:\x02\x38\x01\"%\n\x08\x44iffMode\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\x0c\n\x08WORDDIFF\x10\x01\"y\n\x11WhitespaceChanges\x12\"\n\x1eWHITESPACE_CHANGES_UNSPECIFIED\x10\x00\x12\x1d\n\x19WHITESPACE_CHANGES_IGNORE\x10\x01\x12!\n\x1dWHITESPACE_CHANGES_IGNORE_ALL\x10\x02J\x04\x08\x04\x10\x05R\x18ignore_whitespace_change\"\xff\x01\n\x12\x43ommitDiffResponse\x12\x11\n\tfrom_path\x18\x01 \x01(\x0c\x12\x0f\n\x07to_path\x18\x02 \x01(\x0c\x12\x0f\n\x07\x66rom_id\x18\x03 \x01(\t\x12\r\n\x05to_id\x18\x04 \x01(\t\x12\x10\n\x08old_mode\x18\x05 \x01(\x05\x12\x10\n\x08new_mode\x18\x06 \x01(\x05\x12\x0e\n\x06\x62inary\x18\x07 \x01(\x08\x12\x16\n\x0eraw_patch_data\x18\t \x01(\x0c\x12\x14\n\x0c\x65nd_of_patch\x18\n \x01(\x08\x12\x17\n\x0foverflow_marker\x18\x0b \x01(\x08\x12\x11\n\tcollapsed\x18\x0c \x01(\x08\x12\x11\n\ttoo_large\x18\r \x01(\x08J\x04\x08\x08\x10\t\"\x82\x01\n\x12\x43ommitDeltaRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\x12\r\n\x05paths\x18\x04 \x03(\x0c\"u\n\x0b\x43ommitDelta\x12\x11\n\tfrom_path\x18\x01 \x01(\x0c\x12\x0f\n\x07to_path\x18\x02 \x01(\x0c\x12\x0f\n\x07\x66rom_id\x18\x03 \x01(\t\x12\r\n\x05to_id\x18\x04 \x01(\t\x12\x10\n\x08old_mode\x18\x05 \x01(\x05\x12\x10\n\x08new_mode\x18\x06 \x01(\x05\":\n\x13\x43ommitDeltaResponse\x12#\n\x06\x64\x65ltas\x18\x01 \x03(\x0b\x32\x13.gitaly.CommitDelta\"o\n\x0eRawDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\"\x1f\n\x0fRawDiffResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"p\n\x0fRawPatchRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\" \n\x10RawPatchResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"q\n\x10\x44iffStatsRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\"Q\n\tDiffStats\x12\x0c\n\x04path\x18\x01 \x01(\x0c\x12\x11\n\tadditions\x18\x02 \x01(\x05\x12\x11\n\tdeletions\x18\x03 \x01(\x05\x12\x10\n\x08old_path\x18\x04 \x01(\x0c\"5\n\x11\x44iffStatsResponse\x12 \n\x05stats\x18\x01 \x03(\x0b\x32\x11.gitaly.DiffStats\"\xda\x05\n\x17\x46indChangedPathsRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x13\n\x07\x63ommits\x18\x02 \x03(\tB\x02\x18\x01\x12\x39\n\x08requests\x18\x03 \x03(\x0b\x32\'.gitaly.FindChangedPathsRequest.Request\x12S\n\x16merge_commit_diff_mode\x18\x04 \x01(\x0e\x32\x33.gitaly.FindChangedPathsRequest.MergeCommitDiffMode\x12\x14\n\x0c\x66ind_renames\x18\x05 \x01(\x08\x1a\xc2\x02\n\x07Request\x12K\n\x0ctree_request\x18\x01 \x01(\x0b\x32\x33.gitaly.FindChangedPathsRequest.Request.TreeRequestH\x00\x12O\n\x0e\x63ommit_request\x18\x02 \x01(\x0b\x32\x35.gitaly.FindChangedPathsRequest.Request.CommitRequestH\x00\x1a\x46\n\x0bTreeRequest\x12\x1a\n\x12left_tree_revision\x18\x01 \x01(\t\x12\x1b\n\x13right_tree_revision\x18\x02 \x01(\t\x1aI\n\rCommitRequest\x12\x17\n\x0f\x63ommit_revision\x18\x01 \x01(\t\x12\x1f\n\x17parent_commit_revisions\x18\x02 \x03(\tB\x06\n\x04type\"\x90\x01\n\x13MergeCommitDiffMode\x12&\n\"MERGE_COMMIT_DIFF_MODE_UNSPECIFIED\x10\x00\x12)\n%MERGE_COMMIT_DIFF_MODE_INCLUDE_MERGES\x10\x01\x12&\n\"MERGE_COMMIT_DIFF_MODE_ALL_PARENTS\x10\x02\"?\n\x18\x46indChangedPathsResponse\x12#\n\x05paths\x18\x01 \x03(\x0b\x32\x14.gitaly.ChangedPaths\"\x83\x02\n\x0c\x43hangedPaths\x12\x0c\n\x04path\x18\x01 \x01(\x0c\x12+\n\x06status\x18\x02 \x01(\x0e\x32\x1b.gitaly.ChangedPaths.Status\x12\x10\n\x08old_mode\x18\x03 \x01(\x05\x12\x10\n\x08new_mode\x18\x04 \x01(\x05\x12\x13\n\x0bold_blob_id\x18\x05 \x01(\t\x12\x13\n\x0bnew_blob_id\x18\x06 \x01(\t\x12\x10\n\x08old_path\x18\x07 \x01(\x0c\"X\n\x06Status\x12\t\n\x05\x41\x44\x44\x45\x44\x10\x00\x12\x0c\n\x08MODIFIED\x10\x01\x12\x0b\n\x07\x44\x45LETED\x10\x02\x12\x0f\n\x0bTYPE_CHANGE\x10\x03\x12\n\n\x06\x43OPIED\x10\x04\x12\x0b\n\x07RENAMED\x10\x05\"m\n\x11GetPatchIDRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x14\n\x0cold_revision\x18\x02 \x01(\x0c\x12\x14\n\x0cnew_revision\x18\x03 \x01(\x0c\"&\n\x12GetPatchIDResponse\x12\x10\n\x08patch_id\x18\x01 \x01(\t\"+\n\tRangePair\x12\x0e\n\x06range1\x18\x01 \x01(\t\x12\x0e\n\x06range2\x18\x02 \x01(\t\"+\n\rRevisionRange\x12\x0c\n\x04rev1\x18\x01 \x01(\t\x12\x0c\n\x04rev2\x18\x02 \x01(\t\"=\n\x11\x42\x61seWithRevisions\x12\x0c\n\x04\x62\x61se\x18\x01 \x01(\t\x12\x0c\n\x04rev1\x18\x02 \x01(\t\x12\x0c\n\x04rev2\x18\x03 \x01(\t\"\xe5\x01\n\x13RawRangeDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\'\n\nrange_pair\x18\x02 \x01(\x0b\x32\x11.gitaly.RangePairH\x00\x12/\n\x0erevision_range\x18\x03 \x01(\x0b\x32\x15.gitaly.RevisionRangeH\x00\x12\x38\n\x13\x62\x61se_with_revisions\x18\x04 \x01(\x0b\x32\x19.gitaly.BaseWithRevisionsH\x00\x42\x0c\n\nrange_spec\"$\n\x14RawRangeDiffResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"\xe2\x01\n\x10RangeDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\'\n\nrange_pair\x18\x02 \x01(\x0b\x32\x11.gitaly.RangePairH\x00\x12/\n\x0erevision_range\x18\x03 \x01(\x0b\x32\x15.gitaly.RevisionRangeH\x00\x12\x38\n\x13\x62\x61se_with_revisions\x18\x04 \x01(\x0b\x32\x19.gitaly.BaseWithRevisionsH\x00\x42\x0c\n\nrange_spec\"\xc4\x02\n\x11RangeDiffResponse\x12\x16\n\x0e\x66rom_commit_id\x18\x01 \x01(\t\x12\x14\n\x0cto_commit_id\x18\x02 \x01(\t\x12\x38\n\ncomparison\x18\x03 \x01(\x0e\x32$.gitaly.RangeDiffResponse.Comparator\x12\x1c\n\x14\x63ommit_message_title\x18\x07 \x01(\t\x12\x12\n\npatch_data\x18\x08 \x01(\x0c\x12\x14\n\x0c\x65nd_of_patch\x18\t \x01(\x08\"\x7f\n\nComparator\x12 \n\x1c\x43OMPARATOR_EQUAL_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x43OMPARATOR_GREATER_THAN\x10\x01\x12\x18\n\x14\x43OMPARATOR_LESS_THAN\x10\x02\x12\x18\n\x14\x43OMPARATOR_NOT_EQUAL\x10\x03\"\xf9\x03\n\x10\x44iffBlobsRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x35\n\nblob_pairs\x18\x02 \x03(\x0b\x32!.gitaly.DiffBlobsRequest.BlobPair\x12\x34\n\tdiff_mode\x18\x03 \x01(\x0e\x32!.gitaly.DiffBlobsRequest.DiffMode\x12\x46\n\x12whitespace_changes\x18\x04 \x01(\x0e\x32*.gitaly.DiffBlobsRequest.WhitespaceChanges\x12\x19\n\x11patch_bytes_limit\x18\x05 \x01(\x05\x1a\x31\n\x08\x42lobPair\x12\x11\n\tleft_blob\x18\x01 \x01(\x0c\x12\x12\n\nright_blob\x18\x02 \x01(\x0c\"9\n\x08\x44iffMode\x12\x19\n\x15\x44IFF_MODE_UNSPECIFIED\x10\x00\x12\x12\n\x0e\x44IFF_MODE_WORD\x10\x01\"y\n\x11WhitespaceChanges\x12\"\n\x1eWHITESPACE_CHANGES_UNSPECIFIED\x10\x00\x12\x1d\n\x19WHITESPACE_CHANGES_IGNORE\x10\x01\x12!\n\x1dWHITESPACE_CHANGES_IGNORE_ALL\x10\x02\"\xff\x01\n\x11\x44iffBlobsResponse\x12\x14\n\x0cleft_blob_id\x18\x01 \x01(\t\x12\x15\n\rright_blob_id\x18\x02 \x01(\t\x12\r\n\x05patch\x18\x03 \x01(\x0c\x12\x30\n\x06status\x18\x04 \x01(\x0e\x32 .gitaly.DiffBlobsResponse.Status\x12\x0e\n\x06\x62inary\x18\x05 \x01(\x08\x12\x1e\n\x16over_patch_bytes_limit\x18\x06 \x01(\x08\x12\x12\n\npatch_size\x18\x07 \x01(\x05\"8\n\x06Status\x12\x15\n\x11STATUS_INCOMPLETE\x10\x00\x12\x17\n\x13STATUS_END_OF_PATCH\x10\x01\x32\xa4\x06\n\x0b\x44iffService\x12M\n\nCommitDiff\x12\x19.gitaly.CommitDiffRequest\x1a\x1a.gitaly.CommitDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12P\n\x0b\x43ommitDelta\x12\x1a.gitaly.CommitDeltaRequest\x1a\x1b.gitaly.CommitDeltaResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12\x44\n\x07RawDiff\x12\x16.gitaly.RawDiffRequest\x1a\x17.gitaly.RawDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12G\n\x08RawPatch\x12\x17.gitaly.RawPatchRequest\x1a\x18.gitaly.RawPatchResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12J\n\tDiffStats\x12\x18.gitaly.DiffStatsRequest\x1a\x19.gitaly.DiffStatsResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12_\n\x10\x46indChangedPaths\x12\x1f.gitaly.FindChangedPathsRequest\x1a .gitaly.FindChangedPathsResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12K\n\nGetPatchID\x12\x19.gitaly.GetPatchIDRequest\x1a\x1a.gitaly.GetPatchIDResponse\"\x06\xfa\x97(\x02\x08\x02\x12S\n\x0cRawRangeDiff\x12\x1b.gitaly.RawRangeDiffRequest\x1a\x1c.gitaly.RawRangeDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12J\n\tRangeDiff\x12\x18.gitaly.RangeDiffRequest\x1a\x19.gitaly.RangeDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12J\n\tDiffBlobs\x12\x18.gitaly.DiffBlobsRequest\x1a\x19.gitaly.DiffBlobsResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x42\x34Z2gitlab.com/gitlab-org/gitaly/v16/proto/go/gitalypbb\x06proto3')
19
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\ndiff.proto\x12\x06gitaly\x1a\nlint.proto\x1a\x0cshared.proto\"\xd8\x06\n\x11\x43ommitDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\x12\r\n\x05paths\x18\x05 \x03(\x0c\x12\x16\n\x0e\x63ollapse_diffs\x18\x06 \x01(\x08\x12\x16\n\x0e\x65nforce_limits\x18\x07 \x01(\x08\x12\x11\n\tmax_files\x18\x08 \x01(\x05\x12\x11\n\tmax_lines\x18\t \x01(\x05\x12\x11\n\tmax_bytes\x18\n \x01(\x05\x12\x17\n\x0fmax_patch_bytes\x18\x0e \x01(\x05\x12\x16\n\x0esafe_max_files\x18\x0b \x01(\x05\x12\x16\n\x0esafe_max_lines\x18\x0c \x01(\x05\x12\x16\n\x0esafe_max_bytes\x18\r \x01(\x05\x12\x35\n\tdiff_mode\x18\x0f \x01(\x0e\x32\".gitaly.CommitDiffRequest.DiffMode\x12h\n\"max_patch_bytes_for_file_extension\x18\x10 \x03(\x0b\x32<.gitaly.CommitDiffRequest.MaxPatchBytesForFileExtensionEntry\x12G\n\x12whitespace_changes\x18\x11 \x01(\x0e\x32+.gitaly.CommitDiffRequest.WhitespaceChanges\x12\x19\n\x11\x63ollect_all_paths\x18\x12 \x01(\x08\x1a\x44\n\"MaxPatchBytesForFileExtensionEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05:\x02\x38\x01\"%\n\x08\x44iffMode\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\x0c\n\x08WORDDIFF\x10\x01\"y\n\x11WhitespaceChanges\x12\"\n\x1eWHITESPACE_CHANGES_UNSPECIFIED\x10\x00\x12\x1d\n\x19WHITESPACE_CHANGES_IGNORE\x10\x01\x12!\n\x1dWHITESPACE_CHANGES_IGNORE_ALL\x10\x02J\x04\x08\x04\x10\x05R\x18ignore_whitespace_change\"\xff\x01\n\x12\x43ommitDiffResponse\x12\x11\n\tfrom_path\x18\x01 \x01(\x0c\x12\x0f\n\x07to_path\x18\x02 \x01(\x0c\x12\x0f\n\x07\x66rom_id\x18\x03 \x01(\t\x12\r\n\x05to_id\x18\x04 \x01(\t\x12\x10\n\x08old_mode\x18\x05 \x01(\x05\x12\x10\n\x08new_mode\x18\x06 \x01(\x05\x12\x0e\n\x06\x62inary\x18\x07 \x01(\x08\x12\x16\n\x0eraw_patch_data\x18\t \x01(\x0c\x12\x14\n\x0c\x65nd_of_patch\x18\n \x01(\x08\x12\x17\n\x0foverflow_marker\x18\x0b \x01(\x08\x12\x11\n\tcollapsed\x18\x0c \x01(\x08\x12\x11\n\ttoo_large\x18\r \x01(\x08J\x04\x08\x08\x10\t\"\x82\x01\n\x12\x43ommitDeltaRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\x12\r\n\x05paths\x18\x04 \x03(\x0c\"u\n\x0b\x43ommitDelta\x12\x11\n\tfrom_path\x18\x01 \x01(\x0c\x12\x0f\n\x07to_path\x18\x02 \x01(\x0c\x12\x0f\n\x07\x66rom_id\x18\x03 \x01(\t\x12\r\n\x05to_id\x18\x04 \x01(\t\x12\x10\n\x08old_mode\x18\x05 \x01(\x05\x12\x10\n\x08new_mode\x18\x06 \x01(\x05\":\n\x13\x43ommitDeltaResponse\x12#\n\x06\x64\x65ltas\x18\x01 \x03(\x0b\x32\x13.gitaly.CommitDelta\"o\n\x0eRawDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\"\x1f\n\x0fRawDiffResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"p\n\x0fRawPatchRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\" \n\x10RawPatchResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"q\n\x10\x44iffStatsRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x16\n\x0eleft_commit_id\x18\x02 \x01(\t\x12\x17\n\x0fright_commit_id\x18\x03 \x01(\t\"Q\n\tDiffStats\x12\x0c\n\x04path\x18\x01 \x01(\x0c\x12\x11\n\tadditions\x18\x02 \x01(\x05\x12\x11\n\tdeletions\x18\x03 \x01(\x05\x12\x10\n\x08old_path\x18\x04 \x01(\x0c\"5\n\x11\x44iffStatsResponse\x12 \n\x05stats\x18\x01 \x03(\x0b\x32\x11.gitaly.DiffStats\"\xda\x05\n\x17\x46indChangedPathsRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x13\n\x07\x63ommits\x18\x02 \x03(\tB\x02\x18\x01\x12\x39\n\x08requests\x18\x03 \x03(\x0b\x32\'.gitaly.FindChangedPathsRequest.Request\x12S\n\x16merge_commit_diff_mode\x18\x04 \x01(\x0e\x32\x33.gitaly.FindChangedPathsRequest.MergeCommitDiffMode\x12\x14\n\x0c\x66ind_renames\x18\x05 \x01(\x08\x1a\xc2\x02\n\x07Request\x12K\n\x0ctree_request\x18\x01 \x01(\x0b\x32\x33.gitaly.FindChangedPathsRequest.Request.TreeRequestH\x00\x12O\n\x0e\x63ommit_request\x18\x02 \x01(\x0b\x32\x35.gitaly.FindChangedPathsRequest.Request.CommitRequestH\x00\x1a\x46\n\x0bTreeRequest\x12\x1a\n\x12left_tree_revision\x18\x01 \x01(\t\x12\x1b\n\x13right_tree_revision\x18\x02 \x01(\t\x1aI\n\rCommitRequest\x12\x17\n\x0f\x63ommit_revision\x18\x01 \x01(\t\x12\x1f\n\x17parent_commit_revisions\x18\x02 \x03(\tB\x06\n\x04type\"\x90\x01\n\x13MergeCommitDiffMode\x12&\n\"MERGE_COMMIT_DIFF_MODE_UNSPECIFIED\x10\x00\x12)\n%MERGE_COMMIT_DIFF_MODE_INCLUDE_MERGES\x10\x01\x12&\n\"MERGE_COMMIT_DIFF_MODE_ALL_PARENTS\x10\x02\"?\n\x18\x46indChangedPathsResponse\x12#\n\x05paths\x18\x01 \x03(\x0b\x32\x14.gitaly.ChangedPaths\"\x92\x02\n\x0c\x43hangedPaths\x12\x0c\n\x04path\x18\x01 \x01(\x0c\x12+\n\x06status\x18\x02 \x01(\x0e\x32\x1b.gitaly.ChangedPaths.Status\x12\x10\n\x08old_mode\x18\x03 \x01(\x05\x12\x10\n\x08new_mode\x18\x04 \x01(\x05\x12\x13\n\x0bold_blob_id\x18\x05 \x01(\t\x12\x13\n\x0bnew_blob_id\x18\x06 \x01(\t\x12\x10\n\x08old_path\x18\x07 \x01(\x0c\x12\r\n\x05score\x18\x08 \x01(\x05\"X\n\x06Status\x12\t\n\x05\x41\x44\x44\x45\x44\x10\x00\x12\x0c\n\x08MODIFIED\x10\x01\x12\x0b\n\x07\x44\x45LETED\x10\x02\x12\x0f\n\x0bTYPE_CHANGE\x10\x03\x12\n\n\x06\x43OPIED\x10\x04\x12\x0b\n\x07RENAMED\x10\x05\"m\n\x11GetPatchIDRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x14\n\x0cold_revision\x18\x02 \x01(\x0c\x12\x14\n\x0cnew_revision\x18\x03 \x01(\x0c\"&\n\x12GetPatchIDResponse\x12\x10\n\x08patch_id\x18\x01 \x01(\t\"+\n\tRangePair\x12\x0e\n\x06range1\x18\x01 \x01(\t\x12\x0e\n\x06range2\x18\x02 \x01(\t\"+\n\rRevisionRange\x12\x0c\n\x04rev1\x18\x01 \x01(\t\x12\x0c\n\x04rev2\x18\x02 \x01(\t\"=\n\x11\x42\x61seWithRevisions\x12\x0c\n\x04\x62\x61se\x18\x01 \x01(\t\x12\x0c\n\x04rev1\x18\x02 \x01(\t\x12\x0c\n\x04rev2\x18\x03 \x01(\t\"\xe5\x01\n\x13RawRangeDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\'\n\nrange_pair\x18\x02 \x01(\x0b\x32\x11.gitaly.RangePairH\x00\x12/\n\x0erevision_range\x18\x03 \x01(\x0b\x32\x15.gitaly.RevisionRangeH\x00\x12\x38\n\x13\x62\x61se_with_revisions\x18\x04 \x01(\x0b\x32\x19.gitaly.BaseWithRevisionsH\x00\x42\x0c\n\nrange_spec\"$\n\x14RawRangeDiffResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"\xe2\x01\n\x10RangeDiffRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\'\n\nrange_pair\x18\x02 \x01(\x0b\x32\x11.gitaly.RangePairH\x00\x12/\n\x0erevision_range\x18\x03 \x01(\x0b\x32\x15.gitaly.RevisionRangeH\x00\x12\x38\n\x13\x62\x61se_with_revisions\x18\x04 \x01(\x0b\x32\x19.gitaly.BaseWithRevisionsH\x00\x42\x0c\n\nrange_spec\"\xc4\x02\n\x11RangeDiffResponse\x12\x16\n\x0e\x66rom_commit_id\x18\x01 \x01(\t\x12\x14\n\x0cto_commit_id\x18\x02 \x01(\t\x12\x38\n\ncomparison\x18\x03 \x01(\x0e\x32$.gitaly.RangeDiffResponse.Comparator\x12\x1c\n\x14\x63ommit_message_title\x18\x07 \x01(\t\x12\x12\n\npatch_data\x18\x08 \x01(\x0c\x12\x14\n\x0c\x65nd_of_patch\x18\t \x01(\x08\"\x7f\n\nComparator\x12 \n\x1c\x43OMPARATOR_EQUAL_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x43OMPARATOR_GREATER_THAN\x10\x01\x12\x18\n\x14\x43OMPARATOR_LESS_THAN\x10\x02\x12\x18\n\x14\x43OMPARATOR_NOT_EQUAL\x10\x03\"\xa1\x04\n\x10\x44iffBlobsRequest\x12,\n\nrepository\x18\x01 \x01(\x0b\x32\x12.gitaly.RepositoryB\x04\x98\xc6,\x01\x12\x35\n\nblob_pairs\x18\x02 \x03(\x0b\x32!.gitaly.DiffBlobsRequest.BlobPair\x12\x34\n\tdiff_mode\x18\x03 \x01(\x0e\x32!.gitaly.DiffBlobsRequest.DiffMode\x12\x46\n\x12whitespace_changes\x18\x04 \x01(\x0e\x32*.gitaly.DiffBlobsRequest.WhitespaceChanges\x12\x19\n\x11patch_bytes_limit\x18\x05 \x01(\x05\x12&\n\x08raw_info\x18\x06 \x03(\x0b\x32\x14.gitaly.ChangedPaths\x1a\x31\n\x08\x42lobPair\x12\x11\n\tleft_blob\x18\x01 \x01(\x0c\x12\x12\n\nright_blob\x18\x02 \x01(\x0c\"9\n\x08\x44iffMode\x12\x19\n\x15\x44IFF_MODE_UNSPECIFIED\x10\x00\x12\x12\n\x0e\x44IFF_MODE_WORD\x10\x01\"y\n\x11WhitespaceChanges\x12\"\n\x1eWHITESPACE_CHANGES_UNSPECIFIED\x10\x00\x12\x1d\n\x19WHITESPACE_CHANGES_IGNORE\x10\x01\x12!\n\x1dWHITESPACE_CHANGES_IGNORE_ALL\x10\x02\"\xff\x01\n\x11\x44iffBlobsResponse\x12\x14\n\x0cleft_blob_id\x18\x01 \x01(\t\x12\x15\n\rright_blob_id\x18\x02 \x01(\t\x12\r\n\x05patch\x18\x03 \x01(\x0c\x12\x30\n\x06status\x18\x04 \x01(\x0e\x32 .gitaly.DiffBlobsResponse.Status\x12\x0e\n\x06\x62inary\x18\x05 \x01(\x08\x12\x1e\n\x16over_patch_bytes_limit\x18\x06 \x01(\x08\x12\x12\n\npatch_size\x18\x07 \x01(\x05\"8\n\x06Status\x12\x15\n\x11STATUS_INCOMPLETE\x10\x00\x12\x17\n\x13STATUS_END_OF_PATCH\x10\x01\x32\xa4\x06\n\x0b\x44iffService\x12M\n\nCommitDiff\x12\x19.gitaly.CommitDiffRequest\x1a\x1a.gitaly.CommitDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12P\n\x0b\x43ommitDelta\x12\x1a.gitaly.CommitDeltaRequest\x1a\x1b.gitaly.CommitDeltaResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12\x44\n\x07RawDiff\x12\x16.gitaly.RawDiffRequest\x1a\x17.gitaly.RawDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12G\n\x08RawPatch\x12\x17.gitaly.RawPatchRequest\x1a\x18.gitaly.RawPatchResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12J\n\tDiffStats\x12\x18.gitaly.DiffStatsRequest\x1a\x19.gitaly.DiffStatsResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12_\n\x10\x46indChangedPaths\x12\x1f.gitaly.FindChangedPathsRequest\x1a .gitaly.FindChangedPathsResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12K\n\nGetPatchID\x12\x19.gitaly.GetPatchIDRequest\x1a\x1a.gitaly.GetPatchIDResponse\"\x06\xfa\x97(\x02\x08\x02\x12S\n\x0cRawRangeDiff\x12\x1b.gitaly.RawRangeDiffRequest\x1a\x1c.gitaly.RawRangeDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12J\n\tRangeDiff\x12\x18.gitaly.RangeDiffRequest\x1a\x19.gitaly.RangeDiffResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12J\n\tDiffBlobs\x12\x18.gitaly.DiffBlobsRequest\x1a\x19.gitaly.DiffBlobsResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x42\x34Z2gitlab.com/gitlab-org/gitaly/v16/proto/go/gitalypbb\x06proto3')
20
20
 
21
21
  _globals = globals()
22
22
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -111,41 +111,41 @@ if not _descriptor._USE_C_DESCRIPTORS:
111
111
  _globals['_FINDCHANGEDPATHSRESPONSE']._serialized_start=2757
112
112
  _globals['_FINDCHANGEDPATHSRESPONSE']._serialized_end=2820
113
113
  _globals['_CHANGEDPATHS']._serialized_start=2823
114
- _globals['_CHANGEDPATHS']._serialized_end=3082
115
- _globals['_CHANGEDPATHS_STATUS']._serialized_start=2994
116
- _globals['_CHANGEDPATHS_STATUS']._serialized_end=3082
117
- _globals['_GETPATCHIDREQUEST']._serialized_start=3084
118
- _globals['_GETPATCHIDREQUEST']._serialized_end=3193
119
- _globals['_GETPATCHIDRESPONSE']._serialized_start=3195
120
- _globals['_GETPATCHIDRESPONSE']._serialized_end=3233
121
- _globals['_RANGEPAIR']._serialized_start=3235
122
- _globals['_RANGEPAIR']._serialized_end=3278
123
- _globals['_REVISIONRANGE']._serialized_start=3280
124
- _globals['_REVISIONRANGE']._serialized_end=3323
125
- _globals['_BASEWITHREVISIONS']._serialized_start=3325
126
- _globals['_BASEWITHREVISIONS']._serialized_end=3386
127
- _globals['_RAWRANGEDIFFREQUEST']._serialized_start=3389
128
- _globals['_RAWRANGEDIFFREQUEST']._serialized_end=3618
129
- _globals['_RAWRANGEDIFFRESPONSE']._serialized_start=3620
130
- _globals['_RAWRANGEDIFFRESPONSE']._serialized_end=3656
131
- _globals['_RANGEDIFFREQUEST']._serialized_start=3659
132
- _globals['_RANGEDIFFREQUEST']._serialized_end=3885
133
- _globals['_RANGEDIFFRESPONSE']._serialized_start=3888
134
- _globals['_RANGEDIFFRESPONSE']._serialized_end=4212
135
- _globals['_RANGEDIFFRESPONSE_COMPARATOR']._serialized_start=4085
136
- _globals['_RANGEDIFFRESPONSE_COMPARATOR']._serialized_end=4212
137
- _globals['_DIFFBLOBSREQUEST']._serialized_start=4215
138
- _globals['_DIFFBLOBSREQUEST']._serialized_end=4720
139
- _globals['_DIFFBLOBSREQUEST_BLOBPAIR']._serialized_start=4489
140
- _globals['_DIFFBLOBSREQUEST_BLOBPAIR']._serialized_end=4538
141
- _globals['_DIFFBLOBSREQUEST_DIFFMODE']._serialized_start=4540
142
- _globals['_DIFFBLOBSREQUEST_DIFFMODE']._serialized_end=4597
114
+ _globals['_CHANGEDPATHS']._serialized_end=3097
115
+ _globals['_CHANGEDPATHS_STATUS']._serialized_start=3009
116
+ _globals['_CHANGEDPATHS_STATUS']._serialized_end=3097
117
+ _globals['_GETPATCHIDREQUEST']._serialized_start=3099
118
+ _globals['_GETPATCHIDREQUEST']._serialized_end=3208
119
+ _globals['_GETPATCHIDRESPONSE']._serialized_start=3210
120
+ _globals['_GETPATCHIDRESPONSE']._serialized_end=3248
121
+ _globals['_RANGEPAIR']._serialized_start=3250
122
+ _globals['_RANGEPAIR']._serialized_end=3293
123
+ _globals['_REVISIONRANGE']._serialized_start=3295
124
+ _globals['_REVISIONRANGE']._serialized_end=3338
125
+ _globals['_BASEWITHREVISIONS']._serialized_start=3340
126
+ _globals['_BASEWITHREVISIONS']._serialized_end=3401
127
+ _globals['_RAWRANGEDIFFREQUEST']._serialized_start=3404
128
+ _globals['_RAWRANGEDIFFREQUEST']._serialized_end=3633
129
+ _globals['_RAWRANGEDIFFRESPONSE']._serialized_start=3635
130
+ _globals['_RAWRANGEDIFFRESPONSE']._serialized_end=3671
131
+ _globals['_RANGEDIFFREQUEST']._serialized_start=3674
132
+ _globals['_RANGEDIFFREQUEST']._serialized_end=3900
133
+ _globals['_RANGEDIFFRESPONSE']._serialized_start=3903
134
+ _globals['_RANGEDIFFRESPONSE']._serialized_end=4227
135
+ _globals['_RANGEDIFFRESPONSE_COMPARATOR']._serialized_start=4100
136
+ _globals['_RANGEDIFFRESPONSE_COMPARATOR']._serialized_end=4227
137
+ _globals['_DIFFBLOBSREQUEST']._serialized_start=4230
138
+ _globals['_DIFFBLOBSREQUEST']._serialized_end=4775
139
+ _globals['_DIFFBLOBSREQUEST_BLOBPAIR']._serialized_start=4544
140
+ _globals['_DIFFBLOBSREQUEST_BLOBPAIR']._serialized_end=4593
141
+ _globals['_DIFFBLOBSREQUEST_DIFFMODE']._serialized_start=4595
142
+ _globals['_DIFFBLOBSREQUEST_DIFFMODE']._serialized_end=4652
143
143
  _globals['_DIFFBLOBSREQUEST_WHITESPACECHANGES']._serialized_start=752
144
144
  _globals['_DIFFBLOBSREQUEST_WHITESPACECHANGES']._serialized_end=873
145
- _globals['_DIFFBLOBSRESPONSE']._serialized_start=4723
146
- _globals['_DIFFBLOBSRESPONSE']._serialized_end=4978
147
- _globals['_DIFFBLOBSRESPONSE_STATUS']._serialized_start=4922
148
- _globals['_DIFFBLOBSRESPONSE_STATUS']._serialized_end=4978
149
- _globals['_DIFFSERVICE']._serialized_start=4981
150
- _globals['_DIFFSERVICE']._serialized_end=5785
145
+ _globals['_DIFFBLOBSRESPONSE']._serialized_start=4778
146
+ _globals['_DIFFBLOBSRESPONSE']._serialized_end=5033
147
+ _globals['_DIFFBLOBSRESPONSE_STATUS']._serialized_start=4977
148
+ _globals['_DIFFBLOBSRESPONSE_STATUS']._serialized_end=5033
149
+ _globals['_DIFFSERVICE']._serialized_start=5036
150
+ _globals['_DIFFSERVICE']._serialized_end=5840
151
151
  # @@protoc_insertion_point(module_scope)
@@ -13,11 +13,10 @@ _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
15
  from . import lint_pb2 as lint__pb2
16
- from . import shared_pb2 as shared__pb2
17
16
  from . import repository_pb2 as repository__pb2
18
17
 
19
18
 
20
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17mercurial-aux-git.proto\x12\x07hgitaly\x1a\nlint.proto\x1a\x0cshared.proto\x1a\x10repository.proto2\xcd\x02\n\x16MercurialAuxGitService\x12Y\n\x12\x41uxGitCreateBundle\x12\x1b.gitaly.CreateBundleRequest\x1a\x1c.gitaly.CreateBundleResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12y\n\x16\x41uxGitCreateFromBundle\x12).gitaly.CreateRepositoryFromBundleRequest\x1a*.gitaly.CreateRepositoryFromBundleResponse\"\x06\xfa\x97(\x02\x08\x01(\x01\x12]\n\x14\x41uxGitRepositorySize\x12\x1d.gitaly.RepositorySizeRequest\x1a\x1e.gitaly.RepositorySizeResponse\"\x06\xfa\x97(\x02\x08\x01\x62\x06proto3')
19
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17mercurial-aux-git.proto\x12\x07hgitaly\x1a\nlint.proto\x1a\x10repository.proto2\xcd\x02\n\x16MercurialAuxGitService\x12Y\n\x12\x41uxGitCreateBundle\x12\x1b.gitaly.CreateBundleRequest\x1a\x1c.gitaly.CreateBundleResponse\"\x06\xfa\x97(\x02\x08\x02\x30\x01\x12y\n\x16\x41uxGitCreateFromBundle\x12).gitaly.CreateRepositoryFromBundleRequest\x1a*.gitaly.CreateRepositoryFromBundleResponse\"\x06\xfa\x97(\x02\x08\x01(\x01\x12]\n\x14\x41uxGitRepositorySize\x12\x1d.gitaly.RepositorySizeRequest\x1a\x1e.gitaly.RepositorySizeResponse\"\x06\xfa\x97(\x02\x08\x01\x62\x06proto3')
21
20
 
22
21
  _globals = globals()
23
22
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -30,6 +29,6 @@ if not _descriptor._USE_C_DESCRIPTORS:
30
29
  _globals['_MERCURIALAUXGITSERVICE'].methods_by_name['AuxGitCreateFromBundle']._serialized_options = b'\372\227(\002\010\001'
31
30
  _globals['_MERCURIALAUXGITSERVICE'].methods_by_name['AuxGitRepositorySize']._loaded_options = None
32
31
  _globals['_MERCURIALAUXGITSERVICE'].methods_by_name['AuxGitRepositorySize']._serialized_options = b'\372\227(\002\010\001'
33
- _globals['_MERCURIALAUXGITSERVICE']._serialized_start=81
34
- _globals['_MERCURIALAUXGITSERVICE']._serialized_end=414
32
+ _globals['_MERCURIALAUXGITSERVICE']._serialized_start=67
33
+ _globals['_MERCURIALAUXGITSERVICE']._serialized_end=400
35
34
  # @@protoc_insertion_point(module_scope)