codecov-cli 11.2.7__tar.gz → 11.2.8__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 (188) hide show
  1. {codecov_cli-11.2.7/codecov_cli.egg-info → codecov_cli-11.2.8}/PKG-INFO +2 -2
  2. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/args.py +3 -0
  3. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/request.py +1 -1
  4. codecov_cli-11.2.8/codecov_cli/opentelemetry.py +84 -0
  5. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload/__init__.py +1 -1
  6. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload/upload_sender.py +1 -1
  7. {codecov_cli-11.2.7 → codecov_cli-11.2.8/codecov_cli.egg-info}/PKG-INFO +2 -2
  8. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli.egg-info/requires.txt +1 -1
  9. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/pyproject.toml +3 -2
  10. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/test_invoke_upload.py +1 -1
  11. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/commit/test_commit_service.py +2 -2
  12. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/empty_upload/test_empty_upload.py +5 -5
  13. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/report/test_report_results.py +2 -2
  14. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/report/test_report_service.py +2 -2
  15. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/upload/test_upload_service.py +9 -9
  16. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/upload_completion/test_upload_completion.py +4 -4
  17. codecov_cli-11.2.7/codecov_cli/opentelemetry.py +0 -26
  18. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/LICENSE +0 -0
  19. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/MANIFEST.in +0 -0
  20. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/README.md +0 -0
  21. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/__init__.py +0 -0
  22. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/branding.py +0 -0
  23. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/__init__.py +0 -0
  24. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/base_picking.py +0 -0
  25. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/commit.py +0 -0
  26. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/create_report_result.py +0 -0
  27. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/empty_upload.py +0 -0
  28. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/get_report_results.py +0 -0
  29. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/labelanalysis.py +0 -0
  30. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/process_test_results.py +0 -0
  31. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/report.py +0 -0
  32. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/send_notifications.py +0 -0
  33. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/staticanalysis.py +0 -0
  34. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/upload.py +0 -0
  35. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/upload_coverage.py +0 -0
  36. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/commands/upload_process.py +0 -0
  37. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/fallbacks.py +0 -0
  38. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/__init__.py +0 -0
  39. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/__init__.py +0 -0
  40. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/appveyor_ci.py +0 -0
  41. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/azure_pipelines.py +0 -0
  42. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/base.py +0 -0
  43. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/bitbucket_ci.py +0 -0
  44. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/bitrise_ci.py +0 -0
  45. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/buildkite.py +0 -0
  46. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/circleci.py +0 -0
  47. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/cirrus_ci.py +0 -0
  48. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/cloudbuild.py +0 -0
  49. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/codebuild.py +0 -0
  50. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/droneci.py +0 -0
  51. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/github_actions.py +0 -0
  52. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/gitlab_ci.py +0 -0
  53. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/heroku.py +0 -0
  54. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/jenkins.py +0 -0
  55. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/local.py +0 -0
  56. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/teamcity.py +0 -0
  57. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/travis_ci.py +0 -0
  58. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/ci_adapters/woodpeckerci.py +0 -0
  59. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/config.py +0 -0
  60. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/encoder.py +0 -0
  61. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/folder_searcher.py +0 -0
  62. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/git.py +0 -0
  63. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/git_services/__init__.py +0 -0
  64. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/git_services/github.py +0 -0
  65. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/glob.py +0 -0
  66. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/logging_utils.py +0 -0
  67. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/options.py +0 -0
  68. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/upload_type.py +0 -0
  69. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/validators.py +0 -0
  70. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/helpers/versioning_systems.py +0 -0
  71. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/main.py +0 -0
  72. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/plugins/__init__.py +0 -0
  73. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/plugins/compress_pycoverage_contexts.py +0 -0
  74. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/plugins/gcov.py +0 -0
  75. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/plugins/pycoverage.py +0 -0
  76. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/plugins/types.py +0 -0
  77. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/plugins/xcode.py +0 -0
  78. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/runners/__init__.py +0 -0
  79. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/runners/dan_runner.py +0 -0
  80. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/runners/pytest_standard_runner.py +0 -0
  81. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/runners/types.py +0 -0
  82. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/__init__.py +0 -0
  83. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/commit/__init__.py +0 -0
  84. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/commit/base_picking.py +0 -0
  85. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/empty_upload/__init__.py +0 -0
  86. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/report/__init__.py +0 -0
  87. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload/file_finder.py +0 -0
  88. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload/legacy_upload_sender.py +0 -0
  89. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload/network_finder.py +0 -0
  90. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload/upload_collector.py +0 -0
  91. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload_completion/__init__.py +0 -0
  92. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/services/upload_coverage/__init__.py +0 -0
  93. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli/types.py +0 -0
  94. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli.egg-info/SOURCES.txt +0 -0
  95. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli.egg-info/dependency_links.txt +0 -0
  96. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli.egg-info/entry_points.txt +0 -0
  97. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/codecov_cli.egg-info/top_level.txt +0 -0
  98. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/example_cli_config.yml +0 -0
  99. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/example_module.js +0 -0
  100. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/.codecov.yaml +0 -0
  101. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/.codecov.yml +0 -0
  102. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/.github/.codecov.yaml +0 -0
  103. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/.github/.codecov.yml +0 -0
  104. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/.github/codecov.yaml +0 -0
  105. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/.github/codecov.yml +0 -0
  106. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/codecov.yaml +0 -0
  107. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/codecov.yml +0 -0
  108. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/dev/.codecov.yaml +0 -0
  109. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/dev/.codecov.yml +0 -0
  110. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/dev/codecov.yaml +0 -0
  111. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/fake_project/dev/codecov.yml +0 -0
  112. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/inputs/sample_001.py +0 -0
  113. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/inputs/sample_002.py +0 -0
  114. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/inputs/sample_003.js +0 -0
  115. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/inputs/sample_004.js +0 -0
  116. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/inputs/sample_005.py +0 -0
  117. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/junit.xml +0 -0
  118. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/outputs/sample_001.json +0 -0
  119. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/outputs/sample_002.json +0 -0
  120. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/outputs/sample_003.json +0 -0
  121. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/outputs/sample_004.json +0 -0
  122. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/samples/outputs/sample_005.json +0 -0
  123. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/setup.cfg +0 -0
  124. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/setup.py +0 -0
  125. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/__init__.py +0 -0
  126. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_appveyor.py +0 -0
  127. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_azure_pipelines.py +0 -0
  128. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_bitbucket_ci.py +0 -0
  129. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_bitrise.py +0 -0
  130. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_buildkite.py +0 -0
  131. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_circleci.py +0 -0
  132. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_cirrusci.py +0 -0
  133. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_cloudbuild.py +0 -0
  134. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_codebuild.py +0 -0
  135. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_droneci.py +0 -0
  136. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_ghactions.py +0 -0
  137. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_gitlabci.py +0 -0
  138. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_herokuci.py +0 -0
  139. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_jenkins.py +0 -0
  140. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_local.py +0 -0
  141. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_teamcity.py +0 -0
  142. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_travis_ci.py +0 -0
  143. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/ci_adapters/test_woodpeckerci.py +0 -0
  144. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/__init__.py +0 -0
  145. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/test_invoke_empty_upload.py +0 -0
  146. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/test_invoke_labelanalysis.py +0 -0
  147. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/test_invoke_upload_coverage.py +0 -0
  148. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/test_invoke_upload_process.py +0 -0
  149. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/test_process_test_results.py +0 -0
  150. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/commands/test_upload_token_discovery.py +0 -0
  151. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/conftest.py +0 -0
  152. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/data/files_to_fix_examples/bad_encoding.go +0 -0
  153. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/data/files_to_fix_examples/sample.cpp +0 -0
  154. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/data/files_to_fix_examples/sample.go +0 -0
  155. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/data/files_to_fix_examples/sample.kt +0 -0
  156. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/data/files_to_fix_examples/sample.php +0 -0
  157. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/data/reports_examples.py +0 -0
  158. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/data//320/232/320/276/320/275/321/202/321/200/320/276/320/273/320/273/320/265/321/200/321/213//320/237/320/276/320/273/321/214/320/267/320/276/320/262/320/260/321/202/320/265/320/273/321/214//320/223/320/273/320/260/320/262/320/275/321/213/320/271/320/232/320/276/320/275/321/202/321/200/320/276/320/273/320/273/320/265/321/200.php" +0 -0
  159. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/factory.py +0 -0
  160. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/git_services/test_github.py +0 -0
  161. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_args.py +0 -0
  162. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_ci_adapter_selection.py +0 -0
  163. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_config.py +0 -0
  164. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_encoder.py +0 -0
  165. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_folder_searcher.py +0 -0
  166. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_git.py +0 -0
  167. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_legacy_upload_sender.py +0 -0
  168. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_network_finder.py +0 -0
  169. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_request.py +0 -0
  170. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_upload_sender.py +0 -0
  171. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_validators.py +0 -0
  172. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/helpers/test_versioning_systems.py +0 -0
  173. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/plugins/test_compress_pycoverage_contexts.py +0 -0
  174. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/plugins/test_gcov.py +0 -0
  175. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/plugins/test_instantiation.py +0 -0
  176. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/plugins/test_pycoverage.py +0 -0
  177. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/plugins/test_xcode.py +0 -0
  178. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/runners/test_dan_runner.py +0 -0
  179. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/runners/test_pytest_standard_runner.py +0 -0
  180. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/runners/test_runners.py +0 -0
  181. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/runners/test_types.py +0 -0
  182. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/commit/test_base_picking.py +0 -0
  183. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/upload/test_coverage_file_finder.py +0 -0
  184. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/services/upload/test_upload_collector.py +0 -0
  185. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/test_codecov_cli.py +0 -0
  186. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/test_fallbacks.py +0 -0
  187. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/test_helpers.py +0 -0
  188. {codecov_cli-11.2.7 → codecov_cli-11.2.8}/tests/test_types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codecov-cli
3
- Version: 11.2.7
3
+ Version: 11.2.8
4
4
  Summary: Codecov Command Line Interface
5
5
  Author-email: Tom Hu <thomas.hu@sentry.io>
6
6
  Maintainer-email: Codecov Support <support@codecov.io>
@@ -15,7 +15,7 @@ License-File: LICENSE
15
15
  Requires-Dist: click<8.3.0,>=8.0.0
16
16
  Requires-Dist: ijson==3.*
17
17
  Requires-Dist: PyYAML==6.*
18
- Requires-Dist: responses==0.21.*
18
+ Requires-Dist: requests>=2.25.0
19
19
  Requires-Dist: sentry-sdk==2.*
20
20
  Requires-Dist: test-results-parser==0.6.1
21
21
  Dynamic: license-file
@@ -5,6 +5,7 @@ from pathlib import PosixPath
5
5
  import click
6
6
 
7
7
  from codecov_cli import __version__
8
+ from codecov_cli.opentelemetry import set_cli_tags
8
9
 
9
10
  logger = logging.getLogger("codecovcli")
10
11
 
@@ -28,4 +29,6 @@ def get_cli_args(ctx: click.Context):
28
29
  except Exception:
29
30
  continue
30
31
 
32
+ set_cli_tags(filtered_args, ctx)
33
+
31
34
  return filtered_args
@@ -152,7 +152,7 @@ def log_warnings_and_errors_if_any(
152
152
  sending_result: RequestResult, process_desc: str, fail_on_error: bool = False
153
153
  ):
154
154
  logger.info(
155
- f"Process {process_desc} complete",
155
+ f"{process_desc} complete",
156
156
  )
157
157
  logger.debug(
158
158
  f"{process_desc} result",
@@ -0,0 +1,84 @@
1
+ import os
2
+ import random
3
+
4
+ import sentry_sdk
5
+
6
+ from codecov_cli import __version__
7
+
8
+ _SAMPLED_MESSAGES = [
9
+ "Token required",
10
+ ]
11
+ _SAMPLE_RATE = 100
12
+ _SKIP_TAG_KEYS = {"branch", "flags", "commit_sha", "env_vars"}
13
+
14
+
15
+ def _before_send(event, hint):
16
+ messages = []
17
+ if "message" in event and event.get("message") is not None:
18
+ messages.append(event.get("message"))
19
+ if "logentry" in event and "message" in event.get("logentry", {}) and event.get("logentry", {}).get("message") is not None:
20
+ messages.append(event.get("logentry", {}).get("message"))
21
+ if "exception" in event and event.get("exception") is not None:
22
+ for exc in event.get("exception", {}).get("values", []):
23
+ if "value" in exc:
24
+ messages.append(exc.get("value"))
25
+
26
+ matched = False
27
+ for message in messages:
28
+ for pattern in _SAMPLED_MESSAGES:
29
+ if pattern in message:
30
+ matched = True
31
+ break
32
+
33
+ if matched and random.randint(1, _SAMPLE_RATE) != 1:
34
+ return None
35
+ return event
36
+
37
+
38
+ def init_telem(ctx):
39
+ if ctx["disable_telem"]:
40
+ return
41
+ if ctx["enterprise_url"]: # dont run on dedicated cloud
42
+ return
43
+ if os.getenv("CODECOV_ENV", "production") == "test":
44
+ return
45
+
46
+ sentry_sdk.init(
47
+ dsn="https://0bea75c61745c221a6ef1ac1709b1f4d@o26192.ingest.us.sentry.io/4508615876083713",
48
+ enable_tracing=True,
49
+ environment=os.getenv("CODECOV_ENV", "production"),
50
+ release=f"cli@{__version__}",
51
+ before_send=_before_send,
52
+ )
53
+
54
+
55
+ def set_cli_tags(args: dict, ctx):
56
+ """Set Sentry tags from resolved CLI arguments."""
57
+ for key, value in args.items():
58
+ if key in _SKIP_TAG_KEYS:
59
+ continue
60
+ if value is None or value in ([], (), {}):
61
+ continue
62
+ if isinstance(value, (list, tuple)):
63
+ value = ",".join(str(v) for v in value)
64
+ elif isinstance(value, dict):
65
+ value = ",".join(
66
+ f"{k}={v}" for k, v in value.items() if v is not None
67
+ )
68
+ sentry_sdk.set_tag(f"cli.{key}", str(value)[:200])
69
+
70
+ token = ctx.params.get("token") if hasattr(ctx, "params") else None
71
+ sentry_sdk.set_tag("cli.token_provided", str(bool(token)).lower())
72
+
73
+ ci_adapter = (
74
+ ctx.obj.get("ci_adapter") if hasattr(ctx, "obj") and ctx.obj else None
75
+ )
76
+ if ci_adapter is not None:
77
+ try:
78
+ sentry_sdk.set_tag("cli.ci_adapter", ci_adapter.get_service_name())
79
+ except Exception:
80
+ pass
81
+
82
+
83
+ def close_telem():
84
+ sentry_sdk.flush()
@@ -165,5 +165,5 @@ def do_upload_logic(
165
165
  status_code=200,
166
166
  text="Data NOT sent to Codecov because of dry-run option",
167
167
  )
168
- log_warnings_and_errors_if_any(sending_result, "Upload", fail_on_error)
168
+ log_warnings_and_errors_if_any(sending_result, "Upload queued for processing", fail_on_error)
169
169
  return sending_result
@@ -117,7 +117,7 @@ class UploadSender(object):
117
117
  resp_json_obj = json.loads(resp_from_codecov.text)
118
118
  if resp_json_obj.get("url"):
119
119
  logger.info(
120
- f"Your upload is now processing. When finished, results will be available at: {resp_json_obj.get('url')}"
120
+ f"Your upload is now queued for processing. When finished, results will be available at: {resp_json_obj.get('url')}"
121
121
  )
122
122
  logger.debug(
123
123
  "Upload request to Codecov complete.",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codecov-cli
3
- Version: 11.2.7
3
+ Version: 11.2.8
4
4
  Summary: Codecov Command Line Interface
5
5
  Author-email: Tom Hu <thomas.hu@sentry.io>
6
6
  Maintainer-email: Codecov Support <support@codecov.io>
@@ -15,7 +15,7 @@ License-File: LICENSE
15
15
  Requires-Dist: click<8.3.0,>=8.0.0
16
16
  Requires-Dist: ijson==3.*
17
17
  Requires-Dist: PyYAML==6.*
18
- Requires-Dist: responses==0.21.*
18
+ Requires-Dist: requests>=2.25.0
19
19
  Requires-Dist: sentry-sdk==2.*
20
20
  Requires-Dist: test-results-parser==0.6.1
21
21
  Dynamic: license-file
@@ -1,6 +1,6 @@
1
1
  click<8.3.0,>=8.0.0
2
2
  ijson==3.*
3
3
  PyYAML==6.*
4
- responses==0.21.*
4
+ requests>=2.25.0
5
5
  sentry-sdk==2.*
6
6
  test-results-parser==0.6.1
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "codecov-cli"
3
- version = "11.2.7"
3
+ version = "11.2.8"
4
4
  description = "Codecov Command Line Interface"
5
5
  readme = "README.md"
6
6
  license-files = ["LICENSE"]
@@ -15,7 +15,7 @@ dependencies = [
15
15
  "click>=8.0.0,<8.3.0",
16
16
  "ijson==3.*",
17
17
  "PyYAML==6.*",
18
- "responses==0.21.*",
18
+ "requests>=2.25.0",
19
19
  "sentry-sdk==2.*",
20
20
  "test-results-parser==0.6.1",
21
21
  ]
@@ -28,6 +28,7 @@ dev = [
28
28
  "pytest-cov==4.*",
29
29
  "pytest-env==1.*",
30
30
  "pytest-mock==3.*",
31
+ "responses==0.21.*",
31
32
  ]
32
33
 
33
34
  [project.scripts]
@@ -40,7 +40,7 @@ def test_upload_raise_Z_option(mocker):
40
40
  result = runner.invoke(cli, ["do-upload", "--fail-on-error"], obj={})
41
41
  upload_sender.assert_called()
42
42
  upload_collector.assert_called()
43
- assert ("error", "Upload failed: Unauthorized") in parse_outstreams_into_log_lines(
43
+ assert ("error", "Upload queued for processing failed: Unauthorized") in parse_outstreams_into_log_lines(
44
44
  result.output
45
45
  )
46
46
  assert str(result) == "<Result SystemExit(1)>"
@@ -31,7 +31,7 @@ def test_commit_command_with_warnings(mocker):
31
31
 
32
32
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
33
33
  assert out_bytes == [
34
- ("info", "Process Commit creating complete"),
34
+ ("info", "Commit creating complete"),
35
35
  ("info", "Commit creating process had 1 warning"),
36
36
  ("warning", "Warning 1: somewarningmessage"),
37
37
  ]
@@ -81,7 +81,7 @@ def test_commit_command_with_error(mocker):
81
81
  assert out_bytes == [
82
82
  (
83
83
  "info",
84
- "Process Commit creating complete",
84
+ "Commit creating complete",
85
85
  ),
86
86
  ("error", "Commit creating failed: Permission denied"),
87
87
  ]
@@ -34,7 +34,7 @@ def test_empty_upload_with_warnings(mocker):
34
34
  )
35
35
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
36
36
  assert out_bytes == [
37
- ("info", "Process Empty Upload complete"),
37
+ ("info", "Empty Upload complete"),
38
38
  ("info", "Empty Upload process had 1 warning"),
39
39
  ("warning", "Warning 1: somewarningmessage"),
40
40
  ]
@@ -71,7 +71,7 @@ def test_empty_upload_with_error(mocker):
71
71
 
72
72
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
73
73
  assert out_bytes == [
74
- ("info", "Process Empty Upload complete"),
74
+ ("info", "Empty Upload complete"),
75
75
  ("error", "Empty Upload failed: Permission denied"),
76
76
  ]
77
77
  assert res == mock_send_commit_data.return_value
@@ -97,7 +97,7 @@ def test_empty_upload_200(mocker):
97
97
  )
98
98
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
99
99
  assert out_bytes == [
100
- ("info", "Process Empty Upload complete"),
100
+ ("info", "Empty Upload complete"),
101
101
  ("info", "All changed files are ignored. Triggering passing notifications."),
102
102
  ("info", "Non ignored files []"),
103
103
  ]
@@ -142,7 +142,7 @@ def test_empty_upload_force(mocker):
142
142
  )
143
143
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
144
144
  assert out_bytes == [
145
- ("info", "Process Empty Upload complete"),
145
+ ("info", "Empty Upload complete"),
146
146
  ("info", "Force option was enabled. Triggering passing notifications."),
147
147
  ("info", "Non ignored files []"),
148
148
  ]
@@ -170,7 +170,7 @@ def test_empty_upload_no_token(mocker):
170
170
 
171
171
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
172
172
  assert out_bytes == [
173
- ("info", "Process Empty Upload complete"),
173
+ ("info", "Empty Upload complete"),
174
174
  ("info", "All changed files are ignored. Triggering passing notifications."),
175
175
  ("info", "Non ignored files []"),
176
176
  ]
@@ -36,7 +36,7 @@ def test_report_results_command_with_warnings(mocker):
36
36
 
37
37
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
38
38
  assert out_bytes == [
39
- ("info", "Process Report results creating complete"),
39
+ ("info", "Report results creating complete"),
40
40
  ("info", "Report results creating process had 1 warning"),
41
41
  ("warning", "Warning 1: somewarningmessage"),
42
42
  ]
@@ -81,7 +81,7 @@ def test_report_results_command_with_error(mocker):
81
81
 
82
82
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
83
83
  assert out_bytes == [
84
- ("info", "Process Report results creating complete"),
84
+ ("info", "Report results creating complete"),
85
85
  ("error", "Report results creating failed: Permission denied"),
86
86
  ]
87
87
  assert res == mock_send_reports_result_request.return_value
@@ -87,7 +87,7 @@ def test_create_report_command_with_warnings(mocker):
87
87
 
88
88
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
89
89
  assert out_bytes == [
90
- ("info", "Process Report creating complete"),
90
+ ("info", "Report creating complete"),
91
91
  ("info", "Report creating process had 1 warning"),
92
92
  ("warning", "Warning 1: somewarningmessage"),
93
93
  ]
@@ -130,7 +130,7 @@ def test_create_report_command_with_error(mocker):
130
130
 
131
131
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
132
132
  assert out_bytes == [
133
- ("info", "Process Report creating complete"),
133
+ ("info", "Report creating complete"),
134
134
  ("error", "Report creating failed: Permission denied"),
135
135
  ]
136
136
  assert res == RequestResult(
@@ -80,8 +80,8 @@ def test_do_upload_logic_happy_path_legacy_uploader(mocker):
80
80
  )
81
81
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
82
82
  assert out_bytes == [
83
- ("info", "Process Upload complete"),
84
- ("info", "Upload process had 1 warning"),
83
+ ("info", "Upload queued for processing complete"),
84
+ ("info", "Upload queued for processing process had 1 warning"),
85
85
  ("warning", "Warning 1: somewarningmessage"),
86
86
  ]
