cycode 3.4.2.dev1__tar.gz → 3.4.3.dev1__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 (164) hide show
  1. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/PKG-INFO +1 -1
  2. cycode-3.4.3.dev1/cycode/__init__.py +1 -0
  3. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/commit_range_documents.py +27 -18
  4. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/pyproject.toml +1 -1
  5. cycode-3.4.2.dev1/cycode/__init__.py +0 -1
  6. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/LICENCE +0 -0
  7. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/README.md +0 -0
  8. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/__main__.py +0 -0
  9. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/__init__.py +0 -0
  10. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/app.py +0 -0
  11. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/__init__.py +0 -0
  12. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/ai_remediation/__init__.py +0 -0
  13. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/ai_remediation/ai_remediation_command.py +0 -0
  14. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/ai_remediation/apply_fix.py +0 -0
  15. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/ai_remediation/print_remediation.py +0 -0
  16. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/auth/__init__.py +0 -0
  17. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/auth/auth_command.py +0 -0
  18. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/auth/auth_common.py +0 -0
  19. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/auth/auth_manager.py +0 -0
  20. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/auth/models.py +0 -0
  21. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/configure/__init__.py +0 -0
  22. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/configure/configure_command.py +0 -0
  23. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/configure/consts.py +0 -0
  24. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/configure/messages.py +0 -0
  25. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/configure/prompts.py +0 -0
  26. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/ignore/__init__.py +0 -0
  27. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/ignore/ignore_command.py +0 -0
  28. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/mcp/__init__.py +0 -0
  29. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/mcp/mcp_command.py +0 -0
  30. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/__init__.py +0 -0
  31. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/report_command.py +0 -0
  32. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/__init__.py +0 -0
  33. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/common.py +0 -0
  34. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/path/__init__.py +0 -0
  35. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/path/path_command.py +0 -0
  36. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/repository_url/__init__.py +0 -0
  37. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/repository_url/repository_url_command.py +0 -0
  38. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/sbom_command.py +0 -0
  39. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/report/sbom/sbom_report_file.py +0 -0
  40. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/__init__.py +0 -0
  41. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/aggregation_report.py +0 -0
  42. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/code_scanner.py +0 -0
  43. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/commit_history/__init__.py +0 -0
  44. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/commit_history/commit_history_command.py +0 -0
  45. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/commit_range_scanner.py +0 -0
  46. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/detection_excluder.py +0 -0
  47. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/path/__init__.py +0 -0
  48. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/path/path_command.py +0 -0
  49. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/pre_commit/__init__.py +0 -0
  50. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/pre_commit/pre_commit_command.py +0 -0
  51. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/pre_receive/__init__.py +0 -0
  52. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/pre_receive/pre_receive_command.py +0 -0
  53. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/remote_url_resolver.py +0 -0
  54. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/repository/__init__.py +0 -0
  55. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/repository/repository_command.py +0 -0
  56. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/scan_ci/__init__.py +0 -0
  57. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/scan_ci/ci_integrations.py +0 -0
  58. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/scan_ci/scan_ci_command.py +0 -0
  59. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/scan_command.py +0 -0
  60. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/scan_parameters.py +0 -0
  61. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/scan/scan_result.py +0 -0
  62. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/status/__init__.py +0 -0
  63. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/status/get_cli_status.py +0 -0
  64. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/status/models.py +0 -0
  65. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/status/status_command.py +0 -0
  66. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/apps/status/version_command.py +0 -0
  67. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/cli_types.py +0 -0
  68. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/config.py +0 -0
  69. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/console.py +0 -0
  70. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/consts.py +0 -0
  71. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/exceptions/__init__.py +0 -0
  72. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/exceptions/custom_exceptions.py +0 -0
  73. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/exceptions/handle_ai_remediation_errors.py +0 -0
  74. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/exceptions/handle_auth_errors.py +0 -0
  75. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/exceptions/handle_errors.py +0 -0
  76. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/exceptions/handle_report_sbom_errors.py +0 -0
  77. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/exceptions/handle_scan_errors.py +0 -0
  78. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/__init__.py +0 -0
  79. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/file_excluder.py +0 -0
  80. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/iac/__init__.py +0 -0
  81. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/iac/tf_content_generator.py +0 -0
  82. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/models/__init__.py +0 -0
  83. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/models/in_memory_zip.py +0 -0
  84. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/path_documents.py +0 -0
  85. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/repository_documents.py +0 -0
  86. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/__init__.py +0 -0
  87. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/base_restore_dependencies.py +0 -0
  88. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/go/__init__.py +0 -0
  89. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/go/restore_go_dependencies.py +0 -0
  90. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/maven/__init__.py +0 -0
  91. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/maven/restore_gradle_dependencies.py +0 -0
  92. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/maven/restore_maven_dependencies.py +0 -0
  93. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/npm/__init__.py +0 -0
  94. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/npm/restore_npm_dependencies.py +0 -0
  95. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/nuget/__init__.py +0 -0
  96. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/nuget/restore_nuget_dependencies.py +0 -0
  97. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/ruby/__init__.py +0 -0
  98. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/ruby/restore_ruby_dependencies.py +0 -0
  99. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/sbt/__init__.py +0 -0
  100. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/sbt/restore_sbt_dependencies.py +0 -0
  101. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/sca/sca_file_collector.py +0 -0
  102. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/walk_ignore.py +0 -0
  103. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/files_collector/zip_documents.py +0 -0
  104. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/logger.py +0 -0
  105. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/main.py +0 -0
  106. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/models.py +0 -0
  107. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/__init__.py +0 -0
  108. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/console_printer.py +0 -0
  109. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/json_printer.py +0 -0
  110. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/printer_base.py +0 -0
  111. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/rich_printer.py +0 -0
  112. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/tables/__init__.py +0 -0
  113. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/tables/sca_table_printer.py +0 -0
  114. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/tables/table.py +0 -0
  115. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/tables/table_models.py +0 -0
  116. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/tables/table_printer.py +0 -0
  117. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/tables/table_printer_base.py +0 -0
  118. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/text_printer.py +0 -0
  119. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/utils/__init__.py +0 -0
  120. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/utils/code_snippet_syntax.py +0 -0
  121. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/utils/detection_data.py +0 -0
  122. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/utils/detection_ordering/__init__.py +0 -0
  123. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/utils/detection_ordering/common_ordering.py +0 -0
  124. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/utils/detection_ordering/sca_ordering.py +0 -0
  125. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/printers/utils/rich_helpers.py +0 -0
  126. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/user_settings/__init__.py +0 -0
  127. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/user_settings/base_file_manager.py +0 -0
  128. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/user_settings/config_file_manager.py +0 -0
  129. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/user_settings/configuration_manager.py +0 -0
  130. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/user_settings/credentials_manager.py +0 -0
  131. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/user_settings/jwt_creator.py +0 -0
  132. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/__init__.py +0 -0
  133. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/enum_utils.py +0 -0
  134. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/get_api_client.py +0 -0
  135. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/git_proxy.py +0 -0
  136. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/ignore_utils.py +0 -0
  137. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/jwt_utils.py +0 -0
  138. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/path_utils.py +0 -0
  139. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/progress_bar.py +0 -0
  140. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/scan_batch.py +0 -0
  141. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/scan_utils.py +0 -0
  142. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/sentry.py +0 -0
  143. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/shell_executor.py +0 -0
  144. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/string_utils.py +0 -0
  145. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/task_timer.py +0 -0
  146. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/version_checker.py +0 -0
  147. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cli/utils/yaml_utils.py +0 -0
  148. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/config.py +0 -0
  149. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/__init__.py +0 -0
  150. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/auth_client.py +0 -0
  151. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/client_creator.py +0 -0
  152. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/config.py +0 -0
  153. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/config_dev.py +0 -0
  154. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/cycode_client.py +0 -0
  155. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/cycode_client_base.py +0 -0
  156. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/cycode_dev_based_client.py +0 -0
  157. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/cycode_token_based_client.py +0 -0
  158. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/headers.py +0 -0
  159. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/logger.py +0 -0
  160. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/models.py +0 -0
  161. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/report_client.py +0 -0
  162. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/scan_client.py +0 -0
  163. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/cyclient/scan_config_base.py +0 -0
  164. {cycode-3.4.2.dev1 → cycode-3.4.3.dev1}/cycode/logger.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cycode
3
- Version: 3.4.2.dev1
3
+ Version: 3.4.3.dev1
4
4
  Summary: Boost security in your dev lifecycle via SAST, SCA, Secrets & IaC scanning.
5
5
  Home-page: https://github.com/cycodehq/cycode-cli
6
6
  License: MIT
@@ -0,0 +1 @@
1
+ __version__ = '3.4.3.dev1' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
@@ -212,24 +212,33 @@ def parse_pre_receive_input() -> str:
212
212
 
213
213
 
214
214
  def get_diff_file_path(diff: 'Diff', relative: bool = False, repo: Optional['Repo'] = None) -> Optional[str]:
215
- if relative:
216
- # relative to the repository root
217
- return diff.b_path if diff.b_path else diff.a_path
218
-
219
- # Try blob-based paths first (most reliable when available)
220
- if diff.b_blob:
221
- return diff.b_blob.abspath
222
- if diff.a_blob:
223
- return diff.a_blob.abspath
224
-
225
- # Fallback: construct an absolute path from a relative path
226
- # This handles renames and other cases where blobs might be None
227
- if repo and repo.working_tree_dir:
228
- target_path = diff.b_path if diff.b_path else diff.a_path
229
- if target_path:
230
- return os.path.abspath(os.path.join(repo.working_tree_dir, target_path))
231
-
232
- return None
215
+ """Get the file path from a git Diff object.
216
+
217
+ Args:
218
+ diff: Git Diff object representing the file change
219
+ relative: If True, return the path relative to the repository root;
220
+ otherwise, return an absolute path IF possible
221
+ repo: Optional Git Repo object, used to resolve absolute paths
222
+
223
+ Note:
224
+ It tries to get the absolute path, falling back to relative paths. `relative` flag forces relative paths.
225
+
226
+ One case of relative paths is when the repository is bare and does not have a working tree directory.
227
+ """
228
+ # try blob-based paths first (most reliable when available)
229
+ blob = diff.b_blob if diff.b_blob else diff.a_blob
230
+ if blob:
231
+ if relative:
232
+ return blob.path
233
+ if repo and repo.working_tree_dir:
234
+ return blob.abspath
235
+
236
+ path = diff.b_path if diff.b_path else diff.a_path # relative path within the repo
237
+ if not relative and path and repo and repo.working_tree_dir:
238
+ # convert to the absolute path using the repo's working tree directory
239
+ path = os.path.join(repo.working_tree_dir, path)
240
+
241
+ return path
233
242
 
234
243
 
235
244
  def get_diff_file_content(diff: 'Diff') -> str:
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "cycode"
3
- version = "3.4.2.dev1" # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
3
+ version = "3.4.3.dev1" # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
4
4
  description = "Boost security in your dev lifecycle via SAST, SCA, Secrets & IaC scanning."
5
5
  keywords=["secret-scan", "cycode", "devops", "token", "secret", "security", "cycode", "code"]
6
6
  authors = ["Cycode <support@cycode.com>"]
@@ -1 +0,0 @@
1
- __version__ = '3.4.2.dev1' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
File without changes
File without changes