https://bugzilla.redhat.com/show_bug.cgi?id=2121759
Troy Curtis troy@troycurtisjr.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags| |needinfo?(steve.traylen@cer | |n.ch)
--- Comment #1 from Troy Curtis troy@troycurtisjr.com --- Package Review ==============
Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed
Issues: ======= - The linked spec file looks like it is an older version - The changelog entry is for 1.32.0, but the version field and package is for 4.0.4 - The LICENSE file should be packaged with %license - py3_check_import should be pyproject_check_import since that is the latest suggested macro - Something looks off with the packages installer, no version in dist info: /usr/lib/python3.11/site-packages/reactivex-0.0.0.dist-info/ This also seems to provide provides of "python3.11dist(reactivex) = 0" - The description in the srpm spec talks like this is the client for InfluxDB instead of ReactiveX ;) - Ideally the pytest build time req should be present in pyproject.toml so that it can be picked up by the build-time dependency generator:
https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#Automatica...
===== 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", "MIT License", "*No copyright* MIT License". 467 files have unknown license. Detailed output of licensecheck in /home/troycurtisjr/working/oss/fedora/reviews/2121759-python- reactivex/licensecheck.txt [x]: Package contains no bundled libraries without FPC exception. [!]: 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. [-]: 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. [!]: 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 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. [-]: 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: [x]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [!]: 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. [?]: 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: [!]: Spec file according to URL is the same as in SRPM. Note: Spec file as given by url is not the same as in SRPM (see attached diff). See: (this test has no URL) [x]: Rpmlint is run on all installed packages. Note: No rpmlint messages.
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: 1
1 packages and 0 specfiles checked; 0 errors, 0 warnings, 0 badness; has taken 0.3 s
Source checksums ---------------- https://github.com/ReactiveX/RxPY/archive/v4.0.4/RxPy-4.0.4.tar.gz : CHECKSUM(SHA256) this package : 4222862253bfc7c34baefffc8761fea7b66446576791450cacb65584d9c92fb8 CHECKSUM(SHA256) upstream package : 4222862253bfc7c34baefffc8761fea7b66446576791450cacb65584d9c92fb8
Requires -------- python3-reactivex (rpmlib, GLIBC filtered): (python3.11dist(typing-extensions) < 5~~ with python3.11dist(typing-extensions) >= 4.1.1) python(abi)
Provides -------- python3-reactivex: python-reactivex python3-reactivex python3.11-reactivex python3.11dist(reactivex) python3dist(reactivex)
Diff spec file in url and in SRPM --------------------------------- --- /home/troycurtisjr/working/oss/fedora/reviews/2121759-python-reactivex/srpm/python-reactivex.spec 2022-12-25 23:12:23.434889264 -0500 +++ /home/troycurtisjr/working/oss/fedora/reviews/2121759-python-reactivex/srpm-unpacked/python-reactivex.spec 2022-08-26 10:10:01.000000000 -0400 @@ -12,12 +12,9 @@
# Test dependencies: -BuildRequires: python3dist(pytest) +BuildRequires: python3dist(pytest)
%global _description\ -ReactiveX for Python (RxPY) is a library for composing asynchronous and event-based\ -programs using observable sequences and pipable query operators in Python. Using Rx,\ -developers represent asynchronous data streams with Observables, query asynchronous data\ -streams using operators, and parameterize concurrency in data/event streams using\ -Schedulers. +Use this client library with InfluxDB 2.x and InfluxDB 1.8+. For connecting\ +to InfluxDB 1.7 or earlier instances, use the python-influxdb package.\
%description %_description @@ -47,4 +44,5 @@ %check %pytest +%py3_check_import reactivex
@@ -54,4 +52,9 @@
%changelog -* Fri Aug 26 2022 Steve Traylen steve.traylen@cern.ch - 4.0.4-1 -- Inital Package +* Fri Aug 26 2022 Steve Traylen steve.traylen@cern.ch - 1.32.0-1 +- Update 1.32.0 +- Use upstream gittag as source to bring in tests + +* Wed Aug 10 2022 Steve Traylen steve.traylen@cern.ch - 1.31.0-1 +- Initial Package +
Generated by fedora-review 0.9.0 (6761b6c) last change: 2022-08-23 Command line :/usr/bin/fedora-review --bug 2121759 Buildroot used: fedora-rawhide-x86_64 Active plugins: Shell-api, Generic, Python Disabled plugins: SugarActivity, fonts, Ocaml, R, PHP, C/C++, Java, Perl, Haskell Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH