Book a Demo

Author Topic: Spikermonder Javascript engine version  (Read 8348 times)

Guillaume

  • EA Practitioner
  • ***
  • Posts: 1405
  • Karma: +42/-2
    • View Profile
    • www.umlchannel.com
Spikermonder Javascript engine version
« on: March 21, 2020, 01:25:42 am »
Hi,

We have a Javascript script using imported JS libraries that no longer works with EA15.1 (it works with EA14).
I understand that EA is using Mozilla SpiderMonkey engine and the release notes mention that EA15 is using Mozilla Spidermonkey 63.

Any info on the version used before?
With the current EA15.1 build, I found mozjs-70.dll in the Program Files; is it the DLL for Spidermonkey? If so, is it now using version 70?

Thanks
Guillaume

Blog: www.umlchannel.com | Free utilities addin: www.eautils.com


Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #1 on: March 21, 2020, 06:49:07 pm »
Before, it hadn't  been updated since around version 3.

What isn't working?

timoc

  • EA User
  • **
  • Posts: 201
  • Karma: +14/-0
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #2 on: March 26, 2020, 05:16:03 am »
Before, it hadn't  been updated since around version 3.

What isn't working?

The ability to load webassembly files from a filesystem location.

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #3 on: March 26, 2020, 09:07:21 am »
Are you suggesting that was working previously? I don't think it's ever been tested successfully at Sparx.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #4 on: March 26, 2020, 11:54:41 am »
Are you suggesting that was working previously? I don't think it's ever been tested successfully at Sparx.
Just a clarification, please?

Did you mean it's never been tested at Sparx? Or did you mean it's been tested but not produced a successful result?

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #5 on: March 26, 2020, 02:13:48 pm »
It was investigated briefly, but before we got any kind of result we abandoned it as inappropriate for what was being done.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #6 on: March 26, 2020, 02:24:14 pm »
It was investigated briefly, but before we got any kind of result we abandoned it as inappropriate for what was being done.
Again, just clarification...

I would understand from the above response that the functionality is no longer present in EA.  Is that correct?

(The reason I'm pursuing this is that I'm about to embark on some externally developed functionality (not for EA) and I'm keen to make the documentation as clear and concise as I can.  I'm interested in what Eve said, and what I understood or was unclear about - which may differ from what was clear in Eve's mind.)

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #7 on: March 26, 2020, 02:36:04 pm »
There was never anything added to EA to explicitly support web assembly. If EA scripting ever supported web assembly it's because the javascript engine provided support for it without us needing to do anything. If that has changed I don't have sufficient information to even attempt to reproduce it.

When I say we investigated it, it was for an EA function that hasn't been released and if we had continued to pursue web assembly it would have been incidental to the actual feature. Most likely invisible to end users.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #8 on: March 26, 2020, 02:44:43 pm »
There was never anything added to EA to explicitly support web assembly. If EA scripting ever supported web assembly it's because the javascript engine provided support for it without us needing to do anything. If that has changed I don't have sufficient information to even attempt to reproduce it.

When I say we investigated it, it was for an EA function that hasn't been released and if we had continued to pursue web assembly it would have been incidental to the actual feature. Most likely invisible to end-users.
Thanks for persevering with my questions.  All is clear (for me at least) now.

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

timoc

  • EA User
  • **
  • Posts: 201
  • Karma: +14/-0
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #9 on: March 26, 2020, 06:21:05 pm »
It was investigated briefly, but before we got any kind of result we abandoned it as inappropriate for what was being done.

Why is it inappropriate? Having a cross platform mechanism to embed external complex code inside an MDG file i would have thought would be in line with EA and Prolaborate.

My tests of the JS engine with Web assembly ay its availalable, and runs for local javascript - because it is an inherent part of the modern JS engine - used as part of its JIT technology too. The problem i had was that no easy mechanism to load an externally compiled webassembly file. I was playing with the idea of using something like a pandoc webassembly port to convert markdown (and other formats) to EA RTF and back.
« Last Edit: March 26, 2020, 06:35:32 pm by timoc »

Guillaume

  • EA Practitioner
  • ***
  • Posts: 1405
  • Karma: +42/-2
    • View Profile
    • www.umlchannel.com
Re: Spikermonder Javascript engine version
« Reply #10 on: March 26, 2020, 08:29:10 pm »
Before, it hadn't  been updated since around version 3.

What isn't working?

Hi Eve,

Can you clarify the Spidermonkey JS engine version that's currently running with the latest EA 15.1 build?
Is the engine related with the mozjs-70.dll file available from EA installation folder?

We have a script that's using an imported Javascript JSON library. We found that it stops since the team moved from EA 14 to EA15.1. Another issue is related since they work with a local EAPX copy, generated from a Native XML Project Transfer retrieved from the centralised main EA Repository ; there's a "Failed to create math object" error.

Guillaume

Blog: www.umlchannel.com | Free utilities addin: www.eautils.com


Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Spikermonder Javascript engine version
« Reply #11 on: March 27, 2020, 08:41:54 am »
Can you clarify the Spidermonkey JS engine version that's currently running with the latest EA 15.1 build?
Is the engine related with the mozjs-70.dll file available from EA installation folder?
Yes, according to everything I see it is version 70.

We have a script that's using an imported Javascript JSON library. We found that it stops since the team moved from EA 14 to EA15.1.
At a guess, it may be clashing with the built-in json support.

Another issue is related since they work with a local EAPX copy, generated from a Native XML Project Transfer retrieved from the centralised main EA Repository ; there's a "Failed to create math object" error.
Sounds like EASL.dll or EASimLib.dll (can't remember which) isn't registered properly.

Why is it inappropriate?
I didn't say it was inappropriate for EA. It was inappropriate as the solution to the problem we were working on.

I'm guessing that loading of web assembly from disk would be considered a security problem for authors of spidermonkey, which is why they didn't provide it. For us, loading from a file the problem is less about the security and more that it's another thing that needs to be distributed.
[/quote]