14
0

- Update to 2.2.0:

* Added
    + New `default_domain` parameter to support absolute paths with domain
      names
    + New command-line interface (`url-normalize`)
    + Query parameter filtering functionality
    + Parameter allowlist feature for controlling accepted query parameters
    + IDNA 2008 support via `idna` package
  * Fixed
    + Handle URLs with missing slashes correctly
    + Fix decoding of reserved characters in URL paths
    + Fix Twitter hashtag encoding in query parameters
    + Do not encode equals sign in fragment
    + Reverted license format in pyproject.toml to maintain Python 3.8
      compatibility with older setuptools versions
  * Changed
    + **BREAKING:** Switch default scheme from 'http' to 'https'
    + **BREAKING:** Migrated IDNA handling to use IDNA 2008 with UTS46
      processing
    + **BREAKING:** Updated minimum Python version to 3.8
    + **BREAKING:** Removed sort_query_params option as it was incorrect
    + Enhanced query normalization with parameter filtering support
    + Updated URL cleanup to support new filtering features
    + Changed host normalization to handle each domain label separately
- Drop patch url-normalize-pr28-poetry-core.patch, now included.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-url-normalize?expand=0&rev=5
This commit is contained in:
2025-04-11 05:10:17 +00:00
committed by Git OBS Bridge
parent 96587def83
commit 8077fbc897
5 changed files with 55 additions and 34 deletions

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-url-normalize
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,23 +17,25 @@
Name: python-url-normalize
Version: 1.4.3
Version: 2.2.0
Release: 0
Summary: URL normalization for Python
License: MIT
Group: Development/Languages/Python
URL: https://github.com/niksite/url-normalize
Source: https://github.com/niksite/url-normalize/archive/refs/tags/%{version}.tar.gz#/url-normalize-%{version}.tar.gz
# PATCH-FIX-UPSTREAM url-normalize-pr28-poetry-core.patch gh#niksite/url-normalize#28
Patch0: https://github.com/niksite/url-normalize/pull/28.patch#/url-normalize-pr28-poetry-core.patch
Source: https://github.com/niksite/url-normalize/archive/refs/tags/v%{version}.tar.gz#/url-normalize-%{version}.tar.gz
BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module idna >= 3.3}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module poetry-core >= 1.0.0}
BuildRequires: %{python_module pytest-cov}
BuildRequires: %{python_module pytest-socket}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module six}
BuildRequires: %{python_module setuptools >= 42}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Provides: python-url_normalize = %{version}-%{release}
Requires: python-six
Requires: python-idna >= 3.3
Requires(post): update-alternatives
Requires(postun): update-alternatives
BuildArch: noarch
%python_subpackages
@@ -42,7 +44,10 @@ URL normalization for Python.
%prep
%autosetup -p1 -n url-normalize-%{version}
rm tox.ini
# Do not require pytest-ruff
sed -i '/^ "--ruff",$/d' pyproject.toml
# Do not fail over coverage issues
sed -i '/^ "--cov-fail-under=100",$/d' pyproject.toml
%build
%pyproject_wheel
@@ -50,13 +55,21 @@ rm tox.ini
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%python_clone -a %{buildroot}%{_bindir}/url-normalize
%check
%pytest
%post
%python_install_alternative url-normalize
%postun
%python_uninstall_alternative url-normalize
%files %{python_files}
%doc README.md
%license LICENSE
%python_alternative %{_bindir}/url-normalize
%{python_sitelib}/url_normalize
%{python_sitelib}/url_normalize-%{version}.dist-info