Bug 1040180 - Review Request: rubygem-virtus - Attributes on Steroids for Plain Old Ruby Objects
Summary: Review Request: rubygem-virtus - Attributes on Steroids for Plain Old Ruby Ob...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Achilleas Pipinellis
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1046807
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-12-10 21:41 UTC by Ken Dreyer
Modified: 2014-04-08 16:49 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-04-08 16:49:33 UTC
Type: ---
Embargoed:
axilleas: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1063428 0 medium CLOSED Review Request: rubygem-bogus - Create fakes to make your isolated unit tests reliable 2021-02-22 00:41:40 UTC

Internal Links: 1063428

Description Ken Dreyer 2013-12-10 21:41:29 UTC
Spec URL: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus.spec
SRPM URL: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus-1.0.1-1.fc21.src.rpm
Description: Attributes on Steroids for Plain Old Ruby Objects
Fedora Account System Username: ktdreyer

F21 scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=6277951

Comment 1 Ken Dreyer 2013-12-10 22:49:30 UTC
Update for the newer coercible in Rawhide.

Spec URL: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus.spec
SRPM URL: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus-1.0.1-2.fc21.src.rpm

* Tue Dec 10 2013 Ken Dreyer <ktdreyer> - 1.0.1-2
- Adjust coercible version dependency specification to match upstream gemspec

(Please note that rubygem-virtus will not yet build on F20 or F19 until the appropriate dependencies have landed in the stable repos there.)

F21 scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=6277957

Comment 2 Achilleas Pipinellis 2013-12-31 21:52:24 UTC
I'll take it.

Comment 3 Ken Dreyer 2013-12-31 22:49:56 UTC
Thanks for taking this. By the way, my comment in the spec file:

"See https://bugzilla.redhat.com/1036944 for dependor, a missing bogus dep."

needs to be updated. dependor is now in Fedora, but there is a second missing rubygem-bogus dep, which is rubygem-activerecord-nulldb-adapter. It's up for review here: https://bugzilla.redhat.com/1046807

Comment 4 Achilleas Pipinellis 2014-01-01 12:00:45 UTC
Thanks for informing me. If that's the case I'll take it as well, seems an easy one.

Comment 5 Achilleas Pipinellis 2014-01-19 12:42:43 UTC
You want to update the spec file once activerecord-nulldb-adapter is in rawhide?

Comment 6 Ken Dreyer 2014-02-05 03:07:28 UTC
My apologies for the delay. I've updated the spec to reflect the current situation, as of today.

Change in Git: http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-virtus.git/commit/?id=46806b455ad83efc7f05b4fbc019342798e8d773

Spec: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus.spec
SRPM: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus-1.0.1-3.fc21.src.rpm

(In reply to Achilleas Pipinellis from comment #5)
> You want to update the spec file once activerecord-nulldb-adapter is in
> rawhide?

Sure, as soon as it lands in Rawhide I'll file a new review request for rubygem-bogus, and then adjust the spec file again.

By the way, since activerecord-nulldb-adapter and bogus are just test suite dependencies, rubygem-virtus could still go into Fedora.

Comment 7 Ken Dreyer 2014-02-10 19:04:53 UTC
activerecord-nulldb-adapter is in Rawhide now, so rubygem-bogus is ready for review (bug 1063428).

I've updated the comments to reflect the latest situation. The tests won't pass until rubygem-bogus is available, but the package still builds fine.

Exact change in Git: http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-virtus.git/commit/?id=f61ecec52199df11b9229b8e21429565dfb5c1fc

Spec: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus.spec
SRPM: http://ktdreyer.fedorapeople.org/reviews/rubygem-virtus-1.0.1-4.fc21.src.rpm

F21 scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=6513713

Comment 8 Achilleas Pipinellis 2014-02-15 14:27:02 UTC
Ok, bogus can now be in rawhide, so this can also be built fully. Feel free to make any changes and run the test suite. I'm approving this.

Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed


===== 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.
[x]: License file installed when any subpackage combination is installed.
[x]: Package must own all directories that it creates.
     Note: Directories without known owners: /usr/share/gems,
     /usr/share/gems/doc
[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]: 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]: 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: No rpmlint messages.
[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 %doc.
[x]: Package requires other packages for directories it uses.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[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]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[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

Ruby:
[x]: Platform dependent files must all go under %{gem_extdir_mri}, platform
     independent under %{gem_dir}.
[x]: Gem package must not define a non-gem subpackage
[x]: Macro %{gem_extdir} is deprecated.
[x]: Gem package is named rubygem-%{gem_name}
[x]: Package contains BuildRequires: rubygems-devel.
[x]: Gem package must define %{gem_name} macro.
[x]: Pure Ruby package must be built as noarch
[x]: Package does not contain Requires: ruby(abi).
[x]: Package contains Requires: ruby(release).

===== SHOULD items =====

Generic:
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[-]: 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).
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: 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.
[!]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Sources can be downloaded from URI in Source: tag
[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]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Fully versioned dependency in subpackages if applicable.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

Ruby:
[x]: Gem should use %gem_install macro.
[x]: Specfile should use macros from rubygem-devel package.
[x]: Gem package should exclude cached Gem.
[x]: Test suite of the library should be run.

===== 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: rubygem-virtus-1.0.1-2.fc21.noarch.rpm
          rubygem-virtus-doc-1.0.1-2.fc21.noarch.rpm
          rubygem-virtus-1.0.1-2.fc21.src.rpm
3 packages and 0 specfiles checked; 0 errors, 0 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint rubygem-virtus-doc rubygem-virtus
2 packages and 0 specfiles checked; 0 errors, 0 warnings.
# echo 'rpmlint-done:'



Requires
--------
rubygem-virtus-doc (rpmlib, GLIBC filtered):
    rubygem-virtus

rubygem-virtus (rpmlib, GLIBC filtered):
    ruby(release)
    ruby(rubygems)
    rubygem(axiom-types)
    rubygem(coercible)
    rubygem(descendants_tracker)
    rubygem(equalizer)
    rubygem(inflecto)



Provides
--------
rubygem-virtus-doc:
    rubygem-virtus-doc

rubygem-virtus:
    rubygem(virtus)
    rubygem-virtus



Source checksums
----------------
https://rubygems.org/gems/virtus-1.0.1.gem :
  CHECKSUM(SHA256) this package     : 03d81d65377a603894b058c0ee78130dda1c3e6d56918d40444f11dba5d644a6
  CHECKSUM(SHA256) upstream package : 03d81d65377a603894b058c0ee78130dda1c3e6d56918d40444f11dba5d644a6


Generated by fedora-review 0.5.1 (bb9bf27) last change: 2013-12-13
Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -b 1040180
Buildroot used: fedora-rawhide-x86_64
Active plugins: Generic, Ruby, Shell-api
Disabled plugins: Java, C/C++, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP
Disabled flags: EXARCH, EPEL5, BATCH, DISTTAG

Comment 9 Achilleas Pipinellis 2014-02-15 16:43:45 UTC
Forgot to say thanks, as I need it for gitlab too :)

Comment 10 Ken Dreyer 2014-02-15 19:01:56 UTC
Thanks for the review!

New Package SCM Request
=======================
Package Name: rubygem-virtus
Short Description: Attributes on Steroids for Plain Old Ruby Objects
Owners: ktdreyer
Branches: f20

Comment 11 Gwyn Ciesla 2014-02-17 13:07:20 UTC
Git done (by process-git-requests).

Comment 12 Ken Dreyer 2014-04-08 16:49:33 UTC
Built for Rawhide: http://koji.fedoraproject.org/koji/buildinfo?buildID=499100

Closing. Thanks again.


Note You need to log in before you can comment on or make changes to this bug.