cycode 3.16.2.dev1__tar.gz → 3.16.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 (213) hide show
  1. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/PKG-INFO +1 -1
  2. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/__init__.py +1 -1
  3. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/configure/configure_command.py +17 -1
  4. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/configure/messages.py +14 -6
  5. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/consts.py +24 -0
  6. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/file_excluder.py +8 -0
  7. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/pyproject.toml +1 -1
  8. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/LICENCE +0 -0
  9. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/README.md +0 -0
  10. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/__main__.py +0 -0
  11. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/__init__.py +0 -0
  12. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/app.py +0 -0
  13. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/__init__.py +0 -0
  14. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/activation_manager.py +0 -0
  15. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/__init__.py +0 -0
  16. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/command_utils.py +0 -0
  17. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/consts.py +0 -0
  18. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/hooks_manager.py +0 -0
  19. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/ides/__init__.py +0 -0
  20. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/ides/_plugin_utils.py +0 -0
  21. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/ides/base.py +0 -0
  22. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/ides/claude_code.py +0 -0
  23. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/ides/codex.py +0 -0
  24. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/ides/cursor.py +0 -0
  25. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/install_command.py +0 -0
  26. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/__init__.py +0 -0
  27. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/consts.py +0 -0
  28. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/handlers.py +0 -0
  29. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/payload.py +0 -0
  30. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/policy.py +0 -0
  31. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/scan_command.py +0 -0
  32. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/types.py +0 -0
  33. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/scan/utils.py +0 -0
  34. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/session_start_command.py +0 -0
  35. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/status_command.py +0 -0
  36. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_guardrails/uninstall_command.py +0 -0
  37. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_remediation/__init__.py +0 -0
  38. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_remediation/ai_remediation_command.py +0 -0
  39. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_remediation/apply_fix.py +0 -0
  40. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ai_remediation/print_remediation.py +0 -0
  41. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/api/__init__.py +0 -0
  42. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/api/api_command.py +0 -0
  43. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/api/openapi_spec.py +0 -0
  44. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/auth/__init__.py +0 -0
  45. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/auth/auth_command.py +0 -0
  46. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/auth/auth_common.py +0 -0
  47. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/auth/auth_manager.py +0 -0
  48. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/auth/models.py +0 -0
  49. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/configure/__init__.py +0 -0
  50. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/configure/consts.py +0 -0
  51. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/configure/prompts.py +0 -0
  52. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ignore/__init__.py +0 -0
  53. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/ignore/ignore_command.py +0 -0
  54. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/mcp/__init__.py +0 -0
  55. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/mcp/mcp_command.py +0 -0
  56. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/__init__.py +0 -0
  57. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/report_command.py +0 -0
  58. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/__init__.py +0 -0
  59. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/common.py +0 -0
  60. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/path/__init__.py +0 -0
  61. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/path/path_command.py +0 -0
  62. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/repository_url/__init__.py +0 -0
  63. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/repository_url/repository_url_command.py +0 -0
  64. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/sbom_command.py +0 -0
  65. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report/sbom/sbom_report_file.py +0 -0
  66. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report_import/__init__.py +0 -0
  67. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report_import/report_import_command.py +0 -0
  68. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report_import/sbom/__init__.py +0 -0
  69. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/report_import/sbom/sbom_command.py +0 -0
  70. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/sca_options.py +0 -0
  71. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/__init__.py +0 -0
  72. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/aggregation_report.py +0 -0
  73. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/code_scanner.py +0 -0
  74. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/commit_history/__init__.py +0 -0
  75. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/commit_history/commit_history_command.py +0 -0
  76. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/commit_range_scanner.py +0 -0
  77. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/detection_excluder.py +0 -0
  78. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/path/__init__.py +0 -0
  79. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/path/path_command.py +0 -0
  80. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/pre_commit/__init__.py +0 -0
  81. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/pre_commit/pre_commit_command.py +0 -0
  82. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/pre_push/__init__.py +0 -0
  83. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/pre_push/pre_push_command.py +0 -0
  84. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/pre_receive/__init__.py +0 -0
  85. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/pre_receive/pre_receive_command.py +0 -0
  86. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/remote_url_resolver.py +0 -0
  87. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/repository/__init__.py +0 -0
  88. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/repository/repository_command.py +0 -0
  89. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/scan_ci/__init__.py +0 -0
  90. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/scan_ci/ci_integrations.py +0 -0
  91. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/scan_ci/scan_ci_command.py +0 -0
  92. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/scan_command.py +0 -0
  93. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/scan_parameters.py +0 -0
  94. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/scan/scan_result.py +0 -0
  95. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/status/__init__.py +0 -0
  96. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/status/get_cli_status.py +0 -0
  97. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/status/models.py +0 -0
  98. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/status/status_command.py +0 -0
  99. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/apps/status/version_command.py +0 -0
  100. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/cli_types.py +0 -0
  101. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/config.py +0 -0
  102. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/console.py +0 -0
  103. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/exceptions/__init__.py +0 -0
  104. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/exceptions/custom_exceptions.py +0 -0
  105. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/exceptions/handle_ai_remediation_errors.py +0 -0
  106. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/exceptions/handle_auth_errors.py +0 -0
  107. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/exceptions/handle_errors.py +0 -0
  108. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/exceptions/handle_report_sbom_errors.py +0 -0
  109. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/exceptions/handle_scan_errors.py +0 -0
  110. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/__init__.py +0 -0
  111. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/commit_range_documents.py +0 -0
  112. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/documents_walk_ignore.py +0 -0
  113. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/iac/__init__.py +0 -0
  114. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/iac/tf_content_generator.py +0 -0
  115. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/models/__init__.py +0 -0
  116. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/models/in_memory_zip.py +0 -0
  117. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/path_documents.py +0 -0
  118. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/repository_documents.py +0 -0
  119. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/__init__.py +0 -0
  120. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/base_restore_dependencies.py +0 -0
  121. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/go/__init__.py +0 -0
  122. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/go/restore_go_dependencies.py +0 -0
  123. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/maven/__init__.py +0 -0
  124. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/maven/restore_gradle_dependencies.py +0 -0
  125. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/maven/restore_maven_dependencies.py +0 -0
  126. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/npm/__init__.py +0 -0
  127. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/npm/restore_deno_dependencies.py +0 -0
  128. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/npm/restore_npm_dependencies.py +0 -0
  129. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/npm/restore_pnpm_dependencies.py +0 -0
  130. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/npm/restore_yarn_dependencies.py +0 -0
  131. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/nuget/__init__.py +0 -0
  132. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/nuget/restore_nuget_dependencies.py +0 -0
  133. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/php/__init__.py +0 -0
  134. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/php/restore_composer_dependencies.py +0 -0
  135. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/python/__init__.py +0 -0
  136. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/python/restore_pipenv_dependencies.py +0 -0
  137. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/python/restore_poetry_dependencies.py +0 -0
  138. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/python/restore_uv_dependencies.py +0 -0
  139. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/ruby/__init__.py +0 -0
  140. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/ruby/restore_ruby_dependencies.py +0 -0
  141. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/sbt/__init__.py +0 -0
  142. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/sbt/restore_sbt_dependencies.py +0 -0
  143. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/sca/sca_file_collector.py +0 -0
  144. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/walk_ignore.py +0 -0
  145. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/files_collector/zip_documents.py +0 -0
  146. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/logger.py +0 -0
  147. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/main.py +0 -0
  148. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/models.py +0 -0
  149. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/__init__.py +0 -0
  150. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/console_printer.py +0 -0
  151. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/json_printer.py +0 -0
  152. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/printer_base.py +0 -0
  153. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/rich_printer.py +0 -0
  154. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/tables/__init__.py +0 -0
  155. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/tables/sca_table_printer.py +0 -0
  156. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/tables/table.py +0 -0
  157. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/tables/table_models.py +0 -0
  158. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/tables/table_printer.py +0 -0
  159. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/tables/table_printer_base.py +0 -0
  160. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/text_printer.py +0 -0
  161. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/utils/__init__.py +0 -0
  162. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/utils/code_snippet_syntax.py +0 -0
  163. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/utils/detection_data.py +0 -0
  164. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/utils/detection_ordering/__init__.py +0 -0
  165. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/utils/detection_ordering/common_ordering.py +0 -0
  166. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/utils/detection_ordering/sca_ordering.py +0 -0
  167. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/printers/utils/rich_helpers.py +0 -0
  168. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/user_settings/__init__.py +0 -0
  169. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/user_settings/base_file_manager.py +0 -0
  170. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/user_settings/config_file_manager.py +0 -0
  171. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/user_settings/configuration_manager.py +0 -0
  172. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/user_settings/credentials_manager.py +0 -0
  173. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/user_settings/jwt_creator.py +0 -0
  174. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/__init__.py +0 -0
  175. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/binary_utils.py +0 -0
  176. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/enum_utils.py +0 -0
  177. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/get_api_client.py +0 -0
  178. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/git_proxy.py +0 -0
  179. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/ignore_utils.py +0 -0
  180. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/jwt_utils.py +0 -0
  181. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/path_utils.py +0 -0
  182. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/progress_bar.py +0 -0
  183. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/scan_batch.py +0 -0
  184. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/scan_utils.py +0 -0
  185. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/shell_executor.py +0 -0
  186. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/string_utils.py +0 -0
  187. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/task_timer.py +0 -0
  188. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/url_utils.py +0 -0
  189. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/version_checker.py +0 -0
  190. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cli/utils/yaml_utils.py +0 -0
  191. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/config.py +0 -0
  192. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/__init__.py +0 -0
  193. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/ai_security_manager_client.py +0 -0
  194. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/ai_security_manager_service_config.py +0 -0
  195. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/auth_client.py +0 -0
  196. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/base_token_auth_client.py +0 -0
  197. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/cli_activation_client.py +0 -0
  198. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/client_creator.py +0 -0
  199. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/config.py +0 -0
  200. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/config_dev.py +0 -0
  201. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/cycode_client.py +0 -0
  202. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/cycode_client_base.py +0 -0
  203. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/cycode_dev_based_client.py +0 -0
  204. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/cycode_oidc_based_client.py +0 -0
  205. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/cycode_token_based_client.py +0 -0
  206. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/headers.py +0 -0
  207. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/import_sbom_client.py +0 -0
  208. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/logger.py +0 -0
  209. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/models.py +0 -0
  210. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/report_client.py +0 -0
  211. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/scan_client.py +0 -0
  212. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/cyclient/scan_config_base.py +0 -0
  213. {cycode-3.16.2.dev1 → cycode-3.16.3.dev1}/cycode/logger.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cycode
3
- Version: 3.16.2.dev1
3
+ Version: 3.16.3.dev1
4
4
  Summary: Boost security in your dev lifecycle via SAST, SCA, Secrets & IaC scanning.
5
5
  License-Expression: MIT
6
6
  License-File: LICENCE
@@ -5,4 +5,4 @@ import time as _time
5
5
  # end-to-end scan duration from the moment the user actually triggered it.
6
6
  _BOOT_WALL: float = _time.time()
7
7
 
8
- __version__ = '3.16.2.dev1' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
8
+ __version__ = '3.16.3.dev1' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
@@ -1,7 +1,12 @@
1
1
  from typing import Optional
2
2
 
3
3
  from cycode.cli.apps.configure.consts import CONFIGURATION_MANAGER, CREDENTIALS_MANAGER
4
- from cycode.cli.apps.configure.messages import get_credentials_update_result_message, get_urls_update_result_message
4
+ from cycode.cli.apps.configure.messages import (
5
+ get_credentials_environment_variables_override_warning,
6
+ get_credentials_update_result_message,
7
+ get_urls_environment_variables_override_warning,
8
+ get_urls_update_result_message,
9
+ )
5
10
  from cycode.cli.apps.configure.prompts import (
6
11
  get_api_url_input,
7
12
  get_app_url_input,
@@ -73,3 +78,14 @@ def configure_command() -> None:
73
78
  console.print(get_urls_update_result_message())
74
79
  if credentials_updated or oidc_credentials_updated:
75
80
  console.print(get_credentials_update_result_message())
81
+
82
+ # Warn about environment variables that override the configured file values, regardless of whether anything was
83
+ # updated. The env vars take precedence on every subsequent call, so configuring the file alone has no effect while
84
+ # they are set.
85
+ urls_override_warning = get_urls_environment_variables_override_warning()
86
+ if urls_override_warning:
87
+ console.print(f'[yellow]Warning:[/] {urls_override_warning}')
88
+
89
+ credentials_override_warning = get_credentials_environment_variables_override_warning()
90
+ if credentials_override_warning:
91
+ console.print(f'[yellow]Warning:[/] {credentials_override_warning}')
@@ -1,3 +1,5 @@
1
+ from typing import Optional
2
+
1
3
  from cycode.cli.apps.configure.consts import (
2
4
  CONFIGURATION_MANAGER,
3
5
  CREDENTIALS_ARE_SET_IN_ENVIRONMENT_VARIABLES_MESSAGE,
@@ -14,11 +16,14 @@ def _are_credentials_exist_in_environment_variables() -> bool:
14
16
 
15
17
 
16
18
  def get_credentials_update_result_message() -> str:
17
- success_message = CREDENTIALS_UPDATED_SUCCESSFULLY_MESSAGE.format(filename=CREDENTIALS_MANAGER.get_filename())
19
+ return CREDENTIALS_UPDATED_SUCCESSFULLY_MESSAGE.format(filename=CREDENTIALS_MANAGER.get_filename())
20
+
21
+
22
+ def get_credentials_environment_variables_override_warning() -> Optional[str]:
18
23
  if _are_credentials_exist_in_environment_variables():
19
- return f'{success_message}. {CREDENTIALS_ARE_SET_IN_ENVIRONMENT_VARIABLES_MESSAGE}'
24
+ return CREDENTIALS_ARE_SET_IN_ENVIRONMENT_VARIABLES_MESSAGE
20
25
 
21
- return success_message
26
+ return None
22
27
 
23
28
 
24
29
  def _are_urls_exist_in_environment_variables() -> bool:
@@ -28,10 +33,13 @@ def _are_urls_exist_in_environment_variables() -> bool:
28
33
 
29
34
 
30
35
  def get_urls_update_result_message() -> str:
31
- success_message = URLS_UPDATED_SUCCESSFULLY_MESSAGE.format(
36
+ return URLS_UPDATED_SUCCESSFULLY_MESSAGE.format(
32
37
  filename=CONFIGURATION_MANAGER.global_config_file_manager.get_filename()
33
38
  )
39
+
40
+
41
+ def get_urls_environment_variables_override_warning() -> Optional[str]:
34
42
  if _are_urls_exist_in_environment_variables():
35
- return f'{success_message}. {URLS_ARE_SET_IN_ENVIRONMENT_VARIABLES_MESSAGE}'
43
+ return URLS_ARE_SET_IN_ENVIRONMENT_VARIABLES_MESSAGE
36
44
 
37
- return success_message
45
+ return None
@@ -53,6 +53,30 @@ SECRET_SCAN_FILE_EXTENSIONS_TO_IGNORE = (
53
53
  '.iso',
54
54
  )
55
55
 
56
+ # Fallback block-list used for SAST only when the server does not return scannable extensions
57
+ # (e.g. when the customer has custom rules, any text file is scannable). These are non-source
58
+ # data formats that can slip past binary detection (the EICAR test file and ClamAV signature
59
+ # databases are plain ASCII) and may be quarantined by object-storage antivirus after upload.
60
+ SAST_SCAN_FILE_EXTENSIONS_TO_IGNORE = (
61
+ '.bin',
62
+ '.cvd',
63
+ '.cld',
64
+ '.cud',
65
+ '.hdb',
66
+ '.hsb',
67
+ '.mdb',
68
+ '.msb',
69
+ '.ndb',
70
+ '.ndu',
71
+ '.ldb',
72
+ '.ldu',
73
+ '.idb',
74
+ '.fp',
75
+ '.sfp',
76
+ '.ign',
77
+ '.ign2',
78
+ )
79
+
56
80
  SCA_CONFIGURATION_SCAN_SUPPORTED_FILES = ( # keep in lowercase
57
81
  'cargo.lock',
58
82
  'cargo.toml',
@@ -63,7 +63,10 @@ class Excluder:
63
63
  }
64
64
  self._non_scannable_extensions: dict[str, tuple[str, ...]] = {
65
65
  consts.SECRET_SCAN_TYPE: consts.SECRET_SCAN_FILE_EXTENSIONS_TO_IGNORE,
66
+ consts.SAST_SCAN_TYPE: consts.SAST_SCAN_FILE_EXTENSIONS_TO_IGNORE,
66
67
  }
68
+ # Tracks scan types for which the SAST fallback log has already been emitted (log once, not per file)
69
+ self._logged_sast_fallback = False
67
70
 
68
71
  def apply_scan_config(self, scan_type: str, scan_config: 'models.ScanConfiguration') -> None:
69
72
  if scan_config.scannable_extensions:
@@ -86,6 +89,11 @@ class Excluder:
86
89
 
87
90
  non_scannable_extensions = self._non_scannable_extensions.get(scan_type)
88
91
  if non_scannable_extensions:
92
+ # For SAST, reaching the block-list means the server returned no scannable extensions
93
+ # (e.g. custom rules, or no remote config). Log once so this is diagnosable.
94
+ if scan_type == consts.SAST_SCAN_TYPE and not self._logged_sast_fallback:
95
+ self._logged_sast_fallback = True
96
+ logger.debug('No scannable extensions provided for SAST; falling back to the built-in ignore list')
89
97
  return not filename.endswith(non_scannable_extensions)
90
98
 
91
99
  return True
@@ -21,7 +21,7 @@ classifiers = [
21
21
  "Programming Language :: Python :: 3.14",
22
22
  ]
23
23
  dynamic = ["dependencies"]
24
- version = "3.16.2.dev1"
24
+ version = "3.16.3.dev1"
25
25
 
26
26
  [project.scripts]
27
27
  cycode = "cycode.cli.app:app"
File without changes
File without changes