launchable 1.97.0__tar.gz → 1.97.2__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 (329) hide show
  1. {launchable-1.97.0 → launchable-1.97.2}/.github/workflows/python-publish.yml +1 -1
  2. {launchable-1.97.0/launchable.egg-info → launchable-1.97.2}/PKG-INFO +3 -5
  3. {launchable-1.97.0 → launchable-1.97.2}/README.md +2 -4
  4. launchable-1.97.2/build-java.sh +5 -0
  5. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/subset.py +0 -14
  6. {launchable-1.97.0 → launchable-1.97.2}/launchable/jar/exe_deploy.jar +0 -0
  7. {launchable-1.97.0 → launchable-1.97.2/launchable.egg-info}/PKG-INFO +3 -5
  8. {launchable-1.97.0 → launchable-1.97.2}/launchable.egg-info/SOURCES.txt +1 -0
  9. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/CommitGraphCollector.java +55 -30
  10. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/JSCommit.java +11 -0
  11. {launchable-1.97.0 → launchable-1.97.2}/.bazelrc +0 -0
  12. {launchable-1.97.0 → launchable-1.97.2}/.bazelversion +0 -0
  13. {launchable-1.97.0 → launchable-1.97.2}/.editorconfig +0 -0
  14. {launchable-1.97.0 → launchable-1.97.2}/.github/release.yml +0 -0
  15. {launchable-1.97.0 → launchable-1.97.2}/.github/workflows/bazel-test.yml +0 -0
  16. {launchable-1.97.0 → launchable-1.97.2}/.github/workflows/e2e.yml +0 -0
  17. {launchable-1.97.0 → launchable-1.97.2}/.github/workflows/python-package.yml +0 -0
  18. {launchable-1.97.0 → launchable-1.97.2}/.github/workflows/update_maven_install_json.yml +0 -0
  19. {launchable-1.97.0 → launchable-1.97.2}/.gitignore +0 -0
  20. {launchable-1.97.0 → launchable-1.97.2}/.pre-commit-config.yaml +0 -0
  21. {launchable-1.97.0 → launchable-1.97.2}/.python-version +0 -0
  22. {launchable-1.97.0 → launchable-1.97.2}/.tagpr +0 -0
  23. {launchable-1.97.0 → launchable-1.97.2}/CONTRIBUTING.md +0 -0
  24. {launchable-1.97.0 → launchable-1.97.2}/Dockerfile +0 -0
  25. {launchable-1.97.0 → launchable-1.97.2}/LICENSE.txt +0 -0
  26. {launchable-1.97.0 → launchable-1.97.2}/Pipfile +0 -0
  27. {launchable-1.97.0 → launchable-1.97.2}/WORKSPACE +0 -0
  28. {launchable-1.97.0 → launchable-1.97.2}/launchable/__init__.py +0 -0
  29. {launchable-1.97.0 → launchable-1.97.2}/launchable/__main__.py +0 -0
  30. {launchable-1.97.0 → launchable-1.97.2}/launchable/app.py +0 -0
  31. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/__init__.py +0 -0
  32. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/helper.py +0 -0
  33. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/inspect/__init__.py +0 -0
  34. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/inspect/subset.py +0 -0
  35. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/inspect/tests.py +0 -0
  36. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/record/__init__.py +0 -0
  37. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/record/attachment.py +0 -0
  38. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/record/build.py +0 -0
  39. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/record/case_event.py +0 -0
  40. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/record/commit.py +0 -0
  41. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/record/session.py +0 -0
  42. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/record/tests.py +0 -0
  43. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/split_subset.py +0 -0
  44. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/stats/__init__.py +0 -0
  45. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/stats/test_sessions.py +0 -0
  46. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/test_path_writer.py +0 -0
  47. {launchable-1.97.0 → launchable-1.97.2}/launchable/commands/verify.py +0 -0
  48. {launchable-1.97.0 → launchable-1.97.2}/launchable/plugins/__init__.py +0 -0
  49. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/__init__.py +0 -0
  50. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/adb.py +0 -0
  51. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/ant.py +0 -0
  52. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/bazel.py +0 -0
  53. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/behave.py +0 -0
  54. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/ctest.py +0 -0
  55. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/cts.py +0 -0
  56. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/cucumber.py +0 -0
  57. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/cypress.py +0 -0
  58. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/dotnet.py +0 -0
  59. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/file.py +0 -0
  60. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/flutter.py +0 -0
  61. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/go_test.py +0 -0
  62. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/googletest.py +0 -0
  63. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/gradle.py +0 -0
  64. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/jest.py +0 -0
  65. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/launchable.py +0 -0
  66. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/maven.py +0 -0
  67. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/minitest.py +0 -0
  68. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/nunit.py +0 -0
  69. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/playwright.py +0 -0
  70. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/prove.py +0 -0
  71. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/pytest.py +0 -0
  72. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/raw.py +0 -0
  73. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/robot.py +0 -0
  74. {launchable-1.97.0 → launchable-1.97.2}/launchable/test_runners/rspec.py +0 -0
  75. {launchable-1.97.0 → launchable-1.97.2}/launchable/testpath.py +0 -0
  76. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/__init__.py +0 -0
  77. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/authentication.py +0 -0
  78. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/ci_provider.py +0 -0
  79. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/click.py +0 -0
  80. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/commit_ingester.py +0 -0
  81. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/env_keys.py +0 -0
  82. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/exceptions.py +0 -0
  83. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/file_name_pattern.py +0 -0
  84. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/git_log_parser.py +0 -0
  85. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/glob.py +0 -0
  86. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/gzipgen.py +0 -0
  87. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/http_client.py +0 -0
  88. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/java.py +0 -0
  89. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/launchable_client.py +0 -0
  90. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/link.py +0 -0
  91. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/logger.py +0 -0
  92. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/no_build.py +0 -0
  93. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/sax.py +0 -0
  94. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/session.py +0 -0
  95. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/subprocess.py +0 -0
  96. {launchable-1.97.0 → launchable-1.97.2}/launchable/utils/tracking.py +0 -0
  97. {launchable-1.97.0 → launchable-1.97.2}/launchable/version.py +0 -0
  98. {launchable-1.97.0 → launchable-1.97.2}/launchable.egg-info/dependency_links.txt +0 -0
  99. {launchable-1.97.0 → launchable-1.97.2}/launchable.egg-info/entry_points.txt +0 -0
  100. {launchable-1.97.0 → launchable-1.97.2}/launchable.egg-info/requires.txt +0 -0
  101. {launchable-1.97.0 → launchable-1.97.2}/launchable.egg-info/top_level.txt +0 -0
  102. {launchable-1.97.0 → launchable-1.97.2}/pyproject.toml +0 -0
  103. {launchable-1.97.0 → launchable-1.97.2}/renovate.json +0 -0
  104. {launchable-1.97.0 → launchable-1.97.2}/setup.cfg +0 -0
  105. {launchable-1.97.0 → launchable-1.97.2}/setup.py +0 -0
  106. {launchable-1.97.0 → launchable-1.97.2}/src/BUILD +0 -0
  107. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/Authenticator.java +0 -0
  108. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/BUILD +0 -0
  109. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/CommitIngester.java +0 -0
  110. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/CountingDiffFormatter.java +0 -0
  111. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/GitHubActionsAuthenticator.java +0 -0
  112. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/GitHubIdTokenAuthenticator.java +0 -0
  113. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/JSFileChange.java +0 -0
  114. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/ObjectRevFilter.java +0 -0
  115. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/SSLBypass.java +0 -0
  116. {launchable-1.97.0 → launchable-1.97.2}/src/main/java/com/launchableinc/ingest/commits/TokenAuthenticator.java +0 -0
  117. {launchable-1.97.0 → launchable-1.97.2}/src/maven_install.json +0 -0
  118. {launchable-1.97.0 → launchable-1.97.2}/src/test/java/com/launchableinc/ingest/commits/AllTests.java +0 -0
  119. {launchable-1.97.0 → launchable-1.97.2}/src/test/java/com/launchableinc/ingest/commits/BUILD +0 -0
  120. {launchable-1.97.0 → launchable-1.97.2}/src/test/java/com/launchableinc/ingest/commits/CommitGraphCollectorTest.java +0 -0
  121. {launchable-1.97.0 → launchable-1.97.2}/src/test/java/com/launchableinc/ingest/commits/CommitIngesterTest.java +0 -0
  122. {launchable-1.97.0 → launchable-1.97.2}/src/test/java/com/launchableinc/ingest/commits/SSLBypassTest.java +0 -0
  123. {launchable-1.97.0 → launchable-1.97.2}/src/test/java/com/launchableinc/ingest/commits/java8-compat.sh +0 -0
  124. {launchable-1.97.0 → launchable-1.97.2}/test-runner/__main__.py +0 -0
  125. {launchable-1.97.0 → launchable-1.97.2}/tests/__init__.py +0 -0
  126. {launchable-1.97.0 → launchable-1.97.2}/tests/cli_test_case.py +0 -0
  127. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/__init__.py +0 -0
  128. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/inspect/__init__.py +0 -0
  129. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/inspect/test_subset.py +0 -0
  130. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/inspect/test_tests.py +0 -0
  131. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/record/__init__.py +0 -0
  132. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/record/test_attachment.py +0 -0
  133. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/record/test_build.py +0 -0
  134. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/record/test_commit.py +0 -0
  135. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/record/test_session.py +0 -0
  136. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/record/test_tests.py +0 -0
  137. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/test_api_error.py +0 -0
  138. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/test_helper.py +0 -0
  139. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/test_split_subset.py +0 -0
  140. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/test_subset.py +0 -0
  141. {launchable-1.97.0 → launchable-1.97.2}/tests/commands/test_verify.py +0 -0
  142. {launchable-1.97.0 → launchable-1.97.2}/tests/data/adb/subset_result.json +0 -0
  143. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/junitreport/TEST-com.launchable.HelloWorldTest.xml +0 -0
  144. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/junitreport/TEST-com.launchable.library.CacheTest.xml +0 -0
  145. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/junitreport/TESTS-TestSuites.xml +0 -0
  146. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/record_test_result.json +0 -0
  147. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/src/com/launchable/HelloWorld.java +0 -0
  148. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/src/com/launchable/HelloWorldTest.java +0 -0
  149. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/src/com/launchable/library/Cache.java +0 -0
  150. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/src/com/launchable/library/CacheTest.java +0 -0
  151. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ant/subset_result.json +0 -0
  152. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test1/test.cache_status +0 -0
  153. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test1/test.xml +0 -0
  154. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test2/test.cache_status +0 -0
  155. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test2/test.xml +0 -0
  156. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test3/test.cache_status +0 -0
  157. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test3/test.xml +0 -0
  158. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test4/test.cache_status +0 -0
  159. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test4/test.xml +0 -0
  160. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test5/test.cache_status +0 -0
  161. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test5/test.xml +0 -0
  162. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test6/test.cache_status +0 -0
  163. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test6/test.xml +0 -0
  164. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test7/test.cache_status +0 -0
  165. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test7/test.xml +0 -0
  166. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test8/test.cache_status +0 -0
  167. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test8/test.xml +0 -0
  168. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test9/test.cache_status +0 -0
  169. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test9/test.xml +0 -0
  170. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/build_event.json +0 -0
  171. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/build_event_rest.json +0 -0
  172. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/record_test_result.json +0 -0
  173. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/record_test_with_build_event_json_result.json +0 -0
  174. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/record_test_with_multiple_build_event_json_result.json +0 -0
  175. {launchable-1.97.0 → launchable-1.97.2}/tests/data/bazel/subset_result.json +0 -0
  176. {launchable-1.97.0 → launchable-1.97.2}/tests/data/behave/record_test_result.json +0 -0
  177. {launchable-1.97.0 → launchable-1.97.2}/tests/data/behave/reports/report.xml +0 -0
  178. {launchable-1.97.0 → launchable-1.97.2}/tests/data/behave/subset_result.json +0 -0
  179. {launchable-1.97.0 → launchable-1.97.2}/tests/data/broken_xml/broken.xml +0 -0
  180. {launchable-1.97.0 → launchable-1.97.2}/tests/data/broken_xml/normal.xml +0 -0
  181. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ctest/Testing/latest/Test.xml +0 -0
  182. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ctest/ctest_list.json +0 -0
  183. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ctest/record_test_result.json +0 -0
  184. {launchable-1.97.0 → launchable-1.97.2}/tests/data/ctest/subset_result.json +0 -0
  185. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cts/record_test_result.json +0 -0
  186. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cts/subset_result.json +0 -0
  187. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cts/test_result.xml +0 -0
  188. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/features/foo/bar.feature +0 -0
  189. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/features/foo/is_it_friday_yet.feature +0 -0
  190. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/features/foo-bar.feature +0 -0
  191. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/features/is_it_friday_yet.feature +0 -0
  192. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/record_test_json_result.json +0 -0
  193. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/record_test_result.json +0 -0
  194. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/report/TEST-features-foo-bar.xml +0 -0
  195. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/report/TEST-features-foo-is_it_friday_yet.xml +0 -0
  196. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/report/TEST-features-is_it_friday_yet.xml +0 -0
  197. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/report/dummy.xml +0 -0
  198. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cucumber/report/result.json +0 -0
  199. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cypress/empty.json +0 -0
  200. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cypress/empty.xml +0 -0
  201. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cypress/record_test_result.json +0 -0
  202. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cypress/subset_result.json +0 -0
  203. {launchable-1.97.0 → launchable-1.97.2}/tests/data/cypress/test-result.xml +0 -0
  204. {launchable-1.97.0 → launchable-1.97.2}/tests/data/dotnet/record_test_result.json +0 -0
  205. {launchable-1.97.0 → launchable-1.97.2}/tests/data/dotnet/test-result.xml +0 -0
  206. {launchable-1.97.0 → launchable-1.97.2}/tests/data/flutter/record_test_result.json +0 -0
  207. {launchable-1.97.0 → launchable-1.97.2}/tests/data/flutter/report.json +0 -0
  208. {launchable-1.97.0 → launchable-1.97.2}/tests/data/git_log_ingest/sample.out +0 -0
  209. {launchable-1.97.0 → launchable-1.97.2}/tests/data/go_test/record_test_result.json +0 -0
  210. {launchable-1.97.0 → launchable-1.97.2}/tests/data/go_test/reportv1/reportv1.xml +0 -0
  211. {launchable-1.97.0 → launchable-1.97.2}/tests/data/go_test/reportv2/reportv2.xml +0 -0
  212. {launchable-1.97.0 → launchable-1.97.2}/tests/data/go_test/subset_result.json +0 -0
  213. {launchable-1.97.0 → launchable-1.97.2}/tests/data/googletest/fail/output.xml +0 -0
  214. {launchable-1.97.0 → launchable-1.97.2}/tests/data/googletest/fail/record_test_result.json +0 -0
  215. {launchable-1.97.0 → launchable-1.97.2}/tests/data/googletest/output_a.xml +0 -0
  216. {launchable-1.97.0 → launchable-1.97.2}/tests/data/googletest/output_b.xml +0 -0
  217. {launchable-1.97.0 → launchable-1.97.2}/tests/data/googletest/record_test_result.json +0 -0
  218. {launchable-1.97.0 → launchable-1.97.2}/tests/data/googletest/subset_result.json +0 -0
  219. {launchable-1.97.0 → launchable-1.97.2}/tests/data/gradle/java/app/src/test/java/com/launchableinc/rocket_car_gradle/App2Test.java +0 -0
  220. {launchable-1.97.0 → launchable-1.97.2}/tests/data/gradle/java/app/src/test/java/com/launchableinc/rocket_car_gradle/AppTest.java +0 -0
  221. {launchable-1.97.0 → launchable-1.97.2}/tests/data/gradle/java/app/src/test/java/com/launchableinc/rocket_car_gradle/sub/App3Test.java +0 -0
  222. {launchable-1.97.0 → launchable-1.97.2}/tests/data/gradle/recursion/expected.json +0 -0
  223. {launchable-1.97.0 → launchable-1.97.2}/tests/data/gradle/recursion/foo/bar/reports/1.xml +0 -0
  224. {launchable-1.97.0 → launchable-1.97.2}/tests/data/jest/junit.xml +0 -0
  225. {launchable-1.97.0 → launchable-1.97.2}/tests/data/jest/record_test_result.json +0 -0
  226. {launchable-1.97.0 → launchable-1.97.2}/tests/data/jest/subset_result.json +0 -0
  227. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/createdFile_1.lst +0 -0
  228. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/createdFile_2.lst +0 -0
  229. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/java/test/src/java/com/launchableinc/rocket_car_maven/App2Test.java +0 -0
  230. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/java/test/src/java/com/launchableinc/rocket_car_maven/AppTest.java +0 -0
  231. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/list.lst +0 -0
  232. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/record_test_result.json +0 -0
  233. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/reports/TEST-1.xml +0 -0
  234. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/reports/TEST-2.xml +0 -0
  235. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/reports/dummy.xml +0 -0
  236. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/subset_by_absolute_time_result.json +0 -0
  237. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/subset_by_confidence_result.json +0 -0
  238. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/subset_from_file_result.json +0 -0
  239. {launchable-1.97.0 → launchable-1.97.2}/tests/data/maven/subset_result.json +0 -0
  240. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/TEST-Admin_UserTest.xml +0 -0
  241. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/TEST-Admin_UserTest_ChildlenTest.xml +0 -0
  242. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/TEST-UserControllerTest.xml +0 -0
  243. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/TEST-UserCopyTest.xml +0 -0
  244. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/TEST-UserTest.xml +0 -0
  245. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/record_test_result.json +0 -0
  246. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/record_test_result_chunk1.json +0 -0
  247. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/record_test_result_chunk2.json +0 -0
  248. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/subset_result.json +0 -0
  249. {launchable-1.97.0 → launchable-1.97.2}/tests/data/minitest/test/example_test.rb +0 -0
  250. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/list.xml +0 -0
  251. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/nunit-reporter-bug-with-nested-type.json +0 -0
  252. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/nunit-reporter-bug-with-nested-type.xml +0 -0
  253. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/output-linux.xml +0 -0
  254. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/output-windows.xml +0 -0
  255. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/record_test_result-linux.json +0 -0
  256. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/record_test_result-windows.json +0 -0
  257. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/src/.gitignore +0 -0
  258. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/src/Program.cs +0 -0
  259. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/src/README.md +0 -0
  260. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/src/Test.cs +0 -0
  261. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/src/calc.csproj +0 -0
  262. {launchable-1.97.0 → launchable-1.97.2}/tests/data/nunit/subset_result.json +0 -0
  263. {launchable-1.97.0 → launchable-1.97.2}/tests/data/playwright/record_test_result.json +0 -0
  264. {launchable-1.97.0 → launchable-1.97.2}/tests/data/playwright/record_test_result_with_json.json +0 -0
  265. {launchable-1.97.0 → launchable-1.97.2}/tests/data/playwright/report.json +0 -0
  266. {launchable-1.97.0 → launchable-1.97.2}/tests/data/playwright/report.xml +0 -0
  267. {launchable-1.97.0 → launchable-1.97.2}/tests/data/prove/record_test_result.json +0 -0
  268. {launchable-1.97.0 → launchable-1.97.2}/tests/data/prove/report.xml +0 -0
  269. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/pytest.ini +0 -0
  270. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/record_test_result.json +0 -0
  271. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/record_test_result_json.json +0 -0
  272. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/report.json +0 -0
  273. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/report.xml +0 -0
  274. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/subset_result.json +0 -0
  275. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/tests/conftest.py +0 -0
  276. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/tests/fooo/__init__.py +0 -0
  277. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/tests/fooo/filenameonly_test.py +0 -0
  278. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/tests/fooo/func4_test.py +0 -0
  279. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/tests/funcs3_test.py +0 -0
  280. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/tests/test_funcs1.py +0 -0
  281. {launchable-1.97.0 → launchable-1.97.2}/tests/data/pytest/tests/test_funcs2.py +0 -0
  282. {launchable-1.97.0 → launchable-1.97.2}/tests/data/robot/dryrun.xml +0 -0
  283. {launchable-1.97.0 → launchable-1.97.2}/tests/data/robot/output.xml +0 -0
  284. {launchable-1.97.0 → launchable-1.97.2}/tests/data/robot/record_test_executed_only_one_file_result.json +0 -0
  285. {launchable-1.97.0 → launchable-1.97.2}/tests/data/robot/record_test_result.json +0 -0
  286. {launchable-1.97.0 → launchable-1.97.2}/tests/data/robot/single-output.xml +0 -0
  287. {launchable-1.97.0 → launchable-1.97.2}/tests/data/robot/subset_result.json +0 -0
  288. {launchable-1.97.0 → launchable-1.97.2}/tests/data/rspec/record_test_result.json +0 -0
  289. {launchable-1.97.0 → launchable-1.97.2}/tests/data/rspec/rspec.xml +0 -0
  290. {launchable-1.97.0 → launchable-1.97.2}/tests/helper.py +0 -0
  291. {launchable-1.97.0 → launchable-1.97.2}/tests/plugins/foo.py +0 -0
  292. {launchable-1.97.0 → launchable-1.97.2}/tests/test_cli_test_case.py +0 -0
  293. {launchable-1.97.0 → launchable-1.97.2}/tests/test_plugin.py +0 -0
  294. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/__init__.py +0 -0
  295. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_adb.py +0 -0
  296. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_ant.py +0 -0
  297. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_bazel.py +0 -0
  298. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_behave.py +0 -0
  299. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_ctest.py +0 -0
  300. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_cts.py +0 -0
  301. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_cucumber.py +0 -0
  302. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_cypress.py +0 -0
  303. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_dotnet.py +0 -0
  304. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_go_test.py +0 -0
  305. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_googletest.py +0 -0
  306. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_gradle.py +0 -0
  307. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_jest.py +0 -0
  308. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_maven.py +0 -0
  309. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_minitest.py +0 -0
  310. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_nunit.py +0 -0
  311. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_playwright.py +0 -0
  312. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_prove.py +0 -0
  313. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_pytest.py +0 -0
  314. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_raw.py +0 -0
  315. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_robot.py +0 -0
  316. {launchable-1.97.0 → launchable-1.97.2}/tests/test_runners/test_rspec.py +0 -0
  317. {launchable-1.97.0 → launchable-1.97.2}/tests/test_session.py +0 -0
  318. {launchable-1.97.0 → launchable-1.97.2}/tests/test_testpath.py +0 -0
  319. {launchable-1.97.0 → launchable-1.97.2}/tests/test_version.py +0 -0
  320. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/__init__.py +0 -0
  321. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_authentication.py +0 -0
  322. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_click.py +0 -0
  323. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_file_name_pattern.py +0 -0
  324. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_git_log_parser.py +0 -0
  325. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_glob.py +0 -0
  326. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_gzipgen.py +0 -0
  327. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_http_client.py +0 -0
  328. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_link.py +0 -0
  329. {launchable-1.97.0 → launchable-1.97.2}/tests/utils/test_logger.py +0 -0
@@ -21,7 +21,7 @@ jobs:
21
21
  steps:
22
22
  - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
23
23
  - id: run-tagpr
24
- uses: Songmu/tagpr@3dca11e7c0d68637ee212ddd35acc3d30a7403a4 # v1.5.0
24
+ uses: Songmu/tagpr@e89d37247ca73d3e5620bf074a53fbd5b39e66b0 # v1.5.1
25
25
  env:
26
26
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
27
27
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: launchable
3
- Version: 1.97.0
3
+ Version: 1.97.2
4
4
  Summary: Launchable CLI
5
5
  Home-page: https://launchableinc.com/
6
6
  Author: Launchable, Inc.
@@ -74,10 +74,8 @@ module to PyPI.
74
74
  ## How to update launchable/jar/exe_deploy.jar
75
75
 
76
76
  ```
77
- bazel build //src/main/java/com/launchableinc/ingest/commits:exe_deploy.jar
78
- bazel test //...
79
- cp bazel-bin/src/main/java/com/launchableinc/ingest/commits/exe_deploy.jar launchable/jar/exe_deploy.jar
80
- ```
77
+ ./build-java.sh
78
+ ```
81
79
 
82
80
  # Installing CLI
83
81
 
@@ -50,10 +50,8 @@ module to PyPI.
50
50
  ## How to update launchable/jar/exe_deploy.jar
51
51
 
52
52
  ```
