Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump safety from 2.3.4 to 3.0.0 #122

Merged
merged 1 commit into from Jan 18, 2024
Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 18, 2024

Bumps safety from 2.3.4 to 3.0.0.

Release notes

Sourced from safety's releases.

3.0.0

Safety 3.0.0 major version release!

2.3.5

No release notes provided.

Changelog

Sourced from safety's changelog.

[3.0.0] - 2024-01-17

Safety 3.0.0 major version release!

Main updates

  • 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
    • auth register - adds ability to register for a Safety account via the CLI, and get scanning within minutes
    • auth status -
    • auth logout -
    • safety check command can still be used with the API key --key argument, and scan and system-scan commands should also be
  • Added configure command: configures safety cli using a config.ini file, either saved to the user settings or system settings. This can be used to configure safety’s authentication methods and global proxy details.
  • Added system-scan command (beta): Adds the system-scan command, which scans a machine for Python files and environments, reporting these to screen output. system-scan is an experimental beta feature that can scan an entire drive or machine for Python dependency files and Python virtual environments, reporting on packages found and their associated security vulnerabilities.
  • Added check-updates command: Check for version updates to Safety CLI, and supports screen and JSON format outputs. Can be used in organizations to test and rollout new version updates as recommended by Safety Cybersecurity.

New policy file schema for scan and system-scan commands

  • New policy file schema to support safety scan and safety system-scan. Adds scanning-settings root property, which contains settings to configure rules and settings for how safety traverses the directory and subdirectories being scanned, including “exclude” rules, “include” rules, the max directory depth to scan and which root directories safety system-scan should start from.
  • Adds report root property, which defines which vulnerability findings safety should auto-ignore (exclude) in its reporting. Supports excluding vulnerability IDs manually, as well as vulnerability groups to ignore based on CVSS severity score.
  • Adds new fail-scan-with-exit-code root property, which defines when safety should exit with a failing exit code. This separates safety’s reporting rules from its failing exit code rules, which is a departure from Safety 2.x which had combined rulesets for these. Failing exit codes can be configured based on CVSS severity score.
  • Note that the old safety check command still supports and relies on the policy schema from safety 2.3.5 and below, meaning no changes are required when migrating to safety 2.x to Safety 3.0.0 when only using the safety check command.

New global options and configurations

  • Added global --stage option, to set the development lifecycle stage for the scan and system-scan commands.

... (truncated)

Commits
  • 615ef36 Merge pull request #491 from pyupio/release/3.0.0
  • c549003 Safety 3.0.0 release
  • d156278 remove Linux i386, use i686 on Windows only
  • 1c8fd20 fix typo on binaries.py
  • 4134ca1 update i386 dockerfile and remove codecov
  • 551171b revamp workflows
  • 8b8a403 Version 2.4.0b2
  • 8afa6de Include current version for the action tests.
  • 09eec3a Remove deprecated ::set-output from workflows
  • 21a04e8 Run action tests on image-ci pushes
  • Additional commits viewable in compare view

Dependabot compatibility score

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 <dependency name> 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](https://github.com/pyupio/safety) from 2.3.4 to 3.0.0.
- [Release notes](https://github.com/pyupio/safety/releases)
- [Changelog](https://github.com/pyupio/safety/blob/main/CHANGELOG.md)
- [Commits](pyupio/safety@2.3.4...3.0.0)

---
updated-dependencies:
- dependency-name: safety
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Upgrade or downgrade of project dependencies. python Pull requests that update Python code labels Jan 18, 2024
@robbinjanssen robbinjanssen merged commit e8f274f into main Jan 18, 2024
9 checks passed
@robbinjanssen robbinjanssen deleted the dependabot/pip/safety-3.0.0 branch January 18, 2024 08:46
@github-actions github-actions bot locked and limited conversation to collaborators Jan 20, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dependencies Upgrade or downgrade of project dependencies. python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant