Repository navigation
Releases: StevenMcGann/scan-python-packages
Release list
v1.6.1
Patch release fixing scanner dependency version detection on Windows.
Closes #2.
Important packaging note:
- Operators should download
Scan-PythonPackages_v1.6.1.zip, not a standalone.ps1file. - The release zip contains both required runtime files:
Scan-PythonPackages.ps1andinspect_binary.py. inspect_binary.pymust remain besideScan-PythonPackages.ps1; otherwise native PE/ELF binary inspection is skipped.
Fixed:
Get-InstalledPackageVersionnow uses the scanner venv Python executable withpython -m pip showwhen checking installed scanner dependency versions.- This avoids a Windows
pip.exewrapper failure mode after pip upgrades itself inside an existing.scan-venv. - Existing scanner venvs no longer need to be deleted just to recover from the false
bandit is not installed/version check failedpath.
Changed:
- Scanner version metadata updated to
1.6.1. - JSON report
scannerVersionupdated to1.6.1. - Changelog, README release-note pointer, fixture metadata, and v1.6.1 release notes updated.
Verification:
- Local fixture generation: passed.
- Local Pester: 51 passed, 0 failed.
- Added regression coverage for a broken
pip.exewrapper with successfulpython -m pip show banditoutput.
Zip SHA256:
A02DE18DB306095DF28DB7E1803CDD6916597C0023D90D7CF5F042BBDE937D51
v1.6.0
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.ps1file. - The release zip contains both required runtime files:
Scan-PythonPackages.ps1andinspect_binary.py. inspect_binary.pymust remain besideScan-PythonPackages.ps1; otherwise native PE/ELF binary inspection is skipped.
Added:
- Loose and embedded
.ipynbnotebook discovery. - Static notebook code-cell projection into temporary
.pyfiles for Bandit and detect-secrets. NotebookParserfindings 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.docxupdated for v1.6.0. - Current release docs now describe
inspect_binary.pyas 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
$argsshadowing 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
v1.5.2
Patch release correcting v1.5+ release packaging and operator documentation.\n\nImportant packaging correction:\n- Operators should download Scan-PythonPackages_v1.5.2.zip, not a standalone .ps1 file.\n- The release zip contains both required runtime files: Scan-PythonPackages.ps1 and inspect_binary.py.\n- inspect_binary.py must remain beside Scan-PythonPackages.ps1; otherwise native PE/ELF binary inspection is skipped.\n\nChanged:\n- README now documents release-package usage and the required helper file.\n- Release notes now serve as operator documentation again and document package contents, install layout, runtime prerequisites, troubleshooting, and release zip usage.\n- Scanner version bumped to 1.5.2.\n\nVerification:\n- Local fixture generation: passed, 31 fixtures.\n- Local Pester: 47 passed, 0 failed.\n- Package-layout smoke: release-folder scan found BinaryInspection result with scannerVersion 1.5.2.\n- GitHub Test, Smoke, Security, and CodeQL: passed.\n\nZip SHA256:\n1D93DDA36B103C41A43C9E933F9D6E6D9F3EE8F98F2789EA138CD24E87E6BAD1
v1.5.1
Patch release for repository and CI cleanup.\n\nChanged:\n- Added explicit read-only GitHub Actions token permissions to Test, Smoke, and Security workflows.\n- Published nightly smoke INDEX.md content into the GitHub Actions job summary.\n- Bumped scanner patch version to 1.5.1.\n\nFixed:\n- Removed generated Python bytecode from source control and ignored future pycache / .pyc artifacts.\n- Corrected the canonical scanner synopsis to use Scan-PythonPackages.ps1.\n- Made scanner venv bootstrap upgrades use python -m pip so pip/setuptools/wheel updates are not rejected by the pip.exe wrapper.\n\nVerification:\n- Local fixture generation: passed, 31 fixtures.\n- Local Pester: 47 passed, 0 failed.\n- Local smoke harness: passed.\n- GitHub Test, Smoke, Security, and CodeQL: passed.
v1.5
Added
- Triage-level binary inspection for
.pyd,.so, and.dllartifacts usingpefileandpyelftools. - Binary inspection analyzes format validity, PE digital signature presence, import tables, section entropy, unusual section names, and stripped ELF symbols.
Changed
- Replaced
Find-NativeBinarieswithInvoke-BinaryInspection. - Native binaries now produce specific findings through the
BinaryInspectiontool instead of genericNativeBinaryCheckpresence warnings. - Scanner dependencies now include
pefileandpyelftools.
Fixed
- Binary inspection writes JSON to a temp file instead of stdout, preventing stderr warnings from corrupting result parsing.
- Section entropy no longer reports
-0.0for single-byte sections.
See docs/release-notes/v1.5.md for the full release notes.