v3.0.0
Version: 3.0.0
Published: 12/25/2018
Change Set: 99c53cf
- In the
JsEngineSwitcherclass aInstanceproperty was renamed to theCurrentproperty - Now you can implement your own version of the
JsEngineSwitcherclass - Format of the error messages was unified
- Created a new exception classes:
JsCompilationException,JsEngineException,JsFatalException,JsInterruptedException,JsTimeoutException,JsScriptExceptionandJsUsageException. These exceptions are responsible for handling errors, some of which were previously handled by theJsRuntimeExceptionclass - In the
JsExceptionclass was added two new properties:CategoryandDescription - From the
JsRuntimeExceptionclass was removed one property -ErrorCode - In the
JsRuntimeExceptionclass was added three new properties:Type,DocumentNameandCallStack JsEngineLoadExceptionclass now is inherited from theJsEngineExceptionclass- Removed a
EmptyValueExceptionclass Formatmethod of theJsErrorHelpersclass was renamed to theGenerateErrorDetails- Part of the auxiliary code was moved to external libraries: PolyfillsForOldDotNet and AdvancedStringBuilder
- In
IJsEngineinterface was added two new properties:SupportsScriptInterruptionandSupportsScriptPrecompilation, and four new methods:Interrupt,Precompile,PrecompileFileandPrecompileResource - In JavaScriptEngineSwitcher.Extensions.MsDependencyInjection added a overloaded versions of the
AddJsEngineSwitcherextension method, which takes an instance of JS engine switcher - In JavaScriptEngineSwitcher.ChakraCore, JavaScriptEngineSwitcher.Msie, JavaScriptEngineSwitcher.V8 and JavaScriptEngineSwitcher.Vroom added a ability to interrupt execution of the script
- In JavaScriptEngineSwitcher.ChakraCore, JavaScriptEngineSwitcher.Jint, JavaScriptEngineSwitcher.Jurassic, JavaScriptEngineSwitcher.Msie and JavaScriptEngineSwitcher.V8 added a ability to pre-compile scripts
- In all modules, except the JavaScriptEngineSwitcher.V8, added support of .NET Standard 2.0
- In JavaScriptEngineSwitcher.ChakraCore:
- ChakraCore was updated to version 1.11.4
- No longer used the old ChakraCore API for Windows (Internet Explorer-like API)
- Now the ChakraCore for Windows requires the Microsoft Visual C++ Redistributable for Visual Studio 2017
- In configuration settings of the ChakraCore JS engine was added one new property -
MaxStackSize(default492or984KB) - Added support of .NET Framework 4.7.1 and .NET Core App 2.1
- In JavaScriptEngineSwitcher.Jint:
- Jint was updated to version 2.11.58
- In configuration settings of the Jint JS engine a
Timeoutproperty has been replaced by theTimeoutIntervalproperty (defaultTimeSpan.Zero) and was added one new property -LocalTimeZone(defaultTimeZoneInfo.Local)
- In JavaScriptEngineSwitcher.Jurassic added support of Jurassic version of February 24, 2018
- In JavaScriptEngineSwitcher.Msie:
- MSIE JavaScript Engine was updated to version 3.0.0
- In configuration settings of the MSIE JS engine was added one new property -
MaxStackSize(default492or984KB)
- In JavaScriptEngineSwitcher.V8:
- Microsoft ClearScript.V8 was updated to version 5.5.4 (support of V8 version 7.0.276.42)
- Now requires .NET Framework 4.5 or higher
- Now the Microsoft ClearScript.V8 requires the Microsoft Visual C++ Redistributable for Visual Studio 2017
- In configuration settings of the V8 JS engine became obsolete the
MaxExecutableSizeproperty and added two new properties:AwaitDebuggerAndPauseOnStart(defaultfalse) andEnableRemoteDebugging(defaultfalse)
- In JavaScriptEngineSwitcher.Vroom added support of .NET Framework 4.7.1
- Added a module based on the NiL.JS
NuGet Packages
Before installing of NuGet packages, I recommend to first read “How to upgrade applications to version 3.X” section of the documentation.