https://bugzilla.redhat.com/show_bug.cgi?id=1839242 --- Comment #6 from Jerry James <loganjerry@xxxxxxxxx> --- Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated Issues: ======= - The Requires on lines 18 and 19 of the spec file should be inside the python3 subpackage instead. This is reason for the "Directories without known owners" error below. - The package bundles glyphicons-halflings-fonts. Please replace the bundled font files with a reference to the font in the Fedora package. This package contains eot, svg, ttf, and woff versions of the font, but you only need the ttf version. See: https://docs.fedoraproject.org/en-US/packaging-guidelines/FontsPolicy/#_web_fonts - The package bundles pysignals (https://pypi.org/project/pysignals/) in ouimeaux/pysignals. Preferably that package would be unbundled and submitted separately for review. If that is not possible for some reason, please supply the reason in a comment in the spec file above "Provides: bundled(python3-ouimeaux)". - These files, which are included in the binary package, have license ASL 2.0: ouimeaux/server/static/css/bootstrap-responsive.css ouimeaux/server/static/js/bootstrap.js ouimeaux/server/static/lib/bootstrap/bootstrap.js And this file, also included in the binary package, has license MIT: ouimeaux/server/static/lib/jquery/jquery.js So I think the combined license should be "BSD and ASL 2.0 and MIT" (unless you unbundle jquery, as noted below). There should be a comment above the License field in the spec file explaining this. - That bundled version of jquery is quite old. If it is really needed, please consider unbundling it in favor of the js-jquery1 package (which has version 1.12.4, versus the bundled version of 1.8.3). - In Rawhide, with python 3.9, attempting to run wemo fails: Traceback (most recent call last): File "/usr/bin/wemo", line 11, in <module> load_entry_point('ouimeaux==0.8.2', 'console_scripts', 'wemo')() File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 490, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 2853, in load_entry_point return ep.load() File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 2453, in load return self.resolve() File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 2459, in resolve module = __import__(self.module_name, fromlist=['__name__'], level=0) File "/usr/lib/python3.9/site-packages/ouimeaux/cli.py", line 6, in <module> from .environment import Environment File "/usr/lib/python3.9/site-packages/ouimeaux/environment.py", line 7, in <module> from ouimeaux.device import DeviceUnreachable File "/usr/lib/python3.9/site-packages/ouimeaux/device/__init__.py", line 4, in <module> from .api.service import Service File "/usr/lib/python3.9/site-packages/ouimeaux/device/api/service.py", line 2, in <module> from xml.etree import cElementTree as et ImportError: cannot import name 'cElementTree' from 'xml.etree' (/usr/lib64/python3.9/xml/etree/__init__.py) As noted in https://docs.python.org/3/library/xml.etree.elementtree.html, cElementTree was deprecated in python 3.3, and has been removed entirely in python 3.9. ElementTree should be used instead. ===== 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. [!]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Unknown or generated", "BSD 3-clause "New" or "Revised" License", "*No copyright* GNU General Public License", "Apache License 2.0", "Expat License". 94 files have unknown license. [!]: Package must own all directories that it creates. Note: Directories without known owners: /usr/lib/firewalld/services, /usr/lib/firewalld [!]: 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]: 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. [!]: 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 30720 bytes in 7 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 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 does not use a name that already exists. [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). [?]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [-]: Sources are verified with gpgverify first in %prep if upstream publishes signatures. Note: gpgverify is not used. [-]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: 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]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [x]: Rpmlint is run on all installed packages. Note: No rpmlint messages. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: python3-ouimeaux-0.8.2-4.fc33.noarch.rpm python-ouimeaux-0.8.2-4.fc33.src.rpm python3-ouimeaux.noarch: W: no-manual-page-for-binary wemo python-ouimeaux.src:5: E: hardcoded-library-path in %{_prefix}/lib/firewalld/services 2 packages and 0 specfiles checked; 1 errors, 1 warnings. Rpmlint (installed packages) ---------------------------- python3-ouimeaux.noarch: W: no-manual-page-for-binary wemo 1 packages and 0 specfiles checked; 0 errors, 1 warnings. Source checksums ---------------- https://github.com/iancmcc/ouimeaux/archive/0.8.2.tar.gz#/python-ouimeaux-0.8.2.tar.gz : CHECKSUM(SHA256) this package : 1cc8a930face70b78b253f91495cc04c8bc70f27d9b8730ddd4f00804870b002 CHECKSUM(SHA256) upstream package : 1cc8a930face70b78b253f91495cc04c8bc70f27d9b8730ddd4f00804870b002 Requires -------- python3-ouimeaux (rpmlib, GLIBC filtered): /usr/bin/python3 python(abi) python3.9dist(future) python3.9dist(gevent) python3.9dist(pyyaml) python3.9dist(requests) python3.9dist(setuptools) python3.9dist(six) Provides -------- python3-ouimeaux: python-ouimeaux python3-ouimeaux python3.9-ouimeaux python3.9dist(ouimeaux) python3dist(ouimeaux) Generated by fedora-review 0.7.5 (5fa5b7e) last change: 2020-02-16 Command line :/usr/bin/fedora-review -b 1839242 -m fedora-rawhide-x86_64 Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, Shell-api, Python Disabled plugins: R, Ocaml, C/C++, Ruby, SugarActivity, Perl, Java, Haskell, PHP, fonts Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH -- You are receiving this mail because: You are on the CC list for the bug. You are always notified about changes to this product and component _______________________________________________ package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx