Bug 1470654 - New version of rubygem-addressable
Summary: New version of rubygem-addressable
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: rubygem-addressable
Version: 27
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Shawn Starr
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1470699
TreeView+ depends on / blocked
 
Reported: 2017-07-13 12:03 UTC by František Zatloukal
Modified: 2017-08-29 16:38 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-08-29 16:08:18 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description František Zatloukal 2017-07-13 12:03:10 UTC
Description of problem:
package rubygem-jekyll-3.5.0-1.fc27.noarch requires rubygem(addressable) >= 2.4, but none of the providers can be installed

Updated SPEC: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-26-x86_64/00578917-rubygem-addressable/rubygem-addressable.spec

Updated SRPM: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-26-x86_64/00578917-rubygem-addressable/rubygem-addressable-2.5.1-1.fc26.src.rpm

Comment 1 Shawn Starr 2017-07-13 18:17:08 UTC
Does your .spec build and pass tests? 2.4 broke things...

Comment 2 František Zatloukal 2017-07-14 18:25:57 UTC
My spec is building fine with rpmbuild -bb, but not in mock, because of:
help2man: can't get `--help' info from /builddir/build/BUILDROOT/rubygem-jekyll-3.5.0-1.fc26.x86_64/usr/bin/jekyll
help2man: can't get `--help' info from /builddir/build/BUILDROOT/rubygem-jekyll-3.5.0-1.fc26.x86_64/usr/bin/jekyll

You can see full build log here: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-26-x86_64/00578916-rubygem-jekyll/build.log.gz

Comment 3 František Zatloukal 2017-07-14 18:28:55 UTC
Sorry, I've posted previous comment to the wrong bug. Building is working fine for latest rubygem-addressable, see https://copr.fedorainfracloud.org/coprs/frantisekz/fedora-developer-portal/build/578917/

Comment 4 Shawn Starr 2017-07-14 20:09:25 UTC
In that case, let's get this rolled into Fedora w/o copr, you want to co-maintain with me?

Comment 5 František Zatloukal 2017-07-14 21:44:12 UTC
(In reply to Shawn Starr from comment #4)
> In that case, let's get this rolled into Fedora w/o copr, you want to
> co-maintain with me?

Sure, but keep in mind that I am not very experienced packager (my first Review Request is still pending :) ).

Comment 6 František Zatloukal 2017-07-27 14:41:21 UTC
So, it looks like I'll have to wait till my Review Request is finished before becoming a co-maintainer.

Anyway, I think you can move forward and update rubygem-addressable in Rawhide so dependency tree up to my Review Request can be satisfied.

Comment 7 Shawn Starr 2017-07-27 17:07:32 UTC
I'll take a look at this this week and get this into rawhide

Comment 8 Shawn Starr 2017-07-27 17:15:22 UTC
If this passes scratch build in koji I'll just release your spec (modified) to rawhide for 27.

Comment 9 Shawn Starr 2017-07-27 17:20:27 UTC
Are we not doing any %check tests anymore? This fails otherwise w/o the require BuildDependencies

What is our policy on not performing tests?

Comment 10 Shawn Starr 2017-07-27 17:51:04 UTC
It builds fine w/o tests but, if our policy requires them, we need further work on the .spec

Comment 11 Shawn Starr 2017-07-27 17:53:46 UTC
"If there is test suite available for the package (even separately, for example not included in the gem but available in the upstream repository), it should be run in %check. The test suite is the only automated tool which can assure basic functionality of the package. Running it is especially helpful when mass rebuilds are required. You may skip test suite execution when not all build dependencies are met but this must be documented in the specfile. The missing build dependencies to enable the test suite should be packaged for Fedora as soon as possible and the test suite re-enabled."

Comment 12 František Zatloukal 2017-07-27 18:26:25 UTC
We definitely should be doing tests. My SPEC file was created with gem2rpm without any modifications. 

Regarding failing tests, it looks like the issue origins from this:
https://github.com/sporkmonger/addressable/commit/f1d5855162c48d06eb1907871909d5859b9a7d3c

which adds Dependency on git gem (which is not available in Fedora). I think disabling the test which was introduced in this commit would be easiest path forward.

Patching shouldn't be too difficult, I can take a look at it tomorrow.

Comment 13 František Zatloukal 2017-07-31 12:47:34 UTC
So, I've made patch(check SRPM if you wanna look at it) to be able to run the test suite during rpm build without too much burden. Some of the tests are unfortunately failing (I've added "|| :" to continue building anyway), 1357 examples, 6 failures, 5 pending

SPEC: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00585054-rubygem-addressable/rubygem-addressable.spec

SRPM: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00585054-rubygem-addressable/rubygem-addressable-2.5.1-2.fc27.src.rpm

I don't think I'll be able to do anything with test fails though. Is this acceptable? Should I try to contact upstream about this?


Failed examples:

rspec ./spec/addressable/uri_spec.rb:404 # Addressable::URI when initialized from individual components returns 'com' for #tld
rspec ./spec/addressable/uri_spec.rb:2392 # Addressable::URI when parsed from 'HTTP://EXAMPLE.COM/' should have a tld of 'com'
rspec ./spec/addressable/uri_spec.rb:2407 # Addressable::URI when parsed from 'http://www.example.co.uk/' should have a tld of 'co.uk'
rspec ./spec/addressable/uri_spec.rb:2411 # Addressable::URI when parsed from 'http://www.example.co.uk/' should have a domain of 'example.co.uk'
rspec ./spec/addressable/uri_spec.rb:2426 # Addressable::URI when parsed from 'http://sub_domain.blogspot.com/' should have a tld of 'com'
rspec ./spec/addressable/uri_spec.rb:2430 # Addressable::URI when parsed from 'http://sub_domain.blogspot.com/' should have a domain of 'blogspot.com'

Comment 14 František Zatloukal 2017-08-14 18:56:06 UTC
Hey Shawn,
is my solution good enough for now or do we need to have all tests passing? If it's OK, can we move forward and update rawhide at least?

Comment 15 Shawn Starr 2017-08-14 23:51:32 UTC
Hi František, if those tests are not critical, It would be sad if we release a package that users are developing with that breaks because they are using those functionalities.

Comment 16 Jan Kurik 2017-08-15 08:07:35 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 27 development cycle.
Changing version to '27'.

Comment 17 Zbigniew Jędrzejewski-Szmek 2017-08-18 00:41:17 UTC
Shawn, I can't parse your last comment. Are you saying that the package should be updated or not?

Comment 18 Shawn Starr 2017-08-18 15:05:18 UTC
I'm saying you're sure those failures don't break the actual use of the package then let's comment out those checks.

Have you tried to use this code as it is now? Does it work for your dependency?

If we push this package and we get regressions in other packages using rubygem-addressable then we have to fix the code.

Comment 19 František Zatloukal 2017-08-18 21:56:46 UTC
SPEC: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00591675-rubygem-addressable/rubygem-addressable.spec
SRPM: https://github.com/frantisekz/content/releases/download/temp/rubygem-addressable-2.5.1-3.fc26.src.rpm

Build with tests is failing in mock (it is ok with rpmbuild), see log[0]. It's weird because:
> dnf provides "/usr/share/gems/gems/rspec-core-3.6.0/lib/rspec/core/formatters/progress_formatter.rb"

but:
/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:133:in `require': cannot load such file -- rspec/core/formatters/progress_formatter (LoadError)

rubygem-rspec-core-3.6.0-1.fc26.1.noarch : Rspec-2 runner and formatter

Should I report bug against rubygem-rspec-core ?

[0] https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00591675-rubygem-addressable/build.log.gz

Comment 20 František Zatloukal 2017-08-19 12:01:31 UTC
Sorry, I made typo in last comment, correct part:

> dnf provides "/usr/share/gems/gems/rspec-core-3.6.0/lib/rspec/core/formatters/progress_formatter.rb"

rubygem-rspec-core-3.6.0-1.fc26.1.noarch : Rspec-2 runner and formatter

Comment 21 František Zatloukal 2017-08-22 11:24:02 UTC
With great help of Vít Ondruch, here is the version with tests running correctly even in mock.

SPEC: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00592650-rubygem-addressable/rubygem-addressable.spec
SRPM: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00592650-rubygem-addressable/rubygem-addressable-2.5.1-4.fc28.src.rpm

Shawn, I think you can go forward and update this in Rawhide. It's so soon after branching, we'll have plenty of time to find out potential issues in F28.

Comment 22 František Zatloukal 2017-08-22 11:26:48 UTC
PS, I've forgot to fill comments for patches in .spec:

> # Revert f1d5855162c48d06eb1907871909d5859b9a7d3c (rack-mount)
> %patch0
> # Backport commit to fix more tests
> %patch1
> # Comment out failing tests
> %patch2

Comment 23 Shawn Starr 2017-08-22 14:19:53 UTC
Ok, I'll roll this into rawhide today

Comment 24 Shawn Starr 2017-08-23 15:19:38 UTC
Today that is :)

Comment 25 Shawn Starr 2017-08-25 01:34:21 UTC
Testing this against 2.5.2 which just came out...

Comment 26 František Zatloukal 2017-08-25 07:47:51 UTC
You might want to drop this patch for 2.5.2: 

Patch1: 0002-Request-URI-methods-handle-URI-with-uppercase-letter.patch

Comment 27 František Zatloukal 2017-08-28 14:31:00 UTC
Shawn, I've updated SPEC/SRPM for 2.5.2, removed Patch1: 0002-Request-URI-methods-handle-URI-with-uppercase-letter.patch and fixed warning: Could not load native IDN implementation.

SPEC: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00594726-rubygem-addressable/rubygem-addressable.spec

SRPM: https://copr-be.cloud.fedoraproject.org/results/frantisekz/fedora-developer-portal/fedora-rawhide-x86_64/00594726-rubygem-addressable/rubygem-addressable-2.5.2-1.fc28.src.rpm

Builds fine in mock (without internet access as it is in Koji). I think we're good to go here for F28.

Comment 28 Shawn Starr 2017-08-29 15:45:37 UTC
This is now pushed to rawhide, thanks!

Comment 29 Shawn Starr 2017-08-29 15:51:52 UTC
Well not yet... it build scratch but gives me 404 error in koji...looking at why during dependency download...

Comment 30 Shawn Starr 2017-08-29 15:56:40 UTC
Something wrong:

https://kojipkgs.fedoraproject.org//work/tasks/257/21530257/root.log

I don't know what it's referring to for 404 in terms of what it's trying to download for dependencies. It didn't download ruby though...

Comment 31 Shawn Starr 2017-08-29 16:08:18 UTC
Its a repo issue, closing, i'll keep trying to build until the issue is resolved but the packaging is good to go.

Comment 32 Shawn Starr 2017-08-29 16:38:05 UTC
Not a repo issue, for some reason my build didn't push the .gem into the sources repo. Now the build is completed.


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