These are chat archives for jruby-gradle/jruby-gradle-plugin

4th
May 2019
Schalk W. Cronjé
@ysb33r
May 04 07:57
@rtyler finally in front of a computer to do something useful (been configuring my new laptop since yesterday afternoon)
Schalk W. Cronjé
@ysb33r
May 04 09:31
Having pulled master and applied 3342 to it locally I see a failure with Check if rack version gets resolved

I also see this

Successfully installed slim-2.0.2
1 gem installed
Successfully installed rack-1.5.5
Successfully installed rack-protection-1.5.5
Successfully installed jar-dependencies-0.1.16.pre
1 gem installed
Successfully installed rake-12.3.2
Building native extensions. This could take a while...
Successfully installed childprocess-1.0.1
2 gems installed

which mostly looks good, but then also it fails with

ERROR:  While executing gem ... (Gem::Package::PathError)
    installing into parent path /home/schalkc/Projects/jruby-gradle-dev/jruby-gradle-plugin/jruby-gradle-base-plugin/build/tmp/integrationTest/root/jpgis/rack-resolve/build/gems/gems/lookout-rack-utils-3.1.0.12 of /home/schalkc/Projects/jruby-gradle-dev/jruby-gradle-plugin/jruby-gradle-base-plugin/build/tmp/integrationTest/root/jpgis/rack-resolve/build/gems/gems/lookout-rack-utils-3.1.0.12 is not allowed
Schalk W. Cronjé
@ysb33r
May 04 10:09
I can now also reproduce the problem inside IntelliJ
Schalk W. Cronjé
@ysb33r
May 04 10:17
As this is the backtrace
ERROR:  While executing gem ... (Gem::Package::PathError)
    installing into parent path /home/schalkc/Projects/jruby-gradle-dev/jruby-gradle-plugin/jruby-gradle-base-plugin/build/tmp/integrationTest/jpgis/rack-resolve/build/gems/gems/lookout-rack-utils-3.1.0.12 of /home/schalkc/Projects/jruby-gradle-dev/jruby-gradle-plugin/jruby-gradle-base-plugin/build/tmp/integrationTest/jpgis/rack-resolve/build/gems/gems/lookout-rack-utils-3.1.0.12 is not allowed
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:425:in `install_location'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:368:in `block in extract_tar_gz'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package/tar_reader.rb:65:in `each'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:365:in `block in extract_tar_gz'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:492:in `block in open_tar_gz'
    org/jruby/ext/zlib/RubyGzipFile.java:97:in `wrap'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:489:in `open_tar_gz'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:364:in `extract_tar_gz'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:345:in `block in extract_files'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package/tar_reader.rb:65:in `each'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:342:in `block in extract_files'
    org/jruby/RubyIO.java:1157:in `open'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package/file_source.rb:30:in `with_read_io'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/package.rb:339:in `extract_files'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/installer.rb:815:in `extract_files'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/installer.rb:307:in `install'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:242:in `install_gem_without_dependencies'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:198:in `install_gem'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:262:in `block in install_gems'
    org/jruby/RubyArray.java:1792:in `each'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:258:in `install_gems'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/commands/install_command.rb:165:in `execute'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/command.rb:313:in `invoke_with_build_args'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/command_manager.rb:173:in `process_args'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/command_manager.rb:143:in `run'
    uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/gem_runner.rb:59:in `run'
    uri:classloader:/META-INF/jruby.home/bin/jgem:21:in `<main>'
    org/jruby/RubyKernel.java:1022:in `load'
    uri:classloader:/META-INF/jruby.home/bin/gem:4:in `<main>'
Schalk W. Cronjé
@ysb33r
May 04 10:37
Also reproducible from the command-line as
java -Dfile.encoding=utf-8 -Duser.country=US -Duser.language=en -Duser.variant \
  -cp /path/to/jruby-complete-9.2.7.0.jar org.jruby.Main -S gem install \
  /path/to/downloaded-gem/rack-1.5.5.gem /path/to/downloaded-gem/lookout-rack-utils-3.1.0.12.gem \
  --ignore-dependencies --install-dir=/where/ever/you/want \
  --no-user-install --wrappers --no-document --local  --backtrace
Schalk W. Cronjé
@ysb33r
May 04 10:42
But, but if one unpackslookout-rack-utils-3.1.0.12.gem, the contained data.tar.gz is empty. Is that normal, @rtyler ?
Schalk W. Cronjé
@ysb33r
May 04 10:48
I changed the above command-line to use 5.0.0.49 instead and the problem went away. SO I suspect if you change src/integTest/mavenrepo to remove the old 3.x versions and replace it with a new 5.x if will solve your test failure.
R. Tyler Croy
@rtyler
May 04 15:40
interesting
great detective work @ysb33r
Schalk W. Cronjé
@ysb33r
May 04 17:16
Let me know if you need more help. I might be able to a bit of work in the next couple of week.
R. Tyler Croy
@rtyler
May 04 18:11
hah, grabbing a new lookout-rack-utils moves the issue to sinatra?!
installing into parent path /home/tyler/source/github/jruby-gradle/jruby-gradle-plugin/jruby-gradle-base-plugin/build/tmp/integrationTest/root/jpgis/rack-resolve/build/gems/gems/sinatra-1.4.5 of /home/tyler/source/github/jruby-gradle/jruby-gradle-plugin/jruby-gradle-base-plugin/build/tmp/integrationTest/root/jpgis/rack-resolve/build/gems/gems/sinatra-1.4.5 is not allowed
ah, that's an empty stub gem too, I think that might be the problem here
we manufactured these stub gems to save some space
Schalk W. Cronjé
@ysb33r
May 04 18:12
Yup!
R. Tyler Croy
@rtyler
May 04 18:12
fixing
Schalk W. Cronjé
@ysb33r
May 04 18:12
I guess putting something inside might work
R. Tyler Croy
@rtyler
May 04 18:16
I'm just going to grab the real gem files
yeah, this is looking better
R. Tyler Croy
@rtyler
May 04 18:26
@headius read the last 10-ish lines of scrollback if you're curious about the resolution of this install parent path error
I'm going to have to remember how to cut a release :laughing:
Schalk W. Cronjé
@ysb33r
May 04 18:33
Once you that release out, I am going to restructure the build and the tests, attempting not to chance any of the main code in the process.
R. Tyler Croy
@rtyler
May 04 18:36
I'll try to get something rolled today
I cannot remember the last time I logged into bintray or plugins.gradle.org
it was at least one laptop ago
R. Tyler Croy
@rtyler
May 04 18:43
@ysb33r have you had a chance to play with the Gradle Kotlin support?
R. Tyler Croy
@rtyler
May 04 19:17
@ysb33r also, I'm curious what you think of #340 and bringing the baseline Gradle version up
Schalk W. Cronjé
@ysb33r
May 04 19:21
@rtyler On Kotlin, yes. I have been writing tests to ensure other plugins that I work on is compatible with the Kotlin DSL. I am bluntly going to say that the Kotlin DSL is good for someone who want to write a build script for code completion in the IDE and not for one that is readable.
On upgradling, I can have a look at it.
R. Tyler Croy
@rtyler
May 04 19:22
that's too bad about Kotlin, so many people seem to be excited about it
I like Groovy well enough at this point
Schalk W. Cronjé
@ysb33r
May 04 19:23
I have had a number of Kotlin-Gradle war stories and have have mentioned some of them in talks that I have done of late.
R. Tyler Croy
@rtyler
May 04 19:23
heh
I watched a fair bit of that Madrid GUG talk the other day
Schalk W. Cronjé
@ysb33r
May 04 19:26
Right at the end of that talk I spoke of some of the things that we encountered building asciidoctor-gradle 2.x
Have you done the release?
R. Tyler Croy
@rtyler
May 04 19:27
not yet, running all the tests and whatnot locally
Schalk W. Cronjé
@ysb33r
May 04 19:32
On #340 I would say, we upgradle to 4.10.2 for building, release with a more major number of break compatibility with anything before 4.2.
R. Tyler Croy
@rtyler
May 04 19:34
that approach sounds good to me
alright, 1.7.0 pushed to bintray
I believe plugins.gradle.org is still set up to mirror from there
Schalk W. Cronjé
@ysb33r
May 04 20:12
Should be.
Oooh, just noticed that JRubyExecTraits._convertScript has a bug in it. It resolves relative to the current working directory rather than the project directory.
R. Tyler Croy
@rtyler
May 04 20:28
neat
plugins.gradle.org updated, yay
the release can be considered done :clap:
Schalk W. Cronjé
@ysb33r
May 04 20:57
\o/
I am finding bugs in our old code, by just restructuring and reviewing tests
R. Tyler Croy
@rtyler
May 04 20:59
hah, that's great!