Skip to content

v1.6.0

Choose a tag to compare

@StevenMcGann StevenMcGann released this 13 May 10:13
· 1 commit to main since this release

Feature release adding first-class Jupyter notebook (.ipynb) support to Scan-PythonPackages.ps1.

Closes #1.

Important packaging note:

  • Operators should download Scan-PythonPackages_v1.6.0.zip, not a standalone .ps1 file.
  • The release zip contains both required runtime files: Scan-PythonPackages.ps1 and inspect_binary.py.
  • inspect_binary.py must remain beside Scan-PythonPackages.ps1; otherwise native PE/ELF binary inspection is skipped.

Added:

  • Loose and embedded .ipynb notebook discovery.
  • Static notebook code-cell projection into temporary .py files for Bandit and detect-secrets.
  • NotebookParser findings for malformed notebooks, saved outputs, and attachments.
  • Deterministic notebook fixtures, Pester coverage, and smoke coverage for notebook scanning.

Changed:

  • Scanner version metadata updated to 1.6.0.
  • README, changelog, fixture documentation, release notes .md, and release notes .docx updated for v1.6.0.
  • Current release docs now describe inspect_binary.py as a required v1.6.0 release-package file, not a dependency on an older version.

Verification:

  • Local Pester: 50 passed, 0 failed.
  • Local full smoke: passed; fixtures 36, determinism identical, archive scan OK, loose source/notebook scan OK, non-Python/mixed/re-scan stages OK.
  • Local PSScriptAnalyzer: no errors; the $args shadowing issue is gone.
  • GitHub Test on main: passed.
  • GitHub Test on v1.6.0: passed.
  • GitHub Smoke workflow dispatch: passed.
  • GitHub Security workflow dispatch: passed.
  • GitHub push checks: passed.

Zip SHA256:
61A6C4C271818AD0AFD14C73986ED2777DB59077E8BFCA33916B54CCBC06F08C