87
87
 
@@ -195,8 +195,8 @@ def test_do_upload_logic_happy_path(mocker):
195
195
  )
196
196
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
197
197
  assert out_bytes == [
198
- ("info", "Process Upload complete"),
199
- ("info", "Upload process had 1 warning"),
198
+ ("info", "Upload queued for processing complete"),
199
+ ("info", "Upload queued for processing process had 1 warning"),
200
200
  ("warning", "Warning 1: somewarningmessage"),
201
201
  ]
202
202
 
@@ -333,7 +333,7 @@ def test_do_upload_logic_dry_run(mocker):
333
333
  )
334
334
  assert out_bytes == [
335
335
  ("info", "dry-run option activated. NOT sending data to Codecov."),
336
- ("info", "Process Upload complete"),
336
+ ("info", "Upload queued for processing complete"),
337
337
  ]
338
338
  assert res == RequestResult(
339
339
  error=None,
@@ -399,10 +399,10 @@ def test_do_upload_logic_verbose(mocker, use_verbose_option):
399
399
  "Selected uploader to use: <class 'codecov_cli.services.upload.legacy_upload_sender.LegacyUploadSender'>",
400
400
  ),
401
401
  ("info", "dry-run option activated. NOT sending data to Codecov."),
402
- ("info", "Process Upload complete"),
402
+ ("info", "Upload queued for processing complete"),
403
403
  (
404
404
  "debug",
405
- 'Upload result --- {"result": "RequestResult(error=None, warnings=None, status_code=200, text=\'Data NOT sent to Codecov because of dry-run option\')"}',
405
+ 'Upload queued for processing result --- {"result": "RequestResult(error=None, warnings=None, status_code=200, text=\'Data NOT sent to Codecov because of dry-run option\')"}',
406
406
  ),