53
- bazel build //src/main/java/com/launchableinc/ingest/commits:exe_deploy.jar
54
- bazel test //...
55
- cp bazel-bin/src/main/java/com/launchableinc/ingest/commits/exe_deploy.jar launchable/jar/exe_deploy.jar
56
- ```
53
+ ./build-java.sh
54
+ ```
57
55
 
58
56
  # Installing CLI
59
57
 
@@ -0,0 +1,5 @@
1
+ #!/bin/bash -ex
2
+ bazel build //src/main/java/com/launchableinc/ingest/commits:exe_deploy.jar
3
+ bazel test //...
4
+ cp bazel-bin/src/main/java/com/launchableinc/ingest/commits/exe_deploy.jar launchable/jar/exe_deploy.jar
5
+
@@ -218,20 +218,6 @@ def subset(
218
218
  app = context.obj
219
219
  tracking_client = TrackingClient(Tracking.Command.SUBSET, app=app)
220
220
 
221
- if is_observation and is_get_tests_from_previous_sessions:
222
- msg = "Cannot use --observation and --get-tests-from-previous-sessions options at the same time"
223
- click.echo(
224
- click.style(
225
- msg,
226
- fg="red"),
227
- err=True,
228
- )
229
- tracking_client.send_error_event(
230
- event_name=Tracking.ErrorEvent.INTERNAL_CLI_ERROR,
231
- stack_trace=msg,
232
- )
233
- sys.exit(1)
234
-
235
221
  if is_observation and is_output_exclusion_rules:
236
222
  msg = (
237
223
  "WARNING: --observation and --output-exclusion-rules are set. "
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: launchable
3
- Version: 1.97.0
3
+ Version: 1.97.2
4
4
  Summary: Launchable CLI
5
5
  Home-page: https://launchableinc.com/
6
6
  Author: Launchable, Inc.
@@ -74,10 +74,8 @@ module to PyPI.
74
74
  ## How to update launchable/jar/exe_deploy.jar
75
75
 
76
76
  ```
77
- bazel build //src/main/java/com/launchableinc/ingest/commits:exe_deploy.jar
78
- bazel test //...
79
- cp bazel-bin/src/main/java/com/launchableinc/ingest/commits/exe_deploy.jar launchable/jar/exe_deploy.jar
80
- ```
77
+ ./build-java.sh
78
+ ```
81
79
 
82
80
  # Installing CLI
83
81
 
@@ -11,6 +11,7 @@ LICENSE.txt
11
11
  Pipfile
12
12
  README.md
13
13
  WORKSPACE
14
+ build-java.sh
14
15
  pyproject.toml
15
16
  renovate.json
16
17
  setup.cfg
@@ -1,7 +1,5 @@
1
1
  package com.launchableinc.ingest.commits;
2
2
 
3
- import static com.google.common.collect.ImmutableList.toImmutableList;
4
-
5
3
  import com.fasterxml.jackson.core.JsonFactory;
6
4
  import com.fasterxml.jackson.core.JsonGenerator;
7
5
  import com.fasterxml.jackson.core.JsonParser;
@@ -10,25 +8,6 @@ import com.fasterxml.jackson.databind.ObjectMapper;
10
8
  import com.fasterxml.jackson.databind.node.ObjectNode;
11
9
  import com.google.common.collect.ImmutableList;
12
10
  import com.google.common.io.CharStreams;
13
- import java.io.ByteArrayInputStream;
14
- import java.io.ByteArrayOutputStream;
15
- import java.io.Closeable;
16
- import java.io.IOException;
17
- import java.io.InputStreamReader;
18
- import java.io.OutputStream;
19
- import java.io.UncheckedIOException;
20
- import java.net.URL;
21
- import java.nio.charset.StandardCharsets;
22
- import java.util.ArrayList;
23
- import java.util.Arrays;
24
- import java.util.Collection;
25
- import java.util.List;
26
- import java.util.Objects;
27
- import java.util.concurrent.TimeUnit;
28
- import java.util.function.Consumer;
29
- import java.util.function.Supplier;
30
- import java.util.zip.GZIPInputStream;
31
- import java.util.zip.GZIPOutputStream;
32
11
  import org.apache.http.Header;
33
12
  import org.apache.http.HttpResponse;
34
13
  import org.apache.http.client.methods.CloseableHttpResponse;
@@ -39,10 +18,9 @@ import org.apache.http.impl.client.CloseableHttpClient;
39
18
  import org.apache.http.impl.client.HttpClientBuilder;
40
19
  import org.eclipse.jgit.diff.DiffAlgorithm.SupportedAlgorithm;
41
20
  import org.eclipse.jgit.diff.DiffEntry;
42
- import org.eclipse.jgit.errors.IncorrectObjectTypeException;
43
21
  import org.eclipse.jgit.errors.InvalidObjectIdException;
44
22
  import org.eclipse.jgit.errors.MissingObjectException;
45
- import org.eclipse.jgit.errors.StopWalkException;
23
+ import org.eclipse.jgit.lib.AnyObjectId;
46
24
  import org.eclipse.jgit.lib.ConfigConstants;
47
25
  import org.eclipse.jgit.lib.ObjectId;
48
26
  import org.eclipse.jgit.lib.ObjectReader;
@@ -53,17 +31,41 @@ import org.eclipse.jgit.revwalk.RevSort;
53
31
  import org.eclipse.jgit.revwalk.RevWalk;
54
32
  import org.eclipse.jgit.revwalk.filter.CommitTimeRevFilter;
55
33
  import org.eclipse.jgit.revwalk.filter.OrRevFilter;
56
- import org.eclipse.jgit.revwalk.filter.RevFilter;
57
34
  import org.eclipse.jgit.submodule.SubmoduleWalk;
58
35
  import org.slf4j.Logger;
59
36
  import org.slf4j.LoggerFactory;
60
37
 
38
+ import java.io.ByteArrayInputStream;
39
+ import java.io.ByteArrayOutputStream;
40
+ import java.io.Closeable;
41
+ import java.io.IOException;
42
+ import java.io.InputStreamReader;
43
+ import java.io.OutputStream;
44
+ import java.io.UncheckedIOException;
45
+ import java.net.URL;
46
+ import java.nio.charset.StandardCharsets;
47
+ import java.util.ArrayList;
48
+ import java.util.Collection;
49
+ import java.util.List;
50
+ import java.util.Objects;
51
+ import java.util.Set;
52
+ import java.util.concurrent.TimeUnit;
53
+ import java.util.function.Consumer;
54
+ import java.util.function.Supplier;
55
+ import java.util.stream.Collectors;
56
+ import java.util.zip.GZIPInputStream;
57
+ import java.util.zip.GZIPOutputStream;
58
+
59
+ import static com.google.common.collect.ImmutableList.*;
60
+ import static java.util.Arrays.*;
61
+
61
62
  /**
62
63
  * Compares what commits the local repository and the remote repository have, then send delta over.
63
64
  */
64
65
  public class CommitGraphCollector {
65
66
  private static final Logger logger = LoggerFactory.getLogger(CommitGraphCollector.class);
66
67
  private static final ObjectMapper objectMapper = new ObjectMapper();
68
+ private static final boolean LCHIB544 = System.getenv("LAUNCHABLE_DEBUG_LCHIB544")!=null;
67
69
 
68
70
  /**
69
71
  * Root repository to start processing.
@@ -172,7 +174,7 @@ public class CommitGraphCollector {
172
174
  private ImmutableList<ObjectId> getAdvertisedRefs(HttpResponse response) throws IOException {
173
175
  JsonParser parser = new JsonFactory().createParser(response.getEntity().getContent());
174
176
  String[] ids = objectMapper.readValue(parser, String[].class);
175
- return Arrays.stream(ids)
177
+ return stream(ids)
176
178
  .map(
177
179
  s -> {
178
180
  try {
@@ -292,10 +294,12 @@ public class CommitGraphCollector {
292
294
  private final Repository git;
293
295
 
294
296
  private final ObjectReader objectReader;
297
+ private final Set<ObjectId> shallowCommits;
295
298
 
296
- ByRepository(Repository git) {
299
+ ByRepository(Repository git) throws IOException {
297
300
  this.git = git;
298
301
  this.objectReader = git.newObjectReader();
302
+ this.shallowCommits = objectReader.getShallowCommits();
299
303
  }
300
304
 
301
305
  /**
@@ -410,6 +414,18 @@ public class CommitGraphCollector {
410
414
  ConfigConstants.CONFIG_KEY_ALGORITHM,
411
415
  SupportedAlgorithm.HISTOGRAM);
412
416
 
417
+
418
+ if (LCHIB544) {
419
+ System.err.printf("Commit %s parents=%s%n",
420
+ r.name(),
421
+ stream(r.getParents()).map(AnyObjectId::name).collect(Collectors.joining(",")));
422
+ }
423
+
424
+ if (shallowCommits.contains(r)) {
425
+ c.setShallow(true);
426
+ warnMissingObject();
427
+ }
428
+
413
429
  for (RevCommit p : r.getParents()) {
414
430
  CountingDiffFormatter diff = new CountingDiffFormatter(git);
415
431
  List<DiffEntry> files = diff.scan(p.getTree(), r.getTree());
@@ -424,19 +440,28 @@ public class CommitGraphCollector {
424
440
  p.abbreviate(7).name(),
425
441
  r.abbreviate(7).name()
426
442
  );
427
- if (!warnMissingObject) {
428
- warnMissingObject = true;
429
- System.err.println("See https://www.launchableinc.com/missing-git-object-during-commit-collection");
430
- }
443
+ warnMissingObject();
431
444
  } catch (IOException e) {
432
445
  logger.warn("Failed to process a change to a file", e);
433
446
  }
434
447
  }
435
448
  c.getParentHashes().put(p.name(), changes);
436
449
  }
450
+
451
+ if (LCHIB544) {
452
+ System.err.println(objectMapper.writeValueAsString(c));
453
+ }
454
+
437
455
  return c;
438
456
  }
439
457
 
458
+ private void warnMissingObject() {
459
+ if (!warnMissingObject) {
460
+ warnMissingObject = true;
461
+ System.err.println("See https://www.launchableinc.com/missing-git-object-during-commit-collection");
462
+ }
463
+ }
464
+
440
465
  @Override
441
466
  public void close() {
442
467
  objectReader.close();
@@ -34,6 +34,9 @@ public class JSCommit {
34
34
  /** Commit message. */
35
35
  private String message;
36
36
 
37
+ /** This object was marked as shallow and therefore its parent commits are not available. */
38
+ private boolean shallow;
39
+
37
40
  private Map<String, List<JSFileChange>> parentHashes = new HashMap<>();
38
41
 
39
42
  public String getCommitHash() {
@@ -107,4 +110,12 @@ public class JSCommit {
107
110
  public void setMessage(String message) {
108
111
  this.message = message;
109
112
  }
113
+
114
+ public boolean isShallow() {
115
+ return shallow;
116
+ }
117
+
118
+ public void setShallow(boolean shallow) {
119
+ this.shallow = shallow;
120
+ }
110
121
  }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes