Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
17 messages Options
Reply | Threaded
Open this post in threaded view
|

Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Simone Bordet
Hi,

I am trying to use an include with a tag of an XML file, and it does not work in 1.5.0. However, it seems that 1.5.1-ruby fixed it (https://github.com/asciidoctor/asciidoctor/releases/tag/v1.5.1).

I was looking at updating the Java toolchain (I am using the asciidoctor-maven-plugin) but:

* asciidoctor-maven-plugin is at 1.5.0, and depends on asciidoctorj 1.5.0
* asciidoctorj 1.5.1 is out, but depends on 1.5.0-ruby

Can someone shed a light on the releases numbering, in particular: are they independent or in lockstep with -ruby ?

Is there any way I can update asciidoctorj to reference 1.5.1-ruby ?
That would solve my issue since I guess it's not a big deal to tell asciidoctor-maven-plugin to use a newer asciidoctorj dependency.

I can help if you give me directions on what to do.

Thanks !
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator
Simone,


I am trying to use an include with a tag of an XML file, and it does not work in 1.5.0. However, it seems that 1.5.1-ruby fixed it (https://github.com/asciidoctor/asciidoctor/releases/tag/v1.5.1).

Correct. Sorry about breaking that feature.
 

Can someone shed a light on the releases numbering, in particular: are they independent or in lockstep with -ruby ?

We are aligning minor versions (1.5.x), but not necessarily micro versions (1.5.1). The goal is for the micro versions to be API compatible, so you can simply swap them in. Having said that, the Maven plugin is mostly likely going to match versions exactly, at least for now.


Is there any way I can update asciidoctorj to reference 1.5.1-ruby ?
That would solve my issue since I guess it's not a big deal to tell asciidoctor-maven-plugin to use a newer asciidoctorj dependency.

You can declare the org.asciidoctor:asciidoctorj:1.5.1 dependency and the Maven plugin will use it. You can see an example in the Maven examples:


However...Houston, we have a problem. AsciidoctorJ 1.5.1 bundles _Asciidoctor 1.5.0_, not Asciidoctor 1.5.1. Therefore, even if you update AsciidoctorJ to 1.5.1, you are still going to get Asciidoctor 1.5.0. We'll need to correct this in a future release of AsciidoctorJ and perhaps add a test for it. cc: Alex

Until then, you can use an AsciidoctorJ snapshot, if we can get one published that depends on Asciidoctor 1.5.1. Another possibility is to allow a local Ruby installation to bleed a newer version of of Asciidoctor. Although we are plugging this gap in the next version of AsciidoctorJ, it will work today. You just do:

 $ gem install asciidoctor

And it will see the installed version locally. Not an ideal solution by any stretch, but a stopgap for the moment.

I hope that clears things up a bit.

Cheers,

-Dan

--
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator
In reply to this post by Simone Bordet

On Tue, Nov 4, 2014 at 8:03 AM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
* asciidoctorj 1.5.1 is out, but depends on 1.5.0-ruby

Indeed. This was an oversight that you can see here:


Fortunately, it is now updated in AsciidoctorJ master, so if you build a snapshot, it will work.

We definitely need to look into getting snapshots for AsciidoctorJ published to the central repository. For now, you can build the snapshot locally.

Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Simone Bordet
mojavelinux wrote
On Tue, Nov 4, 2014 at 8:03 AM, Simone Bordet [via Asciidoctor ::
Discussion] <[hidden email]> wrote:

> * asciidoctorj 1.5.1 is out, but depends on 1.5.0-ruby


Indeed. This was an oversight that you can see here:

https://github.com/asciidoctor/asciidoctorj/blob/asciidoctorj-1.5.1/pom.xml#L70

Fortunately, it is now updated in AsciidoctorJ master, so if you build a
snapshot, it will work.
I did that: built asciidoctorj-1.5.2-SNAPSHOT locally, updated the asciidoctor-maven-plugin dependency like you suggested, but no dice: it seems like for some reason 1.5.0-ruby is still used and I can't get the include with tags work.

If I use asciidoctor 1.5.1-ruby directly, works fine, so the bug is indeed fixed.

I'm puzzled... not sure if it's a Maven issue, or a plugin issue, or an asciidoctorj issue, or a case of pebkac.

Thanks !
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator

On Tue, Nov 4, 2014 at 1:59 PM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
I did that: built asciidoctorj-1.5.2-SNAPSHOT locally, updated the asciidoctor-maven-plugin dependency like you suggested, but no dice: it seems like for some reason 1.5.0-ruby is still used and I can't get the include with tags work.

Make sure Asciidoctor core isn't leaking from a local Ruby installation. If you type `asciidoctor`, it should not find the command.

Also, check the version of Asciidoctor by adding the {asciidoctor-version} attribute to a document, see what version it is reporting.

I'll make sure to update the examples to demonstrate the problem with the leaking Ruby installation and how to properly isolate it.

Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Simone Bordet
Hi,

On Tue, Nov 4, 2014 at 10:13 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> Make sure Asciidoctor core isn't leaking from a local Ruby installation. If
> you type `asciidoctor`, it should not find the command.

It was finding it, I have disabled it.

> Also, check the version of Asciidoctor by adding the {asciidoctor-version}
> attribute to a document, see what version it is reporting.

1.5.1

> I'll make sure to update the examples to demonstrate the problem with the
> leaking Ruby installation and how to properly isolate it.

Still no dice though, even disabling `asciidoctor` and have the right
{asciidoctor-version} reported.
I still get the same error.

Ideas ?

It's not a rush, however. I can live with manually generating the docs
using Ruby in the meanwhile, and I hope that when the various
libraries get updated, all things will fall in place.

Let me know if you need more details about this to generate a test
case or something.

Cheers

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator

Simone,

Could you point me to the include that isn't working properly?

Now that we got the version of Asciidoctor reporting correctly, I want to look specifically at the behavior in question.

Cheers,

-Dan

On Nov 5, 2014 8:06 AM, "Simone Bordet [via Asciidoctor :: Discussion]" <[hidden email]> wrote:
Hi,

On Tue, Nov 4, 2014 at 10:13 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> Make sure Asciidoctor core isn't leaking from a local Ruby installation. If
> you type `asciidoctor`, it should not find the command.

It was finding it, I have disabled it.

> Also, check the version of Asciidoctor by adding the {asciidoctor-version}
> attribute to a document, see what version it is reporting.

1.5.1

> I'll make sure to update the examples to demonstrate the problem with the
> leaking Ruby installation and how to properly isolate it.

Still no dice though, even disabling `asciidoctor` and have the right
{asciidoctor-version} reported.
I still get the same error.

Ideas ?

It's not a rush, however. I can live with manually generating the docs
using Ruby in the meanwhile, and I hope that when the various
libraries get updated, all things will fall in place.

Let me know if you need more details about this to generate a test
case or something.

Cheers

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz



If you reply to this email, your message will be added to the discussion below:
http://discuss.asciidoctor.org/Versions-1-5-1-of-asciidoctorj-and-asciidoctor-maven-plugin-tp2418p2428.html
To start a new topic under Asciidoctor :: Discussion, email [hidden email]
To unsubscribe from Asciidoctor :: Discussion, click here.
NAML
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Simone Bordet
Dan,

On Wed, Nov 5, 2014 at 6:12 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> Simone,
>
> Could you point me to the include that isn't working properly?
>
> Now that we got the version of Asciidoctor reporting correctly, I want to
> look specifically at the behavior in question.

Attached you can find a small reproducible Maven project, with
asciidoctorj 1.5.2-SNAPSHOT as dependency, showing usage of
asciidoctor 1.5.1, yet not rendering.

Uncompress, then "mvn clean install" from the command line.
The HTML is generated, but no include.

Let me know if you need more information.

Thanks !

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz

asciidoctor_include_bug.tgz (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator
Simone,

Thanks for providing a sample project. I'll look into it and get back to you shortly.

Cheers,

-Dan

On Wed, Nov 5, 2014 at 10:28 AM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
Dan,

On Wed, Nov 5, 2014 at 6:12 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> Simone,
>
> Could you point me to the include that isn't working properly?
>
> Now that we got the version of Asciidoctor reporting correctly, I want to
> look specifically at the behavior in question.

Attached you can find a small reproducible Maven project, with
asciidoctorj 1.5.2-SNAPSHOT as dependency, showing usage of
asciidoctor 1.5.1, yet not rendering.

Uncompress, then "mvn clean install" from the command line.
The HTML is generated, but no include.

Let me know if you need more information.

Thanks !

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz

asciidoctor_include_bug.tgz (1K) Download Attachment



If you reply to this email, your message will be added to the discussion below:
http://discuss.asciidoctor.org/Versions-1-5-1-of-asciidoctorj-and-asciidoctor-maven-plugin-tp2418p2431.html
To start a new topic under Asciidoctor :: Discussion, email [hidden email]
To unsubscribe from Asciidoctor :: Discussion, click here.
NAML



--
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator
In reply to this post by Simone Bordet
Simone,

It appears the problem we're running into here isn't the include tag logic, but rather reading the content from the remote URI. I know this because if I take the tag away, I still get no content from the include (and I see that allow-uri-read is set properly).

I dug in and found that this appears to be a bug in JRuby 1.7.9 (pertaining to the open-uri library). I upgraded AsciidoctorJ to 1.7.15, rebuilt it and the problem resolved itself. That means that AsciidoctorJ should definitely be upgraded to use JRuby 1.7.15 in addition to upgrading Asciidoctor core to 1.5.1.

If you confirm that upgrading AsciidoctorJ to JRuby 1.7.15 works, then we can proceed with confidence.

Cheers,

-Dan

On Wed, Nov 5, 2014 at 10:28 AM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
Dan,

On Wed, Nov 5, 2014 at 6:12 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> Simone,
>
> Could you point me to the include that isn't working properly?
>
> Now that we got the version of Asciidoctor reporting correctly, I want to
> look specifically at the behavior in question.

Attached you can find a small reproducible Maven project, with
asciidoctorj 1.5.2-SNAPSHOT as dependency, showing usage of
asciidoctor 1.5.1, yet not rendering.

Uncompress, then "mvn clean install" from the command line.
The HTML is generated, but no include.

Let me know if you need more information.

Thanks !

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz

asciidoctor_include_bug.tgz (1K) Download Attachment



If you reply to this email, your message will be added to the discussion below:
http://discuss.asciidoctor.org/Versions-1-5-1-of-asciidoctorj-and-asciidoctor-maven-plugin-tp2418p2431.html
To start a new topic under Asciidoctor :: Discussion, email [hidden email]
To unsubscribe from Asciidoctor :: Discussion, click here.
NAML



--
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Simone Bordet
Dan,

On Sat, Nov 8, 2014 at 10:23 AM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
>
> Simone,
>
> It appears the problem we're running into here isn't the include tag logic, but rather reading the content from the remote URI. I know this because if I take the tag away, I still get no content from the include (and I see that allow-uri-read is set properly).
>
> I dug in and found that this appears to be a bug in JRuby 1.7.9 (pertaining to the open-uri library). I upgraded AsciidoctorJ to 1.7.15, rebuilt it and the problem resolved itself. That means that AsciidoctorJ should definitely be upgraded to use JRuby 1.7.15 in addition to upgrading Asciidoctor core to 1.5.1.
>
> If you confirm that upgrading AsciidoctorJ to JRuby 1.7.15 works, then we can proceed with confidence.

I have updated AsciidoctorJ to JRuby 1.7.16.1 (the latest version in
Maven Central), rebuilt AsciidoctorJ 1.5.2-SNAPSHOT, and used that as
a dependency for the Asciidoctor Maven Plugin, and I can confirm that
the issue is solved.

Many thanks for looking into this.

Any ETA for official releases of AsciidoctorJ and Asciidoctor Maven Plugin ?

Thanks !

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator

On Mon, Nov 10, 2014 at 5:11 AM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
Any ETA for official releases of AsciidoctorJ and Asciidoctor Maven Plugin ?

We're working on it. I'm going to get 1.5.2 published sometime in the next week-ish, then we'll kick off the release train.

Cheers,

Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Simone Bordet
Dan,

On Mon, Nov 10, 2014 at 9:44 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> We're working on it. I'm going to get 1.5.2 published sometime in the next
> week-ish, then we'll kick off the release train.

Unfortunately this issue is still open.

I just tried 1.5.2 and it has the same problem, i.e. the include with
a tag does not work.

If I update the versions to 1.5.2 in the project I attached a few
emails back, it still shows the failure, so it is reproducible easily.

Thanks !

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator
Simone,

We are now facing a new issue. When using the Maven plugin, the remote include is resolving to an empty string. Obviously, it won't find the tag in an empty string. What's odd is that it works fine in both Asciidoctor and the AsciidoctorJ commandline tool as well as the Gradle plugin. So it appears to be a problem in the Maven plugin (or with Maven).

If you copy the included pom.xml file locally and include it using a relative path, I think you'll find that the include with a tag does work (solving the original issue at hand). If you need to include it from a remote URL, then we still have work to do to fix it in the Maven plugin. Let's start with an issue.


Cheers,

-Dan

On Wed, Feb 25, 2015 at 3:24 PM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
Dan,

On Mon, Nov 10, 2014 at 9:44 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> We're working on it. I'm going to get 1.5.2 published sometime in the next
> week-ish, then we'll kick off the release train.

Unfortunately this issue is still open.

I just tried 1.5.2 and it has the same problem, i.e. the include with
a tag does not work.

If I update the versions to 1.5.2 in the project I attached a few
emails back, it still shows the failure, so it is reproducible easily.

Thanks !

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz



If you reply to this email, your message will be added to the discussion below:
http://discuss.asciidoctor.org/Versions-1-5-1-of-asciidoctorj-and-asciidoctor-maven-plugin-tp2418p2804.html
To start a new topic under Asciidoctor :: Discussion, email [hidden email]
To unsubscribe from Asciidoctor :: Discussion, click here.
NAML



--
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator
In reply to this post by Simone Bordet
I finally figured out the problem. See if the solution I proposed works for you.


-Dan

On Tue, Mar 31, 2015 at 8:44 AM, Dan Allen <[hidden email]> wrote:
Simone,

We are now facing a new issue. When using the Maven plugin, the remote include is resolving to an empty string. Obviously, it won't find the tag in an empty string. What's odd is that it works fine in both Asciidoctor and the AsciidoctorJ commandline tool as well as the Gradle plugin. So it appears to be a problem in the Maven plugin (or with Maven).

If you copy the included pom.xml file locally and include it using a relative path, I think you'll find that the include with a tag does work (solving the original issue at hand). If you need to include it from a remote URL, then we still have work to do to fix it in the Maven plugin. Let's start with an issue.


Cheers,

-Dan

On Wed, Feb 25, 2015 at 3:24 PM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
Dan,

On Mon, Nov 10, 2014 at 9:44 PM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> We're working on it. I'm going to get 1.5.2 published sometime in the next
> week-ish, then we'll kick off the release train.

Unfortunately this issue is still open.

I just tried 1.5.2 and it has the same problem, i.e. the include with
a tag does not work.

If I update the versions to 1.5.2 in the project I attached a few
emails back, it still shows the failure, so it is reproducible easily.

Thanks !

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz



If you reply to this email, your message will be added to the discussion below:
http://discuss.asciidoctor.org/Versions-1-5-1-of-asciidoctorj-and-asciidoctor-maven-plugin-tp2418p2804.html
To start a new topic under Asciidoctor :: Discussion, email [hidden email]
To unsubscribe from Asciidoctor :: Discussion, click here.
NAML



--



--
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

Simone Bordet
Hi Dan,

sorry for the late reply.

On Wed, May 6, 2015 at 3:29 AM, mojavelinux [via Asciidoctor ::
Discussion] <[hidden email]> wrote:
> I finally figured out the problem. See if the solution I proposed works for
> you.
>
> https://github.com/asciidoctor/asciidoctor-maven-plugin/issues/153#issuecomment-99280861

Solution 2 works like a charm.

Thanks!

--
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz
Reply | Threaded
Open this post in threaded view
|

Re: Versions 1.5.1 of asciidoctorj and asciidoctor-maven-plugin

mojavelinux
Administrator

On Mon, May 18, 2015 at 7:25 AM, Simone Bordet [via Asciidoctor :: Discussion] <[hidden email]> wrote:
Solution 2 works like a charm.

\o/