Spec URL: https://hiwkby.fedorapeople.org/python-oslo-middleware.spec SRPM URL: https://hiwkby.fedorapeople.org/python-oslo-middleware-4.3.0-1.src.rpm Description: OpenStack Oslo Middleware library Fedora Account System Username:hiwkby Koji scratch build result: https://koji.fedoraproject.org/koji/taskinfo?taskID=73671685 This package retired two years ago but the former packager says feel free to take it. I will take this and update to 4.3.0 https://src.fedoraproject.org/rpms/python-oslo-middleware https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/G4FL3WR6BXVRZ23WO4FRLDPGHLCIAKYP/
I fixes issues on python packaging guidelines. Spec URL: https://hiwkby.fedorapeople.org/python-oslo-middleware.spec SRPM URL: https://hiwkby.fedorapeople.org/python-oslo-middleware-4.3.0-2.fc36.src.rpm Koji(success!): https://koji.fedoraproject.org/koji/taskinfo?taskID=76454537
Hello Hirotaka, thank you for the package. > Version: 4.3.0 I am not familiar with launchpad.net and I am not sure how to find what is the latest official release but the tarballs here https://tarballs.opendev.org/openstack/oslo.messaging/ go as high as 14.0.0 Should we rather package a higher version? > URL: https://launchpad.net/oslo I think a better URL would be https://launchpad.net/oslo.messaging > %global common_desc2 \ > Tests for the Oslo Middleware library. We can keep this if you prefer but the variable name is non-descriptive and it is used only once. I would simply do %description -n python3-%{pkg_name}-tests Tests for the Oslo Middleware library. and drop the variable. > # License file for jslibs using in -doc subpkg > Source1: LICENSE_doc In the package review template, we have the two following checks [ ]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [ ]: Package does not include license text files separate from upstream. If the package documentation is indeed available under a different license, can you please ask upstream to add its license file so we don't have to do it in Source1? Also, the LICENSE_doc file isn't present in the SRPM file, so I am not really sure where it comes from $ rpm -qpl python-oslo-middleware-4.3.0-1.src.rpm 0x4c29ff0e437f3351fd82bdf47c5a3bc787dc7035.txt oslo.middleware-4.3.0.tar.gz oslo.middleware-4.3.0.tar.gz.asc python-oslo-middleware.spec
Hello Jakub! Thanks for your review!! I have fixed the issues. Please check the following files. https://hiwkby.fedorapeople.org/python-oslo-middleware.spec https://hiwkby.fedorapeople.org/python-oslo-middleware-5.0.0-1.fc38.src.rpm Koji(Success!) https://koji.fedoraproject.org/koji/taskinfo?taskID=93458373 > Version: 4.3.0 Fixed. Latest version is 5.0.0. > URL: https://launchpad.net/oslo URL is https://bugs.launchpad.net/oslo.middleware > %global common_desc2 \ > Tests for the Oslo Middleware library. I think this is not a bug. > # License file for jslibs using in -doc subpkg > Source1: LICENSE_doc Removed. The latest version doesn't need the file. Thanks in advance, Hirotaka
Thank you for the changes, > %description -n python3-%{pkg_name}-tests > Tests for the Oslo Middleware library. > > %{common_desc2} The %{common_desc2} line needs to be removed, the variable isn't defined now. > - Package must not depend on deprecated() packages. > Note: python3-mock is deprecated, you must not depend on it. > See: https://docs.fedoraproject.org/en-US/packaging- > guidelines/deprecating-packages/ > > BuildRequires: python3-mock > Requires: python3-mock We should use `unittest.mock` instead. I am looking at the source code [jkadlcik@zeratul oslo.middleware-5.0.0]$ grep -r mock |grep import oslo_middleware/tests/test_catch_errors.py:from unittest import mock oslo_middleware/tests/test_correlation_id.py:from unittest import mock oslo_middleware/tests/test_healthcheck.py:from unittest import mock oslo_middleware/tests/test_stats.py:from unittest import mock And they already use unittest.mock, so I think you can simply remove the python3-mock dependencies. > > URL: https://launchpad.net/oslo > URL is https://bugs.launchpad.net/oslo.middleware The https://bugs.launchpad.net/oslo.middleware is an issue tracker URL, which IMHO isn't ideal, I like the https://launchpad.net/oslo better. But it isn't a deal breaker for me, use the one you prefer. > [ ]: Fully versioned dependency in subpackages if applicable. > Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in > python3-oslo-middleware , python3-oslo-middleware-tests , python-oslo- > middleware-lang This one is easy to fix, please take a look here https://docs.fedoraproject.org/en-US/packaging-guidelines/#_requiring_base_package --- For the record (and for other reviewers) > - If (and only if) the source package includes the text of the license(s) > in its own file, then that file, containing the text of the license(s) > for the package is included in %license. > Note: License file license.png is not marked as %license I have no idea why fedora-review complains about this, I couldn't find any license.png anywhere. > [ ]: Avoid bundling fonts in non-fonts packages. > Note: Package contains font files Same here, I didn't find any font files
Hi Jakub, Thanks for your comments! I have fixed the issues. Please check the following files. https://hiwkby.fedorapeople.org/python-oslo-middleware.spec https://hiwkby.fedorapeople.org/python-oslo-middleware-5.0.0-2.fc38.src.rpm Koji(Success!) https://koji.fedoraproject.org/koji/taskinfo?taskID=93509228 > The %{common_desc2} line needs to be removed, the variable isn't > defined now. I removed the lines. > And they already use unittest.mock, so I think you can simply remove > the python3-mock dependencies. Thanks! I removed the python3-mock dependency. > The https://bugs.launchpad.net/oslo.middleware is an issue tracker > URL, which IMHO isn't ideal, I like the https://launchpad.net/oslo > better. But it isn't a deal breaker for me, use the one you prefer. I use https://opendev.org/openstack/oslo.middleware because it is the main website of oslo.middleware. > This one is easy to fix, please take a look here > https://docs.fedoraproject.org/en-US/packaging-guidelines/#_requiring_base_package I added the dependency to python3-oslo-middleware, python3-oslo-middleware-tests, python-oslo-middleware-lang and python-oslo-middleware-doc package. Thanks in advance, Hirotaka
Thank you very much for the update, I am very sorry for suggesting the Requires: %{name}%{?_isa} = %{version}-%{release} It causes problems when installing the package [root@90b766ba9afa /]# dnf update --refresh python3-oslo-middleware ... Problem: cannot install the best update candidate for package python3-oslo-middleware-5.0.0-1.fc36.noarch - nothing provides python-oslo-middleware(x86-64) = 5.0.0-2.fc36 needed by python3-oslo-middleware-5.0.0-2.fc36.noarch Please just drop those `Requires' lines again and then it will be all done. My apologies.
Hi Jakub, Thanks for your feedback! Please check check the following files. https://hiwkby.fedorapeople.org/python-oslo-middleware.spec https://hiwkby.fedorapeople.org/python-oslo-middleware-5.0.0-3.fc38.src.rpm Koji(Success!) https://koji.fedoraproject.org/koji/taskinfo?taskID=93617013 > Requires: %{name}%{?_isa} = %{version}-%{release} I deleted the lines because the dependency should not be made arch-specific. Thanks in advance, Hirotaka
Hello, I fixed the issue on the packaging guidelines Spec URL: https://hiwkby.fedorapeople.org/python-oslo-middleware.spec SRPM URL: https://hiwkby.fedorapeople.org/python-oslo-middleware-5.0.0-4.fc38.src.rpm Koji(success): https://koji.fedoraproject.org/koji/taskinfo?taskID=93927447 ``` $ diff -c public_html/python-oslo-middleware.spec python-oslo-middleware.spec *** public_html/python-oslo-middleware.spec 2022-10-31 05:54:57.020294915 +0000 --- python-oslo-middleware.spec 2022-11-08 02:11:10.542803282 +0000 *************** *** 15,21 **** Name: python-oslo-middleware Version: 5.0.0 ! Release: 3%{?dist} Summary: OpenStack Oslo Middleware library License: ASL 2.0 --- 15,21 ---- Name: python-oslo-middleware Version: 5.0.0 ! Release: 4%{?dist} Summary: OpenStack Oslo Middleware library License: ASL 2.0 *************** *** 35,41 **** %package -n python3-%{pkg_name} Summary: OpenStack Oslo Middleware library ! %{?python_provide:%python_provide python3-%{pkg_name}} BuildRequires: python3-devel BuildRequires: python3-pbr --- 35,41 ---- %package -n python3-%{pkg_name} Summary: OpenStack Oslo Middleware library ! %py_provides python3-pkg_resources BuildRequires: python3-devel BuildRequires: python3-pbr *************** *** 163,168 **** --- 163,171 ---- %license LICENSE %changelog + * Tue Nov 08 2022 Hirotaka Wakabayashi <hiwkby> - 5.0.0-4 + - Fixes issues on packaging guidelines + * Mon Oct 31 2022 Hirotaka Wakabayashi <hiwkby> - 5.0.0-3 - Fixes issues on packaging guidelines ``` ``` $ sudo dnf install -y ~/dev/packages/RPMS/noarch/python3-oslo-middleware-5.0.0-4.fc38.noarch.rpm $ rpm -q --whatprovides python3-oslo-middleware python3-oslo-middleware-5.0.0-4.fc38.noarch ```
Sorry, I fixed an issue on the guidelines again because I read the old guidelines and made a mistake...orz Spec URL: https://hiwkby.fedorapeople.org/python-oslo-middleware.spec SRPM URL: https://hiwkby.fedorapeople.org/python-oslo-middleware-5.0.0-5.fc38.src.rpm Koji(success): https://koji.fedoraproject.org/koji/taskinfo?taskID=93962844 ``` $ diff -c public_html/python-oslo-middleware.spec python-oslo-middleware.spec *** public_html/python-oslo-middleware.spec 2022-11-08 02:11:10.542803282 +0000 --- python-oslo-middleware.spec 2022-11-09 02:40:06.705301807 +0000 *************** *** 15,21 **** Name: python-oslo-middleware Version: 5.0.0 ! Release: 4%{?dist} Summary: OpenStack Oslo Middleware library License: ASL 2.0 --- 15,21 ---- Name: python-oslo-middleware Version: 5.0.0 ! Release: 5%{?dist} Summary: OpenStack Oslo Middleware library License: ASL 2.0 *************** *** 35,41 **** %package -n python3-%{pkg_name} Summary: OpenStack Oslo Middleware library ! %py_provides python3-pkg_resources BuildRequires: python3-devel BuildRequires: python3-pbr --- 35,41 ---- %package -n python3-%{pkg_name} Summary: OpenStack Oslo Middleware library ! %py_provides python3-%{pkg_name} BuildRequires: python3-devel BuildRequires: python3-pbr *************** *** 163,168 **** --- 163,171 ---- %license LICENSE %changelog + * Wed Nov 09 2022 Hirotaka Wakabayashi <hiwkby> - 5.0.0-5 + - Fixes issues on packaging guidelines + * Tue Nov 08 2022 Hirotaka Wakabayashi <hiwkby> - 5.0.0-4 - Fixes issues on packaging guidelines ``` ``` $ rpmspec -P python-oslo-middleware.spec | grep -B 3 Provides %package -n python3-oslo-middleware Summary: OpenStack Oslo Middleware library Provides: python3-oslo-middleware = 5.0.0-5.fc38 Provides: python3.11-oslo-middleware = 5.0.0-5.fc38 Provides: python-oslo-middleware = 5.0.0-5.fc38 $ sudo dnf install -y ~/dev/packages/RPMS/noarch/python3-oslo-middleware-5.0.0-5.fc38.noarch.rpm $ rpm -q --whatprovides python3-oslo-middleware python3-oslo-middleware-5.0.0-5.fc38.noarch ```
Thank you for the updates, I found one last issue, and then it's +1 from me. > %{python3_sitelib}/*.egg-info Can you please be more specific here?
Hello Jakub! I fixed the issue. Please check the files. Spec URL: https://hiwkby.fedorapeople.org/python-oslo-middleware.spec SRPM URL: https://hiwkby.fedorapeople.org/python-oslo-middleware-5.0.0-6.fc38.src.rpm Koji(success): https://koji.fedoraproject.org/koji/taskinfo?taskID=94227940 ``` $ diff -c public_html/python-oslo-middleware.spec python-oslo-middleware.spec *** public_html/python-oslo-middleware.spec 2022-11-09 02:40:06.705301807 +0000 --- python-oslo-middleware.spec 2022-11-16 02:59:33.176134428 +0000 *************** *** 15,21 **** Name: python-oslo-middleware Version: 5.0.0 ! Release: 5%{?dist} Summary: OpenStack Oslo Middleware library License: ASL 2.0 --- 15,21 ---- Name: python-oslo-middleware Version: 5.0.0 ! Release: 6%{?dist} Summary: OpenStack Oslo Middleware library License: ASL 2.0 *************** *** 147,153 **** %license LICENSE %doc README.rst %{python3_sitelib}/oslo_middleware ! %{python3_sitelib}/*.egg-info %exclude %{python3_sitelib}/oslo_middleware/tests/ %if 0%{?with_doc} --- 147,153 ---- %license LICENSE %doc README.rst %{python3_sitelib}/oslo_middleware ! %{python3_sitelib}/%{pypi_name}-%{version}-py%{python3_version}.egg-info %exclude %{python3_sitelib}/oslo_middleware/tests/ %if 0%{?with_doc} *************** *** 163,168 **** --- 163,171 ---- %license LICENSE %changelog + * Wed Nov 16 2022 Hirotaka Wakabayashi <hiwkby> - 5.0.0-6 + - Fixes issues on packaging guidelines + * Wed Nov 09 2022 Hirotaka Wakabayashi <hiwkby> - 5.0.0-5 - Fixes issues on packaging guidelines ``` Thanks in advance, Hirotaka
Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed Issues: ======= - If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %license. Note: License file license.png is not marked as %license See: https://docs.fedoraproject.org/en-US/packaging- guidelines/LicensingGuidelines/#_license_text - Package does not use a name that already exists. Note: A package with this name already exists. Please check https://src.fedoraproject.org/rpms/python-oslo-middleware See: https://docs.fedoraproject.org/en-US/packaging- guidelines/Naming/#_conflicting_package_names ===== MUST items ===== Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Unknown or generated", "*No copyright* Apache License 2.0", "*No copyright* Apache License", "Apache License 2.0". 54 files have unknown license. Detailed output of licensecheck in /home/jkadlcik/1992629-python-oslo-middleware/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: The spec file handles locales properly. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: Package is not known to require an ExcludeArch tag. [x]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 10240 bytes in 1 files. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: Package requires other packages for directories it uses. [x]: Package must own all directories that it creates. [x]: Package does not own files or directories owned by other packages. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package must not depend on deprecated() packages. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local Python: [x]: Python eggs must not download any dependencies during the build process. [x]: A package which is used by another package via an egg interface should provide egg info. [x]: Package meets the Packaging Guidelines::Python [x]: Package contains BR: python2-devel or python3-devel [x]: Packages MUST NOT have dependencies (either build-time or runtime) on packages named with the unversioned python- prefix unless no properly versioned package exists. Dependencies on Python packages instead MUST use names beginning with python2- or python3- as appropriate. [x]: Python packages must not contain %{pythonX_site(lib|arch)}/* in %files [x]: Binary eggs must be removed in %prep ===== SHOULD items ===== Generic: [!]: Avoid bundling fonts in non-fonts packages. Note: Package contains font files [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [-]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in python3-oslo-middleware , python3-oslo-middleware-tests , python-oslo- middleware-lang [?]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [?]: Package should compile and build into binary rpms on all supported architectures. [x]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: SourceX is a working URL. [x]: Sources are verified with gpgverify first in %prep if upstream publishes signatures. [x]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Cannot parse rpmlint output: Rpmlint (installed packages) ---------------------------- ============================ rpmlint session starts ============================ rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 4 python3-oslo-middleware-tests.noarch: W: no-documentation python-oslo-middleware-lang.noarch: W: no-documentation python-oslo-middleware-doc.noarch: W: files-duplicate /usr/share/doc/python-oslo-middleware-doc/html/_static/images/openstack-logo-full.png /usr/share/doc/python-oslo-middleware-doc/html/_static/images/logo-full.png python-oslo-middleware-doc.noarch: W: files-duplicate /usr/share/doc/python-oslo-middleware-doc/html/_static/images/openstack-logo-full.svg /usr/share/doc/python-oslo-middleware-doc/html/_static/images/logo-full.svg python-oslo-middleware-doc.noarch: W: files-duplicate /usr/share/doc/python-oslo-middleware-doc/html/_static/images/openstack-logo-vert.png /usr/share/doc/python-oslo-middleware-doc/html/_static/images/logo-vert.png python-oslo-middleware-doc.noarch: W: files-duplicate /usr/share/doc/python-oslo-middleware-doc/html/_static/images/openstack-logo-vert.svg /usr/share/doc/python-oslo-middleware-doc/html/_static/images/logo-vert.svg python3-oslo-middleware.noarch: W: files-duplicate /usr/lib/python3.11/site-packages/oslo.middleware-5.0.0-py3.11.egg-info/not-zip-safe /usr/lib/python3.11/site-packages/oslo.middleware-5.0.0-py3.11.egg-info/dependency_links.txt 4 packages and 0 specfiles checked; 0 errors, 7 warnings, 0 badness; has taken 0.1 s Source checksums ---------------- https://releases.openstack.org/_static/0xa63ea142678138d1bb15f2e303bdfd64dd164087.txt : CHECKSUM(SHA256) this package : 78f850ee4e9c8c1f5447d15856042cd65aa8bdd311f8a52906b18bf97dab4049 CHECKSUM(SHA256) upstream package : 78f850ee4e9c8c1f5447d15856042cd65aa8bdd311f8a52906b18bf97dab4049 https://tarballs.openstack.org/oslo.middleware/oslo.middleware-5.0.0.tar.gz.asc : CHECKSUM(SHA256) this package : 8375392f95e44b48a38f74966ee2a8cebb7f5b393f5afccb94627ef57148612e CHECKSUM(SHA256) upstream package : 8375392f95e44b48a38f74966ee2a8cebb7f5b393f5afccb94627ef57148612e https://tarballs.openstack.org/oslo.middleware/oslo.middleware-5.0.0.tar.gz : CHECKSUM(SHA256) this package : 3d0f2fd723d194d2a8c64068e8a057a5038c860abe0c03f6f0f08cf7b86781d1 CHECKSUM(SHA256) upstream package : 3d0f2fd723d194d2a8c64068e8a057a5038c860abe0c03f6f0f08cf7b86781d1 Requires -------- python3-oslo-middleware (rpmlib, GLIBC filtered): python(abi) python-oslo-middleware-lang python3-bcrypt python3-debtcollector python3-jinja2 python3-oslo-config python3-oslo-context python3-oslo-i18n python3-oslo-utils python3-pbr python3-statsd python3-stevedore python3-webob python-oslo-middleware-doc (rpmlib, GLIBC filtered): python3-oslo-middleware-tests (rpmlib, GLIBC filtered): python(abi) python3-fixtures python3-hacking python3-oslo-middleware python3-oslotest python3-testtools python-oslo-middleware-lang (rpmlib, GLIBC filtered): Provides -------- python3-oslo-middleware: python-oslo-middleware python3-oslo-middleware python3.11-oslo-middleware python3.11dist(oslo-middleware) python3dist(oslo-middleware) python-oslo-middleware-doc: python-oslo-middleware-doc python3-oslo-middleware-tests: python-oslo-middleware-tests python3-oslo-middleware-tests python3.11-oslo-middleware-tests python-oslo-middleware-lang: python-oslo-middleware-lang Generated by fedora-review 0.9.0 (6761b6c) last change: 2022-08-23 Command line :/usr/bin/fedora-review -b 1992629 Buildroot used: fedora-rawhide-x86_64 Active plugins: Shell-api, Python, Generic Disabled plugins: Perl, C/C++, Java, R, Haskell, fonts, Ocaml, SugarActivity, PHP Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
Hello Jakub, Thank you very much for your review!
Hello, python-oslo-middleware is unretired on rawhide branch. I will close this. https://pagure.io/releng/issue/11144 https://src.fedoraproject.org/rpms/python-oslo-middleware Thanks, Hirotaka