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

build(deps): bump Jint from 3.0.0-rc-1 to 3.0.0 #9636

Merged
merged 1 commit into from
Jan 22, 2024

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 22, 2024

Bumps Jint from 3.0.0-rc-1 to 3.0.0.

Release notes

Sourced from Jint's releases.

v3.0.0

So v3 is finally here after some seven years of sweat and tears. A big thank you to everyone who helped by contributing new features, fixed and reported problems (you can see the huge list of contributors and their valuable work at the bottom of these release notes).

Jint is now arguably the most feature complete and standards compliant JavaScript engine running purely on top of .NET runtime. All the features listed as supported pass the ECMAScript standard suite for the feature flags. That's almost 60 000 passing tests on top of Jint's own test cases.

💡 If you are benefiting from Jint or otherwise would like to show your gratitude, don't forget to sponsor the project, even a one-time donation makes a difference.

We hope you'll like the new release 🚀

Features

ECMAScript

During v3 development a a huge set of both modern ECMAScript syntax and library features were completed, to name a few:

  • arrow functions
  • let and const support
  • class support
  • rest, spread and destructuring
  • template strings
  • modules
  • async/await
  • nullish coalescing and optional chaining (a ?? b and a?.b?.c)
  • library features like ArrayBuffer, BigInt, DataView, Map, Promise, Proxy, Reflect, Set

Unfortunately generator support and some corner cases for async/await support which will require some internal engine logic refactoring didn't make the cut and will be part of some later release.

You can always refer to the main README to see the state of supported features.

Interop

A lot of interop scenarios were improved and for example extensions methods can now accessed via JavaScript code. Plenty of bugs were fixed and interop performance was improved.

Performance

Performance was a big concern when re-writing the Jint internals. Jint is being heavily used in databases like RavenDB and EventStore where execution performance is crucial. We lowered memory traffic considerably and optimized the runtime in many ways. Generally one can say that Jint v3 is at least twice as fast if not multiple times faster than previous v2 on different workloads. There's also benchmark results comparing Jint to other alternatives available.

Here's results from two well-known test suites comparing v2 and v3.

BenchmarkDotNet v0.13.12, Windows 11 (10.0.23615.1000)
AMD Ryzen 9 5950X, 1 CPU, 32 logical and 16 physical cores
.NET SDK 8.0.100
  [Host]     : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2
  DefaultJob : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2

Dromaeo

| Engine|FileName|Mean|Error|Allocated|

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

@dependabot dependabot bot added .NET dependencies Pull requests that update a dependency file labels Jan 22, 2024
@github-actions github-actions bot enabled auto-merge (squash) January 22, 2024 08:00
Copy link

codecov bot commented Jan 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (ad6db16) 74.31% compared to head (4810944) 74.31%.
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #9636   +/-   ##
=======================================
  Coverage   74.31%   74.31%           
=======================================
  Files         536      536           
  Lines       23173    23173           
  Branches     4054     4054           
=======================================
  Hits        17220    17220           
  Misses       4851     4851           
  Partials     1102     1102           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Bumps [Jint](https://github.com/sebastienros/jint) from 3.0.0-rc-1 to 3.0.0.
- [Release notes](https://github.com/sebastienros/jint/releases)
- [Changelog](https://github.com/sebastienros/jint/blob/main/NuGet.release.config)
- [Commits](sebastienros/jint@v3.0.0-rc-1...v3.0.0)

---
updated-dependencies:
- dependency-name: Jint
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/nuget/main/Jint-3.0.0 branch from e45e8e1 to 4810944 Compare January 22, 2024 08:12
@github-actions github-actions bot merged commit 1c9863f into main Jan 22, 2024
8 checks passed
@github-actions github-actions bot deleted the dependabot/nuget/main/Jint-3.0.0 branch January 22, 2024 08:26
p-kostov pushed a commit to ErpNetDocs/docfx that referenced this pull request Jun 28, 2024
Bumps [Jint](https://github.com/sebastienros/jint) from 3.0.0-rc-1 to 3.0.0.
- [Release notes](https://github.com/sebastienros/jint/releases)
- [Changelog](https://github.com/sebastienros/jint/blob/main/NuGet.release.config)
- [Commits](sebastienros/jint@v3.0.0-rc-1...v3.0.0)

---
updated-dependencies:
- dependency-name: Jint
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants