Releases: ClearFoundry/ClearScript
Releases · ClearFoundry/ClearScript
ClearScript 7.1
- Breaking Changes:
- A new assembly, ClearScript.Windows.Core, has been split out of ClearScript.Windows.
- Added "core" Windows Script engine classes that don't require the Windows Desktop runtime.
- Added support for Windows and Linux on arm64 hardware (GitHub Issue #206).
- The Windows Desktop runtime is not available for arm64, so only V8 and the "core" Windows Script engines are supported.
- Enabled the JavaScript Internationalization API in
V8ScriptEngine(GitHub Issue #150).- An ICU Data file must be deployed with the application for full support of this API.
- Added
V8Runtime.WriteHeapSnapshotandV8ScriptEngine.WriteRuntimeHeapSnapshot(GitHub Issue #85). - Switched to static linking of C/C++ libraries to broaden Linux support (GitHub Issue #215).
- Relaxed type comparison in HostTypeCollection (GitHub Issue #213).
- Added experimental support for the Universal Windows Platform (V8 only).
- Updated API and build documentation.
- Tested with V8 8.8.278.14.
ClearScript 7.0
- Breaking Changes:
- V8 deployment no longer requires the
v8-*.dllassemblies. - V8 deployment no longer requires the Visual C++ redistributables.
- The ClearScript assembly has been split into ClearScript.Core, ClearScript.Windows, and ClearScript.V8.
- ClearScriptV8 is now linked against a matching V8 configuration (Debug or Release).
- The name of each ClearScriptV8 assembly now includes its Runtime Identifier:
ClearScriptV8.win-x86.dllClearScriptV8.win-x64.dllClearScriptV8.linux-x64.soClearScriptV8.osx-x64.dylib
- V8 deployment no longer requires the
- Removed all C++/CLI code, paving the way for non-Windows builds.
- The ClearScriptV8 assemblies are now 100% native code, resolving GitHub Issue #197.
- Switched to static linking for V8 and C++ libraries.
- Added initial support for .NET Core 3.1 and .NET 5.0 on Linux (x64) and macOS (x64).
- Non-Windows builds are limited to V8; legacy script engines (JScript/VBScript) are non-functional.
- Windows-specific integration features such as COM Interop are not available on Linux and macOS.
- Built and tested on Ubuntu 20.10 and 20.04, Manjaro 20.1, and macOS Big Sur and Catalina.
- Added support for .NET 5.0 on Windows.
- Added V8ScriptEngineFlags.EnableTaskPromiseConversion to resolve GitHub Issue #198.
- Updated managed code to leverage C# 7.3 features.
- Overhauled NuGet packaging according to Andrey Taritsyn's recommended taxonomy (GitHub Issue #209).
- Updated build, deployment, and debugging documentation, resolving GitHub Issue #199.
- Tested with V8 8.7.220.25.
ClearScript 7.0 RC5
- Breaking Changes:
- The ClearScript assembly has been split into ClearScript.Core, ClearScript.Windows, and ClearScript.V8.
- The project no longer builds distinct .NET Core libraries for non-Windows platforms.
- The name of each ClearScriptV8 assembly now includes its Runtime Identifier:
ClearScriptV8.win-x86.dllClearScriptV8.win-x64.dllClearScriptV8.linux-x64.soClearScriptV8.osx-x64.dylib
- Enhanced support for cross-platform deployment of web projects.
- Overhauled NuGet packaging according to Andrey Taritsyn's recommended taxonomy (GitHub Issue #209).
- Tested with V8 8.7.220.16.
ClearScript 7.0 RC4
- Fixed support for multiple application domains (GitHub Issue #208).
- Tested with V8 8.7.220.10
ClearScript 7.0 RC3
- Fixed more task-promise conversion issues (GitHub Issue #198).
ClearScript 7.0 RC2
- Fixed task-promise conversion issues (GitHub Issue #198).
ClearScript 7.0 RC
- Breaking Changes:
- V8 deployment no longer requires the
v8-*.dllassemblies. - V8 deployment no longer requires the Visual C++ redistributables.
- ClearScriptV8 is now linked against a matching V8 configuration (Debug or Release).
- V8 deployment no longer requires the
- Removed all C++/CLI code, paving the way for non-Windows builds.
- The ClearScriptV8 assemblies are now 100% native code, resolving GitHub Issue #197.
- Switched to static linking for V8 and C++ libraries.
- Added initial support for .NET Core 3.1 on Linux (x64) and macOS (x64).
- Non-Windows builds are limited to V8; legacy script engines (JScript/VBScript) are non-functional.
- Windows-specific integration features such as COM Interop are not available on Linux and macOS.
- Built and tested on Ubuntu 20.04, Manjaro 20.1, and macOS Catalina.
- Added V8ScriptEngineFlags.EnableTaskPromiseConversion to resolve GitHub Issue #198.
- Updated managed code to leverage C# 7.3 features.
- Updated build, deployment, and debugging documentation, resolving GitHub Issue #199.
- Tested with V8 8.6.395.17.
Version 6.0.2
- Fixed error handling in
JavaScriptExtensions.ToPromise. - Added
JavaScriptExtensions.ToTask(GitHub Issue #182). - Added
DocumentLoader.MaxCacheSizeandDocumentCategory.MaxCacheSize. - Added code to break event connections on engine disposal (GitHub Issue #183).
- Improved ES6 module support, fixing cycle crash (GitHub Issue #181).
- Added
DynamicHostObject(GitHub Issue #180). - Added
BigInt/BigIntegersupport for V8 (GitHub Issue #176). - Hardened
Assembly.Loadcall in V8Proxy.cs (GitHub Issue #175). - Improved V8Update environment isolation to fix some V8 build issues (GitHub Issue #185).
- Updated API documentation.
- Tested with V8 8.3.110.9.
Version 6.0.1
- Breaking Changes:
- The
v8-libcpp-ia32.dllandv8-libcpp-x64.dllassemblies are no longer used. - V8 deployment requires two new assemblies:
v8-zlib-ia32.dllandv8-zlib-x64.dll.
- The
- Improved support for IIS least-privilege accounts (GitHub Issue #160).
- Fixed 64-bit V8 initialization on Azure App Service (GitHub Issue #166).
- Enabled
DirectAccessforComVisible.NET objects (GitHub Issue #161). - Added
ScriptEngine.ExposeHostObjectStaticMembers(GitHub Issue #152). - Added
ScriptEngine.UndefinedImportValueand madeUndefined.Valuepublic (GitHub Issue #154). - Enhanced
ExtendedHostFunctions.typeLibEnumsto pull in external enumerations. - Added thread affinity enforcement in
WindowsScriptEngine.Dispose. - Eliminated
KeyNotFoundExceptionwhen checking for system documents (GitHub Issue #169). - Enabled the use of the application's root folder as a backup for its local data folder (GitHub Issue #171).
- Reduced minimum CPU profile and heap size sampling intervals to 125 ms.
- Updated deployment and API documentation, resolving GitHub Issues #158 and #159.
- Tested with V8 8.1.307.28.
ClearScript 6.0
- Breaking Changes:
- To build ClearScript you must now use Visual Studio 2019 Version 16.4 or later.
- The assembly table has been deprecated and is now disabled by default.
- Added preliminary support for .NET Core 3.1 on Windows (GitHub Issue #9).
- .NET Core platform differences may impact some host integration features.
- Hosts making heavy use of COM object scripting are advised not to migrate.
- Added support for system documents (GitHub Issue #143).
- Added
IListimplementation to V8 arrays. - Added
ExtendedHostFunctions.typeLibEnums(GitHub Issue #147). - Added
WindowsScriptEngineFlags.MarshalDateTimeAsDate(GitHub Issue #141). - Fixed generic type inference for COM interfaces.
- Fixed enumeration of COM collections that don't provide class information (GitHub Issue #146).
- Fixed memory leak impacting Windows Script object property assignment (GitHub Issue #135).
- Updated build and API documentation.
- Tested with V8 7.9.317.32.