codeaudit 1.6.1__tar.gz → 1.6.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. {codeaudit-1.6.1 → codeaudit-1.6.2}/CHANGELOG.md +21 -0
  2. {codeaudit-1.6.1 → codeaudit-1.6.2}/PKG-INFO +1 -1
  3. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/codeauditcommands.md +8 -8
  4. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/data_egress_implementation.md +1 -1
  5. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/codeauditchecks.html +1 -1
  6. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/demoscan.json +2 -2
  7. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/help.md +1 -1
  8. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/intro.md +6 -11
  9. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/markingissues.md +3 -1
  10. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/sponsors.md +13 -2
  11. {codeaudit-1.6.1 → codeaudit-1.6.2}/pyproject.toml +4 -0
  12. codeaudit-1.6.2/src/codeaudit/__about__.py +4 -0
  13. codeaudit-1.6.2/src/codeaudit/__init__.py +4 -0
  14. codeaudit-1.6.2/src/codeaudit/altairplots.py +1001 -0
  15. codeaudit-1.6.2/src/codeaudit/api_helpers.py +285 -0
  16. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/api_interfaces.py +150 -90
  17. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/api_reporting.py +15 -8
  18. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/checkmodules.py +14 -10
  19. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/codeaudit.py +45 -23
  20. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/complexitycheck.py +0 -28
  21. codeaudit-1.6.2/src/codeaudit/dashboard_reports.py +417 -0
  22. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/filehelpfunctions.py +13 -13
  23. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/htmlhelpfunctions.py +1 -0
  24. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/issuevalidations.py +33 -21
  25. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/privacy_lint.py +73 -40
  26. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/pypi_package_scan.py +26 -25
  27. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/reporting.py +402 -299
  28. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/security_checks.py +20 -18
  29. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/suppression.py +30 -25
  30. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/totals.py +18 -19
  31. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/suppression/sastsuppression_1.py +0 -1
  32. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_apicalls.py +4 -0
  33. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_constructspart2.py +2 -3
  34. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_edgecases.py +13 -0
  35. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_obfuscatingbuiltins.py +2 -1
  36. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_oschecks.py +3 -0
  37. codeaudit-1.6.2/tests/test_pylintreport.py +136 -0
  38. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_subprocess.py +1 -1
  39. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_suppression.py +10 -5
  40. codeaudit-1.6.1/src/codeaudit/__about__.py +0 -4
  41. codeaudit-1.6.1/src/codeaudit/__init__.py +0 -4
  42. codeaudit-1.6.1/src/codeaudit/altairplots.py +0 -145
  43. {codeaudit-1.6.1 → codeaudit-1.6.2}/.gitignore +0 -0
  44. {codeaudit-1.6.1 → codeaudit-1.6.2}/CONTRIBUTE.md +0 -0
  45. {codeaudit-1.6.1 → codeaudit-1.6.2}/LICENSE.txt +0 -0
  46. {codeaudit-1.6.1 → codeaudit-1.6.2}/README.md +0 -0
  47. {codeaudit-1.6.1 → codeaudit-1.6.2}/SECURITY.md +0 -0
  48. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/CLIcommands.ipynb +0 -0
  49. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/CONTRIBUTE.md +0 -0
  50. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/_config.yml +0 -0
  51. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/_static/nocxstyle.css +0 -0
  52. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/_toc.yml +0 -0
  53. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/about.md +0 -0
  54. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/apidocs/api_intro.md +0 -0
  55. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/apidocs/codeaudit.rst +0 -0
  56. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/apidocs/modules.rst +0 -0
  57. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/architecture.md +0 -0
  58. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/astlines.md +0 -0
  59. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/astlines2.md +0 -0
  60. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/changelog.md +0 -0
  61. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/assert_check.md +0 -0
  62. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/base64_check.md +0 -0
  63. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/binding_check.md +0 -0
  64. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/builtinfunctions_check.md +0 -0
  65. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/chmod_check.md +0 -0
  66. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/directorycreation_check.md +0 -0
  67. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/dynamicimport_check.md +0 -0
  68. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/exception_check.md +0 -0
  69. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/hash_check.md +0 -0
  70. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/httpserver_check.md +0 -0
  71. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/input_check.md +0 -0
  72. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/loggingconf_check.md +0 -0
  73. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/marshal_check.md +0 -0
  74. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/mktemp_check.md +0 -0
  75. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/multiprocessing_check.md +0 -0
  76. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/pickle_check.md +0 -0
  77. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/random_check.md +0 -0
  78. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/shelve_check.md +0 -0
  79. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/shutil_check.md +0 -0
  80. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/subprocess_check.md +0 -0
  81. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/syscalls_check.md +0 -0
  82. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/systemcalls_check.md +0 -0
  83. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/tarfile_extract_check.md +0 -0
  84. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/xml_check.md +0 -0
  85. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checks/zipfile_check.md +0 -0
  86. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/checksinformation.md +0 -0
  87. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/codeauditchecks.md +0 -0
  88. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/codeauditoverview.md +0 -0
  89. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/complexitycheck.md +0 -0
  90. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/data_exfiltration_detection.md +0 -0
  91. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/ca_api_example_basic.ipynb +0 -0
  92. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/ca_api_example_checks.ipynb +0 -0
  93. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/ca_api_example_json.ipynb +0 -0
  94. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/ca_api_example_overview.ipynb +0 -0
  95. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/ca_api_example_scanning.ipynb +0 -0
  96. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/ca_checks.ipynb +0 -0
  97. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/demofile.py +0 -0
  98. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/directoryscan.html +0 -0
  99. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/filescan.html +0 -0
  100. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/modulescan.html +0 -0
  101. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/examples/overview.html +0 -0
  102. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/features.md +0 -0
  103. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/filescan.md +0 -0
  104. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/filescan.png +0 -0
  105. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/handling_errors.md +0 -0
  106. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/howtoscan.md +0 -0
  107. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/OO.png +0 -0
  108. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/ROI_logo.png +0 -0
  109. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/YourLogoHere.png +0 -0
  110. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/ai_use.png +0 -0
  111. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/architecture_overview.png +0 -0
  112. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/codeauditlogo.png +0 -0
  113. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/filescan_screenshot_16012026.png +0 -0
  114. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/modulescan_screenshot_16012026.png +0 -0
  115. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/nocxbanner.png +0 -0
  116. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/overview_linkaudit.png +0 -0
  117. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/images/overview_screenshot_16012026.png +0 -0
  118. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/implementedvalidations.md +0 -0
  119. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/installation.md +0 -0
  120. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/issues.md +0 -0
  121. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/license.md +0 -0
  122. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/makeitbetter.md +0 -0
  123. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/modulescan.md +0 -0
  124. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/overviewplot.png +0 -0
  125. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/pca_overview.png +0 -0
  126. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/project_philosophy.md +0 -0
  127. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/securecoding.md +0 -0
  128. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/userguide.md +0 -0
  129. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/warnings.md +0 -0
  130. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/whatissast.md +0 -0
  131. {codeaudit-1.6.1 → codeaudit-1.6.2}/docs/whysast.md +0 -0
  132. {codeaudit-1.6.1 → codeaudit-1.6.2}/filescan.png +0 -0
  133. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/data/sastchecks.csv +0 -0
  134. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/data/secretslist.txt +0 -0
  135. {codeaudit-1.6.1 → codeaudit-1.6.2}/src/codeaudit/simple.css +0 -0
  136. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/__init__.py +0 -0
  137. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/count_lines_file1.py +0 -0
  138. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/spytestdir/clean.py +0 -0
  139. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/spytestdir/elastic.py +0 -0
  140. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/spytestdir/example1.py +0 -0
  141. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/spytestdir/klyne.py +0 -0
  142. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/spytestdir/mixed.py +0 -0
  143. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/spytestdir/telemetry.py +0 -0
  144. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/spytestdir/telemetryfile2.py +0 -0
  145. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/suppression/sastsuppression_0.py +0 -0
  146. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/suppression/sastsuppression_2.py +0 -0
  147. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_basicpatterns.py +0 -0
  148. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_chmod.py +0 -0
  149. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_correctexceptionuse.py +0 -0
  150. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_count_commentlines.py +0 -0
  151. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_directorycreation.py +0 -0
  152. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_directorycreation2.py +0 -0
  153. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_hashstrenght.py +0 -0
  154. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_modulecheck.py +0 -0
  155. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_pypiscan.py +0 -0
  156. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_random.py +0 -0
  157. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_secretfinding.py +0 -0
  158. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_standardlibconstructs.py +0 -0
  159. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_suppressionlogic.py +0 -0
  160. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_totalscheck.py +0 -0
  161. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/test_zstd.py +0 -0
  162. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/allshit.py +0 -0
  163. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/apivalidations.py +0 -0
  164. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/assert.py +0 -0
  165. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/base64.py +0 -0
  166. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/chmod_things.py +0 -0
  167. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/complexitycheck.py +0 -0
  168. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/correctcounts.py +0 -0
  169. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/directorycreation.py +0 -0
  170. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/directorycreation2.py +0 -0
  171. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/dunderexec_with_parsing_error.py +0 -0
  172. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/eval.py +0 -0
  173. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/eval2.py +0 -0
  174. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/exception.py +0 -0
  175. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/file3.py +0 -0
  176. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/file_with_warnings.py +0 -0
  177. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/gzip.py +0 -0
  178. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/hashcheck.py +0 -0
  179. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/httpserver.py +0 -0
  180. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/inputstatement.py +0 -0
  181. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/marshal.py +0 -0
  182. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/modulecheck.py +0 -0
  183. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/multiprocessing.py +0 -0
  184. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/obfuscating.py +0 -0
  185. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/oschecks.py +0 -0
  186. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/pickle.py +0 -0
  187. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/python2_file_willnotwork.py +0 -0
  188. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/random.py +0 -0
  189. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/shelve.py +0 -0
  190. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/shutil.py +0 -0
  191. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/subprocess.py +0 -0
  192. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/syslibrary.py +0 -0
  193. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/tarfilevalidation.py +0 -0
  194. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/tempcheck.py +0 -0
  195. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/validation1.py +0 -0
  196. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/validation2.py +0 -0
  197. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/xml.py +0 -0
  198. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/zipfile.py +0 -0
  199. {codeaudit-1.6.1 → codeaudit-1.6.2}/tests/validationfiles/zstd.py +0 -0
