https://bugzilla.redhat.com/show_bug.cgi?id=2127693
Bug ID: 2127693 Summary: Review Request: rubygem-hashie - Your friendly neighborhood hash library Product: Fedora Version: rawhide Hardware: All OS: Linux Status: NEW Component: Package Review Severity: medium Priority: medium Assignee: nobody@fedoraproject.org Reporter: rcallicotte@mailbox.org QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org Target Milestone: --- Classification: Fedora
Spec URL: https://rcallicotte.fedorapeople.org/rubygem-hashie.spec SRPM URL: https://rcallicotte.fedorapeople.org/rubygem-hashie-5.0.0-1.fc38.src.rpm Description: Hashie is a collection of classes and mixins that make hashes more powerful.
Fedora Account System Username: rcallicotte
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
Benson Muite benson_muite@emailplus.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |benson_muite@emailplus.org Doc Type|--- |If docs needed, set a value Flags| |fedora-review? Assignee|nobody@fedoraproject.org |benson_muite@emailplus.org Status|NEW |ASSIGNED
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #1 from Benson Muite benson_muite@emailplus.org --- Assume will unretire https://src.fedoraproject.org/rpms/rubygem-hashie
Package Review ==============
Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed
Issues: ======= - Package does not use a name that already exists. Note: A package with this name already exists. Please check https://src.fedoraproject.org/rpms/rubygem-hashie 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", "MIT License". 47 files have unknown license. Detailed output of licensecheck in /home/FedoraPackaging/reviews/rubygem-hashie/2127693-rubygem- hashie/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [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. [?]: 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. [?]: Package is not known to require an ExcludeArch tag. [?]: 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]: 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. [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]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 0 bytes in 0 files. [x]: Packages must not store files under /srv, /opt or /usr/local
===== 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. [?]: Package should compile and build into binary rpms on all supported architectures. [!]: %check is present and all tests pass. [?]: 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]: Fully versioned dependency in subpackages if applicable. [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: [!]: When checking ruby code, install the ruby plugin. [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.2.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 32, packages: 2
rubygem-hashie.noarch: W: no-documentation 2 packages and 0 specfiles checked; 0 errors, 1 warnings, 0 badness; has taken 4.3 s
Source checksums ---------------- https://rubygems.org/gems/hashie-5.0.0.gem : CHECKSUM(SHA256) this package : 9d6c4e51f2a36d4616cbc8a322d619a162d8f42815 a792596039fc95595603da CHECKSUM(SHA256) upstream package : 9d6c4e51f2a36d4616cbc8a322d619a162d8f42815 a792596039fc95595603da
Requires -------- rubygem-hashie (rpmlib, GLIBC filtered): ruby(rubygems)
rubygem-hashie-doc (rpmlib, GLIBC filtered): rubygem-hashie
Provides -------- rubygem-hashie: rubygem(hashie) rubygem-hashie
rubygem-hashie-doc: rubygem-hashie-doc
Generated by fedora-review 0.9.0 (6761b6c) last change: 2022-08-23 Command line :/usr/bin/fedora-review -b 2127693 Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, Shell-api Disabled plugins: Perl, Ocaml, Haskell, PHP, Java, fonts, C/C++, Python, R, SugarActivity Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
Comments: a) Tests do not seem to be run as done in https://src.fedoraproject.org/rpms/rubygem-hashie/blob/f35/f/rubygem-hashie.... b) May want to update https://src.fedoraproject.org/rpms/rubygem-hashie/blob/f35/f/rubygem-hashie.... rather than generate an entirely new spec.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #2 from Robby Callicotte rcallicotte@mailbox.org --- Hello,
Yes, it is my intention to unretire hashie. Releng ticket: https://pagure.io/releng/issue/11038
I have updated the spec and srpms... Included tests... SPEC: https://rcallicotte.fedorapeople.org/rubygem-hashie.spec SRPM: https://rcallicotte.fedorapeople.org/rubygem-hashie-5.0.0-1.fc38.src.rpm
I also intended to utilize the gem2rpm tool for the spec... Since the package is retired, should I be placing the original changelog back into the spec? This is my first retired package that I have worked with.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #3 from Benson Muite benson_muite@emailplus.org --- Yes it is helpful to capture the history as you are unretiring the package, and not making an entirely new package.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #4 from Benson Muite benson_muite@emailplus.org --- There are some warnings when running the tests, but they pass:
+ rspec -rtempfile -rjson spec/hashie spec/hashie_spec.rb /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/spec/hashie/ extensions/symbolize_keys_spec.rb:4: warning: method redefined; discarding old i nvoke /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/spec/hashie/ extensions/stringify_keys_spec.rb:4: warning: previous definition of invoke was here /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/e xtensions/dash/property_translation.rb:132: warning: method redefined; discardin g old config= /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/e xtensions/dash/property_translation.rb:132: warning: previous definition of conf ig= was here /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/e xtensions/dash/property_translation.rb:132: warning: method redefined; discardin g old first_name= /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/d ash.rb:99: warning: previous definition of first_name= was here ................................................................................ ................................................................................ ................................................................................ ........../builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/sp ec/hashie/extensions/indifferent_access_spec.rb:124: warning: already initialize d constant ALIASES /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/spec/hashie/ extensions/indifferent_access_spec.rb:124: warning: previous definition of ALIAS ES was here ................................................................................ ...............W, [2022-09-19T08:24:37.285995 #1847] WARN -- : You are setting a key that conflicts with a built-in method #Class:0x00007f73a9df7450#foo defi ned at /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/spec/ hashie/extensions/mash/define_accessors_spec.rb:61. This can cause unexpected be havior when accessing the key as a property. You can still access the key via th e #[] method. ................................................................................ ................................................................................ ................................................................................ ................................................................................ ........................../builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems /hashie-5.0.0/lib/hashie/extensions/dash/property_translation.rb:132: warning: m ethod redefined; discarding old id= /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/d ash.rb:99: warning: previous definition of id= was here .../builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashi e/extensions/dash/property_translation.rb:132: warning: method redefined; discar ding old id= /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/d ash.rb:99: warning: previous definition of id= was here /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/e xtensions/dash/property_translation.rb:132: warning: method redefined; discardin g old id= /builddir/build/BUILD/hashie-5.0.0/usr/share/gems/gems/hashie-5.0.0/lib/hashie/d ash.rb:99: warning: previous definition of id= was here ...... Finished in 0.96985 seconds (files took 1.25 seconds to load) 700 examples, 0 failures + rspec spec/integration/active_support ........................................................... Finished in 0.1166 seconds (files took 1.55 seconds to load) 59 examples, 0 failures + popd ~/build/BUILD/hashie-5.0.0 + RPM_EC=0 ++ jobs -p Processing files: rubygem-hashie-5.0.0-1.fc38.noarch + exit 0
Lint messages:
$ rpmlint rubygem-hashie-5.0.0-1.fc38.src.rpm ============================ rpmlint session starts ============================ rpmlint: 2.2.0 configuration: /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 32, packages: 1
rubygem-hashie.spec: W: invalid-url Source1: hashie-5.0.0-spec.tar.gz 1 packages and 0 specfiles checked; 0 errors, 1 warnings, 0 badness; has taken 1.9 s
$ rpmlint rubygem-hashie-5.0.0-1.fc38.noarch.rpm ============================ rpmlint session starts ============================ rpmlint: 2.2.0 configuration: /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 32, packages: 1
rubygem-hashie.noarch: W: no-documentation 1 packages and 0 specfiles checked; 0 errors, 1 warnings, 0 badness; has taken 16.8 s
$ rpmlint rubygem-hashie-doc-5.0.0-1.fc38.noarch.rpm ============================ rpmlint session starts ============================ rpmlint: 2.2.0 configuration: /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 32, packages: 1
1 packages and 0 specfiles checked; 0 errors, 0 warnings, 0 badness; has taken 4.0 s
Comments: a) Should UPGRADING.md be placed in the documentation package? b) Can source1 be linked explicitly, it has a tag https://github.com/hashie/hashie/tags ? c) there are font files which should be packaged separately Lato-LightItalic.ttf Lato-RegularItalic.ttf SourceCodePro-Bold.ttf Lato-Light.ttf Lato-Regular.ttf SourceCodePro-Regular.ttf Corresponding packages https://packages.fedoraproject.org/pkgs/lato-fonts/lato-fonts/ https://packages.fedoraproject.org/pkgs/adobe-source-code-pro-fonts/adobe-so... Can make these packages dependencies and add softlinks at usr/share/gems/doc/hashie-5.0.0/rdoc/fonts d) Not sure why one still gets the warning [!]: When checking ruby code, install the ruby plugin.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #5 from Robby Callicotte rcallicotte@mailbox.org --- Hello!
Updated SPEC: https://rcallicotte.fedorapeople.org/rubygem-hashie.spec Updated SPRM: https://rcallicotte.fedorapeople.org/rubygem-hashie-5.0.0-2.fc38.src.rpm
a) Should UPGRADING.md be placed in the documentation package?
I added this file to the doc subpackage
b) Can source1 be linked explicitly, it has a tag https://github.com/hashie/hashie/tags ?
I am following established precedent observed in about 30-ish previously built rubygems. This is explicitly archiving only the spec directory.
c) there are font files which should be packaged separately Lato-LightItalic.ttf Lato-RegularItalic.ttf SourceCodePro-Bold.ttf Lato-Light.ttf Lato-Regular.ttf SourceCodePro-Regular.ttf Corresponding packages https://packages.fedoraproject.org/pkgs/lato-fonts/lato-fonts/ https://packages.fedoraproject.org/pkgs/adobe-source-code-pro-fonts/adobe-so... Can make these packages dependencies and add softlinks at usr/share/gems/doc/hashie-5.0.0/rdoc/fonts
I am following established precedent observed in about 30-ish previously build rubygems. I have searched the ruby-devel lists[1] and this ticket[2] was mentioned. The consensus was to keep the status quo due to the amount of re-work that would need to be done. ¯_(ツ)_/¯
d) Not sure why one still gets the warning [!]: When checking ruby code, install the ruby plugin.
This might be due to fedora-review missing the ruby plugin. You can install fedora-review-plugin-ruby and that should clear the warning.
[1] - https://lists.fedoraproject.org/archives/list/ruby-sig@lists.fedoraproject.o... [2] - https://bugzilla.redhat.com/show_bug.cgi?id=1224715
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #6 from Benson Muite benson_muite@emailplus.org ---
b) Can source1 be linked explicitly, it has a tag https://github.com/hashie/hashie/tags ?
I am following established precedent observed in about 30-ish previously built rubygems. This is explicitly archiving only the spec directory.
Ok.
c) there are font files which should be packaged separately Lato-LightItalic.ttf Lato-RegularItalic.ttf SourceCodePro-Bold.ttf Lato-Light.ttf Lato-Regular.ttf SourceCodePro-Regular.ttf Corresponding packages https://packages.fedoraproject.org/pkgs/lato-fonts/lato-fonts/ https://packages.fedoraproject.org/pkgs/adobe-source-code-pro-fonts/adobe-so... Can make these packages dependencies and add softlinks at usr/share/gems/doc/hashie-5.0.0/rdoc/fonts
I am following established precedent observed in about 30-ish previously build rubygems. I have searched the ruby-devel lists[1] and this ticket[2] was mentioned. The consensus was to keep the status quo due to the amount of re-work that would need to be done. ¯_(ツ)_/¯
I expect adding a softlink will work. Build as normal, require the appropriate font packages, remove the bundled ttf files, replace the font files with softlinks. This does not seem like it should be problematic to continue going forward, but let me know if I am wrong. I can reopen the ticket if helpful.
d) Not sure why one still gets the warning [!]: When checking ruby code, install the ruby plugin.
This might be due to fedora-review missing the ruby plugin. You can install fedora-review-plugin-ruby and that should clear the warning.
Thankyou.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #7 from Robby Callicotte rcallicotte@mailbox.org --- Benson,
Is there any other action required by me? If there are further questions regarding the embedded fonts, I can reach out to one of the ruby-sig folks for clarification.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #8 from Benson Muite benson_muite@emailplus.org --- Thanks. Going with current practice for the fonts seems ok, there are efforts to automate this. Checking the package again.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #9 from Robby Callicotte rcallicotte@mailbox.org --- Benson,
Other than the fonts issue, is there anything else that is keeping this package held in review status? I would like to get the build going if at all possible. :)
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #10 from Benson Muite benson_muite@emailplus.org --- Just fonts at this point.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #11 from Benson Muite benson_muite@emailplus.org --- gemspec file also seems to be replicated: $ ls rpms-unpacked/rubygem-hashie-doc-5.0.0-1.fc38.noarch.rpm/usr/share/gems/gems/hashie-5.0.0/ CHANGELOG.md CONTRIBUTING.md hashie.gemspec Rakefile README.md $ ls rpms-unpacked/rubygem-hashie-5.0.0-1.fc38.noarch.rpm/usr/share/gems/specifications/ hashie-5.0.0.gemspec
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
Benson Muite benson_muite@emailplus.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|fedora-review? |fedora-review+ Status|ASSIGNED |POST
--- Comment #12 from Benson Muite benson_muite@emailplus.org --- Approving. Hopefully fonts packaging will be fixed soon. When importing please remove the lines %{gem_instdir}/Rakefile %{gem_instdir}/hashie.gemspec Please also and OFL font license to the spec file, and add a license breakdown for the font files (OFL) and the rest of the code (MIT)
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #13 from Benson Muite benson_muite@emailplus.org --- Please also remove BuildRequires: ruby(release)
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
--- Comment #14 from Benson Muite benson_muite@emailplus.org --- Sorry BuildRequires: ruby(release) is fine.
https://bugzilla.redhat.com/show_bug.cgi?id=2127693
Vít Ondruch vondruch@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|CURRENTRELEASE |--- Status|CLOSED |POST CC| |vondruch@redhat.com Keywords| |Reopened
--- Comment #16 from Vít Ondruch vondruch@redhat.com --- What is the status here? This was never successfully build as far as I can tell:
https://koji.fedoraproject.org/koji/packageinfo?packageID=16659
package-review@lists.fedoraproject.org