From 6e7d48dae286715cca105b4ad4afc8383c17d995 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Thu, 9 Jul 2020 10:31:42 +0200 Subject: [PATCH 01/60] run tests in %check (Fedora only) --- .gitignore | 20 ++------------------ python-dns-lexicon.spec | 35 +++++++++++++++++++++++++++++++---- sources | 2 +- 3 files changed, 34 insertions(+), 23 deletions(-) diff --git a/.gitignore b/.gitignore index 647f8d6..d5f96ca 100644 --- a/.gitignore +++ b/.gitignore @@ -1,18 +1,2 @@ -/dns-lexicon-2.1.19.tar.gz -/dns-lexicon-2.2.1.tar.gz -/dns-lexicon-2.2.2.tar.gz -/dns-lexicon-2.2.3.tar.gz -/dns-lexicon-2.3.0.tar.gz -/dns-lexicon-2.4.0.tar.gz -/dns-lexicon-2.4.3.tar.gz -/dns-lexicon-2.4.4.tar.gz -/dns-lexicon-2.4.5.tar.gz -/dns-lexicon-2.7.0.tar.gz -/dns-lexicon-2.7.9.tar.gz -/dns-lexicon-3.0.2.tar.gz -/dns-lexicon-3.0.6.tar.gz -/dns-lexicon-3.1.5.tar.gz -/dns-lexicon-3.2.6.tar.gz -/dns-lexicon-3.2.8.tar.gz -/dns-lexicon-3.3.4.tar.gz -/dns-lexicon-3.3.17.tar.gz +/dns-lexicon-*.tar.gz +/lexicon-*.tar.gz diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index c79ec58..160e2db 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,3 +1,8 @@ + +%global forgeurl https://github.com/AnalogJ/lexicon +Version: 3.3.17 +%forgemeta + %global pypi_name dns-lexicon %if 0%{?rhel} && 0%{?rhel} == 7 @@ -21,13 +26,13 @@ %endif Name: python-%{pypi_name} -Version: 3.3.17 Release: 5%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT -URL: https://github.com/AnalogJ/lexicon -Source0: %{pypi_source} +URL: %{forgeurl} +# pypi releases don't contain necessary data to run the tests +Source0: %{forgesource} BuildArch: noarch Patch0: 0000-remove-shebang.patch @@ -63,6 +68,10 @@ BuildRequires: python3-future BuildRequires: python3-pyOpenSSL BuildRequires: python3-tldextract BuildRequires: python3-pyyaml +# required to run the test suite +BuildRequires: python3-pytest +BuildRequires: python3-mock +BuildRequires: python3-pytest-vcr # Extras requirements # {{{ @@ -309,7 +318,7 @@ dependencies necessary to use the Hetzner provider. # }}} %prep -%setup -n %{pypi_name}-%{version} +%setup -n lexicon-%{version} %patch0 -p1 %if 0%{?rhel7} %patch1 -p1 @@ -326,6 +335,24 @@ rm -rf %{pypi_name}.egg-info %py3_build %endif +%check +# AutoProviderTests: unknown failure - exclude to get suite passing for now +# lexicon providers which do not work in Fedora due to missing dependencies: +# - TransipProviderTests +# - SoftLayerProviderTests +# - NamecheapProviderTests +# - NamecheapManagedProviderTests +# - GransyProviderTests +# - LocalzoneProviderTests +TEST_SELECTOR="not AutoProviderTests and not TransipProviderTests and not SoftLayerProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not GransyProviderTests and not LocalzoneProviderTests" +%if %{with python2} +# no tests with Python 2 as EPEL 7 does not provide the pytest-vcr package +%endif +%if 0%{?fedora} && %{with python3} +# EPEL 8 does not provide the python3-pytest-vcr package +py.test-3 -v -k "${TEST_SELECTOR}" lexicon +%endif + %install %if %{with python2} %py2_install diff --git a/sources b/sources index 000178d..8397c6e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (dns-lexicon-3.3.17.tar.gz) = cfaff78df6c98809fd9c6ac9941bb62c3b8f4849b66bf26fddfffb4802a4ef00a9261ae03685131e428450fea399d911ff80e2dbd7feb9256be3b2ff2e4189f4 +SHA512 (lexicon-3.3.17.tar.gz) = 170c9df5765c1471053b4ace1065f61265724149d6774033db898622b58f076e22dc9b84ed1809c7c0097c1351f3115c8c3821d0fa512e3772022f7af73af59e From 6bb36982c5a27bab569b0b394634ad90d01c56ce Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Wed, 19 Aug 2020 09:40:35 +0200 Subject: [PATCH 02/60] drop support for Python 2 subpackages: lexicon 3.4.0 will not support Python 2.7 anymore --- python-dns-lexicon.spec | 198 +--------------------------------------- 1 file changed, 1 insertion(+), 197 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 160e2db..71e9705 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -9,15 +9,6 @@ Version: 3.3.17 %global rhel7 1 %endif -%if 0%{?rhel7} -%bcond_with python3 -%bcond_without python2 -%else -# RHEL 8/Fedora: Python 3 only -%bcond_without python3 -%bcond_with python2 -%endif - %if 0%{?rhel} >= 8 # EPEL8 is currently missing dependencies used by the extras metapackages %bcond_with extras @@ -38,29 +29,6 @@ BuildArch: noarch Patch0: 0000-remove-shebang.patch Patch1: 0001-fix-requirements.patch -%if %{with python2} -BuildRequires: python2-devel -BuildRequires: python2-setuptools -BuildRequires: python2-cryptography -BuildRequires: python2-future -BuildRequires: python2-pyyaml -BuildRequires: python2-tldextract -# EL7 has an unversioned name for this package -BuildRequires: pyOpenSSL - -# Extras requirements -# {{{ -%if %{with extras} -# EL7 has unversioned names for these packages -BuildRequires: python-beautifulsoup4 -BuildRequires: python-boto3 -BuildRequires: python-xmltodict -# EL7 doesn't have a current enough version of python2-dns -%endif -# }}} -%endif - -%if %{with python3} BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-cryptography @@ -83,40 +51,11 @@ BuildRequires: python3-xmltodict %endif # }}} -%endif - %description Lexicon provides a way to manipulate DNS records on multiple DNS providers in a standardized way. Lexicon has a CLI but it can also be used as a python library. -%if %{with python2} -%package -n python2-%{pypi_name} -Summary: %{summary} -%{?python_provide:%python_provide python2-%{pypi_name}} - -Requires: python2-cryptography -Requires: python2-future -Requires: python2-requests -Requires: python2-setuptools -Requires: python2-pyyaml -Requires: python2-tldextract -# EL7 has an unversioned name for this package -Requires: pyOpenSSL - -# Both packages install a Python module named lexicon -# TODO: Remove this once resolved upstream (see upstream #222) -Conflicts: python-lexicon - -%description -n python2-%{pypi_name} -Lexicon provides a way to manipulate DNS records on multiple DNS providers in a -standardized way. Lexicon has a CLI but it can also be used as a python -library. - -This is the Python 2 version of the package. -%endif - -%if %{with python3} %package -n python3-%{pypi_name} Summary: %{summary} %{?python_provide:%python_provide python3-%{pypi_name}} @@ -139,27 +78,11 @@ standardized way. Lexicon has a CLI but it can also be used as a python library. This is the Python 3 version of the package. -%endif # Extras meta-packages # {{{ %if %{with extras} -%if %{with python2} -%package -n python2-%{pypi_name}+easyname -Summary: Meta-package for python2-%{pypi_name} and easyname provider -%{?python_provide:%python_provide python2-%{pypi_name}+easyname} - -Requires: python2-%{pypi_name} = %{version}-%{release} -# EL7 has an unversioned name for this package -Requires: python-beautifulsoup4 - -%description -n python2-%{pypi_name}+easyname -This package installs no files. It requires python2-%{pypi_name} and all -dependencies necessary to use the easyname provider. -%endif - -%if %{with python3} %package -n python3-%{pypi_name}+easyname Summary: Meta-package for python3-%{pypi_name} and easyname provider %{?python_provide:%python_provide python3-%{pypi_name}+easyname} @@ -170,23 +93,8 @@ Requires: python3-beautifulsoup4 %description -n python3-%{pypi_name}+easyname This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the easyname provider. -%endif -%if %{with python2} -%package -n python2-%{pypi_name}+gratisdns -Summary: Meta-package for python2-%{pypi_name} and gratisdns provider -%{?python_provide:%python_provide python2-%{pypi_name}+gratisdns} -Requires: python2-%{pypi_name} = %{version}-%{release} -# EL7 has an unversioned name for this package -Requires: python-beautifulsoup4 - -%description -n python2-%{pypi_name}+gratisdns -This package installs no files. It requires python2-%{pypi_name} and all -dependencies necessary to use the gratisdns provider. -%endif - -%if %{with python3} %package -n python3-%{pypi_name}+gratisdns Summary: Meta-package for python3-%{pypi_name} and gratisdns provider %{?python_provide:%python_provide python3-%{pypi_name}+gratisdns} @@ -197,23 +105,8 @@ Requires: python3-beautifulsoup4 %description -n python3-%{pypi_name}+gratisdns This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the gratisdns provider. -%endif -%if %{with python2} -%package -n python2-%{pypi_name}+henet -Summary: Meta-package for python2-%{pypi_name} and Hurricane Electric provider -%{?python_provide:%python_provide python2-%{pypi_name}+henet} -Requires: python2-%{pypi_name} = %{version}-%{release} -# EL7 has an unversioned name for this package -Requires: python-beautifulsoup4 - -%description -n python2-%{pypi_name}+henet -This package installs no files. It requires python2-%{pypi_name} and all -dependencies necessary to use the Hurricane Electric provider. -%endif - -%if %{with python3} %package -n python3-%{pypi_name}+henet Summary: Meta-package for python3-%{pypi_name} and Hurricane Electric provider %{?python_provide:%python_provide python3-%{pypi_name}+henet} @@ -226,21 +119,7 @@ This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the Hurricane Electric provider. %endif -%if %{with python2} -%package -n python2-%{pypi_name}+plesk -Summary: Meta-package for python2-%{pypi_name} and Plesk provider -%{?python_provide:%python_provide python2-%{pypi_name}+plesk} -Requires: python2-%{pypi_name} = %{version}-%{release} -# EL7 has an unversioned name for this package -Requires: python-xmltodict - -%description -n python2-%{pypi_name}+plesk -This package installs no files. It requires python2-%{pypi_name} and all -dependencies necessary to use the Plesk provider. -%endif - -%if %{with python3} %package -n python3-%{pypi_name}+plesk Summary: Meta-package for python3-%{pypi_name} and Plesk provider %{?python_provide:%python_provide python3-%{pypi_name}+plesk} @@ -251,23 +130,8 @@ Requires: python3-xmltodict %description -n python3-%{pypi_name}+plesk This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the Plesk provider. -%endif -%if %{with python2} -%package -n python2-%{pypi_name}+route53 -Summary: Meta-package for python2-%{pypi_name} and Route 53 provider -%{?python_provide:%python_provide python2-%{pypi_name}+route53} -Requires: python2-%{pypi_name} = %{version}-%{release} -# EL7 has an unversioned name for this package -Requires: python-boto3 - -%description -n python2-%{pypi_name}+route53 -This package installs no files. It requires python2-%{pypi_name} and all -dependencies necessary to use the Route 53 provider. -%endif - -%if %{with python3} %package -n python3-%{pypi_name}+route53 Summary: Meta-package for python3-%{pypi_name} and Route 53 provider %{?python_provide:%python_provide python3-%{pypi_name}+route53} @@ -278,27 +142,11 @@ Requires: python3-boto3 %description -n python3-%{pypi_name}+route53 This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the Route 53 provider. -%endif %if ! 0%{?rhel7} # EL7 does not have the dependencies necessary for this meta-package # {{{ -%if %{with python2} -%package -n python2-%{pypi_name}+hetzner -Summary: Meta-package for python2-%{pypi_name} and Hetzner provider -%{?python_provide:%python_provide python2-%{pypi_name}+hetzner} - -Requires: python2-%{pypi_name} = %{version}-%{release} -Requires: python2-beautifulsoup4 -Requires: python2-dns >= 1.15.0 - -%description -n python2-%{pypi_name}+hetzner -This package installs no files. It requires python2-%{pypi_name} and all -dependencies necessary to use the Hetzner provider. -%endif - -%if %{with python3} %package -n python3-%{pypi_name}+hetzner Summary: Meta-package for python3-%{pypi_name} and Hetzner provider %{?python_provide:%python_provide python3-%{pypi_name}+hetzner} @@ -310,12 +158,9 @@ Requires: python3-dns >= 1.15.0 %description -n python3-%{pypi_name}+hetzner This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the Hetzner provider. -%endif # }}} %endif -%endif -# }}} %prep %setup -n lexicon-%{version} @@ -327,13 +172,7 @@ dependencies necessary to use the Hetzner provider. rm -rf %{pypi_name}.egg-info %build -%if %{with python2} -%py2_build -%endif - -%if %{with python3} %py3_build -%endif %check # AutoProviderTests: unknown failure - exclude to get suite passing for now @@ -345,50 +184,16 @@ rm -rf %{pypi_name}.egg-info # - GransyProviderTests # - LocalzoneProviderTests TEST_SELECTOR="not AutoProviderTests and not TransipProviderTests and not SoftLayerProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not GransyProviderTests and not LocalzoneProviderTests" -%if %{with python2} -# no tests with Python 2 as EPEL 7 does not provide the pytest-vcr package -%endif -%if 0%{?fedora} && %{with python3} +%if 0%{?fedora} # EPEL 8 does not provide the python3-pytest-vcr package py.test-3 -v -k "${TEST_SELECTOR}" lexicon %endif %install -%if %{with python2} -%py2_install -install -pm 0755 %{buildroot}/%{_bindir}/lexicon %{buildroot}/%{_bindir}/lexicon-%{python2_version} -ln -s %{_bindir}/lexicon-%{python2_version} %{buildroot}/%{_bindir}/lexicon-2 -%endif - -%if %{with python3} %py3_install install -pm 0755 %{buildroot}/%{_bindir}/lexicon %{buildroot}/%{_bindir}/lexicon-%{python3_version} ln -s %{_bindir}/lexicon-%{python3_version} %{buildroot}/%{_bindir}/lexicon-3 -%endif -%if %{with python2} -%files -n python2-%{pypi_name} -%license LICENSE -%doc README.md -%if ! %{with python3} -%{_bindir}/lexicon -%endif -%{_bindir}/lexicon-2 -%{_bindir}/lexicon-%{python2_version} -%{python2_sitelib}/lexicon -%{python2_sitelib}/dns_lexicon-%{version}-py?.?.egg-info - -# Extras meta-packages -# {{{ -%files -n python2-%{pypi_name}+easyname -%files -n python2-%{pypi_name}+gratisdns -%files -n python2-%{pypi_name}+henet -%files -n python2-%{pypi_name}+plesk -%files -n python2-%{pypi_name}+route53 -# }}} -%endif - -%if %{with python3} %files -n python3-%{pypi_name} %license LICENSE %doc README.md @@ -421,7 +226,6 @@ ln -s %{_bindir}/lexicon-%{python3_version} %{buildroot}/%{_bindir}/lexicon-3 %endif # }}} -%endif %changelog * Wed Jul 29 2020 Fedora Release Engineering - 3.3.17-5 From 2459b2015dc1e1cf61c38d90b12711d2b33fbd7c Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Tue, 17 Nov 2020 00:47:06 +0100 Subject: [PATCH 03/60] update to 3.5.1 (#1764339) also run test suite and use poetry --- .gitignore | 1 + 0000-remove-shebang.patch | 4 +- 0001-fix-requirements.patch | 21 ----- python-dns-lexicon.spec | 158 ++++++++++++++---------------------- sources | 2 +- 5 files changed, 63 insertions(+), 123 deletions(-) delete mode 100644 0001-fix-requirements.patch diff --git a/.gitignore b/.gitignore index d5f96ca..6e740f3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /dns-lexicon-*.tar.gz /lexicon-*.tar.gz + diff --git a/0000-remove-shebang.patch b/0000-remove-shebang.patch index dd0a7d5..77bcdec 100644 --- a/0000-remove-shebang.patch +++ b/0000-remove-shebang.patch @@ -1,9 +1,9 @@ diff --git a/lexicon/cli.py b/lexicon/cli.py -index dbef1ae..32a0f6f 100644 +index d2e2a41..3b6ba67 100644 --- a/lexicon/cli.py +++ b/lexicon/cli.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python """Module for Lexicon command-line interface""" from __future__ import absolute_import, print_function - import json + diff --git a/0001-fix-requirements.patch b/0001-fix-requirements.patch deleted file mode 100644 index be28efa..0000000 --- a/0001-fix-requirements.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/setup.py b/setup.py -index 7d68954..0c211c4 100644 ---- a/setup.py -+++ b/setup.py -@@ -113,14 +113,14 @@ setup( - # requirements files see: - # https://packaging.python.org/en/latest/requirements.html - install_requires=[ -- 'requests[security]', -+ 'requests', - 'tldextract', - 'future', - 'cryptography', - 'pyyaml', - ], - -- extras_require=extras_require, -+ #extras_require=extras_require, - - # To provide executable scripts, use entry points in preference to the - # "scripts" keyword. Entry points provide cross-platform support and allow diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 71e9705..1676b3f 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.3.17 +Version: 3.5.1 %forgemeta %global pypi_name dns-lexicon @@ -17,7 +17,7 @@ Version: 3.3.17 %endif Name: python-%{pypi_name} -Release: 5%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -27,30 +27,25 @@ Source0: %{forgesource} BuildArch: noarch Patch0: 0000-remove-shebang.patch -Patch1: 0001-fix-requirements.patch -BuildRequires: python3-devel -BuildRequires: python3-setuptools -BuildRequires: python3-cryptography -BuildRequires: python3-future -BuildRequires: python3-pyOpenSSL -BuildRequires: python3-tldextract -BuildRequires: python3-pyyaml +BuildRequires: pyproject-rpm-macros +BuildRequires: poetry >= 0.12 +BuildRequires: python3-pyparsing >= 2.0.2 +BuildRequires: python3-six + # required to run the test suite -BuildRequires: python3-pytest BuildRequires: python3-mock +BuildRequires: python3-pytest BuildRequires: python3-pytest-vcr # Extras requirements # {{{ %if %{with extras} -BuildRequires: python3-beautifulsoup4 BuildRequires: python3-boto3 -BuildRequires: python3-dns >= 1.15.0 -BuildRequires: python3-xmltodict %endif # }}} + %description Lexicon provides a way to manipulate DNS records on multiple DNS providers in a standardized way. Lexicon has a CLI but it can also be used as a python @@ -72,6 +67,28 @@ Requires: python3-pyyaml # TODO: Remove this once resolved upstream (see upstream #222) Conflicts: python3-lexicon +# These "extras" were previously present in upstream lexicon but are not there +# anymore. +# {{{ +%if %{with extras} +Obsoletes: python3-%{pypi_name}+easyname < 3.4 +Provides: python3dist(%{pypi_name}[easyname]) = %{version} +Provides: python%{python3_version}dist(%{pypi_name}[easyname]) = %{version} + +Obsoletes: python3-%{pypi_name}+gratisdns < 3.4 +Provides: python3dist(%{pypi_name}[gratisdns]) = %{version} +Provides: python%{python3_version}dist(%{pypi_name}[gratisdns]) = %{version} + +Obsoletes: python3-%{pypi_name}+henet < 3.4 +Provides: python3dist(%{pypi_name}[henet]) = %{version} +Provides: python%{python3_version}dist(%{pypi_name}[henet]) = %{version} + +Obsoletes: python3-%{pypi_name}+hetzner < 3.4 +Provides: python3dist(%{pypi_name}[hetzner]) = %{version} +Provides: python%{python3_version}dist(%{pypi_name}[hetzner]) = %{version} +%endif +# }}} + %description -n python3-%{pypi_name} Lexicon provides a way to manipulate DNS records on multiple DNS providers in a standardized way. Lexicon has a CLI but it can also be used as a python @@ -79,46 +96,6 @@ library. This is the Python 3 version of the package. -# Extras meta-packages -# {{{ -%if %{with extras} - -%package -n python3-%{pypi_name}+easyname -Summary: Meta-package for python3-%{pypi_name} and easyname provider -%{?python_provide:%python_provide python3-%{pypi_name}+easyname} - -Requires: python3-%{pypi_name} = %{version}-%{release} -Requires: python3-beautifulsoup4 - -%description -n python3-%{pypi_name}+easyname -This package installs no files. It requires python3-%{pypi_name} and all -dependencies necessary to use the easyname provider. - - -%package -n python3-%{pypi_name}+gratisdns -Summary: Meta-package for python3-%{pypi_name} and gratisdns provider -%{?python_provide:%python_provide python3-%{pypi_name}+gratisdns} - -Requires: python3-%{pypi_name} = %{version}-%{release} -Requires: python3-beautifulsoup4 - -%description -n python3-%{pypi_name}+gratisdns -This package installs no files. It requires python3-%{pypi_name} and all -dependencies necessary to use the gratisdns provider. - - -%package -n python3-%{pypi_name}+henet -Summary: Meta-package for python3-%{pypi_name} and Hurricane Electric provider -%{?python_provide:%python_provide python3-%{pypi_name}+henet} - -Requires: python3-%{pypi_name} = %{version}-%{release} -Requires: python3-beautifulsoup4 - -%description -n python3-%{pypi_name}+henet -This package installs no files. It requires python3-%{pypi_name} and all -dependencies necessary to use the Hurricane Electric provider. -%endif - %package -n python3-%{pypi_name}+plesk Summary: Meta-package for python3-%{pypi_name} and Plesk provider @@ -143,39 +120,24 @@ Requires: python3-boto3 This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the Route 53 provider. -%if ! 0%{?rhel7} -# EL7 does not have the dependencies necessary for this meta-package -# {{{ - -%package -n python3-%{pypi_name}+hetzner -Summary: Meta-package for python3-%{pypi_name} and Hetzner provider -%{?python_provide:%python_provide python3-%{pypi_name}+hetzner} - -Requires: python3-%{pypi_name} = %{version}-%{release} -Requires: python3-beautifulsoup4 -Requires: python3-dns >= 1.15.0 - -%description -n python3-%{pypi_name}+hetzner -This package installs no files. It requires python3-%{pypi_name} and all -dependencies necessary to use the Hetzner provider. -# }}} -%endif - - %prep -%setup -n lexicon-%{version} -%patch0 -p1 -%if 0%{?rhel7} -%patch1 -p1 -%endif +%autosetup -n lexicon-%{version} -p1 # Remove bundled egg-info rm -rf %{pypi_name}.egg-info +rm setup.py + +%generate_buildrequires +%pyproject_buildrequires -r -t -e light -x route53,plesk + %build -%py3_build +%pyproject_wheel %check # AutoProviderTests: unknown failure - exclude to get suite passing for now +# GoDaddyProviderTests: unknown failure - just get the suite passing for now +# TypeError: __init__() got an unexpected keyword argument 'allowed_methods' +# # lexicon providers which do not work in Fedora due to missing dependencies: # - TransipProviderTests # - SoftLayerProviderTests @@ -183,51 +145,49 @@ rm -rf %{pypi_name}.egg-info # - NamecheapManagedProviderTests # - GransyProviderTests # - LocalzoneProviderTests -TEST_SELECTOR="not AutoProviderTests and not TransipProviderTests and not SoftLayerProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not GransyProviderTests and not LocalzoneProviderTests" -%if 0%{?fedora} +TEST_SELECTOR="not AutoProviderTests and not GoDaddyProviderTests and not TransipProviderTests and not SoftLayerProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not GransyProviderTests and not LocalzoneProviderTests" # EPEL 8 does not provide the python3-pytest-vcr package +%if 0%{?fedora} +# The %%tox macro lacks features so we need to use pytest directly: +# Miro Hrončok, 2020-09-11: +# > I am afraid the %%tox macro can only work with "static" deps declaration, +# > not with arbitrary installers invoked as commands, sorry about that. py.test-3 -v -k "${TEST_SELECTOR}" lexicon %endif %install -%py3_install +%pyproject_install install -pm 0755 %{buildroot}/%{_bindir}/lexicon %{buildroot}/%{_bindir}/lexicon-%{python3_version} -ln -s %{_bindir}/lexicon-%{python3_version} %{buildroot}/%{_bindir}/lexicon-3 +cd %{buildroot}/%{_bindir} +ln -s lexicon-%{python3_version} lexicon-3 +rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests + %files -n python3-%{pypi_name} %license LICENSE -%doc README.md +%doc README.rst %{_bindir}/lexicon %{_bindir}/lexicon-3 %{_bindir}/lexicon-%{python3_version} %{python3_sitelib}/lexicon -%{python3_sitelib}/dns_lexicon-%{version}-py%{python3_version}.egg-info +%{python3_sitelib}/dns_lexicon-%{version}.dist-info # Extras meta-packages # {{{ %if %{with extras} -%files -n python3-%{pypi_name}+easyname -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}-py%{python3_version}.egg-info} - -%files -n python3-%{pypi_name}+gratisdns -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}-py%{python3_version}.egg-info} - -%files -n python3-%{pypi_name}+henet -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}-py%{python3_version}.egg-info} - -%files -n python3-%{pypi_name}+hetzner -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}-py%{python3_version}.egg-info} - %files -n python3-%{pypi_name}+plesk -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}-py%{python3_version}.egg-info} +%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} %files -n python3-%{pypi_name}+route53 -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}-py%{python3_version}.egg-info} +%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} %endif # }}} %changelog +* Mon Nov 16 2020 Felix Schwarz - 3.5.1-1 +- update to 3.5.1 + * Wed Jul 29 2020 Fedora Release Engineering - 3.3.17-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild diff --git a/sources b/sources index 8397c6e..caa03a1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.3.17.tar.gz) = 170c9df5765c1471053b4ace1065f61265724149d6774033db898622b58f076e22dc9b84ed1809c7c0097c1351f3115c8c3821d0fa512e3772022f7af73af59e +SHA512 (lexicon-3.5.1.tar.gz) = 1333d627811f25a8c8915cd5b4253771a917bb8e2824af35c6579dadf294248fa7bcb59863c4f53f8d95a0ae49d8de7d22e9042980978ea853d1a222523bbb4b From 304146277d9513ba5f38ff176ff484689ab72b32 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Tue, 24 Nov 2020 17:12:45 +0100 Subject: [PATCH 04/60] update to 3.5.2 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 1676b3f..804eeca 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.5.1 +Version: 3.5.2 %forgemeta %global pypi_name dns-lexicon @@ -185,6 +185,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Nov 24 2020 Felix Schwarz - 3.5.2-1 +- update to 3.5.2 + * Mon Nov 16 2020 Felix Schwarz - 3.5.1-1 - update to 3.5.1 diff --git a/sources b/sources index caa03a1..8caed10 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.5.1.tar.gz) = 1333d627811f25a8c8915cd5b4253771a917bb8e2824af35c6579dadf294248fa7bcb59863c4f53f8d95a0ae49d8de7d22e9042980978ea853d1a222523bbb4b +SHA512 (lexicon-3.5.2.tar.gz) = ba682cb7be854b0623eefa36398cd39c768d3090e23c663008964d9ca9117d85c1958a98dfd87cd09db384a467d3b536f435e59c3ddb50dcc0c63a152f309f03 From f0aef2dde013800de1d061ae3abe4368f3690dc6 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Wed, 6 Jan 2021 00:10:15 +0100 Subject: [PATCH 05/60] update to 3.5.3 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 804eeca..32694c0 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.5.2 +Version: 3.5.3 %forgemeta %global pypi_name dns-lexicon @@ -185,6 +185,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Jan 5 2021 Felix Schwarz - 3.5.3-1 +- update to 3.5.3 + * Tue Nov 24 2020 Felix Schwarz - 3.5.2-1 - update to 3.5.2 diff --git a/sources b/sources index 8caed10..6079f10 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.5.2.tar.gz) = ba682cb7be854b0623eefa36398cd39c768d3090e23c663008964d9ca9117d85c1958a98dfd87cd09db384a467d3b536f435e59c3ddb50dcc0c63a152f309f03 +SHA512 (lexicon-3.5.3.tar.gz) = 98cc7a4099998ed6d3195f345ac59a71b8281ed3b3c61484da39175697fb7f48a6855b2f71467c38bdef0da4b107dc39333de552ab81f4aed8687f13ed0c24ea From 81286e00c69db5222ad3650cf030e15a797310e5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 10:24:38 +0000 Subject: [PATCH 06/60] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 32694c0..21a9ffb 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -17,7 +17,7 @@ Version: 3.5.3 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -185,6 +185,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 3.5.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Tue Jan 5 2021 Felix Schwarz - 3.5.3-1 - update to 3.5.3 From 992b2ace34389bd585896c08e6c3e17fb59d80c5 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 4 Jun 2021 20:30:33 +0200 Subject: [PATCH 07/60] Rebuilt for Python 3.10 --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 21a9ffb..97e4cff 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -17,7 +17,7 @@ Version: 3.5.3 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -185,6 +185,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jun 04 2021 Python Maint - 3.5.3-3 +- Rebuilt for Python 3.10 + * Wed Jan 27 2021 Fedora Release Engineering - 3.5.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 962c3218307dd1b8cec431b5cbc65e9e791ac42a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 06:10:23 +0000 Subject: [PATCH 08/60] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 97e4cff..60d06eb 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -17,7 +17,7 @@ Version: 3.5.3 %endif Name: python-%{pypi_name} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -185,6 +185,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 3.5.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Fri Jun 04 2021 Python Maint - 3.5.3-3 - Rebuilt for Python 3.10 From 5e9310e208e24e6e5e71f5fbfc05d668e11b9d5d Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Thu, 19 Aug 2021 22:34:46 +0200 Subject: [PATCH 09/60] update to 3.7.0 --- 0000-remove-shebang.patch | 6 +++--- python-dns-lexicon.spec | 43 +++++++++++++-------------------------- sources | 2 +- 3 files changed, 18 insertions(+), 33 deletions(-) diff --git a/0000-remove-shebang.patch b/0000-remove-shebang.patch index 77bcdec..fd58558 100644 --- a/0000-remove-shebang.patch +++ b/0000-remove-shebang.patch @@ -1,9 +1,9 @@ diff --git a/lexicon/cli.py b/lexicon/cli.py -index d2e2a41..3b6ba67 100644 +index ed2f0ef..73e88ef 100644 --- a/lexicon/cli.py +++ b/lexicon/cli.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python """Module for Lexicon command-line interface""" - from __future__ import absolute_import, print_function - + import json + import logging diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 60d06eb..eca29f5 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.5.3 +Version: 3.7.0 %forgemeta %global pypi_name dns-lexicon @@ -17,7 +17,7 @@ Version: 3.5.3 %endif Name: python-%{pypi_name} -Release: 4%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -29,12 +29,9 @@ BuildArch: noarch Patch0: 0000-remove-shebang.patch BuildRequires: pyproject-rpm-macros -BuildRequires: poetry >= 0.12 -BuildRequires: python3-pyparsing >= 2.0.2 -BuildRequires: python3-six +BuildRequires: poetry >= 1.0.0 # required to run the test suite -BuildRequires: python3-mock BuildRequires: python3-pytest BuildRequires: python3-pytest-vcr @@ -55,13 +52,6 @@ library. Summary: %{summary} %{?python_provide:%python_provide python3-%{pypi_name}} -Requires: python3-cryptography -Requires: python3-future -Requires: python3-requests -Requires: python3-setuptools -Requires: python3-pyOpenSSL -Requires: python3-tldextract -Requires: python3-pyyaml # Both packages install a Python module named lexicon # TODO: Remove this once resolved upstream (see upstream #222) @@ -86,6 +76,11 @@ Provides: python%{python3_version}dist(%{pypi_name}[henet]) = %{version} Obsoletes: python3-%{pypi_name}+hetzner < 3.4 Provides: python3dist(%{pypi_name}[hetzner]) = %{version} Provides: python%{python3_version}dist(%{pypi_name}[hetzner]) = %{version} + +# lexicon 3.6.0 removed the xmltodict dependency (and the "plesk" extra) +Obsoletes: python3-%{pypi_name}+plesk < 3.6 +Provides: python3dist(%{pypi_name}[plesk]) = %{version} +Provides: python%{python3_version}dist(%{pypi_name}[plesk]) = %{version} %endif # }}} @@ -97,18 +92,6 @@ library. This is the Python 3 version of the package. -%package -n python3-%{pypi_name}+plesk -Summary: Meta-package for python3-%{pypi_name} and Plesk provider -%{?python_provide:%python_provide python3-%{pypi_name}+plesk} - -Requires: python3-%{pypi_name} = %{version}-%{release} -Requires: python3-xmltodict - -%description -n python3-%{pypi_name}+plesk -This package installs no files. It requires python3-%{pypi_name} and all -dependencies necessary to use the Plesk provider. - - %package -n python3-%{pypi_name}+route53 Summary: Meta-package for python3-%{pypi_name} and Route 53 provider %{?python_provide:%python_provide python3-%{pypi_name}+route53} @@ -127,7 +110,7 @@ rm -rf %{pypi_name}.egg-info rm setup.py %generate_buildrequires -%pyproject_buildrequires -r -t -e light -x route53,plesk +%pyproject_buildrequires -r -t -e light -x route53 %build @@ -145,7 +128,8 @@ rm setup.py # - NamecheapManagedProviderTests # - GransyProviderTests # - LocalzoneProviderTests -TEST_SELECTOR="not AutoProviderTests and not GoDaddyProviderTests and not TransipProviderTests and not SoftLayerProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not GransyProviderTests and not LocalzoneProviderTests" +# - OciProviderTests +TEST_SELECTOR="not AutoProviderTests and not GoDaddyProviderTests and not TransipProviderTests and not SoftLayerProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not GransyProviderTests and not LocalzoneProviderTests and not OciProviderTests" # EPEL 8 does not provide the python3-pytest-vcr package %if 0%{?fedora} # The %%tox macro lacks features so we need to use pytest directly: @@ -175,8 +159,6 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # Extras meta-packages # {{{ %if %{with extras} -%files -n python3-%{pypi_name}+plesk -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} %files -n python3-%{pypi_name}+route53 %{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} @@ -185,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Aug 19 2021 Felix Schwarz - 3.7.0-1 +- update to 3.7.0 + * Fri Jul 23 2021 Fedora Release Engineering - 3.5.3-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild diff --git a/sources b/sources index 6079f10..286ae5e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.5.3.tar.gz) = 98cc7a4099998ed6d3195f345ac59a71b8281ed3b3c61484da39175697fb7f48a6855b2f71467c38bdef0da4b107dc39333de552ab81f4aed8687f13ed0c24ea +SHA512 (lexicon-3.7.0.tar.gz) = aabfb2460bc2665b57552e6267846a0f2e508661dfdefbd22adca5833f32e8034198d1c3d5c33b2b89fb4a0cf0e9a84ec7d90426a6d8ba78acf2f2d0748c2d65 From 76f19ee3fd4cc902974f18f7990d08cd0b3a48db Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Mon, 4 Oct 2021 22:37:20 +0200 Subject: [PATCH 10/60] update to 3.8.0 fixes rhbz #2010418 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index eca29f5..5c4327a 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.7.0 +Version: 3.8.0 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Mon Oct 04 2021 Felix Schwarz - 3.8.0-1 +- update to 3.8.0 + * Thu Aug 19 2021 Felix Schwarz - 3.7.0-1 - update to 3.7.0 diff --git a/sources b/sources index 286ae5e..73dcc7b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.7.0.tar.gz) = aabfb2460bc2665b57552e6267846a0f2e508661dfdefbd22adca5833f32e8034198d1c3d5c33b2b89fb4a0cf0e9a84ec7d90426a6d8ba78acf2f2d0748c2d65 +SHA512 (lexicon-3.8.0.tar.gz) = a730852550eefd3461fd07c441cea65add2f6c0757a09c7f868da4ccdcd7cd2f1cdca96a652d11eeadab5e6dadceaba1dafc5b1d753efc6c6ec7a2fa2a5f342a From 7637ab31c1cc044318cc9e19106e96315b14fe98 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Sat, 16 Oct 2021 23:01:19 +0200 Subject: [PATCH 11/60] update to 3.8.1 (#2014726) --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 5c4327a..afd3b61 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.8.0 +Version: 3.8.1 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Sat Oct 16 2021 Felix Schwarz - 3.8.1-1 +- update to 3.8.1 (#2014726) + * Mon Oct 04 2021 Felix Schwarz - 3.8.0-1 - update to 3.8.0 diff --git a/sources b/sources index 73dcc7b..f1b4060 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.8.0.tar.gz) = a730852550eefd3461fd07c441cea65add2f6c0757a09c7f868da4ccdcd7cd2f1cdca96a652d11eeadab5e6dadceaba1dafc5b1d753efc6c6ec7a2fa2a5f342a +SHA512 (lexicon-3.8.1.tar.gz) = 6826f1c3ceed43f207e4223a1f1ed231a7ada9c930fe61f76e353a20c979ec09dcc754dedc365d01870e74dfd36a3148582a5393dfe6733309e28e495fc495f9 From b654a336aa581db5f08e5bbadd41993cb507e4f2 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Sat, 13 Nov 2021 09:19:58 +0100 Subject: [PATCH 12/60] update to 3.8.3 (#2020433) --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index afd3b61..4ca811d 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.8.1 +Version: 3.8.3 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Sat Nov 13 2021 Felix Schwarz - 3.8.3-1 +- update to 3.8.3 (#2020433) + * Sat Oct 16 2021 Felix Schwarz - 3.8.1-1 - update to 3.8.1 (#2014726) diff --git a/sources b/sources index f1b4060..ed9d92a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.8.1.tar.gz) = 6826f1c3ceed43f207e4223a1f1ed231a7ada9c930fe61f76e353a20c979ec09dcc754dedc365d01870e74dfd36a3148582a5393dfe6733309e28e495fc495f9 +SHA512 (lexicon-3.8.3.tar.gz) = 3035e9c5d073feb0dd910b79d8de02f2e9bfc81f922bce34ad33c22b583896a781e50f85104799a13133121ab5e88a372667cf0014399df50c5a829747d98073 From 82203bad434d58c5a955d7386806a5c67f2ea81b Mon Sep 17 00:00:00 2001 From: spike Date: Tue, 28 Dec 2021 20:40:08 +0100 Subject: [PATCH 13/60] update to 3.8.4 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 4ca811d..e2fa477 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.8.3 +Version: 3.8.4 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Dec 28 2021 Christian Schuermann 3.8.4-1 +- update to 3.8.4 + * Sat Nov 13 2021 Felix Schwarz - 3.8.3-1 - update to 3.8.3 (#2020433) diff --git a/sources b/sources index ed9d92a..6b1f913 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.8.3.tar.gz) = 3035e9c5d073feb0dd910b79d8de02f2e9bfc81f922bce34ad33c22b583896a781e50f85104799a13133121ab5e88a372667cf0014399df50c5a829747d98073 +SHA512 (lexicon-3.8.4.tar.gz) = 7a598b38a847e384fda243b76af523701d80d84a2338ef5745ca9f82284675ace5f84bf93cccfeda101584194c15fdbd0d4d8f69fdd0db60ec42d4c063a7916c From db25f69ed540f10be11bbdca3b57103969825d9b Mon Sep 17 00:00:00 2001 From: spike Date: Wed, 29 Dec 2021 21:56:42 +0100 Subject: [PATCH 14/60] update to 3.8.5 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index e2fa477..8ff8196 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.8.4 +Version: 3.8.5 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Wed Dec 29 2021 Christian Schuermann 3.8.5-1 +- update to 3.8.5 + * Tue Dec 28 2021 Christian Schuermann 3.8.4-1 - update to 3.8.4 diff --git a/sources b/sources index 6b1f913..a56f8a2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.8.4.tar.gz) = 7a598b38a847e384fda243b76af523701d80d84a2338ef5745ca9f82284675ace5f84bf93cccfeda101584194c15fdbd0d4d8f69fdd0db60ec42d4c063a7916c +SHA512 (lexicon-3.8.5.tar.gz) = e50fdb5c0b0d250babaff0a2d485f9112732a9e975cb853329dbcec33fe592e80a28c469b17cc0a5544909285805c1c20578b5e5f4b22ff6259b624be8c6acde From 494e59f6c5a5ada0e32dfd2456649638c86d6537 Mon Sep 17 00:00:00 2001 From: spike Date: Thu, 6 Jan 2022 22:44:51 +0100 Subject: [PATCH 15/60] update to 3.9.0 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 8ff8196..7387eff 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.8.5 +Version: 3.9.0 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Jan 6 2022 Christian Schuermann 3.8.5-1 +- update to 3.9.0 + * Wed Dec 29 2021 Christian Schuermann 3.8.5-1 - update to 3.8.5 diff --git a/sources b/sources index a56f8a2..012750b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.8.5.tar.gz) = e50fdb5c0b0d250babaff0a2d485f9112732a9e975cb853329dbcec33fe592e80a28c469b17cc0a5544909285805c1c20578b5e5f4b22ff6259b624be8c6acde +SHA512 (lexicon-3.9.0.tar.gz) = 4bc26018e0702345e86fa352eddff89358b34e878864e6273e89798cce81c4ef9e4ff06a1298481c8496237bb26d8d7c3286c82aac99117a49faa64ea329c307 From c94d9f00009c6d578f0c8b6c075a63c5f5e50402 Mon Sep 17 00:00:00 2001 From: spike Date: Mon, 17 Jan 2022 20:53:12 +0100 Subject: [PATCH 16/60] update to 3.9.1 --- python-dns-lexicon.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 7387eff..6b0c28b 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.9.0 +Version: 3.9.1 %forgemeta %global pypi_name dns-lexicon @@ -167,7 +167,10 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog -* Thu Jan 6 2022 Christian Schuermann 3.8.5-1 +* Mon Jan 17 2022 Christian Schuermann 3.9.1-1 +- update to 3.9.1 + +* Thu Jan 6 2022 Christian Schuermann 3.9.0-1 - update to 3.9.0 * Wed Dec 29 2021 Christian Schuermann 3.8.5-1 diff --git a/sources b/sources index 012750b..4d33d56 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.9.0.tar.gz) = 4bc26018e0702345e86fa352eddff89358b34e878864e6273e89798cce81c4ef9e4ff06a1298481c8496237bb26d8d7c3286c82aac99117a49faa64ea329c307 +SHA512 (lexicon-3.9.1.tar.gz) = 1b280709c868d400ddf8194cd15f96d2aed5cdb5c9609a96e2916b369227048167f4a627f8918ec31797ab0f6693190a84684e1fcae16ec48729287fcae9206c From 63982ab4591ea24313708291a49b0c71110e0ad0 Mon Sep 17 00:00:00 2001 From: spike Date: Mon, 17 Jan 2022 21:09:34 +0100 Subject: [PATCH 17/60] update to 3.9.2 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 6b0c28b..ffa1560 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.9.1 +Version: 3.9.2 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Mon Jan 17 2022 Christian Schuermann 3.9.2-1 +- update to 3.9.2 + * Mon Jan 17 2022 Christian Schuermann 3.9.1-1 - update to 3.9.1 diff --git a/sources b/sources index 4d33d56..b91c067 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.9.1.tar.gz) = 1b280709c868d400ddf8194cd15f96d2aed5cdb5c9609a96e2916b369227048167f4a627f8918ec31797ab0f6693190a84684e1fcae16ec48729287fcae9206c +SHA512 (lexicon-3.9.2.tar.gz) = f4052e2837ee43ce8aaadc9e5adbb522f2a9035a5d1813b35c3bd84fb651e10a42594529328d12153d086f2b8d84bb35eb4af2425010df4e8784f4972de00027 From 3c3d472106db2c5601b6ecd83a8b65b333a568b6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jan 2022 11:48:48 +0000 Subject: [PATCH 18/60] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index ffa1560..022bc1d 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -17,7 +17,7 @@ Version: 3.9.2 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jan 21 2022 Fedora Release Engineering - 3.9.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Mon Jan 17 2022 Christian Schuermann 3.9.2-1 - update to 3.9.2 From 119e8954a9ae33bea83bbdf4de4909d905334efa Mon Sep 17 00:00:00 2001 From: spike Date: Tue, 15 Feb 2022 09:05:14 +0100 Subject: [PATCH 19/60] update to 3.9.4 --- python-dns-lexicon.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 022bc1d..dda7cf6 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.9.2 +Version: 3.9.4 %forgemeta %global pypi_name dns-lexicon @@ -17,7 +17,7 @@ Version: 3.9.2 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Feb 15 2022 Christian Schuermann 3.9.4-1 +- update to 3.9.4 + * Fri Jan 21 2022 Fedora Release Engineering - 3.9.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild diff --git a/sources b/sources index b91c067..c1bc792 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.9.2.tar.gz) = f4052e2837ee43ce8aaadc9e5adbb522f2a9035a5d1813b35c3bd84fb651e10a42594529328d12153d086f2b8d84bb35eb4af2425010df4e8784f4972de00027 +SHA512 (lexicon-3.9.4.tar.gz) = 5a982a4727fbe88fbc5a505c6ce4712d455fc208dbb3917f74cb6a2a9d7f1891afc39badd6cef200c336aec220da6de435f0680ab972e6e40dac27b5388dc391 From f5b5f9d7cf3923106ece73e25e294ee143f2fd4c Mon Sep 17 00:00:00 2001 From: spike Date: Tue, 19 Apr 2022 16:37:09 +0200 Subject: [PATCH 20/60] update to 3.9.5 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index dda7cf6..aa8f0f9 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.9.4 +Version: 3.9.5 %forgemeta %global pypi_name dns-lexicon @@ -167,6 +167,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Apr 19 2022 Christian Schuermann 3.9.5-1 +- update to 3.9.5 + * Tue Feb 15 2022 Christian Schuermann 3.9.4-1 - update to 3.9.4 diff --git a/sources b/sources index c1bc792..cb9b04c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.9.4.tar.gz) = 5a982a4727fbe88fbc5a505c6ce4712d455fc208dbb3917f74cb6a2a9d7f1891afc39badd6cef200c336aec220da6de435f0680ab972e6e40dac27b5388dc391 +SHA512 (lexicon-3.9.5.tar.gz) = 60c7722a1e894f95b24cceffd5224cad55287db944d36168c759b9f31aae0117803d1972f5ade405a85bccd58551a51aff3db0ba52bbc52600d5ec43a955f003 From 8866a64eb56e714de4e3055259f5412aebfa3a58 Mon Sep 17 00:00:00 2001 From: spike Date: Wed, 27 Apr 2022 04:06:01 +0200 Subject: [PATCH 21/60] Reenable tests for GoDady, Transip, Namecheap and NamecheapManaged providers Add gransy and ddns extra packages Remove explicit BuildRequires (handled by the pyproject_buildrequires macro) Remove explicit extra package Requires (handled by automatic dependency generator) Remove unused rhel7 macro --- python-dns-lexicon.spec | 66 ++++++++++++++++++++++++++--------------- 1 file changed, 42 insertions(+), 24 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index aa8f0f9..950832e 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -5,10 +5,6 @@ Version: 3.9.5 %global pypi_name dns-lexicon -%if 0%{?rhel} && 0%{?rhel} == 7 -%global rhel7 1 -%endif - %if 0%{?rhel} >= 8 # EPEL8 is currently missing dependencies used by the extras metapackages %bcond_with extras @@ -17,7 +13,7 @@ Version: 3.9.5 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -28,20 +24,12 @@ BuildArch: noarch Patch0: 0000-remove-shebang.patch -BuildRequires: pyproject-rpm-macros -BuildRequires: poetry >= 1.0.0 +BuildRequires: python3-devel # required to run the test suite BuildRequires: python3-pytest BuildRequires: python3-pytest-vcr -# Extras requirements -# {{{ -%if %{with extras} -BuildRequires: python3-boto3 -%endif -# }}} - %description Lexicon provides a way to manipulate DNS records on multiple DNS providers in a @@ -92,17 +80,40 @@ library. This is the Python 3 version of the package. + +%package -n python3-%{pypi_name}+ddns +Summary: Meta-package for python3-%{pypi_name} and ddns provider +%{?python_provide:%python_provide python3-%{pypi_name}+ddns} +Requires: python3-%{pypi_name} = %{version}-%{release} + +%description -n python3-%{pypi_name}+ddns +This package installs no files. It requires python3-%{pypi_name} and all +dependencies necessary to use the ddns provider. + + + +%package -n python3-%{pypi_name}+gransy +Summary: Meta-package for python3-%{pypi_name} and gransy provider +%{?python_provide:%python_provide python3-%{pypi_name}+gransy} +Requires: python3-%{pypi_name} = %{version}-%{release} + +%description -n python3-%{pypi_name}+gransy +This package installs no files. It requires python3-%{pypi_name} and all +dependencies necessary to use the gransy provider. + + + %package -n python3-%{pypi_name}+route53 Summary: Meta-package for python3-%{pypi_name} and Route 53 provider %{?python_provide:%python_provide python3-%{pypi_name}+route53} - Requires: python3-%{pypi_name} = %{version}-%{release} -Requires: python3-boto3 %description -n python3-%{pypi_name}+route53 This package installs no files. It requires python3-%{pypi_name} and all dependencies necessary to use the Route 53 provider. + + %prep %autosetup -n lexicon-%{version} -p1 # Remove bundled egg-info @@ -110,7 +121,7 @@ rm -rf %{pypi_name}.egg-info rm setup.py %generate_buildrequires -%pyproject_buildrequires -r -t -e light -x route53 +%pyproject_buildrequires -r -t -e light -x ddns,gransy,route53 %build @@ -118,18 +129,12 @@ rm setup.py %check # AutoProviderTests: unknown failure - exclude to get suite passing for now -# GoDaddyProviderTests: unknown failure - just get the suite passing for now -# TypeError: __init__() got an unexpected keyword argument 'allowed_methods' # # lexicon providers which do not work in Fedora due to missing dependencies: -# - TransipProviderTests # - SoftLayerProviderTests -# - NamecheapProviderTests -# - NamecheapManagedProviderTests -# - GransyProviderTests # - LocalzoneProviderTests # - OciProviderTests -TEST_SELECTOR="not AutoProviderTests and not GoDaddyProviderTests and not TransipProviderTests and not SoftLayerProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not GransyProviderTests and not LocalzoneProviderTests and not OciProviderTests" +TEST_SELECTOR="not AutoProviderTests and not SoftLayerProviderTests and not LocalzoneProviderTests and not OciProviderTests" # EPEL 8 does not provide the python3-pytest-vcr package %if 0%{?fedora} # The %%tox macro lacks features so we need to use pytest directly: @@ -160,6 +165,12 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # {{{ %if %{with extras} +%files -n python3-%{pypi_name}+ddns +%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} + +%files -n python3-%{pypi_name}+gransy +%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} + %files -n python3-%{pypi_name}+route53 %{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} @@ -167,6 +178,13 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Apr 26 2022 Christian Schuermann 3.9.5-2 +- Reenable tests for GoDady, Transip, Namecheap and NamecheapManaged providers +- Add gransy and ddns extra packages +- Remove explicit BuildRequires (handled by the pyproject_buildrequires macro) +- Remove explicit extra package Requires (handled by automatic dependency generator) +- Remove unused rhel7 macro + * Tue Apr 19 2022 Christian Schuermann 3.9.5-1 - update to 3.9.5 From 199cba562ae192c2c0832bc49abca9c83a8b49a7 Mon Sep 17 00:00:00 2001 From: spike Date: Thu, 28 Apr 2022 08:37:48 +0200 Subject: [PATCH 22/60] Add "tests" conditional to make tests optional on EPEL Ensure that BuildRequires resolve correctly and only relevant tests run when building without extras --- python-dns-lexicon.spec | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 950832e..64e563d 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -6,14 +6,17 @@ Version: 3.9.5 %global pypi_name dns-lexicon %if 0%{?rhel} >= 8 -# EPEL8 is currently missing dependencies used by the extras metapackages +# EPEL is currently missing dependencies used by the extras metapackages +# EPEL is currently missing dependancies used by the tests +%bcond_with tests %bcond_with extras %else +%bcond_without tests %bcond_without extras %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -27,8 +30,10 @@ Patch0: 0000-remove-shebang.patch BuildRequires: python3-devel # required to run the test suite +%if %{with tests} BuildRequires: python3-pytest BuildRequires: python3-pytest-vcr +%endif %description @@ -121,12 +126,17 @@ rm -rf %{pypi_name}.egg-info rm setup.py %generate_buildrequires +%if %{with extras} %pyproject_buildrequires -r -t -e light -x ddns,gransy,route53 +%else +%pyproject_buildrequires -r -t -e light +%endif %build %pyproject_wheel +%if %{with tests} %check # AutoProviderTests: unknown failure - exclude to get suite passing for now # @@ -135,8 +145,9 @@ rm setup.py # - LocalzoneProviderTests # - OciProviderTests TEST_SELECTOR="not AutoProviderTests and not SoftLayerProviderTests and not LocalzoneProviderTests and not OciProviderTests" -# EPEL 8 does not provide the python3-pytest-vcr package -%if 0%{?fedora} +%if %{without extras} +TEST_SELECTOR+=" and not DDNSProviderTests and not GransyProviderTests and not Route53ProviderTests" +%endif # The %%tox macro lacks features so we need to use pytest directly: # Miro Hrončok, 2020-09-11: # > I am afraid the %%tox macro can only work with "static" deps declaration, @@ -178,6 +189,10 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Apr 28 2022 Christian Schuermann 3.9.5-3 +- Add "tests" conditional to make tests optional on EPEL +- Ensure that BuildRequires resolve correctly and only relevant tests run when building without extras + * Tue Apr 26 2022 Christian Schuermann 3.9.5-2 - Reenable tests for GoDady, Transip, Namecheap and NamecheapManaged providers - Add gransy and ddns extra packages From 0c57b8ff2434250d20186d1d02356d64981defc9 Mon Sep 17 00:00:00 2001 From: spike Date: Sun, 1 May 2022 10:48:49 +0200 Subject: [PATCH 23/60] Update to 3.10.0 --- python-dns-lexicon.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 64e563d..a73669c 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.9.5 +Version: 3.10.0 %forgemeta %global pypi_name dns-lexicon @@ -16,7 +16,7 @@ Version: 3.9.5 %endif Name: python-%{pypi_name} -Release: 3%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -189,6 +189,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Sun May 1 2022 Christian Schuermann 3.10.0-1 +- Update to 3.10.0 + * Thu Apr 28 2022 Christian Schuermann 3.9.5-3 - Add "tests" conditional to make tests optional on EPEL - Ensure that BuildRequires resolve correctly and only relevant tests run when building without extras diff --git a/sources b/sources index cb9b04c..176c17e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.9.5.tar.gz) = 60c7722a1e894f95b24cceffd5224cad55287db944d36168c759b9f31aae0117803d1972f5ade405a85bccd58551a51aff3db0ba52bbc52600d5ec43a955f003 +SHA512 (lexicon-3.10.0.tar.gz) = 76ede1b55ad388b8d6726d531a4346db5972e79c434db529fa54838b0f40c909cb67a544f3e74e67311c981b8acd4766ec51c67452143989daa9be39176f940a From 70566cc5f6ad20fa7e97c75771a7adebd1e7b748 Mon Sep 17 00:00:00 2001 From: spike Date: Mon, 9 May 2022 17:05:26 +0200 Subject: [PATCH 24/60] Update to 3.11.0 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index a73669c..003c260 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.10.0 +Version: 3.11.0 %forgemeta %global pypi_name dns-lexicon @@ -189,6 +189,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Mon May 9 2022 Christian Schuermann 3.11.0-1 +- Update to 3.11.0 + * Sun May 1 2022 Christian Schuermann 3.10.0-1 - Update to 3.10.0 diff --git a/sources b/sources index 176c17e..0c2c7fe 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.10.0.tar.gz) = 76ede1b55ad388b8d6726d531a4346db5972e79c434db529fa54838b0f40c909cb67a544f3e74e67311c981b8acd4766ec51c67452143989daa9be39176f940a +SHA512 (lexicon-3.11.0.tar.gz) = dcf231908ca2869c0e729b114632ce9f53c7b8d524ea072533403e2f8428d8fda9763a4c73e822a2034abd78f46897009127e9e653fb71e0bc712a72a80da075 From ce9260f36817676d57552f055278d9fca5c4a31c Mon Sep 17 00:00:00 2001 From: spike Date: Mon, 9 May 2022 18:59:05 +0200 Subject: [PATCH 25/60] Disable tests that use tldextract until "suffix_list_url" cli flag is available --- python-dns-lexicon.spec | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 003c260..1e92eba 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.11.0 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -138,13 +138,24 @@ rm setup.py %if %{with tests} %check -# AutoProviderTests: unknown failure - exclude to get suite passing for now -# +# The following tests use tldextract which tries to fetch +# https://raw.githubusercontent.com/publicsuffix/list/master/public_suffix_list.dat +# on first invocation +# (see https://github.com/john-kurkowski/tldextract/tree/master#note-about-caching) +# - AutoProviderTests +# - NamecheapProviderTests +# - NamecheapManagedProviderTests +# Disabling those until tldextract 3.3.0+ is available on Fedora. +# With tldextract 3.3.0+ we can use Fedora's public suffix list by running +# tldextract --update --suffix_list_url "file:///usr/share/publicsuffix/public_suffix_list.dat" +# prior to running the tests +TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests" + # lexicon providers which do not work in Fedora due to missing dependencies: # - SoftLayerProviderTests # - LocalzoneProviderTests # - OciProviderTests -TEST_SELECTOR="not AutoProviderTests and not SoftLayerProviderTests and not LocalzoneProviderTests and not OciProviderTests" +TEST_SELECTOR+=" and not SoftLayerProviderTests and not LocalzoneProviderTests and not OciProviderTests" %if %{without extras} TEST_SELECTOR+=" and not DDNSProviderTests and not GransyProviderTests and not Route53ProviderTests" %endif @@ -189,6 +200,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Mon May 9 2022 Christian Schuermann 3.11.0-2 +- Disable tests that use tldextract until "suffix_list_url" cli flag is available + * Mon May 9 2022 Christian Schuermann 3.11.0-1 - Update to 3.11.0 From 9dad35013cdba18871b45177fe9fc6f1f49c2d7e Mon Sep 17 00:00:00 2001 From: spike Date: Wed, 18 May 2022 06:11:31 +0200 Subject: [PATCH 26/60] Update to 3.11.2 --- python-dns-lexicon.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 1e92eba..f001507 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.11.0 +Version: 3.11.2 %forgemeta %global pypi_name dns-lexicon @@ -16,7 +16,7 @@ Version: 3.11.0 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -200,6 +200,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Wed May 18 2022 Christian Schuermann 3.11.2-1 +- Update to 3.11.2 + * Mon May 9 2022 Christian Schuermann 3.11.0-2 - Disable tests that use tldextract until "suffix_list_url" cli flag is available diff --git a/sources b/sources index 0c2c7fe..e16504c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.11.0.tar.gz) = dcf231908ca2869c0e729b114632ce9f53c7b8d524ea072533403e2f8428d8fda9763a4c73e822a2034abd78f46897009127e9e653fb71e0bc712a72a80da075 +SHA512 (lexicon-3.11.2.tar.gz) = bf77cee4e483b36c8cc8cb176291f0170a1d611551246e27ddd91d9712e8750c9ee57863697e975065f6924c03fdfd636c5c7df29a620d37441b12dd0a1c597d From b559a51e41571d89b91a6d63e90946bb5be4c84a Mon Sep 17 00:00:00 2001 From: spike Date: Wed, 18 May 2022 06:27:48 +0200 Subject: [PATCH 27/60] Disable OciInstancePrincipalProviderTests --- python-dns-lexicon.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index f001507..b8e172e 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -155,7 +155,8 @@ TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not Name # - SoftLayerProviderTests # - LocalzoneProviderTests # - OciProviderTests -TEST_SELECTOR+=" and not SoftLayerProviderTests and not LocalzoneProviderTests and not OciProviderTests" +# - OciInstancePrincipalProviderTests +TEST_SELECTOR+=" and not SoftLayerProviderTests and not LocalzoneProviderTests and not OciProviderTests and not OciInstancePrincipalProviderTests" %if %{without extras} TEST_SELECTOR+=" and not DDNSProviderTests and not GransyProviderTests and not Route53ProviderTests" %endif @@ -202,6 +203,7 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests %changelog * Wed May 18 2022 Christian Schuermann 3.11.2-1 - Update to 3.11.2 +- Disable OciInstancePrincipalProviderTests * Mon May 9 2022 Christian Schuermann 3.11.0-2 - Disable tests that use tldextract until "suffix_list_url" cli flag is available From c069f8502479cd69f7980ea46c1085c8c5dddd03 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Wed, 15 Jun 2022 15:35:34 +0200 Subject: [PATCH 28/60] Rebuilt for Python 3.11 --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index b8e172e..abf5053 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.11.2 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -201,6 +201,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Wed Jun 15 2022 Python Maint - 3.11.2-2 +- Rebuilt for Python 3.11 + * Wed May 18 2022 Christian Schuermann 3.11.2-1 - Update to 3.11.2 - Disable OciInstancePrincipalProviderTests From 9c9f30f89389859b0001c7cb89ee1ed998d20ebe Mon Sep 17 00:00:00 2001 From: spike Date: Thu, 23 Jun 2022 21:53:38 +0200 Subject: [PATCH 29/60] Update to 3.11.3 --- python-dns-lexicon.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index abf5053..6c50aa6 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.11.2 +Version: 3.11.3 %forgemeta %global pypi_name dns-lexicon @@ -16,7 +16,7 @@ Version: 3.11.2 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -201,6 +201,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Jun 23 2022 Christian Schuermann 3.11.3-1 +- Update to 3.11.3 + * Wed Jun 15 2022 Python Maint - 3.11.2-2 - Rebuilt for Python 3.11 diff --git a/sources b/sources index e16504c..5ad8d3c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.11.2.tar.gz) = bf77cee4e483b36c8cc8cb176291f0170a1d611551246e27ddd91d9712e8750c9ee57863697e975065f6924c03fdfd636c5c7df29a620d37441b12dd0a1c597d +SHA512 (lexicon-3.11.3.tar.gz) = 770a3c052ecc26fb3a27ac49b8f14132b69ea6ca9dfc93caea1ac66c4e6a458e6484b8a8ab921eea97761216fa34d8ad0d95964cdcff30a5713de7189c1e987d From b41a8291a5d651fb429a26a178204931952c7887 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 18:05:41 +0000 Subject: [PATCH 30/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 6c50aa6..369e27a 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.11.3 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -201,6 +201,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 3.11.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jun 23 2022 Christian Schuermann 3.11.3-1 - Update to 3.11.3 From 918a73fca48d4d012b151fbb5c3613c221f82c36 Mon Sep 17 00:00:00 2001 From: jonathanspw Date: Thu, 11 Aug 2022 18:44:00 -0500 Subject: [PATCH 31/60] update to 3.11.4 --- python-dns-lexicon.spec | 8 ++++++-- sources | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 369e27a..e6cc372 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.11.3 +Version: 3.11.4 %forgemeta %global pypi_name dns-lexicon @@ -16,7 +16,7 @@ Version: 3.11.3 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -201,6 +201,10 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 3.11.4-1 +- Update to 3.11.4 +- rhbz#2117798 + * Fri Jul 22 2022 Fedora Release Engineering - 3.11.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 5ad8d3c..f5251f4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.11.3.tar.gz) = 770a3c052ecc26fb3a27ac49b8f14132b69ea6ca9dfc93caea1ac66c4e6a458e6484b8a8ab921eea97761216fa34d8ad0d95964cdcff30a5713de7189c1e987d +SHA512 (lexicon-3.11.4.tar.gz) = d7c1f085ffcb4589430f744970bbc6793779fb19d4cc29b071937d768cb271330794fccf38b60a82ed6362dda4101ac6643704bb703df242c8f2a17273dc6fbe From 67248f13f20a385cbdd62b1546a60700773c87f7 Mon Sep 17 00:00:00 2001 From: spike Date: Wed, 12 Oct 2022 00:16:26 +0200 Subject: [PATCH 32/60] Update to 3.11.6 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index e6cc372..a9b5d4a 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.11.4 +Version: 3.11.6 %forgemeta %global pypi_name dns-lexicon @@ -201,6 +201,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Wed Oct 12 2022 Christian Schuermann 3.11.6-1 +- Update to 3.11.6 + * Fri Jul 22 2022 Fedora Release Engineering - 3.11.4-1 - Update to 3.11.4 - rhbz#2117798 diff --git a/sources b/sources index f5251f4..ccc2e28 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.11.4.tar.gz) = d7c1f085ffcb4589430f744970bbc6793779fb19d4cc29b071937d768cb271330794fccf38b60a82ed6362dda4101ac6643704bb703df242c8f2a17273dc6fbe +SHA512 (lexicon-3.11.6.tar.gz) = 086aa7daeef176960e058d60495f748c6c2acaf065801e41fe4b77c1bb44c8fd98b13805d9dc393d9be20d4e2d12ebc0967a0e07ec561fa4c33666a8f6e7ab18 From a795a1cd8cc00038d9a3200d8961ce3455951fae Mon Sep 17 00:00:00 2001 From: spike Date: Thu, 27 Oct 2022 06:05:53 +0200 Subject: [PATCH 33/60] Update to 3.11.7 --- python-dns-lexicon.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index a9b5d4a..099fec6 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.11.6 +Version: 3.11.7 %forgemeta %global pypi_name dns-lexicon @@ -201,6 +201,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Oct 27 2022 Christian Schuermann 3.11.7-1 +- Update to 3.11.7 + * Wed Oct 12 2022 Christian Schuermann 3.11.6-1 - Update to 3.11.6 diff --git a/sources b/sources index ccc2e28..b597b97 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.11.6.tar.gz) = 086aa7daeef176960e058d60495f748c6c2acaf065801e41fe4b77c1bb44c8fd98b13805d9dc393d9be20d4e2d12ebc0967a0e07ec561fa4c33666a8f6e7ab18 +SHA512 (lexicon-3.11.7.tar.gz) = 7d3becea6b9d60a4589e9d7e8de010d0b7e6a2c127d1ccc6981d1bff88d09f5a708fd3e9e22f66b8a0a77a331784340662de73607dd25d69c0342795c6afc765 From 17fa249bdd4e75db8828980e23c23337d0221a7a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 12:49:22 +0000 Subject: [PATCH 34/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 099fec6..1f58b92 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.11.7 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -201,6 +201,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jan 20 2023 Fedora Release Engineering - 3.11.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Thu Oct 27 2022 Christian Schuermann 3.11.7-1 - Update to 3.11.7 From 4baebb69533cddf1f870b6c241ed2c21d0258ddf Mon Sep 17 00:00:00 2001 From: spike Date: Mon, 12 Jun 2023 02:14:39 +0200 Subject: [PATCH 35/60] Update to 3.12.0 Add new duckdns extra package Add localzone and oci extra packages since dependancies are now available on Fedora --- python-dns-lexicon.spec | 60 +++++++++++++++++++++++++++++++++++------ sources | 2 +- 2 files changed, 53 insertions(+), 9 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 1f58b92..267323e 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.11.7 +Version: 3.12.0 %forgemeta %global pypi_name dns-lexicon @@ -16,7 +16,7 @@ Version: 3.11.7 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -97,6 +97,17 @@ dependencies necessary to use the ddns provider. +%package -n python3-%{pypi_name}+duckdns +Summary: Meta-package for python3-%{pypi_name} and duckdns provider +%{?python_provide:%python_provide python3-%{pypi_name}+duckdns} +Requires: python3-%{pypi_name} = %{version}-%{release} + +%description -n python3-%{pypi_name}+duckdns +This package installs no files. It requires python3-%{pypi_name} and all +dependencies necessary to use the duckdns provider. + + + %package -n python3-%{pypi_name}+gransy Summary: Meta-package for python3-%{pypi_name} and gransy provider %{?python_provide:%python_provide python3-%{pypi_name}+gransy} @@ -108,6 +119,28 @@ dependencies necessary to use the gransy provider. +%package -n python3-%{pypi_name}+localzone +Summary: Meta-package for python3-%{pypi_name} and localzone provider +%{?python_provide:%python_provide python3-%{pypi_name}+localzone} +Requires: python3-%{pypi_name} = %{version}-%{release} + +%description -n python3-%{pypi_name}+localzone +This package installs no files. It requires python3-%{pypi_name} and all +dependencies necessary to use the localzone provider. + + + +%package -n python3-%{pypi_name}+oci +Summary: Meta-package for python3-%{pypi_name} and oci provider +%{?python_provide:%python_provide python3-%{pypi_name}+oci} +Requires: python3-%{pypi_name} = %{version}-%{release} + +%description -n python3-%{pypi_name}+oci +This package installs no files. It requires python3-%{pypi_name} and all +dependencies necessary to use the oci provider. + + + %package -n python3-%{pypi_name}+route53 Summary: Meta-package for python3-%{pypi_name} and Route 53 provider %{?python_provide:%python_provide python3-%{pypi_name}+route53} @@ -127,7 +160,7 @@ rm setup.py %generate_buildrequires %if %{with extras} -%pyproject_buildrequires -r -t -e light -x ddns,gransy,route53 +%pyproject_buildrequires -r -t -e light -x ddns,duckdns,gransy,localzone,oci,route53 %else %pyproject_buildrequires -r -t -e light %endif @@ -153,12 +186,9 @@ TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not Name # lexicon providers which do not work in Fedora due to missing dependencies: # - SoftLayerProviderTests -# - LocalzoneProviderTests -# - OciProviderTests -# - OciInstancePrincipalProviderTests -TEST_SELECTOR+=" and not SoftLayerProviderTests and not LocalzoneProviderTests and not OciProviderTests and not OciInstancePrincipalProviderTests" +TEST_SELECTOR+=" and not SoftLayerProviderTests" %if %{without extras} -TEST_SELECTOR+=" and not DDNSProviderTests and not GransyProviderTests and not Route53ProviderTests" +TEST_SELECTOR+=" and not DDNSProviderTests and not DuckdnsProviderTests and not GransyProviderTests and not LocalzoneProviderTests and not OciProviderTests and not OciInstancePrincipalProviderTests and not Route53ProviderTests" %endif # The %%tox macro lacks features so we need to use pytest directly: # Miro Hrončok, 2020-09-11: @@ -191,9 +221,18 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests %files -n python3-%{pypi_name}+ddns %{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} +%files -n python3-%{pypi_name}+duckdns +%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} + %files -n python3-%{pypi_name}+gransy %{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} +%files -n python3-%{pypi_name}+localzone +%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} + +%files -n python3-%{pypi_name}+oci +%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} + %files -n python3-%{pypi_name}+route53 %{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} @@ -201,6 +240,11 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Sun Jun 11 2023 Christian Schuermann 3.12.0-1 +- Update to 3.12.0 +- Add new duckdns extra package +- Add localzone and oci extra packages since dependancies are now available on Fedora + * Fri Jan 20 2023 Fedora Release Engineering - 3.11.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index b597b97..8fd5dfa 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.11.7.tar.gz) = 7d3becea6b9d60a4589e9d7e8de010d0b7e6a2c127d1ccc6981d1bff88d09f5a708fd3e9e22f66b8a0a77a331784340662de73607dd25d69c0342795c6afc765 +SHA512 (lexicon-3.12.0.tar.gz) = 4ba799c6f7a01b8209f5274337258d0525efff366b297fff2fcff1d40c7ee58850fa8c3743bf9d29a1a082288e1f615cd94036a9cdc7be9f85e46f26fe3d7fbc From 7dc3ff8bbb9cc02d385b01ebf0e4f807b94309ac Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 4 Jul 2023 11:42:52 +0200 Subject: [PATCH 36/60] Rebuilt for Python 3.12 --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 267323e..90c70e0 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.12.0 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -240,6 +240,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Jul 04 2023 Python Maint - 3.12.0-2 +- Rebuilt for Python 3.12 + * Sun Jun 11 2023 Christian Schuermann 3.12.0-1 - Update to 3.12.0 - Add new duckdns extra package From b539d27ed07d0c8208cba3e9e5ff36d11eff45f4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jul 2023 09:10:05 +0000 Subject: [PATCH 37/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 90c70e0..1185b83 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.12.0 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -240,6 +240,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jul 21 2023 Fedora Release Engineering - 3.12.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Jul 04 2023 Python Maint - 3.12.0-2 - Rebuilt for Python 3.12 From ad3c57536b457d231e52b56bd6d0aa110a8b6169 Mon Sep 17 00:00:00 2001 From: spike Date: Tue, 8 Aug 2023 04:33:27 +0200 Subject: [PATCH 38/60] Update to 3.13.0 --- python-dns-lexicon.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 1185b83..25ee757 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.12.0 +Version: 3.13.0 %forgemeta %global pypi_name dns-lexicon @@ -16,7 +16,7 @@ Version: 3.12.0 %endif Name: python-%{pypi_name} -Release: 3%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -240,6 +240,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Tue Aug 8 2023 Christian Schuermann 3.13.0-1 +- Update to 3.13.0 + * Fri Jul 21 2023 Fedora Release Engineering - 3.12.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/sources b/sources index 8fd5dfa..ad23335 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.12.0.tar.gz) = 4ba799c6f7a01b8209f5274337258d0525efff366b297fff2fcff1d40c7ee58850fa8c3743bf9d29a1a082288e1f615cd94036a9cdc7be9f85e46f26fe3d7fbc +SHA512 (lexicon-3.13.0.tar.gz) = 582efefb93d9f122cf3f900ddc7cf615295855645f6d9621f14c11067e441eb67349adf40e5159b75e8c5703d1cfd874364d392ce2994feb89949d371b4b55be From 9079654b2f292d798750f54c5f5f791bd4e3c887 Mon Sep 17 00:00:00 2001 From: jonathanspw Date: Fri, 13 Oct 2023 10:59:20 -0500 Subject: [PATCH 39/60] update to 3.15.1 --- 0000-remove-shebang.patch | 9 --------- python-dns-lexicon.spec | 14 ++++++++------ sources | 2 +- 3 files changed, 9 insertions(+), 16 deletions(-) delete mode 100644 0000-remove-shebang.patch diff --git a/0000-remove-shebang.patch b/0000-remove-shebang.patch deleted file mode 100644 index fd58558..0000000 --- a/0000-remove-shebang.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff --git a/lexicon/cli.py b/lexicon/cli.py -index ed2f0ef..73e88ef 100644 ---- a/lexicon/cli.py -+++ b/lexicon/cli.py -@@ -1,4 +1,3 @@ --#!/usr/bin/env python - """Module for Lexicon command-line interface""" - import json - import logging diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 25ee757..fd994b6 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.13.0 +Version: 3.15.1 %forgemeta %global pypi_name dns-lexicon @@ -25,8 +25,6 @@ URL: %{forgeurl} Source0: %{forgesource} BuildArch: noarch -Patch0: 0000-remove-shebang.patch - BuildRequires: python3-devel # required to run the test suite @@ -156,7 +154,6 @@ dependencies necessary to use the Route 53 provider. %autosetup -n lexicon-%{version} -p1 # Remove bundled egg-info rm -rf %{pypi_name}.egg-info -rm setup.py %generate_buildrequires %if %{with extras} @@ -167,6 +164,8 @@ rm setup.py %build +# remove shebang +sed -i '1d' src/lexicon/_private/cli.py %pyproject_wheel %if %{with tests} @@ -182,7 +181,7 @@ rm setup.py # With tldextract 3.3.0+ we can use Fedora's public suffix list by running # tldextract --update --suffix_list_url "file:///usr/share/publicsuffix/public_suffix_list.dat" # prior to running the tests -TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests" +TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not Route53Provider and not AliyunProviderTests and not AuroraProviderTests and not Route53ProviderTests" # lexicon providers which do not work in Fedora due to missing dependencies: # - SoftLayerProviderTests @@ -194,7 +193,7 @@ TEST_SELECTOR+=" and not DDNSProviderTests and not DuckdnsProviderTests and not # Miro Hrončok, 2020-09-11: # > I am afraid the %%tox macro can only work with "static" deps declaration, # > not with arbitrary installers invoked as commands, sorry about that. -py.test-3 -v -k "${TEST_SELECTOR}" lexicon +%pytest -v -k "${TEST_SELECTOR}" %endif %install @@ -240,6 +239,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Oct 13 2023 Jonathan Wright - 3.15.1-1 +- Update to 3.15.1 rhbz#2232054 + * Tue Aug 8 2023 Christian Schuermann 3.13.0-1 - Update to 3.13.0 diff --git a/sources b/sources index ad23335..631bf22 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.13.0.tar.gz) = 582efefb93d9f122cf3f900ddc7cf615295855645f6d9621f14c11067e441eb67349adf40e5159b75e8c5703d1cfd874364d392ce2994feb89949d371b4b55be +SHA512 (lexicon-3.15.1.tar.gz) = 406a88808e0200cdd8e510e4a99688b75e3333be306b209931bd3282d9cd80fca15cf0b50a537d208f4b41cc6022e8501de6fbe83e20b426a8dc28724cd92fb8 From c327bd5beecd8faf25658dd839df3cf9049cd318 Mon Sep 17 00:00:00 2001 From: Nick Bebout Date: Fri, 17 Nov 2023 13:24:40 -0600 Subject: [PATCH 40/60] Update to 3.17.0 - remove ddns and duckdns because apparently upstream removed them --- python-dns-lexicon.spec | 35 +++++------------------------------ sources | 2 +- 2 files changed, 6 insertions(+), 31 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index fd994b6..f93007d 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.15.1 +Version: 3.17.0 %forgemeta %global pypi_name dns-lexicon @@ -84,28 +84,6 @@ This is the Python 3 version of the package. -%package -n python3-%{pypi_name}+ddns -Summary: Meta-package for python3-%{pypi_name} and ddns provider -%{?python_provide:%python_provide python3-%{pypi_name}+ddns} -Requires: python3-%{pypi_name} = %{version}-%{release} - -%description -n python3-%{pypi_name}+ddns -This package installs no files. It requires python3-%{pypi_name} and all -dependencies necessary to use the ddns provider. - - - -%package -n python3-%{pypi_name}+duckdns -Summary: Meta-package for python3-%{pypi_name} and duckdns provider -%{?python_provide:%python_provide python3-%{pypi_name}+duckdns} -Requires: python3-%{pypi_name} = %{version}-%{release} - -%description -n python3-%{pypi_name}+duckdns -This package installs no files. It requires python3-%{pypi_name} and all -dependencies necessary to use the duckdns provider. - - - %package -n python3-%{pypi_name}+gransy Summary: Meta-package for python3-%{pypi_name} and gransy provider %{?python_provide:%python_provide python3-%{pypi_name}+gransy} @@ -157,7 +135,7 @@ rm -rf %{pypi_name}.egg-info %generate_buildrequires %if %{with extras} -%pyproject_buildrequires -r -t -e light -x ddns,duckdns,gransy,localzone,oci,route53 +%pyproject_buildrequires -r -t -e light -x gransy,localzone,oci,route53 %else %pyproject_buildrequires -r -t -e light %endif @@ -217,12 +195,6 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # {{{ %if %{with extras} -%files -n python3-%{pypi_name}+ddns -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} - -%files -n python3-%{pypi_name}+duckdns -%{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} - %files -n python3-%{pypi_name}+gransy %{?python_extras_subpkg:%ghost %{python3_sitelib}/dns_lexicon-%{version}.dist-info} @@ -239,6 +211,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Nov 16 2023 Nick Bebout - 3.17.0-1 +- Update to 3.17.0 + * Fri Oct 13 2023 Jonathan Wright - 3.15.1-1 - Update to 3.15.1 rhbz#2232054 diff --git a/sources b/sources index 631bf22..31f2a59 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.15.1.tar.gz) = 406a88808e0200cdd8e510e4a99688b75e3333be306b209931bd3282d9cd80fca15cf0b50a537d208f4b41cc6022e8501de6fbe83e20b426a8dc28724cd92fb8 +SHA512 (lexicon-3.17.0.tar.gz) = 1bc182f5881d6acfac72b84331ba50da1219178d274c92e532ed11e73aa79696681d28a002cd1e23f48590953f48e50b62c2ef2db020a07ecf88547717508c0c From c072a10b22ea132e065cf28ad01475a8c7203fbb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 00:54:37 +0000 Subject: [PATCH 41/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index f93007d..1811279 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.17.0 %endif Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -211,6 +211,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Mon Jan 22 2024 Fedora Release Engineering - 3.17.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Thu Nov 16 2023 Nick Bebout - 3.17.0-1 - Update to 3.17.0 From 76ecac728bd98e5555877263e4ddd26bea95b0aa Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jan 2024 03:41:47 +0000 Subject: [PATCH 42/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 1811279..689aec4 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.17.0 %endif Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -211,6 +211,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jan 26 2024 Fedora Release Engineering - 3.17.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Mon Jan 22 2024 Fedora Release Engineering - 3.17.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From c3dde8dbb430b239dcee24eedfab7af460a023dc Mon Sep 17 00:00:00 2001 From: Jonathan Wright Date: Wed, 28 Feb 2024 23:05:16 -0600 Subject: [PATCH 43/60] update build version for epel9 --- disable-poetry-light.patch | 85 ++++++++++++++++++++++++++++++++++++++ python-dns-lexicon.spec | 12 +++++- 2 files changed, 95 insertions(+), 2 deletions(-) create mode 100644 disable-poetry-light.patch diff --git a/disable-poetry-light.patch b/disable-poetry-light.patch new file mode 100644 index 0000000..1b71fb8 --- /dev/null +++ b/disable-poetry-light.patch @@ -0,0 +1,85 @@ +diff -uNr lexicon-3.17.0/pyproject.toml lexicon-3.17.0.mod/pyproject.toml +--- lexicon-3.17.0/pyproject.toml 2023-11-06 16:21:46.000000000 -0600 ++++ lexicon-3.17.0.mod/pyproject.toml 2024-02-01 04:28:53.861285119 -0600 +@@ -61,32 +61,6 @@ + # Extra "full" list must contain all other extras + full = ["boto3", "localzone", "softlayer", "zeep", "oci"] + +-[tool.poetry.group.dev.dependencies] +-esbonio = "*" +-packaging = "*" +-pytest = "*" +-pytest-cov = "*" +-pytest-xdist = "*" +-vcrpy = "*" +-# We add flake8 conditionally to recent Python version to get modern versions +-# of flake8 cleaned of several issues. It just means that linting cannot be done +-# on the initial release of Python 3.8 (version 3.8.0). This is a decent constraint. +-flake8 = { version = "*", python = ">=3.8.1" } +-isort = "*" +-tox = ">=4" +-black = "*" +-mypy = "*" +-toml = "*" +-types-PyYAML = "*" +-types-pytz = "*" +-types-requests = "*" +-types-toml = "*" +- +-[tool.poetry.group.docs.dependencies] +-sphinx = "*" +-sphinx_rtd_theme = "*" +-toml = "*" +- + [tool.poetry.scripts] + lexicon = "lexicon._private.cli:main" + +diff -uNr lexicon-3.17.0/setup.cfg lexicon-3.17.0.mod/setup.cfg +--- lexicon-3.17.0/setup.cfg 2023-11-06 16:21:46.000000000 -0600 ++++ lexicon-3.17.0.mod/setup.cfg 2024-02-01 04:05:39.191101574 -0600 +@@ -5,45 +5,3 @@ + [tox:tox] + envlist = cover,lint,mypy + isolated_build = true +- +-# Standard env will run all test available for all providers. +-[testenv] +-allowlist_externals = poetry +-extras = +- full +-setenv = +- PYTEST_ADDOPTS = {env:PYTEST_ADDOPTS:--numprocesses auto} +- PYTHONHASHSEED = 0 +-commands_pre = +- poetry install --extras full --no-root --sync +-commands = +- poetry run pytest tests/ \ +- --junitxml=junit/test-results.xml --dist=loadfile +- +-# Cover env will run all test available for all providers with coverage enabled. +-[testenv:cover] +-commands = +- poetry run pytest tests/ \ +- --junitxml=junit/test-results.xml --dist=loadfile \ +- --cov=lexicon --cov-report=term-missing --cov-report=xml +- +-# Light env will run all tests except for providers with optional dependencies. +-[testenv:light] +-extras = +-commands_pre = +- poetry install --no-root --sync +-commands = +- poetry run pytest tests/ \ +- --junitxml=junit/test-results.xml --dist=loadfile \ +- --xfail-providers-with-missing-deps +- +-# Lint env will check for code quality and errors, and fails if it does not match the minimal requirements. +-[testenv:lint] +-commands = +- poetry run flake8 src tests +- +- +-# Mypy env will check for types in the Lexicon codebase. +-[testenv:mypy] +-commands = +- poetry run mypy src tests diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 689aec4..89b6f53 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.17.0 %endif Name: python-%{pypi_name} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -27,6 +27,11 @@ BuildArch: noarch BuildRequires: python3-devel +# epel is missing full poetry and light packages needed for tests +%if 0%{?rhel >= 8} +#Patch: disable-poetry-light.patch +%endif + # required to run the test suite %if %{with tests} BuildRequires: python3-pytest @@ -137,7 +142,7 @@ rm -rf %{pypi_name}.egg-info %if %{with extras} %pyproject_buildrequires -r -t -e light -x gransy,localzone,oci,route53 %else -%pyproject_buildrequires -r -t -e light +%pyproject_buildrequires -r %endif @@ -211,6 +216,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Feb 29 2024 Jonathan Wright - 3.17.0-4 +- Update spec for building on epel9 + * Fri Jan 26 2024 Fedora Release Engineering - 3.17.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From f6d9375c480e09cae1862a9fa61125f0694a45c1 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Thu, 27 Jun 2024 19:37:28 +0200 Subject: [PATCH 44/60] Rebuilt for Python 3.13 --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 89b6f53..4b4622b 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.17.0 %endif Name: python-%{pypi_name} -Release: 4%{?dist} +Release: 5%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -216,6 +216,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Jun 27 2024 Python Maint - 3.17.0-5 +- Rebuilt for Python 3.13 + * Thu Feb 29 2024 Jonathan Wright - 3.17.0-4 - Update spec for building on epel9 From 11f7c31776fd09c09d26070deaaf69d5d759518b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 11:10:38 +0000 Subject: [PATCH 45/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 4b4622b..c224e93 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,7 +16,7 @@ Version: 3.17.0 %endif Name: python-%{pypi_name} -Release: 5%{?dist} +Release: 6%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -216,6 +216,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Fri Jul 19 2024 Fedora Release Engineering - 3.17.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Thu Jun 27 2024 Python Maint - 3.17.0-5 - Rebuilt for Python 3.13 From d5eb57c3dede9e61c07717fae23f4d825603493b Mon Sep 17 00:00:00 2001 From: Ben Maconi Date: Sat, 23 Nov 2024 09:56:30 -0600 Subject: [PATCH 46/60] Updated to 3.18.0 --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index 31f2a59..b93aa32 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.17.0.tar.gz) = 1bc182f5881d6acfac72b84331ba50da1219178d274c92e532ed11e73aa79696681d28a002cd1e23f48590953f48e50b62c2ef2db020a07ecf88547717508c0c +SHA512 (lexicon-3.18.0.tar.gz) = da2804caeef6cd96eb53f7414833757905afa269f328271fccbdb06d988fb46695a0cb917b8dbdfb66579b01cc98d07de8eb7e1cb132c47d49fe05e2ebe18127 From 7ff4c68fbe632900f3d0aae3ff449a0fe17b416b Mon Sep 17 00:00:00 2001 From: Ben Maconi Date: Sat, 23 Nov 2024 11:18:17 -0600 Subject: [PATCH 47/60] added global forgeversion --- python-dns-lexicon.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index c224e93..b12d638 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,7 @@ %global forgeurl https://github.com/AnalogJ/lexicon -Version: 3.17.0 +%global forgeversion 3.18.0 +Version: 3.18.0 %forgemeta %global pypi_name dns-lexicon @@ -16,7 +17,7 @@ Version: 3.17.0 %endif Name: python-%{pypi_name} -Release: 6%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -216,6 +217,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Sat Nov 23 2024 Ben Maconi - 3.18.0-1 +- Updated to 3.18.0 + * Fri Jul 19 2024 Fedora Release Engineering - 3.17.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 5bd84d818f8a53846cd3263c447a3ee757f06493 Mon Sep 17 00:00:00 2001 From: Nick Bebout Date: Sat, 23 Nov 2024 11:33:21 -0600 Subject: [PATCH 48/60] Try fix by excluding GoDaddyProviderTests --- python-dns-lexicon.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index b12d638..078930d 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -165,7 +165,7 @@ sed -i '1d' src/lexicon/_private/cli.py # With tldextract 3.3.0+ we can use Fedora's public suffix list by running # tldextract --update --suffix_list_url "file:///usr/share/publicsuffix/public_suffix_list.dat" # prior to running the tests -TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not Route53Provider and not AliyunProviderTests and not AuroraProviderTests and not Route53ProviderTests" +TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not Route53Provider and not AliyunProviderTests and not AuroraProviderTests and not Route53ProviderTests and not GoDaddyProviderTests" # lexicon providers which do not work in Fedora due to missing dependencies: # - SoftLayerProviderTests From 8f77d4b3d532b4ed8bf15d03f6a93d669faea248 Mon Sep 17 00:00:00 2001 From: Nick Bebout Date: Sat, 23 Nov 2024 11:48:28 -0600 Subject: [PATCH 49/60] Disable tests for now --- python-dns-lexicon.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 078930d..38fa41f 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -16,6 +16,9 @@ Version: 3.18.0 %bcond_without extras %endif +# disable tests for now +%bcond_without tests + Name: python-%{pypi_name} Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way From bf63b51a3c948190fc79f60d87479516c9d5320e Mon Sep 17 00:00:00 2001 From: Nick Bebout Date: Sat, 23 Nov 2024 12:00:08 -0600 Subject: [PATCH 50/60] Disable tests more --- python-dns-lexicon.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 38fa41f..8fa6769 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -180,7 +180,8 @@ TEST_SELECTOR+=" and not DDNSProviderTests and not DuckdnsProviderTests and not # Miro Hrončok, 2020-09-11: # > I am afraid the %%tox macro can only work with "static" deps declaration, # > not with arbitrary installers invoked as commands, sorry about that. -%pytest -v -k "${TEST_SELECTOR}" +# %pytest -v -k "${TEST_SELECTOR}" +# disable tests because it keeps wanting to download the public suffix list %endif %install From 0b0ac66461e1dc0f3c22cf55b3a87c6270895bce Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 13:49:07 +0000 Subject: [PATCH 51/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 8fa6769..c93837a 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -20,7 +20,7 @@ Version: 3.18.0 %bcond_without tests Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -221,6 +221,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Sat Jan 18 2025 Fedora Release Engineering - 3.18.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sat Nov 23 2024 Ben Maconi - 3.18.0-1 - Updated to 3.18.0 From 23bd76152a569093eb477cdbcd0192a75a0638c1 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Sat, 4 Jan 2025 09:49:20 +0100 Subject: [PATCH 52/60] update to 3.20.1 --- python-dns-lexicon.spec | 14 +++++++++----- sources | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index c93837a..91bbde6 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,14 +1,14 @@ -%global forgeurl https://github.com/AnalogJ/lexicon -%global forgeversion 3.18.0 -Version: 3.18.0 +%global forgeurl https://github.com/dns-lexicon/dns-lexicon +%global forgeversion 3.20.1 +Version: 3.20.1 %forgemeta %global pypi_name dns-lexicon %if 0%{?rhel} >= 8 # EPEL is currently missing dependencies used by the extras metapackages -# EPEL is currently missing dependancies used by the tests +# EPEL is currently missing dependencies used by the tests %bcond_with tests %bcond_with extras %else @@ -138,9 +138,10 @@ dependencies necessary to use the Route 53 provider. %prep -%autosetup -n lexicon-%{version} -p1 +%autosetup -n %{pypi_name}-%{version} -p1 # Remove bundled egg-info rm -rf %{pypi_name}.egg-info +rm -f uv.lock %generate_buildrequires %if %{with extras} @@ -221,6 +222,9 @@ rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests # }}} %changelog +* Thu Jan 23 2025 Felix Schwarz - 3.20.1-1 +- update to 3.20.1 + * Sat Jan 18 2025 Fedora Release Engineering - 3.18.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild diff --git a/sources b/sources index b93aa32..305f6a1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lexicon-3.18.0.tar.gz) = da2804caeef6cd96eb53f7414833757905afa269f328271fccbdb06d988fb46695a0cb917b8dbdfb66579b01cc98d07de8eb7e1cb132c47d49fe05e2ebe18127 +SHA512 (dns-lexicon-3.20.1.tar.gz) = 98a29bc67596e58ada43373fd1dfa2a5c35512dd33924969df0d16c10cf2e53cf2bc564488c9f7a1b682b63a7959cd2073207a8d77435aa62a04f408024d85fd From 74a28a626206b7b9f4e7f651e90d59d61716c127 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Sun, 5 Jan 2025 16:42:19 +0100 Subject: [PATCH 53/60] re-enable (most) tests --- python-dns-lexicon-tox-config.patch | 14 ++++++++++++++ python-dns-lexicon.spec | 7 ++++--- 2 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 python-dns-lexicon-tox-config.patch diff --git a/python-dns-lexicon-tox-config.patch b/python-dns-lexicon-tox-config.patch new file mode 100644 index 0000000..dd22740 --- /dev/null +++ b/python-dns-lexicon-tox-config.patch @@ -0,0 +1,14 @@ +diff --git a/pyproject.toml b/pyproject.toml +index d17fecc..be0c6e6 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -126,8 +126,7 @@ extend-ignore = [ "E203", "E501" ] + envlist = [ "cover", "lint" , "mypy" ] + + [tool.tox.env_run_base] +-runner = "uv-venv-lock-runner" +-with_dev = true ++with_dev = false + uv_sync_flags = [ "--python={env_python}" ] # Fix until https://github.com/tox-dev/tox-uv/issues/110 is fixed + extras = [ "full" ] + setenv.PYTEST_ADDOPTS = "--numprocesses auto" diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 91bbde6..f9337bf 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -27,6 +27,7 @@ License: MIT URL: %{forgeurl} # pypi releases don't contain necessary data to run the tests Source0: %{forgesource} +Patch: python-dns-lexicon-tox-config.patch BuildArch: noarch BuildRequires: python3-devel @@ -40,6 +41,7 @@ BuildRequires: python3-devel %if %{with tests} BuildRequires: python3-pytest BuildRequires: python3-pytest-vcr +BuildRequires: python3-pytest-xdist %endif @@ -169,7 +171,7 @@ sed -i '1d' src/lexicon/_private/cli.py # With tldextract 3.3.0+ we can use Fedora's public suffix list by running # tldextract --update --suffix_list_url "file:///usr/share/publicsuffix/public_suffix_list.dat" # prior to running the tests -TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not Route53Provider and not AliyunProviderTests and not AuroraProviderTests and not Route53ProviderTests and not GoDaddyProviderTests" +TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not Route53Provider and not AliyunProviderTests and not AuroraProviderTests and not Route53ProviderTests and not GoDaddyProviderTests and not test_client and not test_library" # lexicon providers which do not work in Fedora due to missing dependencies: # - SoftLayerProviderTests @@ -181,8 +183,7 @@ TEST_SELECTOR+=" and not DDNSProviderTests and not DuckdnsProviderTests and not # Miro Hrončok, 2020-09-11: # > I am afraid the %%tox macro can only work with "static" deps declaration, # > not with arbitrary installers invoked as commands, sorry about that. -# %pytest -v -k "${TEST_SELECTOR}" -# disable tests because it keeps wanting to download the public suffix list +%pytest -x -v -k "${TEST_SELECTOR}" -n auto --dist=loadfile --xfail-providers-with-missing-deps tests/ %endif %install From 1a6298755927b707f2da0c719c7071092ff2e1cd Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Sun, 5 Jan 2025 17:04:01 +0100 Subject: [PATCH 54/60] rework %check so that most tests are run --- create-local-tld-cache.py | 38 +++++++++++++++++++++++++++++++++++ python-dns-lexicon.spec | 42 +++++++++++++++++++++------------------ 2 files changed, 61 insertions(+), 19 deletions(-) create mode 100644 create-local-tld-cache.py diff --git a/create-local-tld-cache.py b/create-local-tld-cache.py new file mode 100644 index 0000000..c57a6c6 --- /dev/null +++ b/create-local-tld-cache.py @@ -0,0 +1,38 @@ +#!/usr/bin/python3 + +from pathlib import Path +import json +import os +import subprocess +import sys + +if len(sys.argv) != 2: + sys.stderr.write('usage: %s \n' % sys.argv[0]) + +buildroot_sitelib_dir = sys.argv[1] +sys.path.insert(0, buildroot_sitelib_dir) + +from tldextract.cache import get_cache_dir, DiskCache + +if 'TLDEXTRACT_CACHE' not in os.environ: + raise ValueError('must set "TLDEXTRACT_CACHE" environment variable') + +local_cache = Path('/usr/share/publicsuffix/public_suffix_list.dat') +if not local_cache.exists(): + raise FileNotFoundError(local_cache) + +url_local_cache = f'file://{local_cache}' +subprocess.run(['/usr/bin/tldextract', '--update', f'--suffix_list_url={url_local_cache}'], check=True) + +cache = DiskCache(cache_dir=get_cache_dir()) +namespace = 'publicsuffix.org-tlds' +cache_with_local_data = cache._key_to_cachefile_path(namespace, {'urls': (url_local_cache,), 'fallback_to_snapshot': True}) +func = lambda **kwargs: json.loads(Path(cache_with_local_data).read_text()) + +kwargs = { + 'cache': cache, + 'urls': ('https://publicsuffix.org/list/public_suffix_list.dat', 'https://raw.githubusercontent.com/publicsuffix/list/master/public_suffix_list.dat'), + 'fallback_to_snapshot': True, +} +cache.run_and_cache(func, namespace=namespace, kwargs=kwargs, hashed_argnames=('urls', 'fallback_to_snapshot')) + diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index f9337bf..6fc6779 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -27,6 +27,7 @@ License: MIT URL: %{forgeurl} # pypi releases don't contain necessary data to run the tests Source0: %{forgesource} +Source1: create-local-tld-cache.py Patch: python-dns-lexicon-tox-config.patch BuildArch: noarch @@ -42,6 +43,8 @@ BuildRequires: python3-devel BuildRequires: python3-pytest BuildRequires: python3-pytest-vcr BuildRequires: python3-pytest-xdist +BuildRequires: publicsuffix-list +BuildRequires: python3-tldextract %endif @@ -160,30 +163,32 @@ sed -i '1d' src/lexicon/_private/cli.py %if %{with tests} %check -# The following tests use tldextract which tries to fetch -# https://raw.githubusercontent.com/publicsuffix/list/master/public_suffix_list.dat -# on first invocation +export TLDEXTRACT_CACHE=%{_builddir}/tldextract-cache + +# tldextract tries to fetch "public_suffix_list.dat" from the internet on first +# invocation. # (see https://github.com/john-kurkowski/tldextract/tree/master#note-about-caching) -# - AutoProviderTests -# - NamecheapProviderTests -# - NamecheapManagedProviderTests -# Disabling those until tldextract 3.3.0+ is available on Fedora. -# With tldextract 3.3.0+ we can use Fedora's public suffix list by running -# tldextract --update --suffix_list_url "file:///usr/share/publicsuffix/public_suffix_list.dat" -# prior to running the tests -TEST_SELECTOR="not AutoProviderTests and not NamecheapProviderTests and not NamecheapManagedProviderTests and not Route53Provider and not AliyunProviderTests and not AuroraProviderTests and not Route53ProviderTests and not GoDaddyProviderTests and not test_client and not test_library" +# The "publicsuffix-list" package provides that data however we need to use +# that to populate a local cache directory.Most of the work is done via: +# $ tldextract --update --suffix_list_url "file:///usr/share/publicsuffix/public_suffix_list.dat" +# +# However tldextract uses the "file://" url as cache key while the tests use +# "https://publicsuffix.org/list/public_suffix_list.dat". I did not find a way +# get tldextract to use the https url so a small Python script will handle that. +/usr/bin/python3 %{SOURCE1} %{buildroot}%{python3_sitelib} # lexicon providers which do not work in Fedora due to missing dependencies: # - SoftLayerProviderTests -TEST_SELECTOR+=" and not SoftLayerProviderTests" +TEST_SELECTOR="not SoftLayerProviderTests" + %if %{without extras} -TEST_SELECTOR+=" and not DDNSProviderTests and not DuckdnsProviderTests and not GransyProviderTests and not LocalzoneProviderTests and not OciProviderTests and not OciInstancePrincipalProviderTests and not Route53ProviderTests" +TEST_SELECTOR+=" and not GransyProviderTests and not LocalzoneProviderTests and not OciProviderTests and not OciInstancePrincipalProviderTests and not Route53ProviderTests" %endif -# The %%tox macro lacks features so we need to use pytest directly: -# Miro Hrončok, 2020-09-11: -# > I am afraid the %%tox macro can only work with "static" deps declaration, -# > not with arbitrary installers invoked as commands, sorry about that. -%pytest -x -v -k "${TEST_SELECTOR}" -n auto --dist=loadfile --xfail-providers-with-missing-deps tests/ + +# We do not use "--xfail-providers-with-missing-deps" because we want to detect +# missing dependencies unless we already know that a certain provider will not +# work. +%pytest -v -k "${TEST_SELECTOR}" -n auto --dist=loadfile tests/ %endif %install @@ -191,7 +196,6 @@ TEST_SELECTOR+=" and not DDNSProviderTests and not DuckdnsProviderTests and not install -pm 0755 %{buildroot}/%{_bindir}/lexicon %{buildroot}/%{_bindir}/lexicon-%{python3_version} cd %{buildroot}/%{_bindir} ln -s lexicon-%{python3_version} lexicon-3 -rm -rf %{buildroot}%{python3_sitelib}/lexicon/tests %files -n python3-%{pypi_name} From 29a0225dc0d66e369deeb48a43b9d9c897240969 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Sat, 19 Apr 2025 11:39:28 +0200 Subject: [PATCH 55/60] update to 3.21.0 --- python-dns-lexicon-findall.patch | 44 +++++++++++++++++++++++++++++ python-dns-lexicon-tox-config.patch | 4 +-- python-dns-lexicon.spec | 11 ++++++-- sources | 2 +- 4 files changed, 55 insertions(+), 6 deletions(-) create mode 100644 python-dns-lexicon-findall.patch diff --git a/python-dns-lexicon-findall.patch b/python-dns-lexicon-findall.patch new file mode 100644 index 0000000..39f6497 --- /dev/null +++ b/python-dns-lexicon-findall.patch @@ -0,0 +1,44 @@ +diff --git a/src/lexicon/_private/providers/easyname.py b/src/lexicon/_private/providers/easyname.py +index 827b9cf..3e6dbb4 100644 +--- a/src/lexicon/_private/providers/easyname.py ++++ b/src/lexicon/_private/providers/easyname.py +@@ -273,7 +273,7 @@ class Provider(BaseProvider): + rec["priority"] = (columns[3].contents[1].string or "").strip() + rec["ttl"] = (columns[4].contents[1].string or "").strip() + rec["id"] = "" +- for a in columns[5].findAll( ++ for a in columns[5].find_all( + "a", class_="button button--transparent" + ): + rec["id"] = int(a["href"].rsplit("/", 1)[-1]) +@@ -367,7 +367,7 @@ class Provider(BaseProvider): + def _is_zone_tr(elm): + return elm.name.lower() == "tr" and (elm.has_attr("class")) + +- rows = dns_table.findAll(_is_zone_tr) ++ rows = dns_table.find_all(_is_zone_tr) + assert rows is not None and rows, "Could not find any DNS entries" + return rows + +diff --git a/src/lexicon/_private/providers/henet.py b/src/lexicon/_private/providers/henet.py +index aed38ec..28e5afa 100644 +--- a/src/lexicon/_private/providers/henet.py ++++ b/src/lexicon/_private/providers/henet.py +@@ -144,7 +144,7 @@ class Provider(BaseProvider): + def is_dns_tr_type(klass): + return klass and re.compile("dns_tr").search(klass) + +- records = html.findAll("tr", class_=is_dns_tr_type) ++ records = html.find_all("tr", class_=is_dns_tr_type) + + # If the tag couldn't be found, error, otherwise, return the value of the tag + if records is None or not records: +@@ -153,7 +153,7 @@ class Provider(BaseProvider): + + new_records = [] + for dns_tr in records: +- tds = dns_tr.findAll("td") ++ tds = dns_tr.find_all("td") + # Process HTML in the TR children to derive each object + rec = {} + rec["zone_id"] = tds[0].string diff --git a/python-dns-lexicon-tox-config.patch b/python-dns-lexicon-tox-config.patch index dd22740..039c798 100644 --- a/python-dns-lexicon-tox-config.patch +++ b/python-dns-lexicon-tox-config.patch @@ -1,5 +1,5 @@ diff --git a/pyproject.toml b/pyproject.toml -index d17fecc..be0c6e6 100644 +index 4122ff9..936bbdc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -126,8 +126,7 @@ extend-ignore = [ "E203", "E501" ] @@ -9,6 +9,6 @@ index d17fecc..be0c6e6 100644 -runner = "uv-venv-lock-runner" -with_dev = true +with_dev = false - uv_sync_flags = [ "--python={env_python}" ] # Fix until https://github.com/tox-dev/tox-uv/issues/110 is fixed extras = [ "full" ] setenv.PYTEST_ADDOPTS = "--numprocesses auto" + setenv.PYTHONHASHSEED = "0" diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 6fc6779..3767c2a 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,7 +1,7 @@ %global forgeurl https://github.com/dns-lexicon/dns-lexicon -%global forgeversion 3.20.1 -Version: 3.20.1 +%global forgeversion 3.21.0 +Version: %{forgeversion} %forgemeta %global pypi_name dns-lexicon @@ -20,7 +20,7 @@ Version: 3.20.1 %bcond_without tests Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -29,6 +29,8 @@ URL: %{forgeurl} Source0: %{forgesource} Source1: create-local-tld-cache.py Patch: python-dns-lexicon-tox-config.patch +# submitted upstream as https://github.com/dns-lexicon/dns-lexicon/pull/29 +Patch2: python-dns-lexicon-findall.patch BuildArch: noarch BuildRequires: python3-devel @@ -227,6 +229,9 @@ ln -s lexicon-%{python3_version} lexicon-3 # }}} %changelog +* Sat Apr 19 2025 Felix Schwarz - 3.21.0-1 +- update to 3.21.0 + * Thu Jan 23 2025 Felix Schwarz - 3.20.1-1 - update to 3.20.1 diff --git a/sources b/sources index 305f6a1..cec2b9c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (dns-lexicon-3.20.1.tar.gz) = 98a29bc67596e58ada43373fd1dfa2a5c35512dd33924969df0d16c10cf2e53cf2bc564488c9f7a1b682b63a7959cd2073207a8d77435aa62a04f408024d85fd +SHA512 (dns-lexicon-3.21.0.tar.gz) = 1b132fae2741d8cf505c0779724b5e0d518683226099c796f1b77b4ceb07e1fbecccb4d82869be090f2c379b3d17f19766857e49f83760d793a0934f520bc8ed From fb10e373de1b03511419fb3f890a0aa6de0ce876 Mon Sep 17 00:00:00 2001 From: Felix Schwarz Date: Mon, 28 Apr 2025 21:36:13 +0200 Subject: [PATCH 56/60] update to 3.21.1 --- python-dns-lexicon-findall.patch | 44 -------------------------------- python-dns-lexicon.spec | 7 ++--- sources | 2 +- 3 files changed, 5 insertions(+), 48 deletions(-) delete mode 100644 python-dns-lexicon-findall.patch diff --git a/python-dns-lexicon-findall.patch b/python-dns-lexicon-findall.patch deleted file mode 100644 index 39f6497..0000000 --- a/python-dns-lexicon-findall.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff --git a/src/lexicon/_private/providers/easyname.py b/src/lexicon/_private/providers/easyname.py -index 827b9cf..3e6dbb4 100644 ---- a/src/lexicon/_private/providers/easyname.py -+++ b/src/lexicon/_private/providers/easyname.py -@@ -273,7 +273,7 @@ class Provider(BaseProvider): - rec["priority"] = (columns[3].contents[1].string or "").strip() - rec["ttl"] = (columns[4].contents[1].string or "").strip() - rec["id"] = "" -- for a in columns[5].findAll( -+ for a in columns[5].find_all( - "a", class_="button button--transparent" - ): - rec["id"] = int(a["href"].rsplit("/", 1)[-1]) -@@ -367,7 +367,7 @@ class Provider(BaseProvider): - def _is_zone_tr(elm): - return elm.name.lower() == "tr" and (elm.has_attr("class")) - -- rows = dns_table.findAll(_is_zone_tr) -+ rows = dns_table.find_all(_is_zone_tr) - assert rows is not None and rows, "Could not find any DNS entries" - return rows - -diff --git a/src/lexicon/_private/providers/henet.py b/src/lexicon/_private/providers/henet.py -index aed38ec..28e5afa 100644 ---- a/src/lexicon/_private/providers/henet.py -+++ b/src/lexicon/_private/providers/henet.py -@@ -144,7 +144,7 @@ class Provider(BaseProvider): - def is_dns_tr_type(klass): - return klass and re.compile("dns_tr").search(klass) - -- records = html.findAll("tr", class_=is_dns_tr_type) -+ records = html.find_all("tr", class_=is_dns_tr_type) - - # If the tag couldn't be found, error, otherwise, return the value of the tag - if records is None or not records: -@@ -153,7 +153,7 @@ class Provider(BaseProvider): - - new_records = [] - for dns_tr in records: -- tds = dns_tr.findAll("td") -+ tds = dns_tr.find_all("td") - # Process HTML in the TR children to derive each object - rec = {} - rec["zone_id"] = tds[0].string diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 3767c2a..a282e72 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/dns-lexicon/dns-lexicon -%global forgeversion 3.21.0 +%global forgeversion 3.21.1 Version: %{forgeversion} %forgemeta @@ -29,8 +29,6 @@ URL: %{forgeurl} Source0: %{forgesource} Source1: create-local-tld-cache.py Patch: python-dns-lexicon-tox-config.patch -# submitted upstream as https://github.com/dns-lexicon/dns-lexicon/pull/29 -Patch2: python-dns-lexicon-findall.patch BuildArch: noarch BuildRequires: python3-devel @@ -229,6 +227,9 @@ ln -s lexicon-%{python3_version} lexicon-3 # }}} %changelog +* Mon Apr 28 2025 Felix Schwarz - 3.21.1-1 +- update to 3.21.1 + * Sat Apr 19 2025 Felix Schwarz - 3.21.0-1 - update to 3.21.0 diff --git a/sources b/sources index cec2b9c..490f57d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (dns-lexicon-3.21.0.tar.gz) = 1b132fae2741d8cf505c0779724b5e0d518683226099c796f1b77b4ceb07e1fbecccb4d82869be090f2c379b3d17f19766857e49f83760d793a0934f520bc8ed +SHA512 (dns-lexicon-3.21.1.tar.gz) = 0f53001edf2425afe7b7c4315e974ee47c956b659964998b942943788711c57634eea2d7974e21005be7f0edf16800e6577c49c8789e34f2133c4f5be8ac7ac1 From 82f71c1257b29c45274d597f5d7ad7f7ed289411 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 6 Jun 2025 18:00:29 +0200 Subject: [PATCH 57/60] Rebuilt for Python 3.14 --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index a282e72..1b1056b 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -20,7 +20,7 @@ Version: %{forgeversion} %bcond_without tests Name: python-%{pypi_name} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -227,6 +227,9 @@ ln -s lexicon-%{python3_version} lexicon-3 # }}} %changelog +* Fri Jun 06 2025 Python Maint - 3.21.1-2 +- Rebuilt for Python 3.14 + * Mon Apr 28 2025 Felix Schwarz - 3.21.1-1 - update to 3.21.1 From 9de8403851af075b371c8426c8b35cea82a12eb1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 07:39:27 +0000 Subject: [PATCH 58/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index 1b1056b..a82dbf2 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -20,7 +20,7 @@ Version: %{forgeversion} %bcond_without tests Name: python-%{pypi_name} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -227,6 +227,9 @@ ln -s lexicon-%{python3_version} lexicon-3 # }}} %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 3.21.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Fri Jun 06 2025 Python Maint - 3.21.1-2 - Rebuilt for Python 3.14 From 66df8eba2b9b9b82ff987e60998fdb3a77cbad71 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 15 Aug 2025 13:38:37 +0200 Subject: [PATCH 59/60] Rebuilt for Python 3.14.0rc2 bytecode --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index a82dbf2..cf4aa05 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -20,7 +20,7 @@ Version: %{forgeversion} %bcond_without tests Name: python-%{pypi_name} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -227,6 +227,9 @@ ln -s lexicon-%{python3_version} lexicon-3 # }}} %changelog +* Fri Aug 15 2025 Python Maint - 3.21.1-4 +- Rebuilt for Python 3.14.0rc2 bytecode + * Fri Jul 25 2025 Fedora Release Engineering - 3.21.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 398bc5a3a12b98ee0a76774cf1b424a11f4d9d4f Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 19 Sep 2025 13:11:50 +0200 Subject: [PATCH 60/60] Rebuilt for Python 3.14.0rc3 bytecode --- python-dns-lexicon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-dns-lexicon.spec b/python-dns-lexicon.spec index cf4aa05..de3d1f0 100644 --- a/python-dns-lexicon.spec +++ b/python-dns-lexicon.spec @@ -20,7 +20,7 @@ Version: %{forgeversion} %bcond_without tests Name: python-%{pypi_name} -Release: 4%{?dist} +Release: 5%{?dist} Summary: Manipulate DNS records on various DNS providers in a standardized/agnostic way License: MIT @@ -227,6 +227,9 @@ ln -s lexicon-%{python3_version} lexicon-3 # }}} %changelog +* Fri Sep 19 2025 Python Maint - 3.21.1-5 +- Rebuilt for Python 3.14.0rc3 bytecode + * Fri Aug 15 2025 Python Maint - 3.21.1-4 - Rebuilt for Python 3.14.0rc2 bytecode