-
Notifications
You must be signed in to change notification settings - Fork 205
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problems with Bundler 1.16.0 #421
Comments
We are looking at this too. The problem seems to be that bundler 1.16.0 doesn't ship with a https://github.com/jruby/warbler/blob/master/lib/warbler/traits/bundler.rb#L43-L56 This really HORRIBLE workaround ... after spec_file = File.join(g.gem_dir, "bundler.gemspec")
if ! File.exist?(spec_file)
File.write(spec_file, g.to_ruby)
puts "#{spec_file} written"
else
puts "#{spec_file} exists"
end |
I don't know if this is a better or worse workaround, but in my Jenkins build script where I had
(I always build from scratch.) |
I added this terrible hack to my local install of warbler after line 44. It downloads and saves a copy of # Bundler 1.16 hack for missing bundler gemspec
# Download bundler.gemspec from github to warbler gem local root path
unless full_gem_path.join('bundler.gemspec').exist?
warbler_gem_path = File.expand_path(File.join(File.dirname(__FILE__), '../../..'))
full_gem_path = Pathname.new(warbler_gem_path)
unless full_gem_path.join('bundler.gemspec').exist?
bundler_min_version = spec.version.to_s.split('.')[0..1].join('-')
require 'open-uri'
IO.copy_stream(
open("https://raw.githubusercontent.com/bundler/bundler/"\
"#{bundler_min_version}-stable/bundler.gemspec"),
full_gem_path.join('bundler.gemspec').to_s
)
end
end Here's my full file: https://gist.github.com/HarlemSquirrel/cc4d8f70ac39a382c6863b585beec273 EDIT: This does not seem to yield a usable war file :( |
This issue will fix by bundler-1.16.1 with rubygems/bundler#6195 soon. |
Include bundler.gemspec in the gem because warbler breaks w/o it f06405 caused a regression with warbler, described in #6165 and jruby/warbler#421 If the fix is ok, it should probably be cherry-picked to 1-16-stable. ### What was the end-user problem that led to this PR? Upgrading from bundler v1.15.x to v1.16.0 causes warbler to break/abort with error. ### What was your diagnosis of the problem? 1. error message from warbler: missing file 2. see why file is missing 3. google to see if it's just me 😄 ### What is your fix for the problem, implemented in this PR? Put the missing (from warblers point of view at least) back. ### Why did you choose this fix out of the possible options? Seems easier than to fix warbler.
Include bundler.gemspec in the gem because warbler breaks w/o it f06405 caused a regression with warbler, described in rubygems#6165 and jruby/warbler#421 If the fix is ok, it should probably be cherry-picked to 1-16-stable. ### What was the end-user problem that led to this PR? Upgrading from bundler v1.15.x to v1.16.0 causes warbler to break/abort with error. ### What was your diagnosis of the problem? 1. error message from warbler: missing file 2. see why file is missing 3. google to see if it's just me 😄 ### What is your fix for the problem, implemented in this PR? Put the missing (from warblers point of view at least) back. ### Why did you choose this fix out of the possible options? Seems easier than to fix warbler.
seems like quite an ugly/old hack - from 89978dd |
I think the problems I reported below were due to a wonky rvm setup. After removing I'm still seeing a related problem with bundler-1.16.1 on rvm:
This is sort of correct, in the sense that that directory only contains In |
no idea if this is related, I'm not really a jruby developer. But upgrading from 1.11.2 to 1.16.4 of bunder in our build process (jruby complete / jruby exec plugin in maven) results in completely unusable war files: `` --- Context Init Parameters: --- Backtrace Gem.dir: /apps/tomcat/webapps/editor/WEB-INF/gems --- Bundler |
I also noted from the dump above, it referenced the path This is a garbage path, that points to nowhere. This is a war file being deployed in tomcat - the war file exploded path is /apps/tomcat/webapps/editor/ Nothing /apps/.gem/ could be correct - now, I don't know if this has always been wrong, or if this is a symptom of the whatever broke the world in the recent releases... |
@darmbrust rubygems alsways adds $HOME/.gem/jruby/2.3.0 to GEM_PATH and if there is nothing it does not find anything there. so this bit is totally OK |
I did a bit more isolation - 1.13.7 is the last version of bundler that worked for me. 1.14.6 does not work, nor does anything newer. |
It seems as if Bundler 1.16.0 might have broken Warbler?
I get "Unable to detect bundler spec under '/usr/share/tomcat/.rvm/gems/jruby-9.1.8.0/gems/bundler-1.16.0'' and its sub-dirs".
This is a new problem, and if I force bundler < 1.16.0, it all works again. I'm using jRuby 9.1.13.0.
Here is some output (from a Jenkins log):
Here is the rake "deploy" task group, which is running bundler:
Here's my config/warble.rb:
The text was updated successfully, but these errors were encountered: