Bug 1132670 - Review Request: rubygem-compass-core - The Compass core stylesheet library
Summary: Review Request: rubygem-compass-core - The Compass core stylesheet library
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Vít Ondruch
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1142508
Blocks: 1152676
TreeView+ depends on / blocked
 
Reported: 2014-08-21 19:27 UTC by Mo Morsi
Modified: 2015-09-01 08:50 UTC (History)
2 users (show)

Fixed In Version: rubygem-compass-core-1.0.1-4.fc22
Clone Of:
Environment:
Last Closed: 2015-09-01 08:50:21 UTC
Type: ---
Embargoed:
vondruch: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Mo Morsi 2014-08-21 19:27:04 UTC
Spec URL: https://mmorsi.fedorapeople.org/staging/rubygem-compass-core.spec
SRPM URL: http://mmorsi.fedorapeople.org/staging/rubygem-compass-core-1.0.1-1.fc20.src.rpm
Description:
The Compass core stylesheet library and minimum required ruby extensions. This
library can be used stand-alone without the compass ruby configuration file or
compass command line tools.

Fedora Account System Username: mmorsi
Additional Info: Required to update rubygem-compass to the latest version

Comment 1 Vít Ondruch 2014-08-28 07:24:41 UTC
I'll take this for a review.

Comment 2 Vít Ondruch 2014-08-28 07:42:33 UTC
* The .spec differences
  - The .spec file you posted differs from the one included in SRPM. It is just
    small difference in you name in %changelog, so no big deal.

* Update to the latest guidelines
  - The .spec file looks to be generated by old gem2rpm and does not conform
    to the latest Ruby packaging guidelines. Please remove the Requires, which
    are now autogenerated and Provides.

* Test suite is not executed.
  - Please execute the test suite.
  - Although it is not shipped with the gem, it is available upstream [1].

* md5 usage
  - it seems that Compass uses md5 in
    lib/compass/core/sass_extensions/functions/files.rb . Since this hash
    algorithm is considered insecure and it is not supported on FIPS compliant
    machines, could you please query upstream about it? This is not blocker,
    just NTH issue I noticed.


[1] https://github.com/Compass/compass/tree/stable/core

Comment 3 Mo Morsi 2014-08-28 17:34:24 UTC
Thx for review. Updated:

Spec: https://mmorsi.fedorapeople.org/staging/rubygem-compass-core.spec
SRPM: http://mmorsi.fedorapeople.org/staging/rubygem-compass-core-1.0.1-2.fc20.src.rpm
Koji: http://koji.fedoraproject.org/koji/taskinfo?taskID=7476096

The upstream compass test suite isn't minitest5 compatible yet, filed a few PR's and will update the latest to the most recent master shortly. After that we can backport the updates to 1.0.1 and should be able to include the test suite in compass.

See this issue regarding the md5 algorithm:

https://github.com/Compass/compass/pull/1266

Comment 4 Vít Ondruch 2014-08-29 13:01:49 UTC
(In reply to Mo Morsi from comment #3)
> The upstream compass test suite isn't minitest5 compatible yet, filed a few
> PR's and will update the latest to the most recent master shortly. After
> that we can backport the updates to 1.0.1 and should be able to include the
> test suite in compass.

Well there are several options how to execute the test suite:

1) Patch, including submitting it upstream.
2) Monkey patching, e.g. rubygem-backports [1]
3) BR: rubygem(minitest) < 5


> See this issue regarding the md5 algorithm:
> 
> https://github.com/Compass/compass/pull/1266

Thanks, I added comment there.

[1] http://pkgs.fedoraproject.org/cgit/rubygem-backports.git/tree/rubygem-backports.spec#n55

Comment 5 Mo Morsi 2014-09-16 23:09:15 UTC
Spec: https://mmorsi.fedorapeople.org/staging/rubygem-compass-core.spec
SRPM: http://mmorsi.fedorapeople.org/staging/rubygem-compass-core-1.0.1-3.fc20.src.rpm

Updated to run tests. Updated test suite pulls in rubygem-true, which has been seperately packaged / submitted. Minitest5 patch backported.

Comment 6 Vít Ondruch 2014-12-22 12:31:55 UTC
* Test suite
  - I'd suggest to execute the test suite using following command:

    ruby -Ilib:test/units \
      -e 'Dir.glob "./test/units/*_test.rb", &method(:require)'

  - Please expand the test suite in %check section. This way you keep in RPM
    just the content which was originally shipped by upstream. This also avoids
    several rpmlint complains.
  - It seems that the timecop and true are needed just for integration
    tests. Since there is circular dependency between true and compass, I'd
    suggest to use boostrap macro [1] to disable the integration tests during
    bootstrap.

Otherwise the package is legit => APPROVED


[1] https://fedoraproject.org/wiki/Packaging:Guidelines#Bootstrapping

Comment 7 Mo Morsi 2014-12-23 22:10:21 UTC
(In reply to Vít Ondruch from comment #6)
> * Test suite
>   - I'd suggest to execute the test suite using following command:
> 
>     ruby -Ilib:test/units \
>       -e 'Dir.glob "./test/units/*_test.rb", &method(:require)'

Updated

> 
>   - Please expand the test suite in %check section. This way you keep in RPM
>     just the content which was originally shipped by upstream. This also
> avoids
>     several rpmlint complains.

Assuming this meant exclude the test suite in the %files section. In which case done.

>   - It seems that the timecop and true are needed just for integration
>     tests. Since there is circular dependency between true and compass, I'd
>     suggest to use boostrap macro [1] to disable the integration tests during
>     bootstrap.

Currently the integration tests are not being run anyways so just ommitting this extra bit since its not needed. Once true is in we can update the spec to run those tests.

> 
> Otherwise the package is legit => APPROVED
> 

Thanks

Final spec: https://mmorsi.fedorapeople.org/staging/rubygem-compass-core.spec
Final srpm: https://mmorsi.fedorapeople.org/staging/rubygem-compass-core-1.0.1-4.fc22.src.rpm
Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=8467442

Comment 8 Mo Morsi 2014-12-23 22:10:43 UTC
New Package SCM Request
=======================
Package Name: rubygem-compass-core
Short Description:  The Compass core stylesheet library
Upstream URL: http://rubygems.org/gems/compass-core
Owners: mmorsi
Branches: f20 f21
InitialCC:

Comment 9 Gwyn Ciesla 2014-12-24 11:19:23 UTC
Git done (by process-git-requests).


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