@@ -1,5 +1,26 @@
1
1
  # Change Log
2
2
 
3
+ ## Version 1.6.2:
4
+
5
+ ## Changelog
6
+
7
+ **Added**
8
+ * **Automated Python Testing:** Implemented automation for testing across various Python versions to ensure cross-version compatibility.
9
+
10
+ **Changed**
11
+
12
+ * **Internal Logic Improvements:** Enhanced the `count_privacy_check_results` function to provide more robust egress count testing.
13
+ * **CLI Reporting:** Updated the command-line interface to dynamically toggle between "issue" (singular) and "issues" (plural) based on the findings.
14
+ * **Architecture Refactoring:** Refined internal logic for increased stability and to ensure the codebase is **WASM ready**.
15
+ * **License Standardization:** Updated the **GPLv3** license banner across key Python files for stylistic consistency. (see also issue #4)
16
+
17
+ **Fixed**
18
+ * **Issue #6 (Defensive Coding):** Resolved `KeyError` and syntax error during code snippet creation through more defensive programming practices.
19
+
20
+ **Documentation**
21
+ * Typos fixed and various improvements.
22
+
23
+
3
24
  ## Version 1.6.1:
4
25
 
5
26
  **Added**
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codeaudit
3
- Version: 1.6.1
3
+ Version: 1.6.2
4
4
  Summary: A modern Python security source code analyzer (SAST) based on distrust.
5
5
  Project-URL: Documentation, https://github.com/nocomplexity/codeaudit#readme
6
6
  Project-URL: Issues, https://github.com/nocomplexity/codeaudit/issues
@@ -1,6 +1,6 @@
1
1
  % THIS FILE IS GENERATED! - Use CLIcommands.ipynb to make it better!
2
2
  # Commands Overview
3
- Python Code Audit commands for: version: 1.6.0
3
+ Python Code Audit commands for: version: 1.6.2
4
4
  ```
5
5
  ----------------------------------------------------
6
6
  _ __ _
@@ -70,7 +70,7 @@ Returns:
70
70
  Raises:
71
71
  SystemExit: If the provided path is not a directory, contains no Python
72
72
  files, or is neither a valid local directory nor a valid PyPI
73
- package name.
73
+ package name.
74
74
  str(object='') -> str
75
75
  str(bytes_or_buffer[, encoding[, errors]]) -> str
76
76
 
@@ -191,7 +191,7 @@ FLAGS
191
191
  -n, --nosec=NOSEC
192
192
  Default: False
193
193
 
194
-
194
+
195
195
  Args:
196
196
 
197
197
  -f, --filename=FILENAME
@@ -213,7 +213,7 @@ Returns:
213
213
  None: The function writes a static HTML security report to disk.
214
214
 
215
215
  Raises:
216
- None: Errors and invalid inputs are reported to stdout.
216
+ None: Errors and invalid inputs are reported to stdout.
217
217
  str(object='') -> str
218
218
  str(bytes_or_buffer[, encoding[, errors]]) -> str
219
219
 
@@ -230,8 +230,8 @@ errors defaults to 'strict'.
230
230
 
231
231
  Creates an HTML report of all implemented security checks.
232
232
 
233
- This report provides a user-friendly overview of the static security checks
234
- currently supported by Python Code Audit. It is intended to make it easier to review
233
+ This report provides a user-friendly overview of the static security checks
234
+ currently supported by Python Code Audit. It is intended to make it easier to review
235
235
  the available validations without digging through the codebase.
236
236
 
237
237
  The generated HTML includes:
@@ -240,12 +240,12 @@ The generated HTML includes:
240
240
  - The version of Python Code Audit (codeaudit) used
241
241
  - A disclaimer about version-specific reporting
242
242
 
243
- The report is saved to the specified filename and is formatted to be
243
+ The report is saved to the specified filename and is formatted to be
244
244
  embeddable in larger multi-report documents.
245
245
 
246
246
  Help me continue developing Python Code Audit as free and open-source software.
247
247
  Join the community to contribute to the most complete, local first , Python Security Static scanner.
248
- Help!! Join the journey, check: https://github.com/nocomplexity/codeaudit#contributing
248
+ Help!! Join the journey, check: https://github.com/nocomplexity/codeaudit#contributing
249
249
 
250
250
 
251
251
  Parameters:
@@ -11,7 +11,7 @@ No single technique can detect telemetry or data exfiltration with 100% accuracy
11
11
 
12
12
  ## Detection Approaches
13
13
 
14
- Common techniques for detecting potential data exfiltration include in Python code are:
14
+ Common techniques for detecting potential data exfiltration in Python code are:
15
15
 
16
16
  * Entropy analysis – Detects high-entropy strings that may represent API keys or tokens.
17
17
 
@@ -738,4 +738,4 @@ footer {
738
738
  <td>Vulnerable to path traversal attacks if used with untrusted archives.</td>
739
739
  </tr>
740
740
  </tbody>
741
- </table><br><p>Number of implemented security validations:<b>83</b></p><p>Version of codeaudit: <b>1.6.0</b><p>Because Python and cybersecurity are constantly changing, issue reports <b>SHOULD</b> specify the codeaudit version used.</p><p><b>Disclaimer:</b> <i>This SAST tool <a href="https://github.com/nocomplexity/codeaudit" target="_blank"><b>Python Code Audit</b></a> provides a powerful, automatic security analysis for Python source code. However, it's not a substitute for human review in combination with business knowledge. Undetected vulnerabilities may still exist.</i></p><p>This Python security report was created on: <b>2026-03-12 11:12</b> with <a href="https://github.com/nocomplexity/codeaudit" target="_blank"><b>Python Code Audit</b></a> version <b>1.6.0</b></p><hr><footer><div class="footer-links">Check the <a href="https://nocomplexity.com/documents/codeaudit/intro.html" target="_blank">documentation</a> for help on found issues.<br>Codeaudit is made with <span class="heart">&#10084;</span> by cyber security professionals who advocate for <a href="https://nocomplexity.com/simplify-security/" target="_blank">open simple security solutions</a>.<br><a href="https://nocomplexity.com/documents/codeaudit/CONTRIBUTE.html" target="_blank">Join the community</a> and contribute to make this tool better!</div></footer></div></body></html>
741
+ </table><br><p>Number of implemented security validations:<b>83</b></p><p>Version of codeaudit: <b>1.6.2</b><p>Because Python and cybersecurity are constantly changing, issue reports <b>SHOULD</b> specify the codeaudit version used.</p><p><b>Disclaimer:</b> <i>This SAST tool <a href="https://github.com/nocomplexity/codeaudit" target="_blank"><b>Python Code Audit</b></a> provides a powerful, automatic security analysis for Python source code. However, it's not a substitute for human review in combination with business knowledge. Undetected vulnerabilities may still exist.</i></p><p>This Python security report was created on: <b>2026-04-08 10:10</b> with <a href="https://github.com/nocomplexity/codeaudit" target="_blank"><b>Python Code Audit</b></a> version <b>1.6.2</b></p><hr><footer><div class="footer-links">Check the <a href="https://nocomplexity.com/documents/codeaudit/intro.html" target="_blank">documentation</a> for help on found issues.<br>Codeaudit is made with <span class="heart">&#10084;</span> by cyber security professionals who advocate for <a href="https://nocomplexity.com/simplify-security/" target="_blank">open simple security solutions</a>.<br><a href="https://nocomplexity.com/documents/codeaudit/CONTRIBUTE.html" target="_blank">Join the community</a> and contribute to make this tool better!</div></footer></div></body></html>
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "Python_Code_Audit",
3
- "version": "1.6.0",
4
- "generated_on": "2026-03-12 11:12",
3
+ "version": "1.6.2",
4
+ "generated_on": "2026-04-08 10:09",
5
5
  "file_security_info": {
6
6
  "0": {
7
7
  "FileName": "demofile.py",
@@ -42,7 +42,7 @@ You should carefully evaluate all reported weaknesses.
42
42
 
43
43
  Not every issue requires fixing; depending on your program and the environment in which it operates, **some detected weaknesses may not be relevant**.
44
44
 
45
- However, it is important to document your decisions and inform your users about the design choices you have made and the rationale behind them.
45
+ However, it is important to document your decisions and inform your users about the design choices you have made and the rationale behind them. Minimal [place markers in your code](markingissues). But also document your architecture and design decisions regarding security.
46
46
  :::
47
47
 
48
48
  * Send me a line that you use this tool within your company.
@@ -77,11 +77,13 @@ Contribute and Join the team!
77
77
  %end grid
78
78
 
79
79
 
80
- :::{danger}
81
- A **security weakness** in Python code is an implementation flaw that could potentially become a **security vulnerability**. [Validating](https://nocomplexity.com/scan-before-installing/) Python files or packages on security weaknesses is vital to minimize security risks.
80
+ :::{admonition} Python programs are not immune to cybersecurity threats.
81
+ :class: danger
82
+ Validating Python code for **security weaknesses** is essential, whether you are writing your own programs or relying on third-party applications.
82
83
  :::
83
84
 
84
85
 
86
+
85
87
  **Python Code Audit** offers a powerful yet straightforward security solution:
86
88
 
87
89
  * **Ease of Use**: Simple to operate for quick audits.
@@ -90,14 +92,9 @@ A **security weakness** in Python code is an implementation flaw that could pote
90
92
 
91
93
  * **Impactful Analysis**: Powerful detection of security weaknesses that have the potential to become critical vulnerabilities.
92
94
 
95
+ Enjoying **Python Code Audit**? Support us with a [GitHub star](https://github.com/nocomplexity/codeaudit)! It’s a simple way to help others find us and contributes to a more secure Python ecosystem. ⭐️
93
96
 
94
97
 
95
- :::{warning}
96
- **Python Code Audit** gives you insight into potential security issues in your Python programs.
97
-
98
- *Are you ready to discover what's lurking in your Python code?*
99
-
100
- :::
101
98
 
102
99
  ## Features
103
100
 
@@ -135,10 +132,8 @@ A **security weakness** in Python code is an implementation flaw that could pote
135
132
  ## Background
136
133
 
137
134
  The availability of good, maintained FOSS SAST tools for Python is limited. While Bandit is a known tool, its usefulness is significantly limited: it struggles to identify a broad range of security weaknesses and fails to perform many crucial Python security validations. Additionally, its Command Line Interface (CLI) can present a steep learning curve for non-technical users.
135
+ To keep up with current threats, you need a Python Application Security Testing tool that evolves to deliver deeper insights and [high accuracy](https://nocomplexity.com/stop-using-bandit/).
138
136
 
139
- :::{hint}
140
- [To keep up with current threats, you need a Python Application Security Testing tool that evolves to deliver deeper insights and higher accuracy.](https://nocomplexity.com/stop-using-bandit/)
141
- :::
142
137
 
143
138
 
144
139
 
@@ -1,7 +1,9 @@
1
1
  # Marking False Positives
2
2
 
3
3
 
4
- **Python Code Audit** allows you to mark identified security weaknesses so they are excluded from future SAST (Static Application Security Testing) scans.
4
+ :::{hint}
5
+ **Python Code Audit** enables you to flag identified security weaknesses for exclusion from future Static Application Security Testing (SAST) scans.
6
+ :::
5
7
 
6
8
  ## When to Use This Feature
7
9
  Only suppress a finding if one of the following conditions is met:
@@ -1,8 +1,19 @@
1
1
  # Sponsors
2
2
 
3
- We offer sponsor options for:
3
+
4
+ :::{admonition} Sponsor this project with a donation
5
+ :class: tip
6
+ Python Code Audit – Modern Python security analysis rooted in distrust.
7
+
8
+ ```{button-link} https://buy.stripe.com/5kQ6oH3dm4RO1ujaOUgbm02
9
+ :color: danger
10
+ Make A Donation
11
+ ```
12
+ :::
13
+
14
+ Beyond making a one-off donation, there are opportunities to become a sponsor for this project. Our sponsorship options include:
4
15
  * Your logo and some text about your company in this manual.
5
- * Your advertisement for a cyber security vacancy in our frequently published [Open Security News Overview](https://nocomplexity.com/open-security-news/).
16
+ * Your advertisement for a cybersecurity vacancy in our frequently published [Open Security News Overview](https://nocomplexity.com/open-security-news/).
6
17
  * Your logo in one or more [NO|Complexity Playbooks](about).
7
18
 
8
19
 
@@ -52,6 +52,10 @@ extra-dependencies = [
52
52
  [tool.hatch.envs.types.scripts]
53
53
  check = "mypy --install-types --non-interactive {args:src/codeaudit tests}"
54
54
 
55
+ [[tool.hatch.envs.hatch-test.matrix]]
56
+ python = ["3.14","3.13","3.12", "3.11"]
57
+
58
+
55
59
  [tool.coverage.run]
56
60
  source_pkgs = ["codeaudit", "tests"]
57
61
  branch = true
@@ -0,0 +1,4 @@
1
+ # SPDX-FileCopyrightText: 2025-present Maikel Mardjan
2
+ #
3
+ # SPDX-License-Identifier: GPL-3.0-or-later
4
+ __version__ = "1.6.2"
@@ -0,0 +1,4 @@
1
+ # SPDX-FileCopyrightText: 2025-present Maikel Mardjan - https://nocomplexity.com/
2
+ #
3
+ # SPDX-License-Identifier: GPL-3.0-or-later
4
+ from . __about__ import __version__