cycode 3.5.1.dev2__tar.gz → 3.5.1.dev4__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 (166) hide show
  1. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/PKG-INFO +1 -1
  2. cycode-3.5.1.dev4/cycode/__init__.py +1 -0
  3. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/walk_ignore.py +18 -3
  4. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/ignore_utils.py +25 -6
  5. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/pyproject.toml +1 -1
  6. cycode-3.5.1.dev2/cycode/__init__.py +0 -1
  7. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/LICENCE +0 -0
  8. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/README.md +0 -0
  9. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/__main__.py +0 -0
  10. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/__init__.py +0 -0
  11. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/app.py +0 -0
  12. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/__init__.py +0 -0
  13. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/ai_remediation/__init__.py +0 -0
  14. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/ai_remediation/ai_remediation_command.py +0 -0
  15. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/ai_remediation/apply_fix.py +0 -0
  16. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/ai_remediation/print_remediation.py +0 -0
  17. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/auth/__init__.py +0 -0
  18. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/auth/auth_command.py +0 -0
  19. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/auth/auth_common.py +0 -0
  20. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/auth/auth_manager.py +0 -0
  21. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/auth/models.py +0 -0
  22. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/configure/__init__.py +0 -0
  23. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/configure/configure_command.py +0 -0
  24. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/configure/consts.py +0 -0
  25. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/configure/messages.py +0 -0
  26. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/configure/prompts.py +0 -0
  27. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/ignore/__init__.py +0 -0
  28. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/ignore/ignore_command.py +0 -0
  29. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/mcp/__init__.py +0 -0
  30. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/mcp/mcp_command.py +0 -0
  31. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/__init__.py +0 -0
  32. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/report_command.py +0 -0
  33. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/__init__.py +0 -0
  34. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/common.py +0 -0
  35. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/path/__init__.py +0 -0
  36. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/path/path_command.py +0 -0
  37. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/repository_url/__init__.py +0 -0
  38. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/repository_url/repository_url_command.py +0 -0
  39. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/sbom_command.py +0 -0
  40. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/report/sbom/sbom_report_file.py +0 -0
  41. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/__init__.py +0 -0
  42. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/aggregation_report.py +0 -0
  43. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/code_scanner.py +0 -0
  44. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/commit_history/__init__.py +0 -0
  45. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/commit_history/commit_history_command.py +0 -0
  46. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/commit_range_scanner.py +0 -0
  47. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/detection_excluder.py +0 -0
  48. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/path/__init__.py +0 -0
  49. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/path/path_command.py +0 -0
  50. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/pre_commit/__init__.py +0 -0
  51. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/pre_commit/pre_commit_command.py +0 -0
  52. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/pre_push/__init__.py +0 -0
  53. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/pre_push/pre_push_command.py +0 -0
  54. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/pre_receive/__init__.py +0 -0
  55. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/pre_receive/pre_receive_command.py +0 -0
  56. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/remote_url_resolver.py +0 -0
  57. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/repository/__init__.py +0 -0
  58. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/repository/repository_command.py +0 -0
  59. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/scan_ci/__init__.py +0 -0
  60. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/scan_ci/ci_integrations.py +0 -0
  61. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/scan_ci/scan_ci_command.py +0 -0
  62. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/scan_command.py +0 -0
  63. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/scan_parameters.py +0 -0
  64. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/scan/scan_result.py +0 -0
  65. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/status/__init__.py +0 -0
  66. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/status/get_cli_status.py +0 -0
  67. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/status/models.py +0 -0
  68. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/status/status_command.py +0 -0
  69. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/apps/status/version_command.py +0 -0
  70. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/cli_types.py +0 -0
  71. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/config.py +0 -0
  72. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/console.py +0 -0
  73. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/consts.py +0 -0
  74. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/exceptions/__init__.py +0 -0
  75. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/exceptions/custom_exceptions.py +0 -0
  76. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/exceptions/handle_ai_remediation_errors.py +0 -0
  77. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/exceptions/handle_auth_errors.py +0 -0
  78. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/exceptions/handle_errors.py +0 -0
  79. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/exceptions/handle_report_sbom_errors.py +0 -0
  80. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/exceptions/handle_scan_errors.py +0 -0
  81. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/__init__.py +0 -0
  82. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/commit_range_documents.py +0 -0
  83. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/file_excluder.py +0 -0
  84. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/iac/__init__.py +0 -0
  85. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/iac/tf_content_generator.py +0 -0
  86. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/models/__init__.py +0 -0
  87. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/models/in_memory_zip.py +0 -0
  88. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/path_documents.py +0 -0
  89. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/repository_documents.py +0 -0
  90. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/__init__.py +0 -0
  91. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/base_restore_dependencies.py +0 -0
  92. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/go/__init__.py +0 -0
  93. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/go/restore_go_dependencies.py +0 -0
  94. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/maven/__init__.py +0 -0
  95. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/maven/restore_gradle_dependencies.py +0 -0
  96. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/maven/restore_maven_dependencies.py +0 -0
  97. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/npm/__init__.py +0 -0
  98. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/npm/restore_npm_dependencies.py +0 -0
  99. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/nuget/__init__.py +0 -0
  100. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/nuget/restore_nuget_dependencies.py +0 -0
  101. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/ruby/__init__.py +0 -0
  102. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/ruby/restore_ruby_dependencies.py +0 -0
  103. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/sbt/__init__.py +0 -0
  104. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/sbt/restore_sbt_dependencies.py +0 -0
  105. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/sca/sca_file_collector.py +0 -0
  106. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/files_collector/zip_documents.py +0 -0
  107. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/logger.py +0 -0
  108. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/main.py +0 -0
  109. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/models.py +0 -0
  110. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/__init__.py +0 -0
  111. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/console_printer.py +0 -0
  112. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/json_printer.py +0 -0
  113. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/printer_base.py +0 -0
  114. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/rich_printer.py +0 -0
  115. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/tables/__init__.py +0 -0
  116. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/tables/sca_table_printer.py +0 -0
  117. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/tables/table.py +0 -0
  118. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/tables/table_models.py +0 -0
  119. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/tables/table_printer.py +0 -0
  120. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/tables/table_printer_base.py +0 -0
  121. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/text_printer.py +0 -0
  122. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/utils/__init__.py +0 -0
  123. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/utils/code_snippet_syntax.py +0 -0
  124. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/utils/detection_data.py +0 -0
  125. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/utils/detection_ordering/__init__.py +0 -0
  126. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/utils/detection_ordering/common_ordering.py +0 -0
  127. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/utils/detection_ordering/sca_ordering.py +0 -0
  128. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/printers/utils/rich_helpers.py +0 -0
  129. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/user_settings/__init__.py +0 -0
  130. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/user_settings/base_file_manager.py +0 -0
  131. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/user_settings/config_file_manager.py +0 -0
  132. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/user_settings/configuration_manager.py +0 -0
  133. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/user_settings/credentials_manager.py +0 -0
  134. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/user_settings/jwt_creator.py +0 -0
  135. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/__init__.py +0 -0
  136. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/enum_utils.py +0 -0
  137. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/get_api_client.py +0 -0
  138. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/git_proxy.py +0 -0
  139. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/jwt_utils.py +0 -0
  140. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/path_utils.py +0 -0
  141. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/progress_bar.py +0 -0
  142. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/scan_batch.py +0 -0
  143. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/scan_utils.py +0 -0
  144. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/sentry.py +0 -0
  145. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/shell_executor.py +0 -0
  146. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/string_utils.py +0 -0
  147. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/task_timer.py +0 -0
  148. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/version_checker.py +0 -0
  149. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cli/utils/yaml_utils.py +0 -0
  150. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/config.py +0 -0
  151. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/__init__.py +0 -0
  152. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/auth_client.py +0 -0
  153. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/client_creator.py +0 -0
  154. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/config.py +0 -0
  155. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/config_dev.py +0 -0
  156. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/cycode_client.py +0 -0
  157. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/cycode_client_base.py +0 -0
  158. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/cycode_dev_based_client.py +0 -0
  159. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/cycode_token_based_client.py +0 -0
  160. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/headers.py +0 -0
  161. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/logger.py +0 -0
  162. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/models.py +0 -0
  163. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/report_client.py +0 -0
  164. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/scan_client.py +0 -0
  165. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/cyclient/scan_config_base.py +0 -0
  166. {cycode-3.5.1.dev2 → cycode-3.5.1.dev4}/cycode/logger.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cycode
