Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

❤️ Replace the Rhino based JavaScript engine ❤️ #755

Open
rbri opened this issue Mar 27, 2024 · 1 comment
Open

❤️ Replace the Rhino based JavaScript engine ❤️ #755

rbri opened this issue Mar 27, 2024 · 1 comment
Assignees
Labels

Comments

@rbri
Copy link
Member

rbri commented Mar 27, 2024

HtmlUnit uses a slightly modified version of the latest code of the Rhino (https://github.com/mozilla/rhino) js engine. During the years we also provide many fixes and improvements to the project (https://github.com/mozilla/rhino/commits/master/?author=rbri). Adding support for more modern js syntax is really hard, because Rhino tries to be backward compatible (for good reasons) (eg. mozilla/rhino#1431).

Therefore i like to try to switch to another javascript engine.

This will require time and effort - you can support this via

Will use this issue to inform about the progress.

Funding

  • You can sponsor this specific effort via a Polar.sh pledge below
  • We receive the pledge once the issue is completed & verified
Fund with Polar
@rbri rbri self-assigned this Mar 27, 2024
@rbri rbri added the polar label Mar 27, 2024
This was referenced Mar 27, 2024
@rbri rbri changed the title Replace the Rhino based JavaScript engine ❤️ Replace the Rhino based JavaScript engine ❤️ Apr 28, 2024
@skyhirider
Copy link
Contributor

Which engine(s) are you considering?

And will you implement via ports & adapters where users will be able to choose which engine to use, or will you completely switch to a new one?

Would be interesting to be able to hot swap the engine.

For example, if I know a page is not working correctly with Rhino (live scrolling for example), I could hot swap to the other js engine before loading the page, do what I need to do and then hot swap back.

Would allow for slow rollout as people would start using the new engine more and more as you work to refactor and integrate it while adding more js features and fixing issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants