diff --git a/python-mailman.spec b/python-mailman.spec index b0b350a..cd69323 100644 --- a/python-mailman.spec +++ b/python-mailman.spec @@ -12,7 +12,9 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + %global flavor @BUILD_FLAVOR@%{nil} %if "%{flavor}" == "test" @@ -22,51 +24,22 @@ %define psuffix %{nil} %bcond_with test %endif - %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 Name: python-mailman Version: 3.3.0 Release: 0 -License: GPL-3.0 Summary: Mailman -- the GNU mailing list manager -Url: https://www.list.org +License: GPL-3.0-only Group: Development/Languages/Python +URL: https://www.list.org Source: https://files.pythonhosted.org/packages/source/m/mailman/mailman-%{version}.tar.gz # whitespace fix -Patch0: python-mailman-test_interact_default_banner.patch -BuildRequires: python-rpm-macros +Patch0: python-mailman-test_interact_default_banner.patch BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} -%if %{with test} -BuildRequires: %{python_module aiosmtpd >= 1.1} -BuildRequires: %{python_module alembic} -BuildRequires: %{python_module atpublic} -BuildRequires: %{python_module authheaders >= 0.9.2} -BuildRequires: %{python_module authres >= 1.0.1} -BuildRequires: %{python_module click >= 7.0} -BuildRequires: %{python_module dnspython >= 1.14.0} -BuildRequires: %{python_module falcon > 1.0.0} -BuildRequires: %{python_module flufl.bounce} -BuildRequires: %{python_module flufl.i18n >= 2.0} -BuildRequires: %{python_module flufl.lock >= 3.1} -BuildRequires: %{python_module flufl.testing} -BuildRequires: %{python_module gunicorn} -BuildRequires: %{python_module lazr.config} -BuildRequires: %{python_module passlib} -BuildRequires: %{python_module python-dateutil >= 2.0} -BuildRequires: %{python_module pytest} -BuildRequires: %{python_module mailman >= %{version}} -BuildRequires: %{python_module nose} -BuildRequires: %{python_module nose2} -BuildRequires: %{python_module requests} -BuildRequires: %{python_module sqlalchemy >= 1.2.3} -BuildRequires: %{python_module zope.component} -BuildRequires: %{python_module zope.configuration} -BuildRequires: %{python_module zope.event} -BuildRequires: %{python_module zope.interface} -%endif BuildRequires: fdupes +BuildRequires: python-rpm-macros Requires: python-aiosmtpd >= 1.1 Requires: python-alembic Requires: python-atpublic @@ -90,7 +63,34 @@ Requires: python-zope.event Requires: python-zope.interface Provides: mailman = %{version} BuildArch: noarch - +%if %{with test} +BuildRequires: %{python_module aiosmtpd >= 1.1} +BuildRequires: %{python_module alembic} +BuildRequires: %{python_module atpublic} +BuildRequires: %{python_module authheaders >= 0.9.2} +BuildRequires: %{python_module authres >= 1.0.1} +BuildRequires: %{python_module click >= 7.0} +BuildRequires: %{python_module dnspython >= 1.14.0} +BuildRequires: %{python_module falcon > 1.0.0} +BuildRequires: %{python_module flufl.bounce} +BuildRequires: %{python_module flufl.i18n >= 2.0} +BuildRequires: %{python_module flufl.lock >= 3.1} +BuildRequires: %{python_module flufl.testing} +BuildRequires: %{python_module gunicorn} +BuildRequires: %{python_module lazr.config} +BuildRequires: %{python_module mailman >= %{version}} +BuildRequires: %{python_module nose2} +BuildRequires: %{python_module nose} +BuildRequires: %{python_module passlib} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module python-dateutil >= 2.0} +BuildRequires: %{python_module requests} +BuildRequires: %{python_module sqlalchemy >= 1.2.3} +BuildRequires: %{python_module zope.component} +BuildRequires: %{python_module zope.configuration} +BuildRequires: %{python_module zope.event} +BuildRequires: %{python_module zope.interface} +%endif %python_subpackages %description @@ -102,7 +102,7 @@ Mailman -- the GNU mailing list manager %build pushd src/mailman -for i in $(grep -r '^from importlib_resources' | sed 's/\(.*\.py\):.*/\1/'); do +for i in $(grep -r '^from importlib_resources' | sed 's/\(.*\.py\):.*/\1/'); do line=$(grep '^from importlib_resources' $i) what_import=$(echo $line | sed 's:.* import ::') sed -i "s@^\(from importlib_resources.*\)@try:\n from importlib.resources import $what_import\nexcept ImportError:\n \1\n@" $i; @@ -118,6 +118,7 @@ sed '/importlib_resources/d' -i src/mailman.egg-info/requires.txt setup.py %endif %check +# TODO, needs to figure out how tests has to be run %if %{with test} # tests, that needs to be fixed (ERRORs) # removing whole test files, I have not found a way to