3
- Version: 3.5.1.dev2
3
+ Version: 3.5.1.dev4
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.5.1.dev4' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
@@ -1,9 +1,11 @@
1
1
  import os
2
2
  from collections.abc import Generator, Iterable
3
3
 
4
- from cycode.cli.logger import logger
4
+ from cycode.cli.logger import get_logger
5
5
  from cycode.cli.utils.ignore_utils import IgnoreFilterManager
6
6
 
7
+ logger = get_logger('Ignores')
8
+
7
9
  _SUPPORTED_IGNORE_PATTERN_FILES = {
8
10
  '.gitignore',
9
11
  '.cycodeignore',
@@ -30,7 +32,7 @@ def _collect_top_level_ignore_files(path: str) -> list[str]:
30
32
  for ignore_file in _SUPPORTED_IGNORE_PATTERN_FILES:
31
33
  ignore_file_path = os.path.join(dir_path, ignore_file)
32
34
  if os.path.exists(ignore_file_path):
33
- logger.debug('Apply top level ignore file: %s', ignore_file_path)
35
+ logger.debug('Reading top level ignore file: %s', ignore_file_path)
34
36
  ignore_files.append(ignore_file_path)
35
37
  return ignore_files
36
38
 
@@ -41,4 +43,17 @@ def walk_ignore(path: str) -> Generator[tuple[str, list[str], list[str]], None,
41
43
  global_ignore_file_paths=_collect_top_level_ignore_files(path),
42
44
  global_patterns=_DEFAULT_GLOBAL_IGNORE_PATTERNS,
43
45
  )
44
- yield from ignore_filter_manager.walk()
46
+ for dirpath, dirnames, filenames, ignored_dirnames, ignored_filenames in ignore_filter_manager.walk_with_ignored():
47
+ rel_dirpath = '' if dirpath == path else os.path.relpath(dirpath, path)
48
+ display_dir = rel_dirpath or '.'
49
+ for is_dir, names in (
50
+ (True, ignored_dirnames),
51
+ (False, ignored_filenames),
52
+ ):
53
+ for name in names:
54
+ full_path = os.path.join(path, display_dir, name)
55
+ if is_dir:
56
+ full_path = os.path.join(full_path, '*')
57
+ logger.debug('Ignoring match %s', full_path)
58
+
59
+ yield dirpath, dirnames, filenames
@@ -388,19 +388,38 @@ class IgnoreFilterManager:
388
388
  return matches[-1].is_exclude
389
389
  return None
390
390
 
391
- def walk(self, **kwargs) -> Generator[tuple[str, list[str], list[str]], None, None]:
392
- """Wrap os.walk() without ignored files and subdirectories and kwargs are passed to walk."""
391
+ def walk_with_ignored(
392
+ self, **kwargs
393
+ ) -> Generator[tuple[str, list[str], list[str], list[str], list[str]], None, None]:
394
+ """Wrap os.walk() and also return lists of ignored directories and files.
395
+
396
+ Yields tuples: (dirpath, included_dirnames, included_filenames, ignored_dirnames, ignored_filenames)
397
+ """
393
398
  for dirpath, dirnames, filenames in os.walk(self.path, topdown=True, **kwargs):
394
399
  rel_dirpath = '' if dirpath == self.path else os.path.relpath(dirpath, self.path)
395
400
 
401
+ original_dirnames = list(dirnames)
402
+ included_dirnames = []
403
+ ignored_dirnames = []
404
+ for d in original_dirnames:
405
+ if self.is_ignored(os.path.join(rel_dirpath, d)):
406
+ ignored_dirnames.append(d)
407
+ else:
408
+ included_dirnames.append(d)
409
+
396
410
  # decrease recursion depth of os.walk() by ignoring subdirectories because of topdown=True
397
411
  # slicing ([:]) is mandatory to change dict in-place!
398
- dirnames[:] = [d for d in dirnames if not self.is_ignored(os.path.join(rel_dirpath, d))]
412
+ dirnames[:] = included_dirnames
399
413
 
400
- # remove ignored files
401
- filenames = [f for f in filenames if not self.is_ignored(os.path.join(rel_dirpath, f))]
414
+ included_filenames = []
415
+ ignored_filenames = []
416
+ for f in filenames:
417
+ if self.is_ignored(os.path.join(rel_dirpath, f)):
418
+ ignored_filenames.append(f)
419
+ else:
420
+ included_filenames.append(f)
402
421
 
403
- yield dirpath, dirnames, filenames
422
+ yield dirpath, dirnames, included_filenames, ignored_dirnames, ignored_filenames
404
423
 
405
424
  @classmethod
406
425
  def build(
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "cycode"
3
- version = "3.5.1.dev2" # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
3
+ version = "3.5.1.dev4" # 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.5.1.dev2' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
File without changes
File without changes