407
407
  ]
408
408
  assert res == RequestResult(
@@ -671,8 +671,8 @@ def test_do_upload_logic_happy_path_test_results(mocker):
671
671
  )
672
672
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
673
673
  assert out_bytes == [
674
- ("info", "Process Upload complete"),
675
- ("info", "Upload process had 1 warning"),
674
+ ("info", "Upload queued for processing complete"),
675
+ ("info", "Upload queued for processing process had 1 warning"),
676
676
  ("warning", "Warning 1: somewarningmessage"),
677
677
  ]
678
678
 
@@ -27,7 +27,7 @@ def test_upload_completion_with_warnings(mocker):
27
27
  )
28
28
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
29
29
  assert out_bytes == [
30
- ("info", "Process Upload Completion complete"),
30
+ ("info", "Upload Completion complete"),
31
31
  ("info", "Upload Completion process had 1 warning"),
32
32
  ("warning", "Warning 1: somewarningmessage"),
33
33
  ]
@@ -56,7 +56,7 @@ def test_upload_completion_with_error(mocker):
56
56
  )
57
57
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
58
58
  assert out_bytes == [
59
- ("info", "Process Upload Completion complete"),
59
+ ("info", "Upload Completion complete"),
60
60
  ("error", "Upload Completion failed: Permission denied"),
61
61
  ]
62
62
  assert res == mock_send_commit_data.return_value
@@ -84,7 +84,7 @@ def test_upload_completion_200(mocker):
84
84
  )
85
85
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
86
86
  assert out_bytes == [
87
- ("info", "Process Upload Completion complete"),
87
+ ("info", "Upload Completion complete"),
88
88
  (
89
89
  "info",
90
90
  "{'uploads_total': 2, 'uploads_success': 2, 'uploads_processing': 0, 'uploads_error': 0}",
@@ -113,7 +113,7 @@ def test_upload_completion_no_token(mocker):
113
113
  res = upload_completion_logic("commit_sha", "owner/repo", None, "service", None)
114
114
  out_bytes = parse_outstreams_into_log_lines(outstreams[0].getvalue())
115
115
  assert out_bytes == [
116
- ("info", "Process Upload Completion complete"),
116
+ ("info", "Upload Completion complete"),
117
117
  (
118
118
  "info",
119
119
  "{'uploads_total': 2, 'uploads_success': 2, 'uploads_processing': 0, 'uploads_error': 0}",
@@ -1,26 +0,0 @@
1
- import os
2
- import time
3
-
4
- import sentry_sdk
5
-
6
- from codecov_cli import __version__
7
-
8
-
9
- def init_telem(ctx):
10
- if ctx["disable_telem"]:
11
- return
12
- if ctx["enterprise_url"]: # dont run on dedicated cloud
13
- return
14
- if os.getenv("CODECOV_ENV", "production") == "test":
15
- return
16
-
17
- sentry_sdk.init(
18
- dsn="https://0bea75c61745c221a6ef1ac1709b1f4d@o26192.ingest.us.sentry.io/4508615876083713",
19
- enable_tracing=True,
20
- environment=os.getenv("CODECOV_ENV", "production"),
21
- release=f"cli@{__version__}",
22
- )
23
-
24
-
25
- def close_telem():
26
- sentry_sdk.flush()
File without changes
File without changes
File without changes
File without changes
File without changes