You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jmeter.apache.org by Vladimir Sitnikov <si...@gmail.com> on 2020/03/23 15:59:43 UTC

Re: Replacing nashorn

up.

Graal.JS seems to be mature now.
It can run on any Java machine:
https://github.com/graalvm/graaljs/blob/master/docs/user/RunOnJDK.md#run-graalvm-javascript-on-a-stock-jdk

The licenses there are MIT and/or UPL (both are permissible for Apache)

The sad thing is that Graal.JS is ~20 megabytes extra.


It is extremely likely Nashorn will be removed from Java 15, so we need to
deal with it somehow.

So the options are:
a) Bundle Graal.JS (+20MiB :( )
b) Document the way to add Graal.JS jars as an external dependency
(everybody would need to download the file manually :( )
c) Add an option to download Graal.JS on demand (not that trivial to
implement, yet useful for many(!) other cases)

WDYT?

Vladimir

Re: Replacing nashorn

Posted by Vladimir Sitnikov <si...@gmail.com>.
There might be yet another option.

It might be that Nashorn would be moved to a community-managed library
(e.g. like JavaFx became OpenJFX).


>Is Nashorn or its replacment needed for *all* test plans?

Some of the plans depend on Nashorn, and some of them do not.

Vladimir

Re: Replacing nashorn

Posted by Philippe Mouawad <ph...@gmail.com>.
If users don't follow best practices, then yes (If Controller and While
Controller use Javascript so nashorn).
But if we switch to rhino as default JS engine, it should work in 99% of
cases.

If it's overkill, maybe it's not worth investing in this.
Noting that IMO, JS is bad for JMeter performances.
The best thing would be to make IfController / While Controller use JEXL3
by default instead of JS, but how to manage transition in a clear way ?

Regards


On Wed, Mar 25, 2020 at 6:37 PM sebb <se...@gmail.com> wrote:

> Is Nashorn or its replacment needed for *all* test plans?
> If not, then another alternative is to document how to download it,
> and report a suitable error if a test plan needs it.
>
> On Mon, 23 Mar 2020 at 17:57, Felix Schumacher
> <fe...@internetallee.de> wrote:
> >
> > The third option would be to go back to rhino, which is included in
> jmeter anyhow.
> >
> > Wouldn't it?
> >
> > Felix
> >
> > Am 23. März 2020 16:59:43 MEZ schrieb Vladimir Sitnikov <
> sitnikov.vladimir@gmail.com>:
> > >up.
> > >
> > >Graal.JS seems to be mature now.
> > >It can run on any Java machine:
> > >
> https://github.com/graalvm/graaljs/blob/master/docs/user/RunOnJDK.md#run-graalvm-javascript-on-a-stock-jdk
> > >
> > >The licenses there are MIT and/or UPL (both are permissible for Apache)
> > >
> > >The sad thing is that Graal.JS is ~20 megabytes extra.
> > >
> > >
> > >It is extremely likely Nashorn will be removed from Java 15, so we need
> > >to
> > >deal with it somehow.
> > >
> > >So the options are:
> > >a) Bundle Graal.JS (+20MiB :( )
> > >b) Document the way to add Graal.JS jars as an external dependency
> > >(everybody would need to download the file manually :( )
> > >c) Add an option to download Graal.JS on demand (not that trivial to
> > >implement, yet useful for many(!) other cases)
> > >
> > >WDYT?
> > >
> > >Vladimir
>


-- 
Cordialement.
Philippe Mouawad.

Re: Replacing nashorn

Posted by sebb <se...@gmail.com>.
Is Nashorn or its replacment needed for *all* test plans?
If not, then another alternative is to document how to download it,
and report a suitable error if a test plan needs it.

On Mon, 23 Mar 2020 at 17:57, Felix Schumacher
<fe...@internetallee.de> wrote:
>
> The third option would be to go back to rhino, which is included in jmeter anyhow.
>
> Wouldn't it?
>
> Felix
>
> Am 23. März 2020 16:59:43 MEZ schrieb Vladimir Sitnikov <si...@gmail.com>:
> >up.
> >
> >Graal.JS seems to be mature now.
> >It can run on any Java machine:
> >https://github.com/graalvm/graaljs/blob/master/docs/user/RunOnJDK.md#run-graalvm-javascript-on-a-stock-jdk
> >
> >The licenses there are MIT and/or UPL (both are permissible for Apache)
> >
> >The sad thing is that Graal.JS is ~20 megabytes extra.
> >
> >
> >It is extremely likely Nashorn will be removed from Java 15, so we need
> >to
> >deal with it somehow.
> >
> >So the options are:
> >a) Bundle Graal.JS (+20MiB :( )
> >b) Document the way to add Graal.JS jars as an external dependency
> >(everybody would need to download the file manually :( )
> >c) Add an option to download Graal.JS on demand (not that trivial to
> >implement, yet useful for many(!) other cases)
> >
> >WDYT?
> >
> >Vladimir

Re: Replacing nashorn

Posted by Felix Schumacher <fe...@internetallee.de>.
The third option would be to go back to rhino, which is included in jmeter anyhow.

Wouldn't it?

Felix 

Am 23. März 2020 16:59:43 MEZ schrieb Vladimir Sitnikov <si...@gmail.com>:
>up.
>
>Graal.JS seems to be mature now.
>It can run on any Java machine:
>https://github.com/graalvm/graaljs/blob/master/docs/user/RunOnJDK.md#run-graalvm-javascript-on-a-stock-jdk
>
>The licenses there are MIT and/or UPL (both are permissible for Apache)
>
>The sad thing is that Graal.JS is ~20 megabytes extra.
>
>
>It is extremely likely Nashorn will be removed from Java 15, so we need
>to
>deal with it somehow.
>
>So the options are:
>a) Bundle Graal.JS (+20MiB :( )
>b) Document the way to add Graal.JS jars as an external dependency
>(everybody would need to download the file manually :( )
>c) Add an option to download Graal.JS on demand (not that trivial to
>implement, yet useful for many(!) other cases)
>
>WDYT?
>
>Vladimir

Re: Replacing nashorn

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello,
thanks for analysis.
My answer inline below.
Regards

On Mon, Mar 23, 2020 at 4:59 PM Vladimir Sitnikov <
sitnikov.vladimir@gmail.com> wrote:

> up.
>
> Graal.JS seems to be mature now.
> It can run on any Java machine:
>
> https://github.com/graalvm/graaljs/blob/master/docs/user/RunOnJDK.md#run-graalvm-javascript-on-a-stock-jdk
>
> The licenses there are MIT and/or UPL (both are permissible for Apache)
>
> The sad thing is that Graal.JS is ~20 megabytes extra.
>
>
> It is extremely likely Nashorn will be removed from Java 15, so we need to
> deal with it somehow.
>
> So the options are:
> a) Bundle Graal.JS (+20MiB :( )
>
I'd go for this option provided the license is ok which seems to be the
case.

b) Document the way to add Graal.JS jars as an external dependency
> (everybody would need to download the file manually :( )
> c) Add an option to download Graal.JS on demand (not that trivial to
> implement, yet useful for many(!) other cases)
>
> WDYT?
>
> Vladimir
>


-- 
Cordialement.
Philippe Mouawad.