Safety 3.0.0 is a significant update to Safety CLI from 2.x versions, including enhancements to core features, new capabilities, and breaking changes from 2.x.
Safety 3.0.0 is a significant update to Safety CLI from 2.x versions, including enhancements to core features, new capabilities, and breaking changes from 2.x.
Added scan command, which scans a project’s directory for all Python dependencies and includes many improvements over the check command, including automatic Python project scanning, native support for Poetry and Pipenv files, Python virtual environment folders, and more granular configuration options.
Added auth commands, enabling new browser-based authentication of Safety CLI.
An updated safety policy file schema to support new scan and system-scan commands. This policy file schema is a breaking change from the policy schema used for safety check. To migrate a Safety 2.x policy, see Migrating from Safety 2.x to Safety CLI 3.
Updated screen output to modern interactive interface, with new help interfaces.
Updated to new JSON output structure to support new scan command, other ecosystems, and other security findings.
Added a supporting safety-schemas project dependency, also published and maintained by Safety, which defines Safety vulnerability database file, Safety CLI policy file, and Safety CLI JSON output schemas as pydantic models, formalizing these into testable and versioned schemas.
New scan command:
New scan command: scans a Python project directory for Python dependencies and security vulnerabilities. Safety scan replaces safety check with a more powerful and easier to use command. The scan command:
Finds and scans Python dependency files and virtual environments inside the target directory without needing to specify file or environment locations.
Adds native scanning and reporting for Poetry and Pipenv manifest files, and Python virtual environment folders.
Adds configuration of scanning rules to;
exclude files and folders from the scan using Unix shell-style wildcards only
Include files to be scanned
Max folder depth setting
Reporting configuration rules
Reporting rules defining which types and specific vulnerabilities to include or ignore stay the same as safety 2.x, although now in a slightly different structure.
Failing rules
Adds ability to configure rules for when safety should return a non-zero (failing) exit code, which can be different from reporting rules under the report field.
Auto-updating rules
Adds ability to easily update insecure package versions in pip requirements files.
Other new commands:
Added auth command: manages Safety CLI’s authentication in development environments, allowing easy authentication via the browser.
auth login - adds ability to authenticate safety cli via the browser
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps safety from 2.3.4 to 3.2.1.
Release notes
Sourced from safety's releases.
Changelog
Sourced from safety's changelog.
... (truncated)
Commits
ef2cb76
chore: release 3.2.1 (#530)baf68c7
fix: include all templates in the manifest (#529)11b1638
fix: use available email verification claims (#528)06ffb56
chore: release 3.2.0 (#524)a1692d5
feat: add SAFETY_DB_DIR env var to the scan command (#523)4ef66e0
fix: update pyinstaller target (#522)b56a4dc
Added note on hiring and added careers page link (#510)eb7a23e
Safety 3.1.09cb3d3f
fix: support pydantic2 by using safety_schemas 0.0.2 (#509)4fbb211
feat: add headless auth (#508)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show