%global pypi_name safety
Name: python-%{pypi_name}
Version: 3.6.1
Release: 1
Summary: Safety checks Python dependencies for known security vulnerabilities and suggests the proper remediations for vulnerabilities detected.
License: MIT
URL: https://github.com/pyupio/safety
Source0: %{url}/archive/%{version}/%{pypi_name}-%{version}.tar.gz
BuildArch: noarch
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
BuildRequires: python3-wheel
BuildRequires: python3-editables
BuildRequires: python3-hatch-vcs
BuildRequires: python3-hatchling
# for test
BuildRequires: python3-coverage
BuildRequires: python3-pytest
BuildRequires: python3-pyinstaller
BuildRequires: python3-tomli
BuildRequires: python3-click
BuildRequires: python3-dparse
BuildRequires: python3-rich
BuildRequires: python3-typer
BuildRequires: python3-tomlkit
BuildRequires: python3-safety-schemas
BuildRequires: python3-Authlib
BuildRequires: python3-jinja2
BuildRequires: python3-httpx
BuildRequires: python3-filelock
BuildRequires: python3-psutil
BuildRequires: python3-tenacity
BuildRequires: python3-nltk
%description
Safety checks Python dependencies for known security vulnerabilities and suggests the proper remediations for vulnerabilities detected. Safety can be run on developer machines, in CI/CD pipelines and on production systems.
%package -n python3-%{pypi_name}
Summary: %{summary}
%{?python_provide:%python_provide python3-%{pypi_name}}
%description -n python3-%{pypi_name}
Safety checks Python dependencies for known security vulnerabilities and suggests the proper remediations for vulnerabilities detected. Safety can be run on developer machines, in CI/CD pipelines and on production systems.
%prep
%autosetup -n %{pypi_name}-%{version} -p1
sed -i 's/~=/>=/g' pyproject.toml
sed -i 's#<2.10.0#<2.12#g' pyproject.toml
%build
%pyproject_build
%install
%pyproject_install
%check
# skip test_announcements_if_is_not_tty for ci noweb
k="${k-}${k+ and }not test_announcements_if_is_not_tty"
# skip test_check_live_cached for ci noweb
k="${k-}${k+ and }not test_check_live_cached"
# skip test_check_live for ci noweb
k="${k-}${k+ and }not test_check_live"
# skip test_get_packages_licenses_without_api_key for ci noweb
k="${k-}${k+ and }not test_get_packages_licenses_without_api_key"
%pytest -- -k "${k-}" -vv
%files -n python3-%{pypi_name}
%doc README.md
%license LICENSES
%{python3_sitelib}/%{pypi_name}
%{python3_sitelib}/%{pypi_name}-*.dist-info
%{_bindir}/safety
%changelog
* Wed Sep 10 2025 liutao1 <liutao1@kylinos.cn>- 3.6.1-1
- Import rich_utils as a module and don't access as an attribute
* Thu Aug 14 2025 Dongxing Wang <dongxing.wang_a@thundersoft.com> - 3.6.0-2
- Add pytest -vv and check testcase duration
* Wed Jul 16 2025 Dongxing Wang <dxwangk@isoftstone.com> - 3.6.0-1
- Update package with version 3.6.0
fix: issues with encoding in all the outputs
fix: restore missing codebase name prompt in scan command
fix: codebase init --link-to help text
feat: add Windows venv wrappers support
feat: add codebase init command
test: use tomllib in tests if available
fix: test isolation for firewall tests on unix-like systems
* Mon May 19 2025 Dongxing Wang <dongxing.wang_a@thundersoft.com> - 3.5.1-1
- Update package with version 3.5.1
feat: add 'SAFETY_REQUEST_TIMEOUT_EVENTS' so users can use a custom timeout
feat: improved rendering of the warning messages
feat: added resolution of installed packages
feat: add meta client headers to all requests
feat: include other category in the init scan
feat: add new onboarding events
feat: displaying package installation warnings
feat: integrate full support for poetry
feat: configuring the repository URL using project id
feat: add security events for firewall users
* Wed Sep 20 2023 luluo12 <luluoc@isoftstone.com> - 2.3.5-2
- add self-check.
* Mon Jun 26 2023 luolu12 <luluoc@isoftstone.com> - 2.3.5-1
- Initial package.