Login  Register

Re: Latest version of Asciidoctor does not integrate with AJI project

Posted by mojavelinux on Jul 01, 2013; 9:17pm
URL: https://discuss.asciidoctor.org/Latest-version-of-Asciidoctor-does-not-integrate-with-AJI-project-tp366p367.html

Alex,

First, great news! Continuous integration FTW!

I did a brief exploration on my box (since I wanted to become familiar with the CI build anyway) and what I noticed is that this is an issue with the setup script. I recently changed the Asciidoctor version from 0.1.4.pre to 0.1.4.preview.1 [1]. That seems to be causing a problem with how JRuby resolves the gem under target/classes.

To be honest, I'm not sure I understand how it worked before. Instead of trying to overlay Asciidoctor HEAD onto version 0.1.3 to trick JRuby into using the right code base, I think the script should be installing the unreleased version of Asciidoctor into the local Maven repository and then building against a real gem. This is not only simpler, but it also makes the results more accurate.

I've put together a pull request that switches to this strategy. It's necessary to install the gem outside of the Maven lifecycle because, well, Maven just isn't that smart. Thus, Travis will invoke a shell script instead of mvn directly.

https://github.com/asciidoctor/asciidoctor-java-integration/pull/68

-Dan

Btw, I noticed that you are only running CI against the unreleased version of Asciidoctor. I think you should include building against the current released version in the build matrix. Travis supports running multiple builds (or you could just run mvn twice inside the test-asciidoctor-master.sh).

[1] https://github.com/asciidoctor/asciidoctor/commit/304b431cd4cf10f6eafcb3d2e2fc3557596e6999#lib/asciidoctor/version.rb


On Mon, Jul 1, 2013 at 1:16 PM, asotobu [via Asciidoctor :: Discussion] <[hidden email]> wrote:
Today I can say that I am so happy, (although there are some bad news) and it is because the CI approach used for integrating latest pushed changes of Asciidoctor gem into Asciidoctor Java Integration, works so well because it has detected a problem. The bad news are that I don't know exactly where is the problem, and before starting with git bisect I would like to know if you have a quick answer why.

Basically you can see the problem here:

11 days ago I run it the last time a full integration between gem and java with latest Asciidoctor gem (https://travis-ci.org/asciidoctor/asciidoctor-java-integration/builds/8251591), today I have run it again, but without any modification on Java code (see git hash tag), but the build has failed with the error:

org.jruby.exceptions.RaiseException: (LoadError) no such file to load -- asciidoctor
        at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1054)
        at RUBY.require(jar:file:/opt/repo/org/jruby/jruby-complete/1.7.4/jruby-complete-1.7.4.jar!/META-INF/jruby.home/lib/ruby/shared/rubygems/custom_require.rb:36)


So it seems like asciidoctor module is no longer available but at the same time this seems impossible, so any idea of which issue could be modified Asciidoctor gem in the way that cannot be loaded by JRuby?

If there is nothing, then I will start with git bisect.


If you reply to this email, your message will be added to the discussion below:
http://discuss.asciidoctor.org/Latest-version-of-Asciidoctor-does-not-integrate-with-AJI-project-tp366.html
To start a new topic under Asciidoctor :: Discussion, email [hidden email]
To unsubscribe from Asciidoctor :: Discussion, click here.
NAML



--
Dan Allen | http://google.com/profiles/dan.j.allen