Bug 213500 - www/rubygem-jekyll: Version 3.1.3 pkg is non-functional because of rubygem-rouge has upgraded to 2.*
Summary: www/rubygem-jekyll: Version 3.1.3 pkg is non-functional because of rubygem-ro...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Some People
Assignee: Mark Felder
URL:
Keywords: needs-qa, regression
Depends on:
Blocks:
 
Reported: 2016-10-15 10:12 UTC by patpro
Modified: 2017-01-10 02:22 UTC (History)
7 users (show)

See Also:
vlad-fbsd: maintainer-feedback? (ruby)
feld: merge-quarterly+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description patpro 2016-10-15 10:12:55 UTC
I've installed rubygem-jekyll-3.1.3 on a FreeBSD server few weeks ago. It came with rubygem-rouge-1.10.1 and works great.

Yesterday I've installed rubygem-jekyll-3.1.3 on another FreeBSD server. It came with rubygem-rouge-2.0.5, and it does not work. It fails with:

$ jekyll 
/usr/local/lib/ruby/site_ruby/2.2/rubygems/dependency.rb:310:in `to_specs': Could not find 'rouge' (~> 1.7) - did find: [rouge-2.0.5] (Gem::MissingSpecVersionError)
Checked in 'GEM_PATH=/user/pproniew/.gem/ruby/2.2:/usr/local/lib/ruby/gems/2.2', execute `gem env` for more information
	from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1439:in `block in activate_dependencies'
	from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `each'
	from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `activate_dependencies'
	from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1410:in `activate'
	from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `block in activate_bin_path'
	from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `synchronize'
	from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `activate_bin_path'
	from /usr/local/bin/jekyll:22:in `<main>'


How to reproduce: 

# pkg update
# pkg install rubygem-jekyll
# jekyll
Comment 1 VK freebsd_triage 2016-10-15 11:07:35 UTC
Assign to port that is reported broken.
Comment 2 Torsten Zuehlsdorff freebsd_committer freebsd_triage 2016-10-19 15:03:27 UTC
Hello patpro!

Are you sure it worked? I take a look into it, since i was the one upgrading rubygem-rouge.
I wrote a patch so jekyll will accept the new rouge so i can check if it works. But i only got another error:

$ jekyll 
/usr/local/lib/ruby/site_ruby/2.2/rubygems/dependency.rb:310:in `to_specs': Could not find 'listen' (< 3.1, ~> 3.0) - did find: [listen-3.1.5] (Gem::MissingSpecVersionError)
Checked in 'GEM_PATH=/home/thorny/.gem/ruby/2.2:/usr/local/lib/ruby/gems/2.2', execute `gem env` for more information
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1439:in `block in activate_dependencies'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `each'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `activate_dependencies'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1410:in `activate'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1442:in `block in activate_dependencies'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `each'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `activate_dependencies'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1410:in `activate'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `block in activate_bin_path'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `synchronize'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `activate_bin_path'
        from /usr/local/bin/jekyll:22:in `<main>'

So rubygem-listen isn't in the correct version, but it was changed in august.  Its possible that it broke in HEAD while you installed it from quarterly on the other server.

Anyway: if i provide a patch are you able to test it? I have no idea how jekyll should work, so its better tested by somebody with any clue ;)
Comment 3 patpro 2016-10-19 15:14:22 UTC
Hello Torsten,

Yes it worked great, probably quarterly pkgs as you said. I've built a whole web site and when trying to reproduce the setup on production server it failed.

I can test the patch if you tell me how to use it.

thanks
Comment 4 patpro 2016-11-03 19:53:29 UTC
Any update on this problem?
Sorry I can't help, I'm ruby illiterate :/
Comment 5 Torsten Zuehlsdorff freebsd_committer freebsd_triage 2016-11-04 15:56:04 UTC
(In reply to patpro from comment #4)

> Any update on this problem?

Yes, its a bit more complicated than thought. :/

I tried to fix the problem with an update to 3.3.0. But it has the same dependencies to rouge. Even if i patch them out, it fails at another point. The dependency jekyll-watch wants "listen" in a version smaller than 3.1. But we have 3.1.5 since August.

So i'm currently trying if i can safely ignore the dependency or if we need a new port for the old "listen" version.
Comment 6 Sir l33tname 2016-11-07 09:07:14 UTC
It Looks like I didn't searched well enough. But I found basically the same things. See Bug #214252  

At this point my educated guess is to update the Jekyll port to 3.3.0,
we can use the newer listen port since there is only a regression for 
ruby21 which is not default on FreeBSD https://github.com/jekyll/jekyll-watch/commit/85290563aa2dc3d6c8ab4f55e29e43aea885e8cb

and for the rouge port we probably need to use an older version since it 
looks like it would introduce a major regression https://github.com/jekyll/jekyll/pull/5230
Comment 7 Torsten Zuehlsdorff freebsd_committer freebsd_triage 2016-12-06 16:30:05 UTC
The gem was updated meanwhile by sunpoet. Can you please check if it now works?
Comment 8 Sir l33tname 2016-12-07 15:18:24 UTC
I only looked at the diff and it doesn't look like he did anything else than what I tried. So my guess is that it's still broken. But I will test it this weekend.
Comment 9 Torsten Zuehlsdorff freebsd_committer freebsd_triage 2016-12-08 14:07:10 UTC
Yes, it is still broken:
$ jekyll 
/usr/local/lib/ruby/site_ruby/2.2/rubygems/dependency.rb:310:in `to_specs': Could not find 'rouge' (~> 1.7) - did find: [rouge-2.0.5] (Gem::MissingSpecVersionError)
Checked in 'GEM_PATH=/home/thorny/.gem/ruby/2.2:/usr/local/lib/ruby/gems/2.2', execute `gem env` for more information
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1439:in `block in activate_dependencies'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `each'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1428:in `activate_dependencies'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems/specification.rb:1410:in `activate'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `block in activate_bin_path'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `synchronize'
        from /usr/local/lib/ruby/site_ruby/2.2/rubygems.rb:279:in `activate_bin_path'
        from /usr/local/bin/jekyll:22:in `<main>'
Comment 11 Dominic Fandrey freebsd_committer freebsd_triage 2016-12-30 01:45:33 UTC
This fix for www/rubygem-addressable is also required to run jekyll:

https://reviews.freebsd.org/D8990
Comment 12 commit-hook freebsd_committer freebsd_triage 2017-01-06 18:30:26 UTC
A commit references this bug:

Author: kami
Date: Fri Jan  6 18:29:53 UTC 2017
New revision: 430725
URL: https://svnweb.freebsd.org/changeset/ports/430725

Log:
  textproc/rubygem-liquid3: new port

  - Required for www/rubygem-jekyll

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8975

Changes:
  head/textproc/Makefile
  head/textproc/rubygem-liquid3/
  head/textproc/rubygem-liquid3/Makefile
  head/textproc/rubygem-liquid3/distinfo
  head/textproc/rubygem-liquid3/pkg-descr
Comment 13 commit-hook freebsd_committer freebsd_triage 2017-01-06 18:38:35 UTC
A commit references this bug:

Author: kami
Date: Fri Jan  6 18:38:07 UTC 2017
New revision: 430726
URL: https://svnweb.freebsd.org/changeset/ports/430726

Log:
  textproc/rubygem-rouge1: New port

  - Required by www/rubygem-jekyll

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8976

Changes:
  head/textproc/Makefile
  head/textproc/rubygem-rouge1/
  head/textproc/rubygem-rouge1/Makefile
  head/textproc/rubygem-rouge1/distinfo
  head/textproc/rubygem-rouge1/pkg-descr
Comment 14 commit-hook freebsd_committer freebsd_triage 2017-01-06 18:41:40 UTC
A commit references this bug:

Author: kami
Date: Fri Jan  6 18:40:57 UTC 2017
New revision: 430727
URL: https://svnweb.freebsd.org/changeset/ports/430727

Log:
  devel/rubygem-listen: Add missing dependency

  - Add missing dependency on devel/rubygem-ruby_dep

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8977

Changes:
  head/devel/rubygem-listen/Makefile
Comment 15 commit-hook freebsd_committer freebsd_triage 2017-01-06 18:54:54 UTC
A commit references this bug:

Author: kami
Date: Fri Jan  6 18:53:48 UTC 2017
New revision: 430729
URL: https://svnweb.freebsd.org/changeset/ports/430729

Log:
  www/rubygem-jekyll: Fix RUN_DEPENDS

  - Does not work with the latest liquid release so depend on
    textproc/rubygem-liquid3
  - Does not work with the latest rouge release so depend on
    textproc/rubygem-rouge1

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8978

Changes:
  head/www/rubygem-jekyll/Makefile
Comment 16 Dominic Fandrey freebsd_committer freebsd_triage 2017-01-06 19:18:34 UTC
Fixed, thanks for reporting!
Comment 17 Ben Woods freebsd_committer freebsd_triage 2017-01-08 22:37:41 UTC
Hi Dominic,
Nice work in fixing this one!

It looks like it will need to be merged to the quarterly branch, as the fixes were applied to head 4 days after the new 2017Q1 was branched.
Can you please confirm?

patpro: is this working for you now on the quarterly branch of packages?

Regards,
Ben
Comment 18 Sir l33tname 2017-01-09 10:10:59 UTC
> url: "pkg+http://pkg.FreeBSD.org/${ABI}/quarterly",

I just tested the quarterly pkg and it's correct that jekyll is still broken there.
Comment 19 commit-hook freebsd_committer freebsd_triage 2017-01-10 02:18:51 UTC
A commit references this bug:

Author: feld
Date: Tue Jan 10 02:18:19 UTC 2017
New revision: 431047
URL: https://svnweb.freebsd.org/changeset/ports/431047

Log:
  MFH: r430729

  www/rubygem-jekyll: Fix RUN_DEPENDS

  - Does not work with the latest liquid release so depend on
    textproc/rubygem-liquid3
  - Does not work with the latest rouge release so depend on
    textproc/rubygem-rouge1

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8978

  Approved by:	ports-secteam (with hat)

Changes:
_U  branches/2017Q1/
  branches/2017Q1/www/rubygem-jekyll/Makefile
Comment 20 commit-hook freebsd_committer freebsd_triage 2017-01-10 02:19:55 UTC
A commit references this bug:

Author: feld
Date: Tue Jan 10 02:19:09 UTC 2017
New revision: 431048
URL: https://svnweb.freebsd.org/changeset/ports/431048

Log:
  MFH: r430727

  devel/rubygem-listen: Add missing dependency

  - Add missing dependency on devel/rubygem-ruby_dep

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8977

  Approved by:	ports-secteam (with hat)

Changes:
_U  branches/2017Q1/
  branches/2017Q1/devel/rubygem-listen/Makefile
Comment 21 commit-hook freebsd_committer freebsd_triage 2017-01-10 02:20:58 UTC
A commit references this bug:

Author: feld
Date: Tue Jan 10 02:20:07 UTC 2017
New revision: 431049
URL: https://svnweb.freebsd.org/changeset/ports/431049

Log:
  MFH: r430726

  textproc/rubygem-rouge1: New port

  - Required by www/rubygem-jekyll

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8976

  Approved by:	ports-secteam (with hat)

Changes:
_U  branches/2017Q1/
  branches/2017Q1/textproc/Makefile
  branches/2017Q1/textproc/rubygem-rouge1/
Comment 22 commit-hook freebsd_committer freebsd_triage 2017-01-10 02:22:01 UTC
A commit references this bug:

Author: feld
Date: Tue Jan 10 02:20:58 UTC 2017
New revision: 431050
URL: https://svnweb.freebsd.org/changeset/ports/431050

Log:
  MFH: r430725

  textproc/rubygem-liquid3: new port

  - Required for www/rubygem-jekyll

  PR:		213500
  Reported by:	freebsdbug@patpro.net
  Reviewed by:	mat
  Approved by:	mat
  Differential Revision:	https://reviews.freebsd.org/D8975

  Approved by:	ports-secteam (with hat)

Changes:
_U  branches/2017Q1/
  branches/2017Q1/textproc/Makefile
  branches/2017Q1/textproc/rubygem-liquid3/
Comment 23 Mark Felder freebsd_committer freebsd_triage 2017-01-10 02:22:22 UTC
Well they were merged out of order, but these are now in 2017Q1. :-)