Any Plans On JS Engine Updates?

31 views
Skip to first unread message

Neil Lunn

unread,
Apr 17, 2018, 8:07:35 AM4/17/18
to mongodb-user
Are there any plans on updating the JavaScript engine to be used in future builds? Or should the current state of the engine be considered to remain the same with more focus on enabling features in alternates clients, such as expanding the feature-set in the Compass product?

It really only occurred to me today in preparation of a response to a question on Stack Overflow where I was including some JavaScript to run to demonstrate an example. Part of the code, which I was used to running under a modern node.js environment used the object spread syntax, which is supported under most major JavaScript execution environments presently.

However, it's not actually supported by the SpiderMonkey 45 release which is being used in the current builds. In fact, this dependency in the build ( noting both server and the mongo shell use the same engine ) has not actually been updated for some time: MongoDB 3.3.5 is released ( that's basically 2 years ago ).

It's fair to say that there are "issues" on the Mozilla side, and there really has not been an "official" release of SpiderMonkey now for some time, but notably the JavaScript world has moved on, and there are many language features that are pretty much the standard or "de-facto standard" which is part of modern engines used in many modern products.

Therefore leaving any issues of ongoing and long term vision for JavaScript execution in a MongoDB "server", is their any plans at least for the client side?

So can we expect the general builds to actually get an updated JavaScript environment ( whatever the engine in use ) or would the focus now be on "beefing up" the features in products like Compass ( essentially built around Chromium and the V8 engine ) to actually include a full "JavaScript Playground" in place of the "mongo shell"?

The other point is essentially the former "community" effort of RoboMongo is essentially a "dead donkey" right now. Since private acquisition of the project, the development there has basically stalled, and it's essentially a product tied to the 3.4 series builds. In fact, it's always been a dependency on the core server and  "mongo shell" build  and that has not changed. So it would appear unlikely there would be any progress in that arena without making a major break from the existing dependencies. There also does not seem to be much traction on behalf of the acquiring company to change anything there, as the company does have their own different commercial product.

Overall, if there is any feedback on this "inquiring minds wan't to know". I for one think it's a "good thing" to have a standard execution environment shipped with the core database product that people can be referred to, with sample script and commands that just work. Furthermore it's a "good thing" if such an environment does not begin to show it's age, and we don't have to ask people to "spin up" special programming environments and compilers just to demonstrate a concept, whilst still keeping abreast of modern programming techniques.

The shell is getting a bit "creaky"! So where do we go next?

Neil Lunn

unread,
Apr 23, 2018, 7:50:23 PM4/23/18
to mongod...@googlegroups.com
Bump! Anyone out there?

Yes, No or JIRA Issue

But some response would be appreciated

--
You received this message because you are subscribed to the Google Groups "mongodb-user"
group.
 
For other MongoDB technical support options, see: https://docs.mongodb.com/manual/support/
---
You received this message because you are subscribed to the Google Groups "mongodb-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mongodb-user+unsubscribe@googlegroups.com.
To post to this group, send email to mongod...@googlegroups.com.
Visit this group at https://groups.google.com/group/mongodb-user.
To view this discussion on the web visit https://groups.google.com/d/msgid/mongodb-user/9d354ddb-5adf-4f8b-82a4-39e76ca8e5d6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Stephen Steneker

unread,
Apr 24, 2018, 3:08:40 AM4/24/18
to mongodb-user

On Tuesday, 17 April 2018 22:07:35 UTC+10, Neil Lunn wrote:

It really only occurred to me today in preparation of a response to a question on Stack Overflow where I was including some JavaScript to run to demonstrate an example. Part of the code, which I was used to running under a modern node.js environment used the object spread syntax, which is supported under most major JavaScript execution environments presently.

However, it's not actually supported by the SpiderMonkey 45 release which is being used in the current builds. In fact, this dependency in the build ( noting both server and the mongo shell use the same engine ) has not actually been updated for some time: MongoDB 3.3.5 is released ( that's basically 2 years ago ).

Hi Neil,

It is likely that the JavaScript engine will be updated in future releases of MongoDB, but the goal isn't necessarily to maintain parity with the latest scripting engines in use by Node or other environments. Updating to a newer version of SpiderMonkey is a non-trivial update (see SERVER-23358 for some background on the 45.0.2 ESR update).

Use cases for the mongo shell and mongod JavaScript contexts are more limited than a full programming environment. For example, MongoDB's JavaScript integration does not currently support features like Streams, Promises, or the Console object. This generally suffices for basic administration and database interaction.

For more advanced or modern JavaScript usage I would recommend using the Node driver.

Therefore leaving any issues of ongoing and long term vision for JavaScript execution in a MongoDB "server", is their any plans at least for the client side?

I can't speculate on any future MongoDB plans beyond details you can find in the MongoDB JIRA issue tracker. There are alternative administration clients and IDEs if the mongo shell doesn't suit your requirements for a JavaScript playground.

Regards,Stennie

Stephen Steneker

unread,
Apr 24, 2018, 4:33:37 PM4/24/18
to mongodb-user

It is likely that the JavaScript engine will be updated in future releases of MongoDB


Hi Neil,

FYI: the relevant Jira issue to watch/upvote for the next ESR update is SERVER-29286.

Regards,
Stennie

Reply all
Reply to author
Forward
0 new messages