Bug 821146
Summary: | Review Request: jruby-rack - Rack adapter for JRuby and Servlet Containers | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | gil cattaneo <puntogil> |
Component: | Package Review | Assignee: | Nobody's working on this, feel free to take it <nobody> |
Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | package-review, puntogil, vondruch |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2014-05-20 11:11:13 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 819583, 819587 | ||
Bug Blocks: | 848096 |
Description
gil cattaneo
2012-05-12 13:48:02 UTC
Hi gil, What is the reason why not use the gem version or vice versa? Just wondering. Hi Vit http://rubygems.org/downloads/jruby-rack-1.1.7.gem contains prebuild java libraries, no source code jruby-rack 1.0.10 requires, for build, the actual jruby... for the newer version require jruby >(?)= 1.6.7.2 (In reply to comment #2) Ah, that makes sense why to use the github and tarball as as source. Didn't think about it. But still, the question stays the same. From that sources, you could build gem, which is build by Fedora infrastructure, which should be acceptable IMO. I am asking such question, because I am not aware of any other JRuby specific subpackage and I was always wondering how we will do that :) Unfortunately JRuby is not in the best shape yet, but my vision is shared gems between Ruby and JRuby, which of course means that we should be able to solve where to store binary extensions. On the other hand, if you keep it as a non-gem as of now, we can postpone the gem issues ;) Spec URL: http://gil.fedorapeople.org/jruby-rack/1/jruby-rack.spec SRPM URL: http://gil.fedorapeople.org/jruby-rack/1/jruby-rack-1.0.10-2.fc16.src.rpm - Added tomcat 7.x apis support - Added rubygem subpackage (jruby only) tested on: http://koji.fedoraproject.org/koji/taskinfo?taskID=4395814 without the proper bytelist (>= 1.0.8-3) and jnr-constants (>= 0.7-6) version requires by pom file I am triaging old review tickets. I can't promise a review if you reply, but by closing out the stale tickets we can devote extra attention to the ones which aren't stale. Build fails for me: http://koji.fedoraproject.org/koji/taskinfo?taskID=5398903 Spec URL: http://gil.fedorapeople.org/jruby-rack/2/jruby-rack.spec SRPM URL: http://gil.fedorapeople.org/jruby-rack/2/jruby-rack-1.0.10-3.fc18.src.rpm - Disable gem task. Cause: jruby 1.7.x unable to initialized constant Gem::Builder - Used pom macros - Fixed BuildRequires list (In reply to gil cattaneo from comment #8) > - Disable gem task. Cause: jruby 1.7.x unable to initialized constant > Gem::Builder jruby is broken, the maintainer removed all jruby Gem libraries Spec URL: http://gil.fedorapeople.org/jruby-rack/2/jruby-rack.spec SRPM URL: http://gil.fedorapeople.org/jruby-rack/2/jruby-rack-1.0.10-3.fc18.src.rpm - fixed problem with RubyGems 2.0 - Re-added rubygem subpackage (jruby only) Gil, I'm still wondering, why don't you package it just as a gem (see comment #4). What is the point of keeping the maven stuff and -javadoc subpackages around? They are not distributed with the gem version as far as I understand. I would like to see this package renamed to "rubygem-jruby-rack" and that is it. Is that some Java standard? Should we clarify this with Java-SIG? Moreover, you should install the gem into standard Fedora's gem locations IMO, using standard gem macros. The "%{_datadir}/jruby/lib/ruby/gems/1.8/gems/" was never intended to be used on Fedora. I am not sure if that location even works (but you probably tested it, so we might want to disable it, to prevent its misuse). Also, I am not Java, JRuby nor Rack expert, but I would say, that you have overspecified requires. From my POV, the gem should depend just on "ruby(rubygems)" and nothing else and the reasoning is following: I have installed MRI and I do "yum install rubygem-jruby-rack". After that, I can do: $ irb irb(main):001:0> p RUBY_DESCRIPTION "ruby 2.0.0p0 (2013-02-24) [x86_64-linux]" => "ruby 2.0.0p0 (2013-02-24) [x86_64-linux]" irb(main):002:0> require 'jruby-rack' => true irb(main):003:0> p JRuby::Rack::VERSION "1.1.13.2" => "1.1.13.2" and you see, it "works". It can be required. From the code, I would say that this is design decision of upstream. So why you would force me to install all the dependencies you have listed in the .spec file right now? (In reply to Vít Ondruch from comment #13) > Gil, I'm still wondering, why don't you package it just as a gem (see > comment #4). What is the point of keeping the maven stuff and -javadoc > subpackages around? They are not distributed with the gem version as far as no this package isn't *just a gem* ... the java library is required for build others project as sonar what you fail to understand? when is specified that this package can be used *only with jruby*? > I understand. I would like to see this package renamed to > "rubygem-jruby-rack" and that is it. Is that some Java standard? Should we > clarify this with Java-SIG? > take a look here http://fedoraproject.org/wiki/Packaging:Java http://fedoraproject.org/wiki/Packaging:Java#Pre-built_JAR_files_.2F_Other_bundled_software > Moreover, you should install the gem into standard Fedora's gem locations > IMO, using standard gem macros. The > "%{_datadir}/jruby/lib/ruby/gems/1.8/gems/" was never intended to be used on > Fedora. I am not sure if that location even works (but you probably tested > it, so we might want to disable it, to prevent its misuse). > repeat *only for jruby* > Also, I am not Java, JRuby nor Rack expert, but I would say, that you have > overspecified requires. From my POV, the gem should depend just on > "ruby(rubygems)" and nothing else and the reasoning is following: I have > installed MRI and I do "yum install rubygem-jruby-rack". After that, I can > do: > > $ irb > irb(main):001:0> p RUBY_DESCRIPTION > "ruby 2.0.0p0 (2013-02-24) [x86_64-linux]" > => "ruby 2.0.0p0 (2013-02-24) [x86_64-linux]" > irb(main):002:0> require 'jruby-rack' > => true > irb(main):003:0> p JRuby::Rack::VERSION > "1.1.13.2" > => "1.1.13.2" > irb read also the internal jruby-rack.jar? > and you see, it "works". It can be required. From the code, I would say that > this is design decision of upstream. So why you would force me to install > all the dependencies you have listed in the .spec file right now? dependencies? are essentially due to the fact that *this package is not like any other rubygem(XYZ)* because it *contains a java library*. as a result you should also consider the dependencies used or required by this latest, listed in the pom file hope that my response does not sound irreverent regard (In reply to gil cattaneo from comment #14) > (In reply to Vít Ondruch from comment #13) > > Gil, I'm still wondering, why don't you package it just as a gem (see > > comment #4). What is the point of keeping the maven stuff and -javadoc > > subpackages around? They are not distributed with the gem version as far as > > no this package isn't *just a gem* ... > the java library is required for build others project as sonar > > what you fail to understand? when is specified that this package can be used > *only with jruby*? I don't know. I am asking you to give me the answer and you say it is usable even without JRuby. Then it probably makes sense to package it as you did, i.e. to provide rubygem as a subpackage. > > I understand. I would like to see this package renamed to > > "rubygem-jruby-rack" and that is it. Is that some Java standard? Should we > > clarify this with Java-SIG? > > > take a look here > http://fedoraproject.org/wiki/Packaging:Java > http://fedoraproject.org/wiki/Packaging:Java#Pre-built_JAR_files_. > 2F_Other_bundled_software > > > Moreover, you should install the gem into standard Fedora's gem locations > > IMO, using standard gem macros. The > > "%{_datadir}/jruby/lib/ruby/gems/1.8/gems/" was never intended to be used on > > Fedora. I am not sure if that location even works (but you probably tested > > it, so we might want to disable it, to prevent its misuse). > > > > repeat *only for jruby* So you did that only for their 1.8 flavor? No, that is not how we think we should operate. As long as I can install the gem using plain gem install with my MRI or Rubinius, it is not JRuby only. May be that is limitation of JRuby or RubyGems, but in that case, that should be solved first with appropriate upstreams. IOW if you claim that this is JRuby only rubygem, then "gem install" using MRI should say to me "sorry, this is only valid for JRuby" and abort the installation. > > Also, I am not Java, JRuby nor Rack expert, but I would say, that you have > > overspecified requires. From my POV, the gem should depend just on > > "ruby(rubygems)" and nothing else and the reasoning is following: I have > > installed MRI and I do "yum install rubygem-jruby-rack". After that, I can > > do: > > > > $ irb > > irb(main):001:0> p RUBY_DESCRIPTION > > "ruby 2.0.0p0 (2013-02-24) [x86_64-linux]" > > => "ruby 2.0.0p0 (2013-02-24) [x86_64-linux]" > > irb(main):002:0> require 'jruby-rack' > > => true > > irb(main):003:0> p JRuby::Rack::VERSION > > "1.1.13.2" > > => "1.1.13.2" > > > > irb read also the internal jruby-rack.jar? That was not the point obviously. > > > and you see, it "works". It can be required. From the code, I would say that > > this is design decision of upstream. So why you would force me to install > > all the dependencies you have listed in the .spec file right now? > > dependencies? are essentially due to the fact that *this package is not like > any other rubygem(XYZ)* > because it *contains a java library*. as a result you should also consider > the dependencies used or > required by this latest, listed in the pom file Of course. But all this depends on answers to previous questions. You said, that the library is usable without JRuby, then it makes sense to have the dependencies. So no need to over-stress it here again. (In reply to Vít Ondruch from comment #15) > You said, that the library is usable without JRuby, then it makes sense to > have the dependencies. I should rather say "the library is usable just with plain Java". Spec URL: http://gil.fedorapeople.org/jruby-rack.spec SRPM URL: http://gil.fedorapeople.org/jruby-rack-1.1.13.2-1.fc19.src.rpm - update to 1.1.13.2 - removed rubygem subpackage, fails jruby/jruby-rake-plugin don't work properly. unable to create gem file. i have no more interest in maintaining this package |