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
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.spec b) May want to update https://src.fedoraproject.org/rpms/rubygem-hashie/blob/f35/f/rubygem-hashie.spec rather than generate an entirely new spec.
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.
Yes it is helpful to capture the history as you are unretiring the package, and not making an entirely new package.
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-source-code-pro-fonts/ 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.
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-source-code-pro-fonts/ > 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.org/thread/E5RLYVVSWITHJXCABIIPTMRR3BYU6JWF/#E5RLYVVSWITHJXCABIIPTMRR3BYU6JWF [2] - https://bugzilla.redhat.com/show_bug.cgi?id=1224715
>> 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-source-code-pro-fonts/ >> 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.
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.
Thanks. Going with current practice for the fonts seems ok, there are efforts to automate this. Checking the package again.
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. :)
Just fonts at this point.
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
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)
Please also remove BuildRequires: ruby(release)
Sorry BuildRequires: ruby(release) is fine.
Package is now in repositories, closing review.
What is the status here? This was never successfully build as far as I can tell: https://koji.fedoraproject.org/koji/packageinfo?packageID=16659