diff --git a/.editorconfig b/.editorconfig index eaf3fae3..a2962bd0 100644 --- a/.editorconfig +++ b/.editorconfig @@ -17,13 +17,10 @@ indent_style = space indent_size = 2 insert_final_newline = true -[*.{xml,config,csproj,props,targets,nuspec}] +[*.{xml,config,slnx,csproj,props,targets,nuspec}] indent_style = space indent_size = 2 -[*.sln] -insert_final_newline = true - [*.{txt,md}] indent_style = space indent_size = unset diff --git a/.gitattributes b/.gitattributes index 4fce7533..9607807f 100644 --- a/.gitattributes +++ b/.gitattributes @@ -3,7 +3,7 @@ # Custom for Visual Studio *.cs diff=csharp -*.sln merge=union +*.slnx merge=union *.csproj merge=union # Standard to msysgit diff --git a/.gitignore b/.gitignore index 8a5400f1..9dafd006 100644 --- a/.gitignore +++ b/.gitignore @@ -5,12 +5,10 @@ # Node.js tools bower_components/ node_modules/ +package-lock.json -# Client side components -**/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/lib/ -**/scripts/build/ -**/styles/build/ -**/wwwroot/lib/ +# BenchmarkDotNet artifacts +BenchmarkDotNet.Artifacts/ ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. @@ -18,6 +16,7 @@ node_modules/ # User-specific files .vs/ .vscode/ +.idea/ *.sln.docstates *.suo *.user @@ -60,6 +59,7 @@ PublishProfiles/ # NuGet Packages packages/ *.nupkg +*.snupkg # Others .build/ @@ -77,4 +77,12 @@ packages/ _UpgradeReport_Files/ Backup*/ UpgradeLog.htm -UpgradeLog*.XML \ No newline at end of file +UpgradeLog*.XML + +# Current project-specific folders and files +nuget/ +**/JavaScriptEngineSwitcher.Benchmarks/Files/template-rendering/lib/*.min.js +**/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/lib/ +**/scripts/build/ +**/styles/build/ +**/wwwroot/lib/ \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index f2928975..b9dd11f3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,79 @@ Change log ========== +## v3.30.2 - July 15, 2025 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.4.0 + * In JavaScriptEngineSwitcher.Yantra added support for the YantraJS version 1.2.286 + +## v3.30.1 - July 1, 2025 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.3.0 + +## v3.30.0 - June 16, 2025 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.2.2 + * In JavaScriptEngineSwitcher.NiL: + * NiL.JS was updated to version 2.6.1700 + * No longer supports a .NET 5 and 7 + * Added support for .NET 9 + +## v3.29.1 - March 14, 2025 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.2.1 + * In JavaScriptEngineSwitcher.V8 performed a migration to a modern API for pre-compilation of scripts + +## v3.29.0 - March 8, 2025 + * In JavaScriptEngineSwitcher.Jurassic added support for the Jurassic version of February 4, 2025 + * In JavaScriptEngineSwitcher.V8: + * Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8 version 13.3.415.23) + * No longer supports a .NET Framework 4.5 + * Added support for .NET Framework 4.6.2 + * In JavaScriptEngineSwitcher.Yantra added support for the YantraJS version 1.2.282 + +## v3.28.0 - January 29, 2025 + * In JavaScriptEngineSwitcher.Jint: + * Jint was updated to version 4.2.0 + * No longer supports a .NET 6 + +## v3.27.3 - December 18, 2024 + * In JavaScriptEngineSwitcher.ChakraCore added support for the ChakraCore version of August 1, 2024 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.1.0 + * In JavaScriptEngineSwitcher.Jurassic added support for the Jurassic version of November 22, 2024 + * In JavaScriptEngineSwitcher.Yantra added support for the YantraJS version 1.2.246 + +## v3.27.2 - September 1, 2024 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.0.2 + * In JavaScriptEngineSwitcher.Yantra added support for the YantraJS version 1.2.225 + +## v3.27.1 - August 20, 2024 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.0.1 + * In JavaScriptEngineSwitcher.Yantra added support for the YantraJS version 1.2.218 + +## v3.27.0 - July 24, 2024 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 4.0.0 + +## v3.26.1 - June 18, 2024 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 3.1.3 + * In JavaScriptEngineSwitcher.NiL: + * NiL.JS was updated to version 2.5.1684 + * Added support for .NET 8 + +## v3.26.0 - April 22, 2024 + * In JavaScriptEngineSwitcher.ChakraCore: + * ChakraCore was updated to version of April 21, 2024 + * In `JavaScriptEngineSwitcher.ChakraCore.Native.win-*` packages an additional deployment mechanism has been added to MSBuild scripts for the case when the target platform is focused on a specific processor architecture + +## v3.25.0 - April 10, 2024 + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 3.1.0 + * In JavaScriptEngineSwitcher.Yantra added support for the YantraJS version 1.2.209 + +## v3.24.2 - March 25, 2024 + * In JavaScriptEngineSwitcher.V8: + * Microsoft ClearScript.V8 was updated to version 7.4.5 (support of the V8 version 12.3.219.12) + * In configuration settings of the V8 JS engine was added two new properties: `AddPerformanceObject` (default `false`) and `SetTimerResolution` (default `false`) + +## v3.24.1 - March 7, 2024 + * Minor improvements in metadata of NuGet packages + * In JavaScriptEngineSwitcher.Jint added support for the Jint version 3.0.1 + * In JavaScriptEngineSwitcher.Msie added support for the MSIE JavaScript Engine version 3.2.5 + ## v3.24.0 - February 6, 2024 * In the `JsEngineSwitcher` class was added the `AllowCurrentProperty` property (default `true`) * In JavaScriptEngineSwitcher.Extensions.MsDependencyInjection: diff --git a/Directory.Packages.props b/Directory.Packages.props index e6acfb8f..bbbdb4f8 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,18 +1,18 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + \ No newline at end of file diff --git a/JavaScriptEngineSwitcher.NoSamples.sln b/JavaScriptEngineSwitcher.NoSamples.sln deleted file mode 100644 index c83f1423..00000000 --- a/JavaScriptEngineSwitcher.NoSamples.sln +++ /dev/null @@ -1,227 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.5.33502.453 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{19575E10-6B8E-4CF0-B7D2-898FFF47E157}" - ProjectSection(SolutionItems) = preProject - .editorconfig = .editorconfig - CHANGELOG.md = CHANGELOG.md - global.json = global.json - LICENSE.txt = LICENSE.txt - README.md = README.md - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{3FE10516-C056-4337-9C9A-5FD592430F87}" - ProjectSection(SolutionItems) = preProject - build\common.props = build\common.props - build\initialize-standard-nuspec-properties.targets = build\initialize-standard-nuspec-properties.targets - build\Key.snk = build\Key.snk - build\net40-client-target.props = build\net40-client-target.props - build\nuget-common.props = build\nuget-common.props - build\nuget-for-dotnet-lib.props = build\nuget-for-dotnet-lib.props - build\nuget-for-native-lib.props = build\nuget-for-native-lib.props - build\strong-name-signing.props = build\strong-name-signing.props - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "licenses", "licenses", "{4AB5950E-3FA8-4A77-A067-F325BFD80537}" - ProjectSection(SolutionItems) = preProject - Licenses\advanced-string-builder-license.txt = Licenses\advanced-string-builder-license.txt - Licenses\chakra-core-license.txt = Licenses\chakra-core-license.txt - Licenses\chakra-samples-license.txt = Licenses\chakra-samples-license.txt - Licenses\clearscript-license.txt = Licenses\clearscript-license.txt - Licenses\jering-javascript-nodejs-license.txt = Licenses\jering-javascript-nodejs-license.txt - Licenses\jint-license.txt = Licenses\jint-license.txt - Licenses\jsrt-dotnet-license.txt = Licenses\jsrt-dotnet-license.txt - Licenses\jurassic-license.txt = Licenses\jurassic-license.txt - Licenses\microsoft-dotnet-arcade-sdk-license.txt = Licenses\microsoft-dotnet-arcade-sdk-license.txt - Licenses\msie-javascript-engine-license.txt = Licenses\msie-javascript-engine-license.txt - Licenses\nil-license.txt = Licenses\nil-license.txt - Licenses\nodejs-license.txt = Licenses\nodejs-license.txt - Licenses\polyfills-for-old-dot-net-license.txt = Licenses\polyfills-for-old-dot-net-license.txt - Licenses\v8-license.txt = Licenses\v8-license.txt - Licenses\vroomjs-core-license.txt = Licenses\vroomjs-core-license.txt - Licenses\yantra-license.txt = Licenses\yantra-license.txt - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{0C281F46-F1D2-4A1C-8560-375EDA65D680}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{53B43213-2E66-42C2-8476-600A2FD2DA75}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Core", "src\JavaScriptEngineSwitcher.Core\JavaScriptEngineSwitcher.Core.csproj", "{13559975-F99D-4B93-BF46-227C0B6E0DFB}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Extensions.MsDependencyInjection", "src\JavaScriptEngineSwitcher.Extensions.MsDependencyInjection\JavaScriptEngineSwitcher.Extensions.MsDependencyInjection.csproj", "{5B693A49-BEC2-4532-ADFE-80C4AA930E27}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Msie", "src\JavaScriptEngineSwitcher.Msie\JavaScriptEngineSwitcher.Msie.csproj", "{B3C4AA95-2227-47DD-B58C-22FA589CB28D}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8", "src\JavaScriptEngineSwitcher.V8\JavaScriptEngineSwitcher.V8.csproj", "{C24E1F3C-5680-463A-8703-B9F40BCDAC77}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.win-x86", "src\JavaScriptEngineSwitcher.V8.Native.win-x86\JavaScriptEngineSwitcher.V8.Native.win-x86.csproj", "{1739A011-164B-4227-B540-01BAD61F17C5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.win-x64", "src\JavaScriptEngineSwitcher.V8.Native.win-x64\JavaScriptEngineSwitcher.V8.Native.win-x64.csproj", "{4FB64080-817F-468A-B92C-F63B46E6D85F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.linux-x64", "src\JavaScriptEngineSwitcher.V8.Native.linux-x64\JavaScriptEngineSwitcher.V8.Native.linux-x64.csproj", "{D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.osx-x64", "src\JavaScriptEngineSwitcher.V8.Native.osx-x64\JavaScriptEngineSwitcher.V8.Native.osx-x64.csproj", "{4B727E90-AE52-41DD-B704-28A00196052C}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Jurassic", "src\JavaScriptEngineSwitcher.Jurassic\JavaScriptEngineSwitcher.Jurassic.csproj", "{D31B5A77-8018-4D76-B372-325564385B2D}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Jint", "src\JavaScriptEngineSwitcher.Jint\JavaScriptEngineSwitcher.Jint.csproj", "{22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore", "src\JavaScriptEngineSwitcher.ChakraCore\JavaScriptEngineSwitcher.ChakraCore.csproj", "{2EFFFC6B-E642-477F-B537-4241EBD93410}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-x86", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-x86\JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.csproj", "{F676D869-5715-46B0-A118-A162D9C9DEC6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-x64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-x64\JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.csproj", "{D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-arm", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.csproj", "{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.csproj", "{304EEE7F-005D-4335-80AB-DB29025740B1}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64\JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.csproj", "{FF77615B-4182-4BE7-AE2B-0F9F75198490}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64\JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.csproj", "{E14C4086-9877-4658-AE39-6313039A9076}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Vroom", "src\JavaScriptEngineSwitcher.Vroom\JavaScriptEngineSwitcher.Vroom.csproj", "{238D7E69-7052-4DFC-83EF-79D3D124C12B}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.NiL", "src\JavaScriptEngineSwitcher.NiL\JavaScriptEngineSwitcher.NiL.csproj", "{F0BF7975-2E8A-4EC8-8DAA-760A4302F419}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Node", "src\JavaScriptEngineSwitcher.Node\JavaScriptEngineSwitcher.Node.csproj", "{89F9DDDD-5236-4D9A-99E4-3C1358B81149}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Yantra", "src\JavaScriptEngineSwitcher.Yantra\JavaScriptEngineSwitcher.Yantra.csproj", "{897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Benchmarks", "test\JavaScriptEngineSwitcher.Benchmarks\JavaScriptEngineSwitcher.Benchmarks.csproj", "{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Tests", "test\JavaScriptEngineSwitcher.Tests\JavaScriptEngineSwitcher.Tests.csproj", "{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Release|Any CPU.Build.0 = Release|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Release|Any CPU.Build.0 = Release|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Release|Any CPU.Build.0 = Release|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Release|Any CPU.Build.0 = Release|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Release|Any CPU.Build.0 = Release|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Release|Any CPU.Build.0 = Release|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Release|Any CPU.Build.0 = Release|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Release|Any CPU.Build.0 = Release|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Release|Any CPU.Build.0 = Release|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Release|Any CPU.Build.0 = Release|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Release|Any CPU.Build.0 = Release|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Release|Any CPU.Build.0 = Release|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Release|Any CPU.Build.0 = Release|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.Build.0 = Release|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Release|Any CPU.Build.0 = Release|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Release|Any CPU.Build.0 = Release|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Release|Any CPU.Build.0 = Release|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Release|Any CPU.Build.0 = Release|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Release|Any CPU.Build.0 = Release|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Debug|Any CPU.Build.0 = Debug|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Release|Any CPU.ActiveCfg = Release|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Release|Any CPU.Build.0 = Release|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Release|Any CPU.Build.0 = Release|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Release|Any CPU.Build.0 = Release|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {13559975-F99D-4B93-BF46-227C0B6E0DFB} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {5B693A49-BEC2-4532-ADFE-80C4AA930E27} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {B3C4AA95-2227-47DD-B58C-22FA589CB28D} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {C24E1F3C-5680-463A-8703-B9F40BCDAC77} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {1739A011-164B-4227-B540-01BAD61F17C5} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {4FB64080-817F-468A-B92C-F63B46E6D85F} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {4B727E90-AE52-41DD-B704-28A00196052C} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {D31B5A77-8018-4D76-B372-325564385B2D} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {2EFFFC6B-E642-477F-B537-4241EBD93410} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {F676D869-5715-46B0-A118-A162D9C9DEC6} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {304EEE7F-005D-4335-80AB-DB29025740B1} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {FF77615B-4182-4BE7-AE2B-0F9F75198490} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {E14C4086-9877-4658-AE39-6313039A9076} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {238D7E69-7052-4DFC-83EF-79D3D124C12B} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {89F9DDDD-5236-4D9A-99E4-3C1358B81149} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE} = {53B43213-2E66-42C2-8476-600A2FD2DA75} - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF} = {53B43213-2E66-42C2-8476-600A2FD2DA75} - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {8184BE59-ACBC-4CD1-9419-D59A0FAC6131} - EndGlobalSection -EndGlobal diff --git a/JavaScriptEngineSwitcher.NoSamples.slnx b/JavaScriptEngineSwitcher.NoSamples.slnx new file mode 100644 index 00000000..68112f6b --- /dev/null +++ b/JavaScriptEngineSwitcher.NoSamples.slnx @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/JavaScriptEngineSwitcher.sln b/JavaScriptEngineSwitcher.sln deleted file mode 100644 index 4df069e7..00000000 --- a/JavaScriptEngineSwitcher.sln +++ /dev/null @@ -1,323 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.31912.275 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{19575E10-6B8E-4CF0-B7D2-898FFF47E157}" - ProjectSection(SolutionItems) = preProject - .editorconfig = .editorconfig - CHANGELOG.md = CHANGELOG.md - global.json = global.json - LICENSE.txt = LICENSE.txt - README.md = README.md - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{3FE10516-C056-4337-9C9A-5FD592430F87}" - ProjectSection(SolutionItems) = preProject - build\common.props = build\common.props - build\initialize-standard-nuspec-properties.targets = build\initialize-standard-nuspec-properties.targets - build\Key.snk = build\Key.snk - build\net40-client-target.props = build\net40-client-target.props - build\nuget-common.props = build\nuget-common.props - build\nuget-for-dotnet-lib.props = build\nuget-for-dotnet-lib.props - build\nuget-for-native-lib.props = build\nuget-for-native-lib.props - build\strong-name-signing.props = build\strong-name-signing.props - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "licenses", "licenses", "{4AB5950E-3FA8-4A77-A067-F325BFD80537}" - ProjectSection(SolutionItems) = preProject - Licenses\advanced-string-builder-license.txt = Licenses\advanced-string-builder-license.txt - Licenses\chakra-core-license.txt = Licenses\chakra-core-license.txt - Licenses\chakra-samples-license.txt = Licenses\chakra-samples-license.txt - Licenses\clearscript-license.txt = Licenses\clearscript-license.txt - Licenses\jering-javascript-nodejs-license.txt = Licenses\jering-javascript-nodejs-license.txt - Licenses\jint-license.txt = Licenses\jint-license.txt - Licenses\jsrt-dotnet-license.txt = Licenses\jsrt-dotnet-license.txt - Licenses\jurassic-license.txt = Licenses\jurassic-license.txt - Licenses\microsoft-dotnet-arcade-sdk-license.txt = Licenses\microsoft-dotnet-arcade-sdk-license.txt - Licenses\msie-javascript-engine-license.txt = Licenses\msie-javascript-engine-license.txt - Licenses\nil-license.txt = Licenses\nil-license.txt - Licenses\nodejs-license.txt = Licenses\nodejs-license.txt - Licenses\polyfills-for-old-dot-net-license.txt = Licenses\polyfills-for-old-dot-net-license.txt - Licenses\v8-license.txt = Licenses\v8-license.txt - Licenses\vroomjs-core-license.txt = Licenses\vroomjs-core-license.txt - Licenses\yantra-license.txt = Licenses\yantra-license.txt - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{0C281F46-F1D2-4A1C-8560-375EDA65D680}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{53B43213-2E66-42C2-8476-600A2FD2DA75}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{E5989CB5-AACE-4D35-A8EE-26942F140DA3}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SharedData", "SharedData", "{C5173D1C-5284-4FD5-9E0D-C7FD0DC8E029}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "text-content", "text-content", "{F8CC9C7C-656D-4A76-A912-D5708009DD7C}" - ProjectSection(SolutionItems) = preProject - samples\SharedData\text-content\contact.html = samples\SharedData\text-content\contact.html - samples\SharedData\text-content\index.html = samples\SharedData\text-content\index.html - EndProjectSection -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Core", "src\JavaScriptEngineSwitcher.Core\JavaScriptEngineSwitcher.Core.csproj", "{13559975-F99D-4B93-BF46-227C0B6E0DFB}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Extensions.MsDependencyInjection", "src\JavaScriptEngineSwitcher.Extensions.MsDependencyInjection\JavaScriptEngineSwitcher.Extensions.MsDependencyInjection.csproj", "{5B693A49-BEC2-4532-ADFE-80C4AA930E27}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Msie", "src\JavaScriptEngineSwitcher.Msie\JavaScriptEngineSwitcher.Msie.csproj", "{B3C4AA95-2227-47DD-B58C-22FA589CB28D}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8", "src\JavaScriptEngineSwitcher.V8\JavaScriptEngineSwitcher.V8.csproj", "{C24E1F3C-5680-463A-8703-B9F40BCDAC77}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.win-x86", "src\JavaScriptEngineSwitcher.V8.Native.win-x86\JavaScriptEngineSwitcher.V8.Native.win-x86.csproj", "{1739A011-164B-4227-B540-01BAD61F17C5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.win-x64", "src\JavaScriptEngineSwitcher.V8.Native.win-x64\JavaScriptEngineSwitcher.V8.Native.win-x64.csproj", "{4FB64080-817F-468A-B92C-F63B46E6D85F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.linux-x64", "src\JavaScriptEngineSwitcher.V8.Native.linux-x64\JavaScriptEngineSwitcher.V8.Native.linux-x64.csproj", "{D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.V8.Native.osx-x64", "src\JavaScriptEngineSwitcher.V8.Native.osx-x64\JavaScriptEngineSwitcher.V8.Native.osx-x64.csproj", "{4B727E90-AE52-41DD-B704-28A00196052C}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Jurassic", "src\JavaScriptEngineSwitcher.Jurassic\JavaScriptEngineSwitcher.Jurassic.csproj", "{D31B5A77-8018-4D76-B372-325564385B2D}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Jint", "src\JavaScriptEngineSwitcher.Jint\JavaScriptEngineSwitcher.Jint.csproj", "{22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore", "src\JavaScriptEngineSwitcher.ChakraCore\JavaScriptEngineSwitcher.ChakraCore.csproj", "{2EFFFC6B-E642-477F-B537-4241EBD93410}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-x86", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-x86\JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.csproj", "{F676D869-5715-46B0-A118-A162D9C9DEC6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-x64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-x64\JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.csproj", "{D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-arm", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.csproj", "{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64\JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.csproj", "{304EEE7F-005D-4335-80AB-DB29025740B1}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64\JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.csproj", "{FF77615B-4182-4BE7-AE2B-0F9F75198490}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64", "src\JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64\JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.csproj", "{E14C4086-9877-4658-AE39-6313039A9076}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Vroom", "src\JavaScriptEngineSwitcher.Vroom\JavaScriptEngineSwitcher.Vroom.csproj", "{238D7E69-7052-4DFC-83EF-79D3D124C12B}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.NiL", "src\JavaScriptEngineSwitcher.NiL\JavaScriptEngineSwitcher.NiL.csproj", "{F0BF7975-2E8A-4EC8-8DAA-760A4302F419}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Node", "src\JavaScriptEngineSwitcher.Node\JavaScriptEngineSwitcher.Node.csproj", "{89F9DDDD-5236-4D9A-99E4-3C1358B81149}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Yantra", "src\JavaScriptEngineSwitcher.Yantra\JavaScriptEngineSwitcher.Yantra.csproj", "{897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Benchmarks", "test\JavaScriptEngineSwitcher.Benchmarks\JavaScriptEngineSwitcher.Benchmarks.csproj", "{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Tests", "test\JavaScriptEngineSwitcher.Tests\JavaScriptEngineSwitcher.Tests.csproj", "{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.Resources", "samples\JavaScriptEngineSwitcher.Sample.Resources\JavaScriptEngineSwitcher.Sample.Resources.csproj", "{62F0C0AD-15BC-42CE-9BD2-49F506FEAA54}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.Logic", "samples\JavaScriptEngineSwitcher.Sample.Logic\JavaScriptEngineSwitcher.Sample.Logic.csproj", "{C434E1B5-0463-4E58-8336-87F822D07B41}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4", "samples\JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4\JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4.csproj", "{8124DF18-4A0B-4648-8B90-4A6D3E4EF2F3}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure\JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure.csproj", "{98839644-D3CB-4CA0-A320-49286A7770B5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1\JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1.csproj", "{C790AD7F-55C6-4106-8D8C-8F901B7FF245}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1\JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1.csproj", "{5CA92021-B75A-40AF-B5AA-500BAF76B4D6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21\JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21.csproj", "{0342791E-6390-4F97-9163-5CE02E4CFF07}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31\JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31.csproj", "{D0127B5A-E66B-4DA2-8C57-A8BA2A0163F4}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5\JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5.csproj", "{189376C9-49DA-4A12-9C78-CE39E8EC7731}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6\JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6.csproj", "{58321699-3715-4CA7-8036-A9F26E4C93F3}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7\JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7.csproj", "{923B1463-910F-4542-8E68-29F36A9DB508}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8", "samples\JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8\JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8.csproj", "{4E7BC7EF-5982-4A59-9283-05D158E637E2}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {13559975-F99D-4B93-BF46-227C0B6E0DFB}.Release|Any CPU.Build.0 = Release|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5B693A49-BEC2-4532-ADFE-80C4AA930E27}.Release|Any CPU.Build.0 = Release|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B3C4AA95-2227-47DD-B58C-22FA589CB28D}.Release|Any CPU.Build.0 = Release|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C24E1F3C-5680-463A-8703-B9F40BCDAC77}.Release|Any CPU.Build.0 = Release|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1739A011-164B-4227-B540-01BAD61F17C5}.Release|Any CPU.Build.0 = Release|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4FB64080-817F-468A-B92C-F63B46E6D85F}.Release|Any CPU.Build.0 = Release|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889}.Release|Any CPU.Build.0 = Release|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4B727E90-AE52-41DD-B704-28A00196052C}.Release|Any CPU.Build.0 = Release|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D31B5A77-8018-4D76-B372-325564385B2D}.Release|Any CPU.Build.0 = Release|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA}.Release|Any CPU.Build.0 = Release|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2EFFFC6B-E642-477F-B537-4241EBD93410}.Release|Any CPU.Build.0 = Release|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F676D869-5715-46B0-A118-A162D9C9DEC6}.Release|Any CPU.Build.0 = Release|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Release|Any CPU.Build.0 = Release|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.Build.0 = Release|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {304EEE7F-005D-4335-80AB-DB29025740B1}.Release|Any CPU.Build.0 = Release|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FF77615B-4182-4BE7-AE2B-0F9F75198490}.Release|Any CPU.Build.0 = Release|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E14C4086-9877-4658-AE39-6313039A9076}.Release|Any CPU.Build.0 = Release|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {238D7E69-7052-4DFC-83EF-79D3D124C12B}.Release|Any CPU.Build.0 = Release|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419}.Release|Any CPU.Build.0 = Release|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Debug|Any CPU.Build.0 = Debug|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Release|Any CPU.ActiveCfg = Release|Any CPU - {89F9DDDD-5236-4D9A-99E4-3C1358B81149}.Release|Any CPU.Build.0 = Release|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB}.Release|Any CPU.Build.0 = Release|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Release|Any CPU.Build.0 = Release|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Release|Any CPU.Build.0 = Release|Any CPU - {62F0C0AD-15BC-42CE-9BD2-49F506FEAA54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {62F0C0AD-15BC-42CE-9BD2-49F506FEAA54}.Debug|Any CPU.Build.0 = Debug|Any CPU - {62F0C0AD-15BC-42CE-9BD2-49F506FEAA54}.Release|Any CPU.ActiveCfg = Release|Any CPU - {62F0C0AD-15BC-42CE-9BD2-49F506FEAA54}.Release|Any CPU.Build.0 = Release|Any CPU - {C434E1B5-0463-4E58-8336-87F822D07B41}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C434E1B5-0463-4E58-8336-87F822D07B41}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C434E1B5-0463-4E58-8336-87F822D07B41}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C434E1B5-0463-4E58-8336-87F822D07B41}.Release|Any CPU.Build.0 = Release|Any CPU - {8124DF18-4A0B-4648-8B90-4A6D3E4EF2F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8124DF18-4A0B-4648-8B90-4A6D3E4EF2F3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8124DF18-4A0B-4648-8B90-4A6D3E4EF2F3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8124DF18-4A0B-4648-8B90-4A6D3E4EF2F3}.Release|Any CPU.Build.0 = Release|Any CPU - {C790AD7F-55C6-4106-8D8C-8F901B7FF245}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C790AD7F-55C6-4106-8D8C-8F901B7FF245}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C790AD7F-55C6-4106-8D8C-8F901B7FF245}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C790AD7F-55C6-4106-8D8C-8F901B7FF245}.Release|Any CPU.Build.0 = Release|Any CPU - {5CA92021-B75A-40AF-B5AA-500BAF76B4D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5CA92021-B75A-40AF-B5AA-500BAF76B4D6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5CA92021-B75A-40AF-B5AA-500BAF76B4D6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5CA92021-B75A-40AF-B5AA-500BAF76B4D6}.Release|Any CPU.Build.0 = Release|Any CPU - {0342791E-6390-4F97-9163-5CE02E4CFF07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0342791E-6390-4F97-9163-5CE02E4CFF07}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0342791E-6390-4F97-9163-5CE02E4CFF07}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0342791E-6390-4F97-9163-5CE02E4CFF07}.Release|Any CPU.Build.0 = Release|Any CPU - {D0127B5A-E66B-4DA2-8C57-A8BA2A0163F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D0127B5A-E66B-4DA2-8C57-A8BA2A0163F4}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D0127B5A-E66B-4DA2-8C57-A8BA2A0163F4}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D0127B5A-E66B-4DA2-8C57-A8BA2A0163F4}.Release|Any CPU.Build.0 = Release|Any CPU - {189376C9-49DA-4A12-9C78-CE39E8EC7731}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {189376C9-49DA-4A12-9C78-CE39E8EC7731}.Debug|Any CPU.Build.0 = Debug|Any CPU - {189376C9-49DA-4A12-9C78-CE39E8EC7731}.Release|Any CPU.ActiveCfg = Release|Any CPU - {189376C9-49DA-4A12-9C78-CE39E8EC7731}.Release|Any CPU.Build.0 = Release|Any CPU - {58321699-3715-4CA7-8036-A9F26E4C93F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {58321699-3715-4CA7-8036-A9F26E4C93F3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {58321699-3715-4CA7-8036-A9F26E4C93F3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {58321699-3715-4CA7-8036-A9F26E4C93F3}.Release|Any CPU.Build.0 = Release|Any CPU - {923B1463-910F-4542-8E68-29F36A9DB508}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {923B1463-910F-4542-8E68-29F36A9DB508}.Debug|Any CPU.Build.0 = Debug|Any CPU - {923B1463-910F-4542-8E68-29F36A9DB508}.Release|Any CPU.ActiveCfg = Release|Any CPU - {923B1463-910F-4542-8E68-29F36A9DB508}.Release|Any CPU.Build.0 = Release|Any CPU - {98839644-D3CB-4CA0-A320-49286A7770B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {98839644-D3CB-4CA0-A320-49286A7770B5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {98839644-D3CB-4CA0-A320-49286A7770B5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {98839644-D3CB-4CA0-A320-49286A7770B5}.Release|Any CPU.Build.0 = Release|Any CPU - {4E7BC7EF-5982-4A59-9283-05D158E637E2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4E7BC7EF-5982-4A59-9283-05D158E637E2}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4E7BC7EF-5982-4A59-9283-05D158E637E2}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4E7BC7EF-5982-4A59-9283-05D158E637E2}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {C5173D1C-5284-4FD5-9E0D-C7FD0DC8E029} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {F8CC9C7C-656D-4A76-A912-D5708009DD7C} = {C5173D1C-5284-4FD5-9E0D-C7FD0DC8E029} - {13559975-F99D-4B93-BF46-227C0B6E0DFB} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {5B693A49-BEC2-4532-ADFE-80C4AA930E27} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {B3C4AA95-2227-47DD-B58C-22FA589CB28D} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {C24E1F3C-5680-463A-8703-B9F40BCDAC77} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {1739A011-164B-4227-B540-01BAD61F17C5} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {4FB64080-817F-468A-B92C-F63B46E6D85F} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {D4B2AB12-57DE-43AA-9A1E-E4A5DEB59889} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {4B727E90-AE52-41DD-B704-28A00196052C} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {D31B5A77-8018-4D76-B372-325564385B2D} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {22D73C6E-5F35-497B-A93B-F9EAAAE4DDAA} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {2EFFFC6B-E642-477F-B537-4241EBD93410} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {F676D869-5715-46B0-A118-A162D9C9DEC6} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {304EEE7F-005D-4335-80AB-DB29025740B1} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {FF77615B-4182-4BE7-AE2B-0F9F75198490} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {E14C4086-9877-4658-AE39-6313039A9076} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {238D7E69-7052-4DFC-83EF-79D3D124C12B} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {F0BF7975-2E8A-4EC8-8DAA-760A4302F419} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {89F9DDDD-5236-4D9A-99E4-3C1358B81149} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {897E4EFA-C8F5-4980-BBD0-2EA7B920B2EB} = {0C281F46-F1D2-4A1C-8560-375EDA65D680} - {24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE} = {53B43213-2E66-42C2-8476-600A2FD2DA75} - {E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF} = {53B43213-2E66-42C2-8476-600A2FD2DA75} - {62F0C0AD-15BC-42CE-9BD2-49F506FEAA54} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {C434E1B5-0463-4E58-8336-87F822D07B41} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {8124DF18-4A0B-4648-8B90-4A6D3E4EF2F3} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {C790AD7F-55C6-4106-8D8C-8F901B7FF245} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {5CA92021-B75A-40AF-B5AA-500BAF76B4D6} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {0342791E-6390-4F97-9163-5CE02E4CFF07} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {D0127B5A-E66B-4DA2-8C57-A8BA2A0163F4} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {189376C9-49DA-4A12-9C78-CE39E8EC7731} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {58321699-3715-4CA7-8036-A9F26E4C93F3} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {923B1463-910F-4542-8E68-29F36A9DB508} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {98839644-D3CB-4CA0-A320-49286A7770B5} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - {4E7BC7EF-5982-4A59-9283-05D158E637E2} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3} - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {8184BE59-ACBC-4CD1-9419-D59A0FAC6131} - EndGlobalSection -EndGlobal diff --git a/JavaScriptEngineSwitcher.slnx b/JavaScriptEngineSwitcher.slnx new file mode 100644 index 00000000..a771aa01 --- /dev/null +++ b/JavaScriptEngineSwitcher.slnx @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LICENSE.txt b/LICENSE.txt index 105a2500..a66f2b1f 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,4 +1,4 @@ - Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru + Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru Apache License Version 2.0, January 2004 diff --git a/Licenses/advanced-string-builder-license.txt b/Licenses/advanced-string-builder-license.txt index fab73c68..3598e8b2 100644 --- a/Licenses/advanced-string-builder-license.txt +++ b/Licenses/advanced-string-builder-license.txt @@ -1,3 +1,5 @@ + Copyright (c) 2018-2024 Andrey Taritsyn - http://www.taritsyn.ru + Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -178,7 +180,7 @@ APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" + boilerplate notice, with the fields enclosed by brackets "{}" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a @@ -186,7 +188,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright (c) 2018 Andrey Taritsyn - http://www.taritsyn.ru + Copyright {yyyy} {name of copyright owner} Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -198,4 +200,4 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and - limitations under the License. + limitations under the License. \ No newline at end of file diff --git a/Licenses/msie-javascript-engine-license.txt b/Licenses/msie-javascript-engine-license.txt index 15d34514..6e8f77b1 100644 --- a/Licenses/msie-javascript-engine-license.txt +++ b/Licenses/msie-javascript-engine-license.txt @@ -1,4 +1,4 @@ - Copyright (c) 2012-2021 Andrey Taritsyn - http://www.taritsyn.ru + Copyright (c) 2012-2024 Andrey Taritsyn - http://www.taritsyn.ru Apache License Version 2.0, January 2004 diff --git a/Licenses/nodejs-license.txt b/Licenses/nodejs-license.txt index 736ddf92..41adca92 100644 --- a/Licenses/nodejs-license.txt +++ b/Licenses/nodejs-license.txt @@ -53,7 +53,9 @@ The externally maintained libraries used by Node.js are: - Acorn, located at deps/acorn, is licensed as follows: """ - Copyright (C) 2012-2018 by various contributors (see AUTHORS) + MIT License + + Copyright (C) 2012-2022 by various contributors (see AUTHORS) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -74,83 +76,103 @@ The externally maintained libraries used by Node.js are: THE SOFTWARE. """ -- Acorn plugins, located at deps/acorn-plugins, is licensed as follows: +- c-ares, located at deps/cares, is licensed as follows: """ - Copyright (C) 2017-2018 by Adrian Heine + MIT License - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: + Copyright (c) 1998 Massachusetts Institute of Technology + Copyright (c) 2007 - 2023 Daniel Stenberg with many contributors, see AUTHORS + file. - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. + Permission is hereby granted, free of charge, to any person obtaining a copy of + this software and associated documentation files (the "Software"), to deal in + the Software without restriction, including without limitation the rights to + use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + the Software, and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + + The above copyright notice and this permission notice (including the next + paragraph) shall be included in all copies or substantial portions of the + Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. """ -- c-ares, located at deps/cares, is licensed as follows: +- cjs-module-lexer, located at deps/cjs-module-lexer, is licensed as follows: """ - Copyright (c) 2007 - 2018, Daniel Stenberg with many contributors, see AUTHORS - file. + MIT License + ----------- + + Copyright (C) 2018-2020 Guy Bedford + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- ittapi, located at deps/v8/third_party/ittapi, is licensed as follows: + """ + Copyright (c) 2019 Intel Corporation. All rights reserved. - Copyright 1998 by the Massachusetts Institute of Technology. + Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, provided that - the above copyright notice appear in all copies and that both that copyright - notice and this permission notice appear in supporting documentation, and that - the name of M.I.T. not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior permission. - M.I.T. makes no representations about the suitability of this software for any - purpose. It is provided "as is" without express or implied warranty. + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. """ - ICU, located at deps/icu-small, is licensed as follows: """ - COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later) + UNICODE LICENSE V3 - Copyright © 1991-2019 Unicode, Inc. All rights reserved. - Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + COPYRIGHT AND PERMISSION NOTICE - Permission is hereby granted, free of charge, to any person obtaining - a copy of the Unicode data files and any associated documentation - (the "Data Files") or Unicode software and any associated documentation - (the "Software") to deal in the Data Files or Software - without restriction, including without limitation the rights to use, - copy, modify, merge, publish, distribute, and/or sell copies of - the Data Files or Software, and to permit persons to whom the Data Files - or Software are furnished to do so, provided that either - (a) this copyright and permission notice appear with all copies - of the Data Files or Software, or - (b) this copyright and permission notice appear in associated - Documentation. - - THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF - ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT OF THIRD PARTY RIGHTS. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS - NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL - DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THE DATA FILES OR SOFTWARE. + Copyright © 2016-2023 Unicode, Inc. - Except as contained in this notice, the name of a copyright holder - shall not be used in advertising or otherwise to promote the sale, - use or other dealings in these Data Files or Software without prior - written authorization of the copyright holder. + NOTICE TO USER: Carefully read the following legal agreement. BY + DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING DATA FILES, AND/OR + SOFTWARE, YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE + TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT + DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. - --------------------- + Permission is hereby granted, free of charge, to any person obtaining a + copy of data files and any associated documentation (the "Data Files") or + software and any associated documentation (the "Software") to deal in the + Data Files or Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, and/or sell + copies of the Data Files or Software, and to permit persons to whom the + Data Files or Software are furnished to do so, provided that either (a) + this copyright and permission notice appear with all copies of the Data + Files or Software, or (b) this copyright and permission notice appear in + associated Documentation. + + THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY + KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF + THIRD PARTY RIGHTS. + + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE + BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, + OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA + FILES OR SOFTWARE. + + Except as contained in this notice, the name of a copyright holder shall + not be used in advertising or otherwise to promote the sale, use or other + dealings in these Data Files or Software without prior written + authorization of the copyright holder. + + ---------------------------------------------------------------------- Third-Party Software Licenses @@ -158,7 +180,9 @@ The externally maintained libraries used by Node.js are: terms for licensed third-party software components included within ICU libraries. - 1. ICU License - ICU 1.8.1 to ICU 57.1 + ---------------------------------------------------------------------- + + ICU License - ICU 1.8.1 to ICU 57.1 COPYRIGHT AND PERMISSION NOTICE @@ -193,7 +217,9 @@ The externally maintained libraries used by Node.js are: All trademarks and registered trademarks mentioned herein are the property of their respective owners. - 2. Chinese/Japanese Word Break Dictionary Data (cjdict.txt) + ---------------------------------------------------------------------- + + Chinese/Japanese Word Break Dictionary Data (cjdict.txt) # The Google Chrome software developed by Google is licensed under # the BSD license. Other software included in this distribution is @@ -397,33 +423,33 @@ The externally maintained libraries used by Node.js are: # # ---------------COPYING.ipadic-----END---------------------------------- - 3. Lao Word Break Dictionary Data (laodict.txt) + ---------------------------------------------------------------------- - # Copyright (c) 2013 International Business Machines Corporation - # and others. All Rights Reserved. + Lao Word Break Dictionary Data (laodict.txt) + + # Copyright (C) 2016 and later: Unicode, Inc. and others. + # License & terms of use: http://www.unicode.org/copyright.html + # Copyright (c) 2015 International Business Machines Corporation + # and others. All Rights Reserved. # - # Project: http://code.google.com/p/lao-dictionary/ - # Dictionary: http://lao-dictionary.googlecode.com/git/Lao-Dictionary.txt - # License: http://lao-dictionary.googlecode.com/git/Lao-Dictionary-LICENSE.txt - # (copied below) + # Project: https://github.com/rober42539/lao-dictionary + # Dictionary: https://github.com/rober42539/lao-dictionary/laodict.txt + # License: https://github.com/rober42539/lao-dictionary/LICENSE.txt + # (copied below) # - # This file is derived from the above dictionary, with slight - # modifications. + # This file is derived from the above dictionary version of Nov 22, 2020 # ---------------------------------------------------------------------- # Copyright (C) 2013 Brian Eugene Wilson, Robert Martin Campbell. # All rights reserved. # # Redistribution and use in source and binary forms, with or without - # modification, - # are permitted provided that the following conditions are met: - # - # - # Redistributions of source code must retain the above copyright notice, this - # list of conditions and the following disclaimer. Redistributions in - # binary form must reproduce the above copyright notice, this list of - # conditions and the following disclaimer in the documentation and/or - # other materials provided with the distribution. + # modification, are permitted provided that the following conditions are met: # + # Redistributions of source code must retain the above copyright notice, this + # list of conditions and the following disclaimer. Redistributions in binary + # form must reproduce the above copyright notice, this list of conditions and + # the following disclaimer in the documentation and/or other materials + # provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT @@ -439,7 +465,9 @@ The externally maintained libraries used by Node.js are: # OF THE POSSIBILITY OF SUCH DAMAGE. # -------------------------------------------------------------------------- - 4. Burmese Word Break Dictionary Data (burmesedict.txt) + ---------------------------------------------------------------------- + + Burmese Word Break Dictionary Data (burmesedict.txt) # Copyright (c) 2014 International Business Machines Corporation # and others. All Rights Reserved. @@ -479,7 +507,9 @@ The externally maintained libraries used by Node.js are: # SUCH DAMAGE. # -------------------------------------------------------------------------- - 5. Time Zone Database + ---------------------------------------------------------------------- + + Time Zone Database ICU uses the public domain data and code derived from Time Zone Database for its time zone support. The ownership of the TZ database @@ -502,7 +532,9 @@ The externally maintained libraries used by Node.js are: # making a contribution to the database or code waives all rights to # future claims in that contribution or in the TZ Database. - 6. Google double-conversion + ---------------------------------------------------------------------- + + Google double-conversion Copyright 2006-2011, the V8 project authors. All rights reserved. Redistribution and use in source and binary forms, with or without @@ -530,13 +562,87 @@ The externally maintained libraries used by Node.js are: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ---------------------------------------------------------------------- + + File: aclocal.m4 (only for ICU4C) + Section: pkg.m4 - Macros to locate and utilise pkg-config. + + Copyright © 2004 Scott James Remnant . + Copyright © 2012-2015 Dan Nicholson + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + 02111-1307, USA. + + As a special exception to the GNU General Public License, if you + distribute this file as part of a program that contains a + configuration script generated by Autoconf, you may include it under + the same distribution terms that you use for the rest of that + program. + + (The condition for the exception is fulfilled because + ICU4C includes a configuration script generated by Autoconf, + namely the `configure` script.) + + ---------------------------------------------------------------------- + + File: config.guess (only for ICU4C) + + This file is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, see . + + As a special exception to the GNU General Public License, if you + distribute this file as part of a program that contains a + configuration script generated by Autoconf, you may include it under + the same distribution terms that you use for the rest of that + program. This Exception is an additional permission under section 7 + of the GNU General Public License, version 3 ("GPLv3"). + + (The condition for the exception is fulfilled because + ICU4C includes a configuration script generated by Autoconf, + namely the `configure` script.) + + ---------------------------------------------------------------------- + + File: install-sh (only for ICU4C) + + Copyright 1991 by the Massachusetts Institute of Technology + + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of M.I.T. not be used in advertising or + publicity pertaining to distribution of the software without specific, + written prior permission. M.I.T. makes no representations about the + suitability of this software for any purpose. It is provided "as is" + without express or implied warranty. """ - libuv, located at deps/uv, is licensed as follows: """ - libuv is licensed for use as follows: - - ==== Copyright (c) 2015-present libuv project contributors. Permission is hereby granted, free of charge, to any person obtaining a copy @@ -556,8 +662,6 @@ The externally maintained libraries used by Node.js are: LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ==== - This license applies to parts of libuv originating from the https://github.com/joyent/libuv repository: @@ -594,16 +698,6 @@ The externally maintained libraries used by Node.js are: - inet_pton and inet_ntop implementations, contained in src/inet.c, are copyright the Internet Systems Consortium, Inc., and licensed under the ISC license. - - - stdint-msvc2008.h (from msinttypes), copyright Alexander Chemeris. Three - clause BSD license. - - - pthread-fixes.c, copyright Google Inc. and Sony Mobile Communications AB. - Three clause BSD license. - - - android-ifaddrs.h, android-ifaddrs.c, copyright Berkeley Software Design - Inc, Kenneth MacKay and Emergya (Cloud4all, FP7/2007-2013, grant agreement - n° 289016). Three clause BSD license. """ - llhttp, located at deps/llhttp, is licensed as follows: @@ -632,58 +726,460 @@ The externally maintained libraries used by Node.js are: USE OR OTHER DEALINGS IN THE SOFTWARE. """ -- OpenSSL, located at deps/openssl, is licensed as follows: +- corepack, located at deps/corepack, is licensed as follows: """ - Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved. + **Copyright © Corepack contributors** - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- undici, located at deps/undici, is licensed as follows: + """ + MIT License + + Copyright (c) Matteo Collina and Undici contributors + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + """ + +- postject, located at test/fixtures/postject-copy, is licensed as follows: + """ + Postject is licensed for use as follows: + + """ + MIT License + + Copyright (c) 2022 Postman, Inc + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + """ + + The Postject license applies to all parts of Postject that are not externally + maintained libraries. + + The externally maintained libraries used by Postject are: + + - LIEF, located at vendor/LIEF, is licensed as follows: + """ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2017 - 2022 R. Thomas + Copyright 2017 - 2022 Quarkslab + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + """ + """ - 3. All advertising materials mentioning features or use of this - software must display the following acknowledgment: - "This product includes software developed by the OpenSSL Project - for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - - 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - endorse or promote products derived from this software without - prior written permission. For written permission, please contact - openssl-core@openssl.org. - - 5. Products derived from this software may not be called "OpenSSL" - nor may "OpenSSL" appear in their names without prior written - permission of the OpenSSL Project. - - 6. Redistributions of any form whatsoever must retain the following - acknowledgment: - "This product includes software developed by the OpenSSL Project - for use in the OpenSSL Toolkit (http://www.openssl.org/)" - - THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - OF THE POSSIBILITY OF SUCH DAMAGE. - ==================================================================== - - This product includes cryptographic software written by Eric Young - (eay@cryptsoft.com). This product includes software written by Tim - Hudson (tjh@cryptsoft.com). +- OpenSSL, located at deps/openssl, is licensed as follows: + """ + Apache License + Version 2.0, January 2004 + https://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS """ - Punycode.js, located at lib/punycode.js, is licensed as follows: @@ -729,8 +1225,7 @@ The externally maintained libraries used by Node.js are: - Strongtalk assembler, the basis of the files assembler-arm-inl.h, assembler-arm.cc, assembler-arm.h, assembler-ia32-inl.h, assembler-ia32.cc, assembler-ia32.h, assembler-x64-inl.h, - assembler-x64.cc, assembler-x64.h, assembler-mips-inl.h, - assembler-mips.cc, assembler-mips.h, assembler.cc and assembler.h. + assembler-x64.cc, assembler-x64.h, assembler.cc and assembler.h. This code is copyrighted by Sun Microsystems Inc. and released under a 3-clause BSD license. @@ -790,9 +1285,9 @@ The externally maintained libraries used by Node.js are: - zlib, located at deps/zlib, is licensed as follows: """ zlib.h -- interface of the 'zlib' general purpose compression library - version 1.2.11, January 15th, 2017 + version 1.3.0.1, August xxth, 2023 - Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + Copyright (C) 1995-2023 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -814,6 +1309,274 @@ The externally maintained libraries used by Node.js are: jloup@gzip.org madler@alumni.caltech.edu """ +- simdjson, located at deps/simdjson, is licensed as follows: + """ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2018-2023 The simdjson authors + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + """ + +- simdutf, located at deps/simdutf, is licensed as follows: + """ + Copyright 2021 The simdutf authors + + Permission is hereby granted, free of charge, to any person obtaining a copy of + this software and associated documentation files (the "Software"), to deal in + the Software without restriction, including without limitation the rights to + use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + the Software, and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- ada, located at deps/ada, is licensed as follows: + """ + Copyright 2023 Yagiz Nizipli and Daniel Lemire + + Permission is hereby granted, free of charge, to any person obtaining a copy of + this software and associated documentation files (the "Software"), to deal in + the Software without restriction, including without limitation the rights to + use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + the Software, and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- minimatch, located at deps/minimatch, is licensed as follows: + """ + The ISC License + + Copyright (c) 2011-2023 Isaac Z. Schlueter and Contributors + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR + IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + """ + - npm, located at deps/npm, is licensed as follows: """ The npm application @@ -1045,6 +1808,7 @@ The externally maintained libraries used by Node.js are: - GYP, located at tools/gyp, is licensed as follows: """ + Copyright (c) 2020 Node.js contributors. All rights reserved. Copyright (c) 2009 Google Inc. All rights reserved. Redistribution and use in source and binary forms, with or without @@ -1208,9 +1972,38 @@ The externally maintained libraries used by Node.js are: OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. """ +- gypi_to_gn.py, located at tools/gypi_to_gn.py, is licensed as follows: + """ + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + - ESLint, located at tools/node_modules/eslint, is licensed as follows: """ - Copyright JS Foundation and other contributors, https://js.foundation + Copyright OpenJS Foundation and other contributors, Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -1231,33 +2024,7 @@ The externally maintained libraries used by Node.js are: THE SOFTWARE. """ -- babel-eslint, located at tools/node_modules/babel-eslint, is licensed as follows: - """ - Copyright (c) 2014-2016 Sebastian McKenzie - - MIT License - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- gtest, located at test/cctest/gtest, is licensed as follows: +- gtest, located at deps/googletest, is licensed as follows: """ Copyright 2008, Google Inc. All rights reserved. @@ -1316,29 +2083,6 @@ The externally maintained libraries used by Node.js are: WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ -- node-inspect, located at deps/node-inspect, is licensed as follows: - """ - Copyright Node.js contributors. All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to - deal in the Software without restriction, including without limitation the - rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - IN THE SOFTWARE. - """ - - large_pages, located at src/large_pages, is licensed as follows: """ Copyright (C) 2018 Intel Corporation @@ -1355,7 +2099,7 @@ The externally maintained libraries used by Node.js are: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE @@ -1448,6 +2192,39 @@ The externally maintained libraries used by Node.js are: THE POSSIBILITY OF SUCH DAMAGE. """ +- highlight.js, located at doc/api_assets/highlight.pack.js, is licensed as follows: + """ + BSD 3-Clause License + + Copyright (c) 2006, Ivan Sagalaev. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + - node-heapdump, located at src/heap_utils.cc, is licensed as follows: """ ISC License @@ -1527,4 +2304,107 @@ The externally maintained libraries used by Node.js are: LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- ngtcp2, located at deps/ngtcp2/ngtcp2/, is licensed as follows: + """ + The MIT License + + Copyright (c) 2016 ngtcp2 contributors + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- nghttp3, located at deps/ngtcp2/nghttp3/, is licensed as follows: + """ + The MIT License + + Copyright (c) 2019 nghttp3 contributors + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- node-fs-extra, located at lib/internal/fs/cp, is licensed as follows: + """ + (The MIT License) + + Copyright (c) 2011-2017 JP Richardson + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files + (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS + OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- base64, located at deps/base64/base64/, is licensed as follows: + """ + Copyright (c) 2005-2007, Nick Galbreath + Copyright (c) 2015-2018, Wojciech Muła + Copyright (c) 2016-2017, Matthieu Darbois + Copyright (c) 2013-2022, Alfred Klomp + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + - Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. """ \ No newline at end of file diff --git a/Licenses/polyfills-for-old-dot-net-license.txt b/Licenses/polyfills-for-old-dot-net-license.txt index fab73c68..3598e8b2 100644 --- a/Licenses/polyfills-for-old-dot-net-license.txt +++ b/Licenses/polyfills-for-old-dot-net-license.txt @@ -1,3 +1,5 @@ + Copyright (c) 2018-2024 Andrey Taritsyn - http://www.taritsyn.ru + Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -178,7 +180,7 @@ APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" + boilerplate notice, with the fields enclosed by brackets "{}" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a @@ -186,7 +188,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright (c) 2018 Andrey Taritsyn - http://www.taritsyn.ru + Copyright {yyyy} {name of copyright owner} Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -198,4 +200,4 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and - limitations under the License. + limitations under the License. \ No newline at end of file diff --git a/README.md b/README.md index d4829c96..f94e0e9b 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ JavaScript Engine Switcher [![NuGet version](http://img.shields.io/nuget/v/JavaScriptEngineSwitcher.Core.svg)](https://www.nuget.org/packages/JavaScriptEngineSwitcher.Core/) [![Download count](https://img.shields.io/nuget/dt/JavaScriptEngineSwitcher.Core.svg)](https://www.nuget.org/packages/JavaScriptEngineSwitcher.Core/) ========================== -JavaScript Engine Switcher determines unified interface for access to the basic features of popular JavaScript engines ([ChakraCore](https://github.com/chakra-core/ChakraCore), [Jint](https://github.com/sebastienros/jint), [Jurassic](https://github.com/paulbartrum/jurassic), [MSIE JavaScript Engine for .NET](https://github.com/Taritsyn/MsieJavaScriptEngine), [NiL.JS](https://github.com/nilproject/NiL.JS), [Jering.Javascript.NodeJS](https://github.com/JeringTech/Javascript.NodeJS), [Microsoft ClearScript.V8](https://github.com/Microsoft/ClearScript), [VroomJs](https://github.com/pauldotknopf/vroomjs-core) and [YantraJS](https://yantrajs.com)). +JavaScript Engine Switcher determines unified interface for access to the basic features of popular JavaScript engines ([ChakraCore](https://github.com/chakra-core/ChakraCore), [Jint](https://github.com/sebastienros/jint), [Jurassic](https://github.com/paulbartrum/jurassic), [MSIE JavaScript Engine for .NET](https://github.com/Taritsyn/MsieJavaScriptEngine), [NiL.JS](https://github.com/nilproject/NiL.JS), [Jering.Javascript.NodeJS](https://github.com/JeringTech/Javascript.NodeJS), [Microsoft ClearScript.V8](https://github.com/Microsoft/ClearScript), [VroomJs](https://github.com/pauldotknopf/vroomjs-core) and [YantraJS](https://github.com/yantrajs/yantra)). This library allows you to quickly and easily switch to using of another JavaScript engine. The supported .NET types are as follows: @@ -27,12 +27,12 @@ This library can be installed through NuGet: * [Windows (ARM64)](http://nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64) * [Linux (x64)](http://nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64) * [OS X (x64)](http://nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64) - * [JS Engine Switcher: Jint](http://nuget.org/packages/JavaScriptEngineSwitcher.Jint) (supports .NET Framework 4.6.2, .NET Standard 2.0, .NET Standard 2.1, .NET 6 and .NET 8) + * [JS Engine Switcher: Jint](http://nuget.org/packages/JavaScriptEngineSwitcher.Jint) (supports .NET Framework 4.6.2, .NET Standard 2.0, .NET Standard 2.1 and .NET 8) * [JS Engine Switcher: Jurassic](http://nuget.org/packages/JavaScriptEngineSwitcher.Jurassic) (supports .NET Framework 4.0 Client, .NET Framework 4.5 and .NET Standard 2.0) * [JS Engine Switcher: MSIE](http://nuget.org/packages/JavaScriptEngineSwitcher.Msie) (supports .NET Framework 4.0 Client, .NET Framework 4.5, .NET Standard 1.3 and .NET Standard 2.0) - * [JS Engine Switcher: NiL](http://nuget.org/packages/JavaScriptEngineSwitcher.NiL) (supports .NET Framework 4.6.1, .NET Framework 4.8, .NET Core App 3.1, .NET 5.0, .NET 6 and .NET 7) + * [JS Engine Switcher: NiL](http://nuget.org/packages/JavaScriptEngineSwitcher.NiL) (supports .NET Framework 4.6.1, .NET Framework 4.8, .NET Core App 3.1, .NET 6, .NET 8 and .NET 9) * [JS Engine Switcher: Node](http://nuget.org/packages/JavaScriptEngineSwitcher.Node) (supports .NET Framework 4.6.1, .NET Standard 2.0, .NET Core App 3.1, .NET 5.0, .NET 6 and .NET 7) - * [JS Engine Switcher: V8](http://nuget.org/packages/JavaScriptEngineSwitcher.V8) (supports .NET Framework 4.5, .NET Framework 4.7.1, .NET Standard 2.1, .NET Core App 3.1 and .NET 5.0) + * [JS Engine Switcher: V8](http://nuget.org/packages/JavaScriptEngineSwitcher.V8) (supports .NET Framework 4.6.2, .NET Framework 4.7.1, .NET Standard 2.1, .NET Core App 3.1 and .NET 5.0) * [Microsoft ClearScript.V8 for Windows (x86)](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-x86) * [Microsoft ClearScript.V8 for Windows (x64)](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-x64) * [Microsoft ClearScript.V8 for Windows (ARM64)](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-arm64) diff --git a/build/common.props b/build/common.props index 1c35b9d0..bd3a2ae5 100644 --- a/build/common.props +++ b/build/common.props @@ -1,6 +1,6 @@ - Copyright © 2013-2024 Andrey Taritsyn + Copyright © 2013-2025 Andrey Taritsyn false false diff --git a/build/initialize-standard-nuspec-properties.targets b/build/initialize-standard-nuspec-properties.targets index 3ea04ec2..5cc44de4 100644 --- a/build/initialize-standard-nuspec-properties.targets +++ b/build/initialize-standard-nuspec-properties.targets @@ -33,6 +33,16 @@ $(Title) + <_ReadmeElement/> + <_ReadmeElement Condition="'$(PackageReadmeFile)' != ''"> + $(PackageReadmeFile) + + + <_ReadmeFileElement/> + <_ReadmeFileElement Condition="'$(PackageReadmeFile)' != ''"> + + + <_LicenseElement/> <_LicenseElement Condition="'$(PackageLicenseExpression)' != ''"> $(PackageLicenseExpression) @@ -42,9 +52,12 @@ <_LicenseFileElement/> - <_LicenseFileElement Condition="'$(PackageLicenseFile)' != ''"> + <_LicenseFileElement Condition="'$(PackageLicenseFullPath)' != '' and '$(PackageLicenseFile)' != ''"> + <_LicenseFileElement Condition="'$(PackageLicenseFullPath)' != '' and '$(PackageLicenseFile)' == ''"> + + <_TagsElement/> <_TagsElement Condition="'$(PackageTags)' != ''"> @@ -52,7 +65,7 @@ <_IconUrlElement/> - <_IconUrlElement Condition="'$(PackageIcon)' == '' and '$(PackageIconUrl)' != ''"> + <_IconUrlElement Condition="'$(PackageIconUrl)' != ''"> $(PackageIconUrl) @@ -88,27 +101,30 @@ <_CommonMetadataElements> $(PackageId) - $(_TitleElement) - $(PackageDescription) $(PackageVersion) + $(_TitleElement) $(Authors) - $(PackageRequireLicenseAcceptance) - $(_TagsElement) $(_LicenseElement) + $(PackageRequireLicenseAcceptance) $(_IconElement) + $(_ReadmeElement) + $(PackageProjectUrl) $(_IconUrlElement) + $(PackageDescription) $(_ReleaseNotesElement) - $(PackageProjectUrl) $(Copyright) + $(_TagsElement) + $(_DevelopmentDependencyElement) $(_ServiceableElement) - $(_NeutralLanguageElement) <_CommonFileElements> + $(CommonFileElements) $(_IconFileElement) $(_LicenseFileElement) + $(_ReadmeFileElement) diff --git a/build/nuget-common.props b/build/nuget-common.props index 7119e5ac..e36818c8 100644 --- a/build/nuget-common.props +++ b/build/nuget-common.props @@ -2,9 +2,10 @@ $(Product) Andrey Taritsyn - false + PACKAGE-DESCRIPTION.md + $(PackageReadmeFile) JavaScriptEngineSwitcher;JavaScript;ECMAScript - LICENSE.txt + Apache-2.0 ../../LICENSE.txt icon.png https://github.com/Taritsyn/JavaScriptEngineSwitcher diff --git a/build/nuget-for-dotnet-lib.props b/build/nuget-for-dotnet-lib.props index fd1ac079..45e6e499 100644 --- a/build/nuget-for-dotnet-lib.props +++ b/build/nuget-for-dotnet-lib.props @@ -12,15 +12,10 @@ - - $(PackageLicenseFile) - true - false - - - $(PackageIcon) - true - false - + + + + + \ No newline at end of file diff --git a/build/nuget-for-native-lib.props b/build/nuget-for-native-lib.props index e2519fd6..396aa563 100644 --- a/build/nuget-for-native-lib.props +++ b/build/nuget-for-native-lib.props @@ -4,5 +4,8 @@ false $(MSBuildProjectName).nuspec + + + \ No newline at end of file diff --git a/global.json b/global.json index d54915e8..66690f83 100644 --- a/global.json +++ b/global.json @@ -1,5 +1,6 @@ { "sdk": { - "version": "8.0.101" + "version": "9.0.0", + "rollForward": "latestFeature" } } diff --git a/lib/ChakraCore/runtimes/linux-x64/native/libChakraCore.so b/lib/ChakraCore/runtimes/linux-x64/native/libChakraCore.so index 64244367..8bb7f46b 100644 Binary files a/lib/ChakraCore/runtimes/linux-x64/native/libChakraCore.so and b/lib/ChakraCore/runtimes/linux-x64/native/libChakraCore.so differ diff --git a/lib/ChakraCore/runtimes/osx-x64/native/libChakraCore.dylib b/lib/ChakraCore/runtimes/osx-x64/native/libChakraCore.dylib index 629c1a68..f0c98abf 100644 Binary files a/lib/ChakraCore/runtimes/osx-x64/native/libChakraCore.dylib and b/lib/ChakraCore/runtimes/osx-x64/native/libChakraCore.dylib differ diff --git a/lib/ChakraCore/runtimes/win-arm/native/ChakraCore.dll b/lib/ChakraCore/runtimes/win-arm/native/ChakraCore.dll index f28c18fb..9a940729 100644 Binary files a/lib/ChakraCore/runtimes/win-arm/native/ChakraCore.dll and b/lib/ChakraCore/runtimes/win-arm/native/ChakraCore.dll differ diff --git a/lib/ChakraCore/runtimes/win-arm64/native/ChakraCore.dll b/lib/ChakraCore/runtimes/win-arm64/native/ChakraCore.dll index 20eb3acc..4f16911b 100644 Binary files a/lib/ChakraCore/runtimes/win-arm64/native/ChakraCore.dll and b/lib/ChakraCore/runtimes/win-arm64/native/ChakraCore.dll differ diff --git a/lib/ChakraCore/runtimes/win-x64/native/ChakraCore.dll b/lib/ChakraCore/runtimes/win-x64/native/ChakraCore.dll index 555733a1..8711905f 100644 Binary files a/lib/ChakraCore/runtimes/win-x64/native/ChakraCore.dll and b/lib/ChakraCore/runtimes/win-x64/native/ChakraCore.dll differ diff --git a/lib/ChakraCore/runtimes/win-x86/native/ChakraCore.dll b/lib/ChakraCore/runtimes/win-x86/native/ChakraCore.dll index a9445229..fa05c533 100644 Binary files a/lib/ChakraCore/runtimes/win-x86/native/ChakraCore.dll and b/lib/ChakraCore/runtimes/win-x86/native/ChakraCore.dll differ diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4.csproj index ed600e9c..a8b2ba33 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4.csproj @@ -1,9 +1,9 @@  - - - - + + + + Debug @@ -218,9 +218,9 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - + + + + \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/Properties/AssemblyInfo.cs b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/Properties/AssemblyInfo.cs index 75206584..2b4ecedb 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/Properties/AssemblyInfo.cs +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/Properties/AssemblyInfo.cs @@ -6,12 +6,12 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("JS Engine Switcher: Sample ASP.NET MVC 4 Site")] -[assembly: AssemblyCopyright("Copyright © 2013-2024 Andrey Taritsyn")] +[assembly: AssemblyCopyright("Copyright © 2013-2025 Andrey Taritsyn")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] [assembly: ComVisible(false)] [assembly: Guid("39487053-b459-4433-ae93-e00affc653c6")] -[assembly: AssemblyVersion("3.24.0.0")] -[assembly: AssemblyFileVersion("3.24.0.0")] \ No newline at end of file +[assembly: AssemblyVersion("3.30.2.0")] +[assembly: AssemblyFileVersion("3.30.2.0")] \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/package.json index 91d9f2ba..98d601d7 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/package.json @@ -1,7 +1,7 @@ { "name": "jsengineswitcher.sample.aspnet4.mvc4", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/packages.config b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/packages.config index 0244496a..6b274db9 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/packages.config +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNet4.Mvc4/packages.config @@ -1,9 +1,9 @@  - - - - + + + + diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure.csproj index 4ca06c3e..bc604ae0 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure/JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure.csproj @@ -2,11 +2,13 @@ JS Engine Switcher: Infrastructure for ASP.NET Core Samples - 3.24.0 - net451;netstandard1.6;netstandard2.0;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0 + 3.30.2 + net451;netstandard1.6;netstandard2.0;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0 1.6.0 Library true + $(NoWarn);NETSDK1215;NU1902;NU1903;NU1904 + false false false @@ -32,15 +34,19 @@ - + - + - + + + + + diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1.csproj index 4e072d90..4b17aa4f 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1.csproj @@ -2,12 +2,12 @@ JS Engine Switcher: Sample ASP.NET Core 1.0 MVC 1 Site - 3.24.0 + 3.30.2 netcoreapp1.0 1.0.16 Exe false - $(NoWarn);NU1903 + $(NoWarn);NU1903;NU1904 true true false diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/package.json index 44c7f9c2..1a5c154c 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1.Mvc1/package.json @@ -1,7 +1,7 @@ { "name": "jsengineswitcher.sample.aspnetcore1.mvc1", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1.csproj index 90c55a6f..3b5df99e 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1.csproj @@ -2,10 +2,11 @@ JS Engine Switcher: Sample ASP.NET Core 1.0 Full MVC 1 Site - 3.24.0 + 3.30.2 net451 Exe true + $(NoWarn);NU1903;NU1904 true true false @@ -30,9 +31,6 @@ - - - @@ -41,7 +39,6 @@ - diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/Startup.cs b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/Startup.cs index aea58611..970f4b07 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/Startup.cs +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/Startup.cs @@ -11,7 +11,6 @@ using JavaScriptEngineSwitcher.Jurassic; using JavaScriptEngineSwitcher.Msie; using JavaScriptEngineSwitcher.Sample.Logic.Services; -using JavaScriptEngineSwitcher.V8; using JavaScriptEngineSwitcher.Vroom; namespace JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1 @@ -63,7 +62,6 @@ public void ConfigureServices(IServiceCollection services) { options.EngineMode = JsEngineMode.ChakraIeJsRt; }) - .AddV8() .AddVroom() ; diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/package.json index a840772c..fd93a998 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore1Full.Mvc1/package.json @@ -1,7 +1,7 @@ { "name": "jsengineswitcher.sample.aspnetcore1full.mvc1", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21.csproj index 2c501818..4b274662 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21.csproj @@ -2,11 +2,12 @@ JS Engine Switcher: Sample ASP.NET Core 2.1 MVC 2.1 Site - 3.24.0 + 3.30.2 netcoreapp2.1 Exe true - $(NoWarn);NU1902;NU1903 + $(NoWarn);NU1902;NU1903;NU1904 + true true true false diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/package.json index d2e2a5f6..1bbd9417 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore21.Mvc21/package.json @@ -1,7 +1,7 @@ { "name": "jsengineswitcher.sample.aspnetcore21.mvc21", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31.csproj index 4cba5492..9f646328 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31.csproj @@ -2,7 +2,7 @@ JS Engine Switcher: Sample ASP.NET Core 3.1 MVC 3.1 Site - 3.24.0 + 3.30.2 netcoreapp3.1 Exe true diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/package.json index 2640cc6d..f8c44f3f 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore31.Mvc31/package.json @@ -1,7 +1,7 @@ { "name": "jsengineswitcher.sample.aspnetcore31.mvc31", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5.csproj index 42fd9fb6..bc24cfc2 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5.csproj @@ -2,7 +2,7 @@ JS Engine Switcher: Sample ASP.NET Core 5.0 MVC 5 Site - 3.24.0 + 3.30.2 net5.0 Exe true diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/package.json index 0b0a3343..9de2b113 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore5.Mvc5/package.json @@ -1,7 +1,7 @@ { "name": "javascriptengineswitcher.sample.aspnetcore5.mvc5", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6.csproj index df75c2ae..ec5987c2 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6.csproj @@ -2,7 +2,7 @@ JS Engine Switcher: Sample ASP.NET Core 6.0 MVC 6 Site - 3.24.0 + 3.30.2 net6.0 enable Exe diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/package.json index 02f4a8d0..0e9ea7ee 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore6.Mvc6/package.json @@ -1,7 +1,7 @@ { "name": "javascriptengineswitcher.sample.aspnetcore6.mvc6", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7.csproj index 0e532758..b078a14b 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7.csproj @@ -2,7 +2,7 @@ JS Engine Switcher: Sample ASP.NET Core 7.0 MVC 7 Site - 3.24.0 + 3.30.2 net7.0 enable Exe @@ -10,6 +10,7 @@ true true false + false diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/package.json index 95974719..c1def3a0 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore7.Mvc7/package.json @@ -1,7 +1,7 @@ { "name": "javascriptengineswitcher.sample.aspnetcore7.mvc7", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8.csproj index 780e3085..e9e2c31e 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8.csproj +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8.csproj @@ -2,7 +2,7 @@ JS Engine Switcher: Sample ASP.NET Core 8.0 MVC 8 Site - 3.24.0 + 3.30.2 net8.0 enable Exe diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/package.json index ca50853f..516a5996 100644 --- a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/package.json +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore8.Mvc8/package.json @@ -1,7 +1,7 @@ { "name": "javascriptengineswitcher.sample.aspnetcore8.mvc8", "private": true, - "version": "3.24.0", + "version": "3.30.2", "devDependencies": { "gulp": "4.0.2", "del": "5.1.0", diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/.bowerrc b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/.bowerrc new file mode 100644 index 00000000..ea81a597 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/.bowerrc @@ -0,0 +1,4 @@ +{ + "registry": "https://registry.bower.io", + "directory": "wwwroot/lib" +} diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Controllers/HomeController.cs b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Controllers/HomeController.cs new file mode 100644 index 00000000..57f376ff --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Controllers/HomeController.cs @@ -0,0 +1,83 @@ +using System.Diagnostics; +using System.Threading.Tasks; + +using Microsoft.AspNetCore.Hosting; +using Microsoft.AspNetCore.Html; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Configuration; + +using JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9.Models; +using JavaScriptEngineSwitcher.Sample.Logic.Models; +using JavaScriptEngineSwitcher.Sample.Logic.Services; + +namespace JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9.Controllers +{ + public class HomeController : Controller + { + private readonly FileContentService _fileContentService; + private readonly JsEvaluationService _jsEvaluationService; + + + public HomeController( + IConfigurationRoot configuration, + IWebHostEnvironment hostingEnvironment, + JsEvaluationService jsEvaluationService) + { + string textContentDirectoryPath = configuration + .GetSection("jsengineswitcher") + .GetSection("Samples")["TextContentDirectoryPath"] + ; + + _fileContentService = new FileContentService(textContentDirectoryPath, hostingEnvironment); + _jsEvaluationService = jsEvaluationService; + } + + + [ResponseCache(CacheProfileName = "CacheCompressedContent5Minutes")] + public IActionResult Index() + { + ViewBag.Body = new HtmlString(_fileContentService.GetFileContent("index.html")); + + return View(); + } + + [HttpGet] + [ResponseCache(CacheProfileName = "CacheCompressedContent5Minutes")] + public IActionResult Demo() + { + var model = _jsEvaluationService.GetInitializationData(); + + return View(model); + } + + [HttpPost] + public async Task Demo(JsEvaluationViewModel editedModel) + { + var model = _jsEvaluationService.GetInitializationData(); + await TryUpdateModelAsync(model, string.Empty, m => m.EngineName, m=> m.Expression); + + if (ModelState.IsValid) + { + model = _jsEvaluationService.Evaluate(model); + + ModelState.Clear(); + } + + return View(model); + } + + [ResponseCache(CacheProfileName = "CacheCompressedContent5Minutes")] + public IActionResult Contact() + { + ViewBag.Body = new HtmlString(_fileContentService.GetFileContent("contact.html")); + + return View(); + } + + [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] + public IActionResult Error() + { + return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); + } + } +} \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9.csproj b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9.csproj new file mode 100644 index 00000000..c6b0d86f --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9.csproj @@ -0,0 +1,65 @@ + + + + JS Engine Switcher: Sample ASP.NET Core 9.0 MVC 9 Site + 3.30.2 + net9.0 + enable + Exe + true + true + true + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Models/ErrorViewModel.cs b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Models/ErrorViewModel.cs new file mode 100644 index 00000000..20cc9827 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Models/ErrorViewModel.cs @@ -0,0 +1,9 @@ +namespace JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9.Models +{ + public class ErrorViewModel + { + public string RequestId { get; set; } + + public bool ShowRequestId => !string.IsNullOrEmpty(RequestId); + } +} \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Program.cs b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Program.cs new file mode 100644 index 00000000..6319f9e1 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Program.cs @@ -0,0 +1,100 @@ +using Jering.Javascript.NodeJS; +using Microsoft.AspNetCore.Mvc; + +using JavaScriptEngineSwitcher.ChakraCore; +using JavaScriptEngineSwitcher.Extensions.MsDependencyInjection; +using JavaScriptEngineSwitcher.Jint; +using JavaScriptEngineSwitcher.Jurassic; +using JavaScriptEngineSwitcher.Msie; +using JavaScriptEngineSwitcher.NiL; +using JavaScriptEngineSwitcher.Node; +using JavaScriptEngineSwitcher.Sample.Logic.Services; +using JavaScriptEngineSwitcher.V8; +using JavaScriptEngineSwitcher.Vroom; +using JavaScriptEngineSwitcher.Yantra; + +var builder = WebApplication.CreateBuilder(args); +var env = builder.Environment; +var configuration = new ConfigurationBuilder() + .SetBasePath(env.ContentRootPath) + .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) + .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true) + .AddEnvironmentVariables() + .Build() + ; + +#region Configure services + +IServiceCollection services = builder.Services; + +services.AddSingleton(configuration); + +// Add Jering Node.js service to the services container. +services.AddNodeJS(); + +// Add JavaScriptEngineSwitcher services to the services container. +services.AddJsEngineSwitcher(options => +{ + options.AllowCurrentProperty = false; + options.DefaultEngineName = ChakraCoreJsEngine.EngineName; +}) + .AddChakraCore() + .AddJint() + .AddJurassic() + .AddMsie(options => + { + options.EngineMode = JsEngineMode.ChakraIeJsRt; + }) + .AddNiL() + .AddNode(services) + .AddV8() + .AddVroom() + .AddYantra() + ; + +services.Configure(options => +{ + options.CacheProfiles.Add("CacheCompressedContent5Minutes", + new CacheProfile + { + NoStore = builder.Environment.IsDevelopment(), + Duration = 300, + Location = ResponseCacheLocation.Client, + VaryByHeader = "Accept-Encoding" + } + ); +}); + +// Add framework services. +services.AddControllersWithViews(); + +// Add JavaScriptEngineSwitcher sample services to the services container. +services.AddSingleton(); + +#endregion + +#region Configure the HTTP request pipeline + +var app = builder.Build(); + +if (app.Environment.IsDevelopment()) +{ + app.UseDeveloperExceptionPage(); +} +else +{ + app.UseExceptionHandler("/Home/Error"); +} + +app.UseRouting(); + +app.MapStaticAssets(); + +app.MapControllerRoute( + name: "default", + pattern: "{controller=Home}/{action=Index}/{id?}") + .WithStaticAssets(); + +#endregion + +app.Run(); \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Properties/launchSettings.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Properties/launchSettings.json new file mode 100644 index 00000000..a94e92ed --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Properties/launchSettings.json @@ -0,0 +1,38 @@ +{ + "$schema": "https://json.schemastore.org/launchsettings.json", + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:53687/", + "sslPort": 44308 + } + }, + "profiles": { + "http": { + "commandName": "Project", + "launchBrowser": true, + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "dotnetRunMessages": true, + "applicationUrl": "http://localhost:5220" + }, + "https": { + "commandName": "Project", + "launchBrowser": true, + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "dotnetRunMessages": true, + "applicationUrl": "https://localhost:7242;http://localhost:5220" + }, + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Contact.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Contact.cshtml new file mode 100644 index 00000000..cd9663df --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Contact.cshtml @@ -0,0 +1,23 @@ +@{ + ViewBag.Title = "Contact"; +} + +
+

@ViewBag.Title

+ @ViewBag.Body +
+ +@section Scripts { + +} \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Demo.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Demo.cshtml new file mode 100644 index 00000000..befb8f43 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Demo.cshtml @@ -0,0 +1,67 @@ +@using JavaScriptEngineSwitcher.Sample.Logic.Models +@using JavaScriptEngineSwitcher.Sample.Resources + +@model JsEvaluationViewModel + +@{ + ViewBag.Title = "Demo"; +} + +

@ViewBag.Title

+ +
+
+
+
+
+ + +
+
+ +
+ +
+ +
+
+ +
+
+ + @if (Model.Result != null) + { +
+ @if (Model.Result.Errors.Count == 0) + { +
+ + +
+ } + else + { + await Html.RenderPartialAsync("_JsEvaluationErrorList", Model.Result.Errors); + } +
+ } +
+
+
+ +@section Scripts { + + + + + + + + + +} \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Index.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Index.cshtml new file mode 100644 index 00000000..a9c2cfb1 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Home/Index.cshtml @@ -0,0 +1,8 @@ +@{ + ViewBag.Title = string.Empty; +} + +
+

Project Description

+ @ViewBag.Body +
\ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/Error.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/Error.cshtml new file mode 100644 index 00000000..b568b9f2 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/Error.cshtml @@ -0,0 +1,28 @@ +@using JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9.Models + +@model ErrorViewModel + +@{ + ViewData["Title"] = "Error"; +} + +

Error.

+

An error occurred while processing your request.

+ +@if (Model.ShowRequestId) +{ +

+ Request ID: @Model.RequestId +

+} + +

Development Mode

+

+ Swapping to Development environment will display more detailed information about the error that occurred. +

+

+ The Development environment shouldn't be enabled for deployed applications. + It can result in displaying sensitive information from exceptions to end users. + For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development + and restarting the app. +

\ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/_JsEvaluationErrorList.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/_JsEvaluationErrorList.cshtml new file mode 100644 index 00000000..9e0601d6 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/_JsEvaluationErrorList.cshtml @@ -0,0 +1,23 @@ +@using JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure.Helpers +@using JavaScriptEngineSwitcher.Sample.Logic.Models + +@model IList + +

Found @Model.Count error(s):

+
    + @foreach (var error in Model) + { +
  • + @error.EngineFullName
    + @if (error.LineNumber > 0) + { + Line @error.LineNumber, Column @error.ColumnNumber
    + } + @Html.EncodedReplace(@error.Message, "\n\r?", "
    ") + @if (!string.IsNullOrWhiteSpace(error.SourceFragment)) + { +
    @error.SourceFragment
    + } +
  • + } +
\ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/_Layout.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/_Layout.cshtml new file mode 100644 index 00000000..7ef87dce --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/Shared/_Layout.cshtml @@ -0,0 +1,106 @@ +@using JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure.TagHelpers + + + + + + + + + @if (!string.IsNullOrEmpty(ViewBag.Title)) {<text>@ViewBag.Title | </text>}JavaScriptEngineSwitcher Sample ASP.NET Core 9.0 MVC 9 Site + + + + + + + + + + + + +
+ + + + + +
+
+ @RenderBody() +
+
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + @await RenderSectionAsync("scripts", required: false) + + \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/_ViewImports.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/_ViewImports.cshtml new file mode 100644 index 00000000..dcad619c --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/_ViewImports.cshtml @@ -0,0 +1,2 @@ +@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers +@addTagHelper *, JavaScriptEngineSwitcher.Sample.AspNetCore.Infrastructure \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/_ViewStart.cshtml b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/_ViewStart.cshtml new file mode 100644 index 00000000..817a9134 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/Views/_ViewStart.cshtml @@ -0,0 +1,3 @@ +@{ + Layout = "_Layout"; +} \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/appsettings.Development.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/appsettings.Development.json new file mode 100644 index 00000000..0c208ae9 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/appsettings.Development.json @@ -0,0 +1,8 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/appsettings.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/appsettings.json new file mode 100644 index 00000000..ed44b7ae --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/appsettings.json @@ -0,0 +1,15 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*", + + "JsEngineSwitcher": { + "Samples": { + "TextContentDirectoryPath": "../SharedData/text-content" + } + } +} diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/bower.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/bower.json new file mode 100644 index 00000000..d4c9fc5e --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/bower.json @@ -0,0 +1,11 @@ +{ + "name": "jsengineswitcher.sample.aspnetcore9.mvc9", + "dependencies": { + "modernizr": "2.8.3", + "jquery-compat": "jquery#1.10.2", + "jquery": "jquery#2.0.3", + "jquery-validation": "1.13.1", + "jquery-validation-unobtrusive": "3.2.3", + "bootstrap": "3.3.0" + } +} diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/gulpfile.js b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/gulpfile.js new file mode 100644 index 00000000..0f259437 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/gulpfile.js @@ -0,0 +1,130 @@ +/*global require, exports */ +/*jshint esversion: 6 */ +const WEB_ROOT_PATH = "wwwroot"; +const BOWER_DIR_PATH = WEB_ROOT_PATH + "/lib"; +const STYLE_DIR_PATH = WEB_ROOT_PATH + '/styles'; +const SCRIPT_DIR_PATH = WEB_ROOT_PATH + '/scripts'; + +// include plug-ins +let { src, dest, series, parallel, watch } = require('gulp'); +let del = require('del'); +let sourcemaps = require('gulp-sourcemaps'); +let rename = require('gulp-rename'); +let concat = require('gulp-concat'); +let less = require('gulp-less'); +let autoprefixer = require('gulp-autoprefixer'); +let cleanCss = require('gulp-clean-css'); +let uglify = require('gulp-uglify'); + +//#region Clean +//#region Clean builded assets +function cleanBuildedStyles() { + return del([STYLE_DIR_PATH + '/build/*']); +} + +function cleanBuildedScripts() { + return del([SCRIPT_DIR_PATH + '/build/*']); +} + +let cleanBuildedAssets = parallel(cleanBuildedStyles, cleanBuildedScripts); +//#endregion +//#endregion + +//#region Build assets +//#region Build styles +let autoprefixerOptions = { + overrideBrowserslist: ['> 1%', 'last 3 versions', 'Firefox ESR', 'Opera 12.1'], + cascade: true +}; +let cssCleanOptions = { specialComments: '*' }; +let cssRenameOptions = { extname: '.min.css' }; + +function buildCommonStyles() { + return src([STYLE_DIR_PATH + '/app.less']) + .pipe(sourcemaps.init()) + .pipe(less({ + relativeUrls: true, + rootpath: '/styles/' + })) + .pipe(autoprefixer(autoprefixerOptions)) + .pipe(sourcemaps.write('./')) + .pipe(dest(STYLE_DIR_PATH + '/build')) + .pipe(sourcemaps.init({ loadMaps: true })) + .pipe(concat('common-styles.css')) + .pipe(cleanCss(cssCleanOptions)) + .pipe(rename(cssRenameOptions)) + .pipe(sourcemaps.write('./')) + .pipe(dest(STYLE_DIR_PATH + '/build')) + ; +} + +let buildStyles = buildCommonStyles; +//#endregion + +//#region Build scripts +let jsConcatOptions = { newLine: ';' }; +let jsUglifyOptions = { + output: { comments: /^!/ } +}; +let jsRenameOptions = { extname: '.min.js' }; + +function buildModernizrScripts() { + return src([BOWER_DIR_PATH + '/modernizr/modernizr.js']) + .pipe(sourcemaps.init()) + .pipe(uglify(jsUglifyOptions)) + .pipe(rename(jsRenameOptions)) + .pipe(sourcemaps.write('./')) + .pipe(dest(SCRIPT_DIR_PATH + '/build')) + ; +} + +function buildCommonScripts() { + return src([SCRIPT_DIR_PATH + '/common.js']) + .pipe(sourcemaps.init({ loadMaps: true })) + .pipe(rename({ basename: 'common-scripts' })) + .pipe(uglify(jsUglifyOptions)) + .pipe(rename(jsRenameOptions)) + .pipe(sourcemaps.write('./')) + .pipe(dest(SCRIPT_DIR_PATH + '/build')) + ; +} + +function buildEvaluationFormScripts() { + return src([BOWER_DIR_PATH + '/jquery-validation/dist/jquery.validate.js', + BOWER_DIR_PATH + '/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js', + BOWER_DIR_PATH + '/bootstrap/js/button.js', + SCRIPT_DIR_PATH + '/evaluation-form.js']) + .pipe(sourcemaps.init({ loadMaps: true })) + .pipe(concat('evaluation-form-scripts.js', jsConcatOptions)) + .pipe(uglify(jsUglifyOptions)) + .pipe(rename(jsRenameOptions)) + .pipe(sourcemaps.write('./')) + .pipe(dest(SCRIPT_DIR_PATH + '/build')) + ; +} + +let buildScripts = parallel(buildModernizrScripts, buildCommonScripts, buildEvaluationFormScripts); +//#endregion + +let buildAssets = parallel(buildStyles, buildScripts); +//#endregion + +//#region Watch assets +function watchStyles() { + return watch([STYLE_DIR_PATH + '/**/*.{less,css}', '!' + STYLE_DIR_PATH + '/build/**/*.*'], + buildStyles); +} + +function watchScripts() { + return watch([SCRIPT_DIR_PATH + '/**/*.js', '!' + SCRIPT_DIR_PATH + '/build/**/*.*'], + buildScripts); +} + +let watchAssets = parallel(watchStyles, watchScripts); +//#endregion + +// Export tasks +exports.cleanBuildedAssets = cleanBuildedAssets; +exports.buildAssets = buildAssets; +exports.watchAssets = watchAssets; +exports.default = series(cleanBuildedAssets, buildAssets); \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/package.json b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/package.json new file mode 100644 index 00000000..1f89b082 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/package.json @@ -0,0 +1,16 @@ +{ + "name": "javascriptengineswitcher.sample.aspnetcore9.mvc9", + "private": true, + "version": "3.30.2", + "devDependencies": { + "gulp": "4.0.2", + "del": "5.1.0", + "gulp-sourcemaps": "2.6.5", + "gulp-rename": "2.0.0", + "gulp-concat": "2.6.1", + "gulp-less": "4.0.1", + "gulp-autoprefixer": "7.0.1", + "gulp-clean-css": "4.2.0", + "gulp-uglify": "3.0.2" + } +} diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/0.gif b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/0.gif new file mode 100644 index 00000000..35d42e80 Binary files /dev/null and b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/0.gif differ diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/clear-text.png b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/clear-text.png new file mode 100644 index 00000000..9d217b7f Binary files /dev/null and b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/clear-text.png differ diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/icons/32x32/social-media-icons-32.png b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/icons/32x32/social-media-icons-32.png new file mode 100644 index 00000000..49aa1fe3 Binary files /dev/null and b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/icons/32x32/social-media-icons-32.png differ diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/icons/48x48/error.png b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/icons/48x48/error.png new file mode 100644 index 00000000..3d6185f7 Binary files /dev/null and b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/icons/48x48/error.png differ diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/jsengineswitcher-logo.png b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/jsengineswitcher-logo.png new file mode 100644 index 00000000..12ed97e0 Binary files /dev/null and b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/images/jsengineswitcher-logo.png differ diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/_references.js b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/_references.js new file mode 100644 index 00000000..2b54eea8 Binary files /dev/null and b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/_references.js differ diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/common.js b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/common.js new file mode 100644 index 00000000..c94bf102 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/common.js @@ -0,0 +1,29 @@ +var jsEngineSwitcher; + +(function (jsEngineSwitcher, undefined) { + "use strict"; + + jsEngineSwitcher.registerNamespace = function (namespaceString) { + var parts = namespaceString.split("."), + parent = jsEngineSwitcher, + i + ; + + if (parts[0] === "jsEngineSwitcher") { + parts = parts.slice(1); + } + + for (i = 0; i < parts.length; i += 1) { + if (typeof parent[parts[i]] === "undefined") { + parent[parts[i]] = {}; + } + parent = parent[parts[i]]; + } + + return parent; + }; + + jsEngineSwitcher.hasScrollbar = function(elem) { + return (elem.clientHeight < elem.scrollHeight); + }; +}(jsEngineSwitcher = jsEngineSwitcher || {})); \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/evaluation-form.js b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/evaluation-form.js new file mode 100644 index 00000000..da1f0199 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/scripts/evaluation-form.js @@ -0,0 +1,83 @@ +(function (jsEngineSwitcher, $, undefined) { + "use strict"; + + var $evaluationForm, + $evaluationInputField, + $evaluationInputClearButton, + $evaluateButton + ; + + $(function () { + $evaluationForm = $("form[data-form-type='evaluation-form']"); + $evaluationInputField = $(":input[data-control-type='evaluation-input-field']", $evaluationForm); + $evaluationInputClearButton = $("
"); + $evaluateButton = $(":input[data-control-type='evaluate-button']", $evaluationForm); + + $evaluationForm.on("submit", onEvaluationFormSubmitHandler); + + $evaluationInputClearButton.on("click", onEvaluationInputClearButtonClickHandler); + $evaluationInputField.parent().append($evaluationInputClearButton); + refreshEvaluationInputClearButton(); + $evaluationInputField + .on("input propertychange keydown keyup paste", onEvaluationInputFieldChangeHandler) + ; + + $evaluateButton.removeAttr("disabled"); + }); + + $(window).unload(function() { + $evaluationForm.off("submit", onEvaluationFormSubmitHandler); + + $evaluationInputClearButton + .off("click", onEvaluationInputClearButtonClickHandler) + .remove() + ; + + $evaluationInputField + .off("input propertychange keydown keyup paste", onEvaluationInputFieldChangeHandler) + ; + + $evaluationForm = null; + $evaluationInputField = null; + $evaluationInputClearButton = null; + $evaluateButton = null; + }); + + var refreshEvaluationInputClearButton = function() { + if ($.trim($evaluationInputField.val()).length > 0) { + $evaluationInputClearButton.show(); + } else { + $evaluationInputClearButton.hide(); + } + + if (jsEngineSwitcher.hasScrollbar($evaluationInputField.get(0))) { + $evaluationInputClearButton.addClass("with-scrollbar"); + } + else { + $evaluationInputClearButton.removeClass("with-scrollbar"); + } + }; + + var onEvaluationFormSubmitHandler = function () { + var $form = $(this); + if ($form.valid()) { + $evaluateButton.attr("disabled", "disabled"); + $("textarea[data-control-type='evaluation-output-field']", $form).val(''); + + return true; + } + + return false; + }; + + var onEvaluationInputFieldChangeHandler = function () { + refreshEvaluationInputClearButton(); + }; + + var onEvaluationInputClearButtonClickHandler = function() { + $evaluationInputField.val(""); + + var $button = $(this); + $button.hide(); + }; +}(jsEngineSwitcher, jQuery)); \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/app.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/app.less new file mode 100644 index 00000000..c41a9315 --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/app.less @@ -0,0 +1,71 @@ +/*! + * Bootstrap v3.3.0 (http://getbootstrap.com) + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +// Core variables and mixins +@import "bootstrap-custom-variables.less"; +@import "../lib/bootstrap/less/mixins.less"; + +// Reset +@import "../lib/bootstrap/less/normalize.less"; +//@import "../lib/bootstrap/less/print.less"; +//@import "../lib/bootstrap/less/glyphicons.less"; + +// Core CSS +@import "../lib/bootstrap/less/scaffolding.less"; +@import "../lib/bootstrap/less/type.less"; +@import "../lib/bootstrap/less/code.less"; +//@import "../lib/bootstrap/less/grid.less"; +//@import "../lib/bootstrap/less/tables.less"; +@import "../lib/bootstrap/less/forms.less"; +//@import "../lib/bootstrap/less/buttons.less"; + +// Components +//@import "../lib/bootstrap/less/component-animations.less"; +//@import "../lib/bootstrap/less/dropdowns.less"; +//@import "../lib/bootstrap/less/button-groups.less"; +//@import "../lib/bootstrap/less/input-groups.less"; +@import "../lib/bootstrap/less/navs.less"; +@import "../lib/bootstrap/less/navbar.less"; +//@import "../lib/bootstrap/less/breadcrumbs.less"; +//@import "../lib/bootstrap/less/pagination.less"; +//@import "../lib/bootstrap/less/pager.less"; +//@import "../lib/bootstrap/less/labels.less"; +//@import "../lib/bootstrap/less/badges.less"; +//@import "../lib/bootstrap/less/jumbotron.less"; +//@import "../lib/bootstrap/less/thumbnails.less"; +//@import "../lib/bootstrap/less/alerts.less"; +//@import "../lib/bootstrap/less/progress-bars.less"; +//@import "../lib/bootstrap/less/media.less"; +//@import "../lib/bootstrap/less/list-group.less"; +//@import "../lib/bootstrap/less/panels.less"; +//@import "../lib/bootstrap/less/responsive-embed.less"; +//@import "../lib/bootstrap/less/wells.less"; +//@import "../lib/bootstrap/less/close.less"; + +// Components w/ JavaScript +//@import "../lib/bootstrap/less/modals.less"; +//@import "../lib/bootstrap/less/tooltip.less"; +//@import "../lib/bootstrap/less/popovers.less"; +//@import "../lib/bootstrap/less/carousel.less"; + +// Utility classes +@import "../lib/bootstrap/less/utilities.less"; +//@import "../lib/bootstrap/less/responsive-utilities.less"; + +// JavaScriptEngineSwitcher specs +@import "variables.less"; +@import "mixins.less"; + +@import "type.less"; +@import "code.less"; +@import "forms.less"; +@import "buttons.less"; +@import "icons.less"; +@import "navbar.less"; + +@import "layout.less"; +@import "evaluation-form.less"; +@import "page-socials.less"; \ No newline at end of file diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/bootstrap-custom-variables.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/bootstrap-custom-variables.less new file mode 100644 index 00000000..0be2aa6f --- /dev/null +++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/bootstrap-custom-variables.less @@ -0,0 +1,856 @@ +// +// Variables +// -------------------------------------------------- + + +//== Colors +// +//## Gray and brand colors for use across Bootstrap. + +@gray-base: #323330; +@gray-darker: lighten(@gray-base, 13.5%); // #222 +@gray-dark: lighten(@gray-base, 20%); // #333 +@gray: lighten(@gray-base, 33.5%); // #555 +@gray-light: lighten(@gray-base, 46.7%); // #777 +@gray-lighter: #e3e3e3; + +@brand-primary: #428bca; +@brand-success: #5cb85c; +@brand-info: #5bc0de; +@brand-warning: #f0ad4e; +@brand-danger: #d9534f; + + +//== Scaffolding +// +//## Settings for some of the most global styles. + +//** Background color for ``. +@body-bg: #fff; +//** Global text color on ``. +@text-color: #1d0d0d; + +//** Global textual link color. +@link-color: @brand-primary; +//** Link hover color set via `darken()` function. +@link-hover-color: darken(@link-color, 15%); +//** Link hover decoration. +@link-hover-decoration: underline; + + +//== Typography +// +//## Font, line-height, and color for body text, headings, and more. + +@font-family-sans-serif: "Helvetica Neue", Arial, sans-serif; +@font-family-serif: Georgia, "Times New Roman", Times, serif; +//** Default monospace fonts for ``, ``, and `
`.
+@font-family-monospace:   Consolas, "Courier New", monospace;
+@font-family-base:        @font-family-sans-serif;
+
+@font-size-base:          14px;
+@font-size-large:         ceil((@font-size-base * 1.25)); // ~18px
+@font-size-small:         ceil((@font-size-base * 0.85)); // ~12px
+
+@font-size-h1:            floor(@font-size-base * 3);
+@font-size-h2:            @font-size-base * 2.5;
+@font-size-h3:            ceil(@font-size-base * 1.75);
+@font-size-h4:            ceil(@font-size-base * 1.25);
+@font-size-h5:            @font-size-base;
+@font-size-h6:            ceil(@font-size-base * 0.85);
+
+//** Unit-less `line-height` for use in components like buttons.
+@line-height-base:        1.428571429; // 20/14
+//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
+@line-height-computed:    floor((@font-size-base * @line-height-base)); // ~20px
+
+//** By default, this inherits from the ``.
+@headings-font-family:    "Open Sans", sans-serif;
+@headings-font-weight:    normal;
+@headings-line-height:    1.1;
+@headings-color:          inherit;
+
+
+//== Iconography
+//
+//## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.
+
+//** Load fonts from this directory.
+@icon-font-path:          "../fonts/";
+//** File name for all font files.
+@icon-font-name:          "glyphicons-halflings-regular";
+//** Element ID within SVG icon file.
+@icon-font-svg-id:        "glyphicons_halflingsregular";
+
+
+//== Components
+//
+//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
+
+@padding-base-vertical:     4px;
+@padding-base-horizontal:   6px;
+
+@padding-large-vertical:    10px;
+@padding-large-horizontal:  16px;
+
+@padding-small-vertical:    5px;
+@padding-small-horizontal:  10px;
+
+@padding-xs-vertical:       1px;
+@padding-xs-horizontal:     5px;
+
+@line-height-large:         1.33;
+@line-height-small:         1.5;
+
+@border-radius-base:        4px;
+@border-radius-large:       6px;
+@border-radius-small:       3px;
+
+//** Global color for active items (e.g., navs or dropdowns).
+@component-active-color:    #fff;
+//** Global background color for active items (e.g., navs or dropdowns).
+@component-active-bg:       @brand-primary;
+
+//** Width of the `border` for generating carets that indicator dropdowns.
+@caret-width-base:          4px;
+//** Carets increase slightly in size for larger components.
+@caret-width-large:         5px;
+
+
+//== Tables
+//
+//## Customizes the `.table` component with basic values, each used across all table variations.
+
+//** Padding for ``s and ``s.
+@table-cell-padding:            8px;
+//** Padding for cells in `.table-condensed`.
+@table-condensed-cell-padding:  5px;
+
+//** Default background color used for all tables.
+@table-bg:                      transparent;
+//** Background color used for `.table-striped`.
+@table-bg-accent:               #f9f9f9;
+//** Background color used for `.table-hover`.
+@table-bg-hover:                #f5f5f5;
+@table-bg-active:               @table-bg-hover;
+
+//** Border color for table and cell borders.
+@table-border-color:            #ddd;
+
+
+//== Buttons
+//
+//## For each of Bootstrap's buttons, define text, background and border color.
+
+@btn-font-weight:                normal;
+
+@btn-default-color:              #333;
+@btn-default-bg:                 @gray-lighter;
+@btn-default-border:             @gray-lighter;
+
+@btn-primary-color:              #fff;
+@btn-primary-bg:                 @brand-primary;
+@btn-primary-border:             darken(@btn-primary-bg, 5%);
+
+@btn-success-color:              #fff;
+@btn-success-bg:                 @brand-success;
+@btn-success-border:             darken(@btn-success-bg, 5%);
+
+@btn-info-color:                 #fff;
+@btn-info-bg:                    @brand-info;
+@btn-info-border:                darken(@btn-info-bg, 5%);
+
+@btn-warning-color:              #fff;
+@btn-warning-bg:                 @brand-warning;
+@btn-warning-border:             darken(@btn-warning-bg, 5%);
+
+@btn-danger-color:               #fff;
+@btn-danger-bg:                  @brand-danger;
+@btn-danger-border:              darken(@btn-danger-bg, 5%);
+
+@btn-link-disabled-color:        @gray-light;
+
+
+//== Forms
+//
+//##
+
+//** `` background color
+@input-bg:                       #fff;
+//** `` background color
+@input-bg-disabled:              @gray-lighter;
+
+//** Text color for ``s
+@input-color:                    @gray;
+//** `` border color
+@input-border:                   #b2b2b2;
+
+// TODO: Rename `@input-border-radius` to `@input-border-radius-base` in v4
+//** Default `.form-control` border radius
+@input-border-radius:            @border-radius-base;
+//** Large `.form-control` border radius
+@input-border-radius-large:      @border-radius-large;
+//** Small `.form-control` border radius
+@input-border-radius-small:      @border-radius-small;
+
+//** Border color for inputs on focus
+@input-border-focus:             #d4b33a;
+
+//** Placeholder text color
+@input-color-placeholder:        #999;
+
+//** Default `.form-control` height
+@input-height-base:              (@line-height-computed + (@padding-base-vertical * 2) + 2);
+//** Large `.form-control` height
+@input-height-large:             (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2);
+//** Small `.form-control` height
+@input-height-small:             (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2);
+
+@legend-color:                   @gray-dark;
+@legend-border-color:            #e5e5e5;
+
+//** Background color for textual input addons
+@input-group-addon-bg:           @gray-lighter;
+//** Border color for textual input addons
+@input-group-addon-border-color: @input-border;
+
+//** Disabled cursor for form controls and buttons.
+@cursor-disabled:                not-allowed;
+
+
+//== Dropdowns
+//
+//## Dropdown menu container and contents.
+
+//** Background for the dropdown menu.
+@dropdown-bg:                    #fff;
+//** Dropdown menu `border-color`.
+@dropdown-border:                rgba(0,0,0,.15);
+//** Dropdown menu `border-color` **for IE8**.
+@dropdown-fallback-border:       #ccc;
+//** Divider color for between dropdown items.
+@dropdown-divider-bg:            #e5e5e5;
+
+//** Dropdown link text color.
+@dropdown-link-color:            @gray-dark;
+//** Hover color for dropdown links.
+@dropdown-link-hover-color:      darken(@gray-dark, 5%);
+//** Hover background for dropdown links.
+@dropdown-link-hover-bg:         #f5f5f5;
+
+//** Active dropdown menu item text color.
+@dropdown-link-active-color:     @component-active-color;
+//** Active dropdown menu item background color.
+@dropdown-link-active-bg:        @component-active-bg;
+
+//** Disabled dropdown menu item background color.
+@dropdown-link-disabled-color:   @gray-light;
+
+//** Text color for headers within dropdown menus.
+@dropdown-header-color:          @gray-light;
+
+//** Deprecated `@dropdown-caret-color` as of v3.1.0
+@dropdown-caret-color:           #000;
+
+
+//-- Z-index master list
+//
+// Warning: Avoid customizing these values. They're used for a bird's eye view
+// of components dependent on the z-axis and are designed to all work together.
+//
+// Note: These variables are not generated into the Customizer.
+
+@zindex-navbar:            1000;
+@zindex-dropdown:          1000;
+@zindex-popover:           1060;
+@zindex-tooltip:           1070;
+@zindex-navbar-fixed:      1030;
+@zindex-modal:             1040;
+
+
+//== Media queries breakpoints
+//
+//## Define the breakpoints at which your layout will change, adapting to different screen sizes.
+
+// Extra small screen / phone
+//** Deprecated `@screen-xs` as of v3.0.1
+@screen-xs:                  480px;
+//** Deprecated `@screen-xs-min` as of v3.2.0
+@screen-xs-min:              @screen-xs;
+//** Deprecated `@screen-phone` as of v3.0.1
+@screen-phone:               @screen-xs-min;
+
+// Small screen / tablet
+//** Deprecated `@screen-sm` as of v3.0.1
+@screen-sm:                  768px;
+@screen-sm-min:              @screen-sm;
+//** Deprecated `@screen-tablet` as of v3.0.1
+@screen-tablet:              @screen-sm-min;
+
+// Medium screen / desktop
+//** Deprecated `@screen-md` as of v3.0.1
+@screen-md:                  992px;
+@screen-md-min:              @screen-md;
+//** Deprecated `@screen-desktop` as of v3.0.1
+@screen-desktop:             @screen-md-min;
+
+// Large screen / wide desktop
+//** Deprecated `@screen-lg` as of v3.0.1
+@screen-lg:                  1200px;
+@screen-lg-min:              @screen-lg;
+//** Deprecated `@screen-lg-desktop` as of v3.0.1
+@screen-lg-desktop:          @screen-lg-min;
+
+// So media queries don't overlap when required, provide a maximum
+@screen-xs-max:              (@screen-sm-min - 1);
+@screen-sm-max:              (@screen-md-min - 1);
+@screen-md-max:              (@screen-lg-min - 1);
+
+
+//== Grid system
+//
+//## Define your custom responsive grid.
+
+//** Number of columns in the grid.
+@grid-columns:              12;
+//** Padding between columns. Gets divided in half for the left and right.
+@grid-gutter-width:         30px;
+// Navbar collapse
+//** Point at which the navbar becomes uncollapsed.
+@grid-float-breakpoint:     @screen-sm-min;
+//** Point at which the navbar begins collapsing.
+@grid-float-breakpoint-max: (@grid-float-breakpoint - 1);
+
+
+//== Container sizes
+//
+//## Define the maximum width of `.container` for different screen sizes.
+
+// Small screen / tablet
+@container-tablet:             (720px + @grid-gutter-width);
+//** For `@screen-sm-min` and up.
+@container-sm:                 @container-tablet;
+
+// Medium screen / desktop
+@container-desktop:            (940px + @grid-gutter-width);
+//** For `@screen-md-min` and up.
+@container-md:                 @container-desktop;
+
+// Large screen / wide desktop
+@container-large-desktop:      (1140px + @grid-gutter-width);
+//** For `@screen-lg-min` and up.
+@container-lg:                 @container-large-desktop;
+
+
+//== Navbar
+//
+//##
+
+// Basics of a navbar
+@navbar-height:                    100px;
+@navbar-margin-bottom:             0;
+@navbar-border-radius:             @border-radius-base;
+@navbar-padding-horizontal:        0;
+@navbar-padding-vertical:          ((@navbar-height - @line-height-computed) / 2);
+@navbar-collapse-max-height:       340px;
+
+@navbar-default-color:             @gray-base;
+@navbar-default-bg:                #f0db4f;
+@navbar-default-border:            #f0db4f;
+
+// Navbar links
+@navbar-default-link-color:                @navbar-default-color;
+@navbar-default-link-hover-color:          @gray-dark;
+@navbar-default-link-hover-bg:             transparent;
+@navbar-default-link-active-color:         @navbar-default-color;
+@navbar-default-link-active-bg:            transparent;
+@navbar-default-link-disabled-color:       #ccc;
+@navbar-default-link-disabled-bg:          transparent;
+
+// Navbar brand label
+@navbar-default-brand-color:               @navbar-default-link-color;
+@navbar-default-brand-hover-color:         darken(@navbar-default-brand-color, 10%);
+@navbar-default-brand-hover-bg:            transparent;
+
+// Navbar toggle
+@navbar-default-toggle-hover-bg:           #ddd;
+@navbar-default-toggle-icon-bar-bg:        @gray-dark;
+@navbar-default-toggle-border-color:       #ddd;
+
+
+// Inverted navbar
+// Reset inverted navbar basics
+@navbar-inverse-color:                      lighten(@gray-light, 15%);
+@navbar-inverse-bg:                         #222;
+@navbar-inverse-border:                     darken(@navbar-inverse-bg, 10%);
+
+// Inverted navbar links
+@navbar-inverse-link-color:                 lighten(@gray-light, 15%);
+@navbar-inverse-link-hover-color:           #fff;
+@navbar-inverse-link-hover-bg:              transparent;
+@navbar-inverse-link-active-color:          @navbar-inverse-link-hover-color;
+@navbar-inverse-link-active-bg:             darken(@navbar-inverse-bg, 10%);
+@navbar-inverse-link-disabled-color:        #444;
+@navbar-inverse-link-disabled-bg:           transparent;
+
+// Inverted navbar brand label
+@navbar-inverse-brand-color:                @navbar-inverse-link-color;
+@navbar-inverse-brand-hover-color:          #fff;
+@navbar-inverse-brand-hover-bg:             transparent;
+
+// Inverted navbar toggle
+@navbar-inverse-toggle-hover-bg:            #333;
+@navbar-inverse-toggle-icon-bar-bg:         #fff;
+@navbar-inverse-toggle-border-color:        #333;
+
+
+//== Navs
+//
+//##
+
+//=== Shared nav styles
+@nav-link-padding:                          10px 15px;
+@nav-link-hover-bg:                         @gray-lighter;
+
+@nav-disabled-link-color:                   @gray-light;
+@nav-disabled-link-hover-color:             @gray-light;
+
+//== Tabs
+@nav-tabs-border-color:                     #ddd;
+
+@nav-tabs-link-hover-border-color:          @gray-lighter;
+
+@nav-tabs-active-link-hover-bg:             @body-bg;
+@nav-tabs-active-link-hover-color:          @gray;
+@nav-tabs-active-link-hover-border-color:   #ddd;
+
+@nav-tabs-justified-link-border-color:            #ddd;
+@nav-tabs-justified-active-link-border-color:     @body-bg;
+
+//== Pills
+@nav-pills-border-radius:                   @border-radius-base;
+@nav-pills-active-link-hover-bg:            @component-active-bg;
+@nav-pills-active-link-hover-color:         @component-active-color;
+
+
+//== Pagination
+//
+//##
+
+@pagination-color:                     @link-color;
+@pagination-bg:                        #fff;
+@pagination-border:                    #ddd;
+
+@pagination-hover-color:               @link-hover-color;
+@pagination-hover-bg:                  @gray-lighter;
+@pagination-hover-border:              #ddd;
+
+@pagination-active-color:              #fff;
+@pagination-active-bg:                 @brand-primary;
+@pagination-active-border:             @brand-primary;
+
+@pagination-disabled-color:            @gray-light;
+@pagination-disabled-bg:               #fff;
+@pagination-disabled-border:           #ddd;
+
+
+//== Pager
+//
+//##
+
+@pager-bg:                             @pagination-bg;
+@pager-border:                         @pagination-border;
+@pager-border-radius:                  15px;
+
+@pager-hover-bg:                       @pagination-hover-bg;
+
+@pager-active-bg:                      @pagination-active-bg;
+@pager-active-color:                   @pagination-active-color;
+
+@pager-disabled-color:                 @pagination-disabled-color;
+
+
+//== Jumbotron
+//
+//##
+
+@jumbotron-padding:              30px;
+@jumbotron-color:                inherit;
+@jumbotron-bg:                   @gray-lighter;
+@jumbotron-heading-color:        inherit;
+@jumbotron-font-size:            ceil((@font-size-base * 1.5));
+
+
+//== Form states and alerts
+//
+//## Define colors for form feedback states and, by default, alerts.
+
+@state-success-text:             #3c763d;
+@state-success-bg:               #dff0d8;
+@state-success-border:           darken(spin(@state-success-bg, -10), 5%);
+
+@state-info-text:                #31708f;
+@state-info-bg:                  #d9edf7;
+@state-info-border:              darken(spin(@state-info-bg, -10), 7%);
+
+@state-warning-text:             #8a6d3b;
+@state-warning-bg:               #fcf8e3;
+@state-warning-border:           darken(spin(@state-warning-bg, -10), 5%);
+
+@state-danger-text:              #a94442;
+@state-danger-bg:                #f2dede;
+@state-danger-border:            darken(spin(@state-danger-bg, -10), 5%);
+
+
+//== Tooltips
+//
+//##
+
+//** Tooltip max width
+@tooltip-max-width:           200px;
+//** Tooltip text color
+@tooltip-color:               #fff;
+//** Tooltip background color
+@tooltip-bg:                  #000;
+@tooltip-opacity:             .9;
+
+//** Tooltip arrow width
+@tooltip-arrow-width:         5px;
+//** Tooltip arrow color
+@tooltip-arrow-color:         @tooltip-bg;
+
+
+//== Popovers
+//
+//##
+
+//** Popover body background color
+@popover-bg:                          #fff;
+//** Popover maximum width
+@popover-max-width:                   276px;
+//** Popover border color
+@popover-border-color:                rgba(0,0,0,.2);
+//** Popover fallback border color
+@popover-fallback-border-color:       #ccc;
+
+//** Popover title background color
+@popover-title-bg:                    darken(@popover-bg, 3%);
+
+//** Popover arrow width
+@popover-arrow-width:                 10px;
+//** Popover arrow color
+@popover-arrow-color:                 @popover-bg;
+
+//** Popover outer arrow width
+@popover-arrow-outer-width:           (@popover-arrow-width + 1);
+//** Popover outer arrow color
+@popover-arrow-outer-color:           fadein(@popover-border-color, 5%);
+//** Popover outer arrow fallback color
+@popover-arrow-outer-fallback-color:  darken(@popover-fallback-border-color, 20%);
+
+
+//== Labels
+//
+//##
+
+//** Default label background color
+@label-default-bg:            @gray-light;
+//** Primary label background color
+@label-primary-bg:            @brand-primary;
+//** Success label background color
+@label-success-bg:            @brand-success;
+//** Info label background color
+@label-info-bg:               @brand-info;
+//** Warning label background color
+@label-warning-bg:            @brand-warning;
+//** Danger label background color
+@label-danger-bg:             @brand-danger;
+
+//** Default label text color
+@label-color:                 #fff;
+//** Default text color of a linked label
+@label-link-hover-color:      #fff;
+
+
+//== Modals
+//
+//##
+
+//** Padding applied to the modal body
+@modal-inner-padding:         15px;
+
+//** Padding applied to the modal title
+@modal-title-padding:         15px;
+//** Modal title line-height
+@modal-title-line-height:     @line-height-base;
+
+//** Background color of modal content area
+@modal-content-bg:                             #fff;
+//** Modal content border color
+@modal-content-border-color:                   rgba(0,0,0,.2);
+//** Modal content border color **for IE8**
+@modal-content-fallback-border-color:          #999;
+
+//** Modal backdrop background color
+@modal-backdrop-bg:           #000;
+//** Modal backdrop opacity
+@modal-backdrop-opacity:      .5;
+//** Modal header border color
+@modal-header-border-color:   #e5e5e5;
+//** Modal footer border color
+@modal-footer-border-color:   @modal-header-border-color;
+
+@modal-lg:                    900px;
+@modal-md:                    600px;
+@modal-sm:                    300px;
+
+
+//== Alerts
+//
+//## Define alert colors, border radius, and padding.
+
+@alert-padding:               15px;
+@alert-border-radius:         @border-radius-base;
+@alert-link-font-weight:      bold;
+
+@alert-success-bg:            @state-success-bg;
+@alert-success-text:          @state-success-text;
+@alert-success-border:        @state-success-border;
+
+@alert-info-bg:               @state-info-bg;
+@alert-info-text:             @state-info-text;
+@alert-info-border:           @state-info-border;
+
+@alert-warning-bg:            @state-warning-bg;
+@alert-warning-text:          @state-warning-text;
+@alert-warning-border:        @state-warning-border;
+
+@alert-danger-bg:             @state-danger-bg;
+@alert-danger-text:           @state-danger-text;
+@alert-danger-border:         @state-danger-border;
+
+
+//== Progress bars
+//
+//##
+
+//** Background color of the whole progress component
+@progress-bg:                 #f5f5f5;
+//** Progress bar text color
+@progress-bar-color:          #fff;
+//** Variable for setting rounded corners on progress bar.
+@progress-border-radius:      @border-radius-base;
+
+//** Default progress bar color
+@progress-bar-bg:             @brand-primary;
+//** Success progress bar color
+@progress-bar-success-bg:     @brand-success;
+//** Warning progress bar color
+@progress-bar-warning-bg:     @brand-warning;
+//** Danger progress bar color
+@progress-bar-danger-bg:      @brand-danger;
+//** Info progress bar color
+@progress-bar-info-bg:        @brand-info;
+
+
+//== List group
+//
+//##
+
+//** Background color on `.list-group-item`
+@list-group-bg:                 #fff;
+//** `.list-group-item` border color
+@list-group-border:             #ddd;
+//** List group border radius
+@list-group-border-radius:      @border-radius-base;
+
+//** Background color of single list items on hover
+@list-group-hover-bg:           #f5f5f5;
+//** Text color of active list items
+@list-group-active-color:       @component-active-color;
+//** Background color of active list items
+@list-group-active-bg:          @component-active-bg;
+//** Border color of active list elements
+@list-group-active-border:      @list-group-active-bg;
+//** Text color for content within active list items
+@list-group-active-text-color:  lighten(@list-group-active-bg, 40%);
+
+//** Text color of disabled list items
+@list-group-disabled-color:      @gray-light;
+//** Background color of disabled list items
+@list-group-disabled-bg:         @gray-lighter;
+//** Text color for content within disabled list items
+@list-group-disabled-text-color: @list-group-disabled-color;
+
+@list-group-link-color:         #555;
+@list-group-link-hover-color:   @list-group-link-color;
+@list-group-link-heading-color: #333;
+
+
+//== Panels
+//
+//##
+
+@panel-bg:                    #fff;
+@panel-body-padding:          15px;
+@panel-heading-padding:       10px 15px;
+@panel-footer-padding:        @panel-heading-padding;
+@panel-border-radius:         @border-radius-base;
+
+//** Border color for elements within panels
+@panel-inner-border:          #ddd;
+@panel-footer-bg:             #f5f5f5;
+
+@panel-default-text:          @gray-dark;
+@panel-default-border:        #ddd;
+@panel-default-heading-bg:    #f5f5f5;
+
+@panel-primary-text:          #fff;
+@panel-primary-border:        @brand-primary;
+@panel-primary-heading-bg:    @brand-primary;
+
+@panel-success-text:          @state-success-text;
+@panel-success-border:        @state-success-border;
+@panel-success-heading-bg:    @state-success-bg;
+
+@panel-info-text:             @state-info-text;
+@panel-info-border:           @state-info-border;
+@panel-info-heading-bg:       @state-info-bg;
+
+@panel-warning-text:          @state-warning-text;
+@panel-warning-border:        @state-warning-border;
+@panel-warning-heading-bg:    @state-warning-bg;
+
+@panel-danger-text:           @state-danger-text;
+@panel-danger-border:         @state-danger-border;
+@panel-danger-heading-bg:     @state-danger-bg;
+
+
+//== Thumbnails
+//
+//##
+
+//** Padding around the thumbnail image
+@thumbnail-padding:           4px;
+//** Thumbnail background color
+@thumbnail-bg:                @body-bg;
+//** Thumbnail border color
+@thumbnail-border:            #ddd;
+//** Thumbnail border radius
+@thumbnail-border-radius:     @border-radius-base;
+
+//** Custom text color for thumbnail captions
+@thumbnail-caption-color:     @text-color;
+//** Padding around the thumbnail caption
+@thumbnail-caption-padding:   9px;
+
+
+//== Wells
+//
+//##
+
+@well-bg:                     #f5f5f5;
+@well-border:                 darken(@well-bg, 7%);
+
+
+//== Badges
+//
+//##
+
+@badge-color:                 #fff;
+//** Linked badge text color on hover
+@badge-link-hover-color:      #fff;
+@badge-bg:                    @gray-light;
+
+//** Badge text color in active nav link
+@badge-active-color:          @link-color;
+//** Badge background color in active nav link
+@badge-active-bg:             #fff;
+
+@badge-font-weight:           bold;
+@badge-line-height:           1;
+@badge-border-radius:         10px;
+
+
+//== Breadcrumbs
+//
+//##
+
+@breadcrumb-padding-vertical:   8px;
+@breadcrumb-padding-horizontal: 15px;
+//** Breadcrumb background color
+@breadcrumb-bg:                 #f5f5f5;
+//** Breadcrumb text color
+@breadcrumb-color:              #ccc;
+//** Text color of current page in the breadcrumb
+@breadcrumb-active-color:       @gray-light;
+//** Textual separator for between breadcrumb elements
+@breadcrumb-separator:          "/";
+
+
+//== Carousel
+//
+//##
+
+@carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6);
+
+@carousel-control-color:                      #fff;
+@carousel-control-width:                      15%;
+@carousel-control-opacity:                    .5;
+@carousel-control-font-size:                  20px;
+
+@carousel-indicator-active-bg:                #fff;
+@carousel-indicator-border-color:             #fff;
+
+@carousel-caption-color:                      #fff;
+
+
+//== Close
+//
+//##
+
+@close-font-weight:           bold;
+@close-color:                 #000;
+@close-text-shadow:           0 1px 0 #fff;
+
+
+//== Code
+//
+//##
+
+@code-color:                  #c7254e;
+@code-bg:                     #f9f2f4;
+
+@kbd-color:                   #fff;
+@kbd-bg:                      #333;
+
+@pre-bg:                      #f5f5f5;
+@pre-color:                   @gray-dark;
+@pre-border-color:            #ccc;
+@pre-scrollable-max-height:   340px;
+
+
+//== Type
+//
+//##
+
+//** Horizontal offset for forms and lists.
+@component-offset-horizontal: 180px;
+//** Text muted color
+@text-muted:                  @gray-light;
+//** Abbreviations and acronyms border color
+@abbr-border-color:           @gray-light;
+//** Headings small color
+@headings-small-color:        @gray-light;
+//** Blockquote small color
+@blockquote-small-color:      @gray-light;
+//** Blockquote font size
+@blockquote-font-size:        (@font-size-base * 1.25);
+//** Blockquote border color
+@blockquote-border-color:     @gray-lighter;
+//** Page header border color
+@page-header-border-color:    @gray-lighter;
+//** Width of horizontal description list titles
+@dl-horizontal-offset:        @component-offset-horizontal;
+//** Horizontal line color.
+@hr-border:                   #b2b2b2;
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/buttons.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/buttons.less
new file mode 100644
index 00000000..bbb3c620
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/buttons.less
@@ -0,0 +1,61 @@
+//
+// Buttons
+// --------------------------------------------------
+
+
+// Base styles
+// --------------------------------------------------
+
+// Core styles
+.btn {
+  display: inline-block;
+  padding: 5px 6px 4px 8px;
+  margin-top: 0;
+  margin-bottom: 0; // For input.btn
+  font-family: "Open Sans Condensed", sans-serif;
+  font-size: @font-size-base * 1.3;
+  font-weight: 700;
+  text-transform: uppercase;
+  letter-spacing: 1px;
+  line-height: @line-height-computed;
+  text-align: center;
+  vertical-align: middle;
+  touch-action: manipulation;
+  cursor: pointer;
+  background-color: @gray-lighter;
+  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
+  border: none;
+  border-radius: 3px;
+  .box-shadow(1px 1px 0 rgba(0, 0, 0, 0.3));
+  outline: none !important;
+  white-space: nowrap;
+  .user-select(none);
+
+  &:focus,
+  &.focus {
+    .tab-focus();
+  }
+
+  &:hover,
+  &:focus,
+  &.focus {
+    background-color: lighten(@gray-lighter, 5%);
+    text-decoration: none;
+    .transition(background-color .1s linear);
+  }
+
+  &:active,
+  &.active {
+    outline: 0;
+    padding: 6px 5px 3px 9px;
+  }
+
+  &.disabled,
+  &[disabled],
+  fieldset[disabled] & {
+    cursor: @cursor-disabled;
+    pointer-events: none; // Future-proof disabling of clicks
+    .opacity(65);
+    .box-shadow(1px 1px 0 rgba(0, 0, 0, 0.15));
+  }
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/code.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/code.less
new file mode 100644
index 00000000..33af7555
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/code.less
@@ -0,0 +1,8 @@
+code {
+  margin: 0 2px;
+  padding: 1px 5px;
+  border: 1px solid #E1E1E8;
+  background-color: #F7F7F9;
+  color: @gray-dark;
+  font-size: 85%;
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/evaluation-form.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/evaluation-form.less
new file mode 100644
index 00000000..6d505d56
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/evaluation-form.less
@@ -0,0 +1,91 @@
+//
+// Evaluation form
+// --------------------------------------------------
+
+
+.evaluation-form {
+  .clearfix();
+
+  textarea {
+    height: 200px;
+  }
+}
+
+.evaluation-input-output {
+  float: left;
+  width: 65%;
+}
+
+.evaluation-input-clear-button {
+  position: absolute;
+  top: 0;
+  right: 0;
+  width: 15px;
+  height: 15px;
+  margin: 6px;
+  display: inline-block;
+  background: transparent url("../images/clear-text.png") no-repeat scroll 0 0;
+  opacity: 0.75;
+  line-height: 0;
+  vertical-align: bottom;
+  cursor: pointer;
+
+  &:hover {
+   opacity: 1;
+ }
+}
+
+.evaluation-input-clear-button.with-scrollbar {
+  margin-right: 29px;
+}
+
+.evaluation-output {
+  margin-top: 1.5em;
+}
+
+.evaluation-input-field,
+.evaluation-output-field {
+  margin-bottom: 0.5em;
+  .box-sizing(border-box);
+  overflow-x: hidden;
+  line-height: @line-height-computed;
+}
+
+.evaluation-output-field {
+  &[readonly] {
+    cursor: auto;
+    background-color: @input-bg;
+  }
+}
+
+.evaluation-error-header {
+  margin-bottom: @line-height-computed;
+  padding-left: 52px;
+  background: transparent url("../images/icons/48x48/error.png") no-repeat scroll 0 50%;
+  color: @black;
+  font-family: @font-family-sans-serif;
+  font-weight: bold;
+  line-height: 48px;
+  vertical-align: middle;
+}
+
+ul.evaluation-error-list,
+ul.evaluation-warning-list {
+  li {
+    margin-bottom: 1em;
+
+    pre {
+      margin-top: 0.5em;
+      white-space: pre;
+      overflow: auto;
+    }
+  }
+}
+
+ul.evaluation-error-list li pre {
+  background-color: @state-danger-bg;
+}
+
+ul.evaluation-warning-list li pre {
+  background-color: @state-warning-bg;
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/forms.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/forms.less
new file mode 100644
index 00000000..2ceb0559
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/forms.less
@@ -0,0 +1,99 @@
+//
+// Forms
+// --------------------------------------------------
+
+// GENERAL STYLES
+// --------------
+
+label {
+  font-weight: normal;
+}
+
+
+// Form controls
+// -------------------------
+
+// Common form controls
+.form-control {
+  line-height: @input-height-base;
+}
+
+.textarea-wrapper {
+  position: relative;
+}
+
+// Form groups
+.form-group {
+  margin-bottom: 0.5em;
+}
+
+// Info and errors
+// --------------------------
+.message-info {
+  border: 1px solid;
+  clear: both;
+  padding: 10px 20px;
+  color: @state-info-text;
+}
+
+.message-error {
+  clear: both;
+  color: @state-danger-text;
+  font-size: 1.1em;
+  font-weight: bold;
+  margin: 20px 0 10px 0;
+}
+
+.message-success {
+  color: @state-success-text;
+  font-size: 1.3em;
+  font-weight: bold;
+  margin: 20px 0 10px 0;
+}
+
+.error {
+  color: @state-danger-text;
+}
+
+// Styles for validation helpers
+// --------------------------
+.validators {
+  font-style: normal;
+  padding-bottom: 0.5em;
+}
+
+.field-validation-error {
+  display: block;
+  padding-bottom: 0.5em;
+  color: @state-danger-text;
+  font-weight: bold;
+}
+
+.field-validation-valid {
+  display: none;
+}
+
+input.input-validation-error,
+textarea.input-validation-error,
+select.input-validation-error
+{
+  border: 1px solid @state-danger-border;
+  background-color: @state-danger-bg;
+  .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
+
+  &:focus {
+    border-color: @state-danger-border;
+    @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@state-danger-text, 20%);
+    .box-shadow(@shadow);
+  }
+}
+
+.validation-summary-errors {
+  color: @state-danger-text;
+  font-weight: bold;
+  font-size: 1.1em;
+}
+
+.validation-summary-valid {
+  display: none;
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/icons.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/icons.less
new file mode 100644
index 00000000..79b9d9e5
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/icons.less
@@ -0,0 +1,32 @@
+//
+// Icons
+// --------------------------------------------------
+
+
+.icon {
+  background: transparent url(../images/icons/32x32/social-media-icons-32.png) no-repeat scroll;
+  display: inline-block;
+  line-height: 0;
+  vertical-align: bottom;
+}
+
+.icon-32 {
+  height: 32px;
+  width: 32px;
+}
+
+.icon-facebook {
+  background-position: 0 0;
+}
+
+.icon-twitter {
+  background-position: 0 -32px;
+}
+
+.icon-linkedin {
+  background-position: 0 -64px;
+}
+
+.icon-rss {
+  background-position: 0 -128px;
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/layout.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/layout.less
new file mode 100644
index 00000000..35a7f386
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/layout.less
@@ -0,0 +1,128 @@
+html,
+body {
+  margin: 0;
+  height: 100%;
+  /* The html and body elements cannot have any padding or margin */
+}
+
+/* Wrapper for page content to push down footer */
+.l-wrapper {
+  min-height: 100%;
+  height: auto !important;
+  height: 100%;
+  /* Negative indent footer by it's height */
+  margin: 0 auto (-1 * @footer-height);
+}
+
+.l-constrained {
+  margin: 0 auto;
+  padding-left: 20px;
+  padding-right: 20px;
+  max-width: 1200px;
+  min-width: 800px;
+}
+
+.l-header {
+  border-top: solid 10px @black;
+  border-bottom: 1px solid #d4b33a;
+  background-color: #f0db4f;
+
+  .l-constrained {
+    padding-top: 20px;
+    padding-bottom: 20px;
+    .clearfix();
+  }
+}
+
+.l-content {
+  .clearfix();
+}
+
+.l-main-content {
+  float: left;
+  width: 70%;
+}
+
+.l-sidebar {
+  float: right;
+  width: 30%;
+}
+
+/* Set the fixed height of the footer here */
+.l-push,
+.l-footer {
+  height: @footer-height;
+}
+
+.l-footer {
+  width: 100%;
+  background-color: @black;
+  color: @gray-lighter;
+  font-size: @font-size-small;
+  line-height: 100%;
+
+  .l-constrained {
+    padding-top: (@footer-height - 32) / 2;
+    .clearfix();
+  }
+
+  a {
+    color: @gray-lighter;
+    text-decoration: none;
+
+    &:hover,
+    &:active {
+      text-decoration: underline;
+    }
+  }
+}
+
+
+// Header
+// -------------------------
+
+.logo {
+  margin: 0;
+
+  a {
+    display: block;
+    float: left;
+    width: 100px;
+    height: 100px;
+    background: transparent url("../images/jsengineswitcher-logo.png") no-repeat scroll 0 0;
+    text-indent: -9999em;
+  }
+}
+
+.primary-nav {
+  position: relative;
+  left: 40px;
+  float: left;
+}
+
+
+// Footer
+// -------------------------
+
+.l-copyright {
+  float: left;
+    p {
+      margin: 0;
+      padding: 0;
+  }
+}
+
+.l-social {
+  float: right;
+
+  li {
+    display: inline;
+    list-style: none outside none;
+    padding-left: 10px;
+
+    a {
+      text-indent: -9999px;
+      outline: none;
+    }
+  }
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/mixins.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/mixins.less
new file mode 100644
index 00000000..d26eee79
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/mixins.less
@@ -0,0 +1,9 @@
+//
+// Mixins
+// --------------------------------------------------
+
+// NO Drop shadows
+.no-box-shadow {
+  -webkit-box-shadow: none; // iOS <4.3 & Android <4.1
+          box-shadow: none;
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/navbar.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/navbar.less
new file mode 100644
index 00000000..95edf3c2
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/navbar.less
@@ -0,0 +1,38 @@
+//
+// Navbars
+// --------------------------------------------------
+
+
+// Wrapper and base class
+//
+// Provide a static navbar from which we expand to create full-width, fixed, and
+// other navbar variations.
+
+.navbar {
+  border: none;
+  border-radius: 0;
+}
+
+// Navbar nav links
+//
+// Builds on top of the `.nav` components with it's own modifier class to make
+// the nav the full height of the horizontal nav (above 768px).
+
+.navbar-nav {
+  float: left;
+  margin: 0 auto;
+
+  > li {
+    > a {
+      float: none;
+      // Vertically center the text given @navbar-height
+      padding: ((@navbar-height - @line-height-computed) / 2) 15px ((@navbar-height - @line-height-computed) / 2);
+      border: 1px solid transparent;
+      font-family: "Open Sans", sans-serif;
+      font-size: 2.0em;
+      text-decoration: none;
+      text-transform: uppercase;
+      outline: none;
+    }
+  }
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/page-socials.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/page-socials.less
new file mode 100644
index 00000000..ea12dc09
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/page-socials.less
@@ -0,0 +1,14 @@
+.page-socials {
+  min-height: 60px;
+  margin-top: 20px;
+  padding-top: 15px;
+  border-top: 1px solid #b2b2b2;
+}
+
+.share-buttons {
+  li {
+    margin-right: 15px;
+    vertical-align: top;
+    line-height: normal;
+  }
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/type.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/type.less
new file mode 100644
index 00000000..02d69502
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/type.less
@@ -0,0 +1,24 @@
+//
+// Typography
+// --------------------------------------------------
+
+// Headings
+// -------------------------
+
+h1, h2, h3 {
+  margin-top: 10px;
+}
+
+h1, h2 {
+  line-height: 40px;
+}
+
+h2 {
+  color: @black;
+  font-weight: bold;
+}
+
+h3 {
+  color: @gray-dark;
+  line-height: @line-height-computed * 1.25;
+}
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/variables.less b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/variables.less
new file mode 100644
index 00000000..498c9796
--- /dev/null
+++ b/samples/JavaScriptEngineSwitcher.Sample.AspNetCore9.Mvc9/wwwroot/styles/variables.less
@@ -0,0 +1,7 @@
+// Colors
+// -------------------------
+@black:                 #1d0d0d;
+
+// Footer
+// -------------------------
+@footer-height:                    55px;
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.Logic/JavaScriptEngineSwitcher.Sample.Logic.csproj b/samples/JavaScriptEngineSwitcher.Sample.Logic/JavaScriptEngineSwitcher.Sample.Logic.csproj
index 511d0425..b326df19 100644
--- a/samples/JavaScriptEngineSwitcher.Sample.Logic/JavaScriptEngineSwitcher.Sample.Logic.csproj
+++ b/samples/JavaScriptEngineSwitcher.Sample.Logic/JavaScriptEngineSwitcher.Sample.Logic.csproj
@@ -2,11 +2,13 @@
 
   
     JS Engine Switcher: Logic for Samples
-    3.24.0
-    net40;net451;net471;netstandard1.6;netstandard2.0;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0
+    3.30.2
+    net40;net451;net471;netstandard1.6;netstandard2.0;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0
     1.6.0
     Library
     true
+    $(NoWarn);NETSDK1215;NU1902;NU1903;NU1904
+    false
     false
     false
   
@@ -44,15 +46,19 @@
   
 
   
-    
+    
   
 
   
-    
+    
   
 
   
-    
+    
+  
+
+  
+    
   
 
 
\ No newline at end of file
diff --git a/samples/JavaScriptEngineSwitcher.Sample.Resources/JavaScriptEngineSwitcher.Sample.Resources.csproj b/samples/JavaScriptEngineSwitcher.Sample.Resources/JavaScriptEngineSwitcher.Sample.Resources.csproj
index efad30e3..21b8c5cb 100644
--- a/samples/JavaScriptEngineSwitcher.Sample.Resources/JavaScriptEngineSwitcher.Sample.Resources.csproj
+++ b/samples/JavaScriptEngineSwitcher.Sample.Resources/JavaScriptEngineSwitcher.Sample.Resources.csproj
@@ -2,11 +2,13 @@
 
   
     JS Engine Switcher: Resources for Samples
-    3.24.0
+    3.30.2
     net40-client;net45;net471;netstandard1.3;netstandard2.0
     1.6.0
     Library
     true
+    $(NoWarn);NETSDK1215;NU1903
+    false
     true
     false
   
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.csproj b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.csproj
index cb23b32c..40c96426 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.csproj
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: ChakraCore for Linux (x64)
-    3.21.0
+    3.27.3
     netstandard2.0
   
 
@@ -11,12 +11,11 @@
   
 
   
-    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore version of January 26, 2023 for Linux (x64).
-
-This package is only compatible with .NET Core.
-    $(PackageCommonTags);ChakraCore;Linux;x64
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
-    ChakraCore was updated to version of January 26, 2023.
+    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore for Linux (x64).
+    $(PackageCommonTags);ChakraCore;Linux;x64
+    ChakraCore was updated to version of August 1, 2024.
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.nuspec b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.nuspec
index 3a5890de..d5a1567f 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.nuspec
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64.nuspec
@@ -1,12 +1,11 @@
 
-
+
   
     $CommonMetadataElements$
   
   
     $CommonFileElements$
     
-    
-    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..202c0c2b
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,3 @@
+This package complements the [JavaScriptEngineSwitcher.ChakraCore](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore) package and contains the native implementation of [ChakraCore](https://github.com/chakra-core/ChakraCore) version of August 1, 2024 for Linux (x64).
+
+This package is only compatible with .NET Core.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/readme.txt b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/readme.txt
index 3a26e0d8..fd2f8f3c 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/readme.txt
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64/readme.txt
@@ -1,18 +1,18 @@
 
 
    --------------------------------------------------------------------------------
-         README file for JS Engine Switcher: ChakraCore for Linux x64 v3.21.0
+         README file for JS Engine Switcher: ChakraCore for Linux x64 v3.27.3
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package complements the JavaScriptEngineSwitcher.ChakraCore package and
-   contains the native implementation of ChakraCore version of January 26, 2023
+   contains the native implementation of ChakraCore version of August 1, 2024
    for Linux (x64).
 
    This package is only compatible with .NET Core.
@@ -20,7 +20,7 @@
    =============
    RELEASE NOTES
    =============
-   ChakraCore was updated to version of January 26, 2023.
+   ChakraCore was updated to version of August 1, 2024.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.csproj b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.csproj
index 01a3c9a0..16d5be07 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.csproj
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: ChakraCore for OS X (x64)
-    3.21.0
+    3.27.3
     netstandard2.0
   
 
@@ -11,12 +11,11 @@
   
 
   
-    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore version of January 26, 2023 for OS X (x64).
-
-This package is only compatible with .NET Core.
-    $(PackageCommonTags);ChakraCore;macOS;OSX;x64
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
-    ChakraCore was updated to version of January 26, 2023.
+    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore for OS X (x64).
+    $(PackageCommonTags);ChakraCore;macOS;OSX;x64
+    ChakraCore was updated to version of August 1, 2024.
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.nuspec b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.nuspec
index 1c927fed..a9105540 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.nuspec
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64.nuspec
@@ -1,12 +1,11 @@
 
-
+
   
     $CommonMetadataElements$
   
   
     $CommonFileElements$
     
-    
-    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..910cd8d8
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,3 @@
+This package complements the [JavaScriptEngineSwitcher.ChakraCore](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore) package and contains the native implementation of [ChakraCore](https://github.com/chakra-core/ChakraCore) version of August 1, 2024 for OS X (x64).
+
+This package is only compatible with .NET Core.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/readme.txt b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/readme.txt
index d40b3267..2b84ec5b 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/readme.txt
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64/readme.txt
@@ -1,18 +1,18 @@
 
 
    --------------------------------------------------------------------------------
-         README file for JS Engine Switcher: ChakraCore for OS X x64 v3.21.0
+         README file for JS Engine Switcher: ChakraCore for OS X x64 v3.27.3
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package complements the JavaScriptEngineSwitcher.ChakraCore package and
-   contains the native implementation of ChakraCore version of January 26, 2023
+   contains the native implementation of ChakraCore version of August 1, 2024
    for OS X (x64).
 
    This package is only compatible with .NET Core.
@@ -20,7 +20,7 @@
    =============
    RELEASE NOTES
    =============
-   ChakraCore was updated to version of January 26, 2023.
+   ChakraCore was updated to version of August 1, 2024.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.csproj b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.csproj
index 43532cbc..4c281d94 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.csproj
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: ChakraCore for Windows (ARM)
-    3.21.0
+    3.27.3
     netstandard2.0
   
 
@@ -11,12 +11,11 @@
   
 
   
-    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore version of January 26, 2023 for Windows (ARM).
-
-This package is only compatible with .NET Core and .NET Framework 4.5.
-    $(PackageCommonTags);ChakraCore;Windows;ARM
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
-    ChakraCore was updated to version of January 26, 2023.
+    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore for Windows (ARM).
+    $(PackageCommonTags);ChakraCore;Windows;ARM
+    ChakraCore was updated to version of August 1, 2024.
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.nuspec b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.nuspec
index a947ac29..bd55ce3c 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.nuspec
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.nuspec
@@ -1,5 +1,5 @@
 
-
+
   
     $CommonMetadataElements$
   
@@ -9,7 +9,6 @@
     
     
     
-    
-    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..0e15d877
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,3 @@
+This package complements the [JavaScriptEngineSwitcher.ChakraCore](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore) package and contains the native implementation of [ChakraCore](https://github.com/chakra-core/ChakraCore) version of August 1, 2024 for Windows (ARM).
+
+This package is only compatible with .NET Core and .NET Framework 4.5.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.props b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.props
index 2e821127..bedb5851 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.props
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm.props
@@ -1,10 +1,16 @@
 
-
+
   
-    
+    
       arm/%(Filename)%(Extension)
       PreserveNewest
       False
     
+
+    
+      %(Filename)%(Extension)
+      PreserveNewest
+      False
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/readme.txt b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/readme.txt
index 6e20d155..5f8ec868 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/readme.txt
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm/readme.txt
@@ -1,18 +1,18 @@
 
 
    --------------------------------------------------------------------------------
-        README file for JS Engine Switcher: ChakraCore for Windows ARM v3.21.0
+        README file for JS Engine Switcher: ChakraCore for Windows ARM v3.27.3
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package complements the JavaScriptEngineSwitcher.ChakraCore package and
-   contains the native implementation of ChakraCore version of January 26, 2023
+   contains the native implementation of ChakraCore version of August 1, 2024
    for Windows (ARM).
 
    This package is only compatible with .NET Core and .NET Framework 4.5.
@@ -20,7 +20,7 @@
    =============
    RELEASE NOTES
    =============
-   ChakraCore was updated to version of January 26, 2023.
+   ChakraCore was updated to version of August 1, 2024.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.csproj b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.csproj
index 03d9e5c6..8e1d3262 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.csproj
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: ChakraCore for Windows (ARM64)
-    3.21.0
+    3.27.3
     netstandard2.0
   
 
@@ -11,12 +11,11 @@
   
 
   
-    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore version of January 26, 2023 for Windows (ARM64).
-
-This package is only compatible with .NET Core and .NET Framework 4.5.
-    $(PackageCommonTags);ChakraCore;Windows;ARM64
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
-    ChakraCore was updated to version of January 26, 2023.
+    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore for Windows (ARM64).
+    $(PackageCommonTags);ChakraCore;Windows;ARM64
+    ChakraCore was updated to version of August 1, 2024.
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.nuspec b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.nuspec
index 9a929187..be7a9192 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.nuspec
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.nuspec
@@ -1,5 +1,5 @@
 
-
+
   
     $CommonMetadataElements$
   
@@ -9,7 +9,6 @@
     
     
     
-    
-    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..70ef2878
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,3 @@
+This package complements the [JavaScriptEngineSwitcher.ChakraCore](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore) package and contains the native implementation of [ChakraCore](https://github.com/chakra-core/ChakraCore) version of August 1, 2024 for Windows (ARM64).
+
+This package is only compatible with .NET Core and .NET Framework 4.5.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.props b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.props
index 83a3b254..f783db92 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.props
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64.props
@@ -1,10 +1,16 @@
 
-
+
   
-    
+    
       arm64/%(Filename)%(Extension)
       PreserveNewest
       False
     
+
+    
+      %(Filename)%(Extension)
+      PreserveNewest
+      False
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/readme.txt b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/readme.txt
index 45ead7bd..d6809f35 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/readme.txt
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64/readme.txt
@@ -1,18 +1,18 @@
 
 
    --------------------------------------------------------------------------------
-       README file for JS Engine Switcher: ChakraCore for Windows ARM64 v3.21.0
+       README file for JS Engine Switcher: ChakraCore for Windows ARM64 v3.27.3
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package complements the JavaScriptEngineSwitcher.ChakraCore package and
-   contains the native implementation of ChakraCore version of January 26, 2023
+   contains the native implementation of ChakraCore version of August 1, 2024
    for Windows (ARM64).
 
    This package is only compatible with .NET Core and .NET Framework 4.5.
@@ -20,7 +20,7 @@
    =============
    RELEASE NOTES
    =============
-   ChakraCore was updated to version of January 26, 2023.
+   ChakraCore was updated to version of August 1, 2024.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.csproj b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.csproj
index 62efb0c6..26562fe9 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.csproj
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: ChakraCore for Windows (x64)
-    3.21.0
+    3.27.3
     netstandard2.0
   
 
@@ -11,10 +11,11 @@
   
 
   
-    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore version of January 26, 2023 for Windows (x64).
-    $(PackageCommonTags);ChakraCore;Windows;x64
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
-    ChakraCore was updated to version of January 26, 2023.
+    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore for Windows (x64).
+    $(PackageCommonTags);ChakraCore;Windows;x64
+    ChakraCore was updated to version of August 1, 2024.
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.nuspec b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.nuspec
index 59d49552..dd6618a8 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.nuspec
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.nuspec
@@ -1,5 +1,5 @@
 
-
+
   
     $CommonMetadataElements$
   
@@ -9,7 +9,6 @@
     
     
     
-    
-    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..0cd8c83c
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/PACKAGE-DESCRIPTION.md
@@ -0,0 +1 @@
+This package complements the [JavaScriptEngineSwitcher.ChakraCore](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore) package and contains the native implementation of [ChakraCore](https://github.com/chakra-core/ChakraCore) version of August 1, 2024 for Windows (x64).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.props b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.props
index eb04ff0a..5a187768 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.props
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64.props
@@ -1,10 +1,16 @@
 
-
+
   
-    
+    
       x64/%(Filename)%(Extension)
       PreserveNewest
       False
     
+
+    
+      %(Filename)%(Extension)
+      PreserveNewest
+      False
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/readme.txt b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/readme.txt
index b09dfd0f..6ac75fb7 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/readme.txt
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64/readme.txt
@@ -1,24 +1,24 @@
 
 
    --------------------------------------------------------------------------------
-        README file for JS Engine Switcher: ChakraCore for Windows x64 v3.21.0
+        README file for JS Engine Switcher: ChakraCore for Windows x64 v3.27.3
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package complements the JavaScriptEngineSwitcher.ChakraCore package and
-   contains the native implementation of ChakraCore version of January 26, 2023
+   contains the native implementation of ChakraCore version of August 1, 2024
    for Windows (x64).
 
    =============
    RELEASE NOTES
    =============
-   ChakraCore was updated to version of January 26, 2023.
+   ChakraCore was updated to version of August 1, 2024.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.csproj b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.csproj
index a04ba2b8..b90cd8f5 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.csproj
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: ChakraCore for Windows (x86)
-    3.21.0
+    3.27.3
     netstandard2.0
   
 
@@ -11,10 +11,11 @@
   
 
   
-    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore version of January 26, 2023 for Windows (x86).
-    $(PackageCommonTags);ChakraCore;Windows;x86
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
-    ChakraCore was updated to version of January 26, 2023.
+    This package complements the JavaScriptEngineSwitcher.ChakraCore package and contains the native implementation of ChakraCore for Windows (x86).
+    $(PackageCommonTags);ChakraCore;Windows;x86
+    ChakraCore was updated to version of August 1, 2024.
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.nuspec b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.nuspec
index 7f3f7f23..8b0bc5e3 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.nuspec
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.nuspec
@@ -1,5 +1,5 @@
 
-
+
   
     $CommonMetadataElements$
   
@@ -9,7 +9,6 @@
     
     
     
-    
-    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..b6951ff8
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/PACKAGE-DESCRIPTION.md
@@ -0,0 +1 @@
+This package complements the [JavaScriptEngineSwitcher.ChakraCore](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore) package and contains the native implementation of [ChakraCore](https://github.com/chakra-core/ChakraCore) version of August 1, 2024 for Windows (x86).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.props b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.props
index 21d78888..be3fd380 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.props
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/build/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86.props
@@ -1,10 +1,16 @@
 
-
+
   
-    
+    
       x86/%(Filename)%(Extension)
       PreserveNewest
       False
     
+
+    
+      %(Filename)%(Extension)
+      PreserveNewest
+      False
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/readme.txt b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/readme.txt
index 58c24f4b..ff0c8d12 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/readme.txt
+++ b/src/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86/readme.txt
@@ -1,24 +1,24 @@
 
 
    --------------------------------------------------------------------------------
-        README file for JS Engine Switcher: ChakraCore for Windows x86 v3.21.0
+        README file for JS Engine Switcher: ChakraCore for Windows x86 v3.27.3
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package complements the JavaScriptEngineSwitcher.ChakraCore package and
-   contains the native implementation of ChakraCore version of January 26, 2023
+   contains the native implementation of ChakraCore version of August 1, 2024
    for Windows (x86).
 
    =============
    RELEASE NOTES
    =============
-   ChakraCore was updated to version of January 26, 2023.
+   ChakraCore was updated to version of August 1, 2024.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore/ChakraCoreJsEngine.cs b/src/JavaScriptEngineSwitcher.ChakraCore/ChakraCoreJsEngine.cs
index f2983c9e..9a545b96 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore/ChakraCoreJsEngine.cs
+++ b/src/JavaScriptEngineSwitcher.ChakraCore/ChakraCoreJsEngine.cs
@@ -53,7 +53,7 @@ public sealed class ChakraCoreJsEngine : JsEngineBase
 		/// 
 		/// Version of original JS engine
 		/// 
-		private const string EngineVersion = "Jan 26, 2023";
+		private const string EngineVersion = "Aug 1, 2024";
 
 		/// 
 		/// Instance of JS runtime
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore/JavaScriptEngineSwitcher.ChakraCore.csproj b/src/JavaScriptEngineSwitcher.ChakraCore/JavaScriptEngineSwitcher.ChakraCore.csproj
index 1305d645..6ec88163 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore/JavaScriptEngineSwitcher.ChakraCore.csproj
+++ b/src/JavaScriptEngineSwitcher.ChakraCore/JavaScriptEngineSwitcher.ChakraCore.csproj
@@ -2,13 +2,14 @@
 
   
     JS Engine Switcher: ChakraCore
-    3.23.7
+    3.27.3
     net40-client;net45;net471;netstandard1.3;netstandard2.0;netstandard2.1
     1.6.0
     Library
     true
     true
-    $(NoWarn);CS1591
+    $(NoWarn);CS1591;NETSDK1215;NU1903
+    false
     true
     true
   
@@ -19,31 +20,22 @@
   
 
   
-    JavaScriptEngineSwitcher.ChakraCore contains adapter `ChakraCoreJsEngine` (wrapper for the ChakraCore (https://github.com/chakra-core/ChakraCore)). Project was based on the code of Chakra-Samples (https://github.com/Microsoft/Chakra-Samples) and jsrt-dotnet (https://github.com/robpaveza/jsrt-dotnet).
-
-This package does not contain the native implementations of ChakraCore. Therefore, you need to choose and install the most appropriate package(s) for your platform. The following packages are available:
-
- * JavaScriptEngineSwitcher.ChakraCore.Native.win-x86
- * JavaScriptEngineSwitcher.ChakraCore.Native.win-x64
- * JavaScriptEngineSwitcher.ChakraCore.Native.win-arm
- * JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64
- * JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64
- * JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64
-    $(PackageCommonTags);ChakraCore
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_ChakraCore_Logo128x128.png
-    Fixed a error that occurred in the `ReflectionHelpers.IsAllowedProperty` method when running on .NET Core 1.0.
+    JavaScriptEngineSwitcher.ChakraCore contains a `ChakraCoreJsEngine` adapter (wrapper for the ChakraCore).
+    $(PackageCommonTags);ChakraCore
+    ChakraCore was updated to version of August 1, 2024.
   
 
   
-    
     
 
     
   
 
   
-    
-    
+    
+    
   
 
   
@@ -64,31 +56,9 @@ This package does not contain the native implementations of ChakraCore. Therefor
   
 
   
-    
-      advanced-string-builder-license.txt
-      true
-      false
-    
-    
-      chakra-samples-license.txt
-      true
-      false
-    
-    
-      jsrt-dotnet-license.txt
-      true
-      false
-    
-    
-      polyfills-for-old-dot-net-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
+    
+    
   
 
   
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.ChakraCore/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..7ba63673
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.ChakraCore/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,13 @@
+JavaScriptEngineSwitcher.ChakraCore contains a `ChakraCoreJsEngine` adapter (wrapper for the [ChakraCore](https://github.com/chakra-core/ChakraCore)).
+Project was based on the code of [Chakra-Samples](https://github.com/Microsoft/Chakra-Samples) and [jsrt-dotnet](https://github.com/robpaveza/jsrt-dotnet).
+
+This package does not contain the native implementations of ChakraCore.
+Therefore, you need to choose and install the most appropriate package(s) for your platform.
+The following packages are available:
+
+ * [JavaScriptEngineSwitcher.ChakraCore.Native.win-x86](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.win-x86)
+ * [JavaScriptEngineSwitcher.ChakraCore.Native.win-x64](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.win-x64)
+ * [JavaScriptEngineSwitcher.ChakraCore.Native.win-arm](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm)
+ * [JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.win-arm64)
+ * [JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64)
+ * [JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64](https://www.nuget.org/packages/JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64)
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.ChakraCore/readme.txt b/src/JavaScriptEngineSwitcher.ChakraCore/readme.txt
index af2a0ead..c7484b48 100644
--- a/src/JavaScriptEngineSwitcher.ChakraCore/readme.txt
+++ b/src/JavaScriptEngineSwitcher.ChakraCore/readme.txt
@@ -1,7 +1,7 @@
 
 
    --------------------------------------------------------------------------------
-                README file for JS Engine Switcher: ChakraCore v3.23.7
+                README file for JS Engine Switcher: ChakraCore v3.27.3
 
    --------------------------------------------------------------------------------
 
@@ -11,7 +11,7 @@
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.ChakraCore contains adapter `ChakraCoreJsEngine`
+   JavaScriptEngineSwitcher.ChakraCore contains a `ChakraCoreJsEngine` adapter
    (wrapper for the ChakraCore (https://github.com/chakra-core/ChakraCore)).
    Project was based on the code of Chakra-Samples
    (https://github.com/Microsoft/Chakra-Samples) and jsrt-dotnet
@@ -31,8 +31,7 @@
    =============
    RELEASE NOTES
    =============
-   Fixed a error that occurred in the `ReflectionHelpers.IsAllowedProperty` method
-   when running on .NET Core 1.0.
+   ChakraCore was updated to version of August 1, 2024.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.Core/JavaScriptEngineSwitcher.Core.csproj b/src/JavaScriptEngineSwitcher.Core/JavaScriptEngineSwitcher.Core.csproj
index 64ddbea2..911456c6 100644
--- a/src/JavaScriptEngineSwitcher.Core/JavaScriptEngineSwitcher.Core.csproj
+++ b/src/JavaScriptEngineSwitcher.Core/JavaScriptEngineSwitcher.Core.csproj
@@ -2,12 +2,13 @@
 
   
     JS Engine Switcher: Core
-    3.24.0
+    3.24.1
     net40-client;net45;netstandard1.3;netstandard2.0
     1.6.0
     Library
     true
-    $(NoWarn);CS1591
+    $(NoWarn);CS1591;NETSDK1215;NU1903
+    false
     true
     true
   
@@ -18,14 +19,14 @@
   
 
   
-    JavaScript Engine Switcher determines unified interface for access to the basic features of popular JavaScript engines (ChakraCore, Jint, Jurassic, MSIE JavaScript Engine for .NET, NiL.JS, Jering.Javascript.NodeJS, Microsoft ClearScript.V8, VroomJs and YantraJS). This library allows you to quickly and easily switch to using of another JavaScript engine.
-    $(PackageCommonTags)
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Core_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_Core_Logo128x128.png
-    In the `JsEngineSwitcher` class was added the `AllowCurrentProperty` property (default `true`).
+    JavaScript Engine Switcher determines unified interface for access to the basic features of popular JavaScript engines. This library allows you to quickly and easily switch to using of another JavaScript engine.
+    $(PackageCommonTags)
   
 
   
-    
+    
     
   
 
@@ -34,16 +35,7 @@
   
 
   
-    
-      advanced-string-builder-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
   
 
   
diff --git a/src/JavaScriptEngineSwitcher.Core/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Core/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..663374d6
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Core/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,2 @@
+JavaScript Engine Switcher determines unified interface for access to the basic features of popular JavaScript engines ([ChakraCore](https://github.com/chakra-core/ChakraCore), [Jint](https://github.com/sebastienros/jint), [Jurassic](https://github.com/paulbartrum/jurassic), [MSIE JavaScript Engine for .NET](https://github.com/Taritsyn/MsieJavaScriptEngine), [NiL.JS](https://github.com/nilproject/NiL.JS), [Jering.Javascript.NodeJS](https://github.com/JeringTech/Javascript.NodeJS), [Microsoft ClearScript.V8](https://github.com/Microsoft/ClearScript), [VroomJs](https://github.com/pauldotknopf/vroomjs-core) and [YantraJS](https://yantrajs.com/)).
+This library allows you to quickly and easily switch to using of another JavaScript engine.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Core/readme.txt b/src/JavaScriptEngineSwitcher.Core/readme.txt
index 141383f9..cf5e35d8 100644
--- a/src/JavaScriptEngineSwitcher.Core/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Core/readme.txt
@@ -1,7 +1,7 @@
 
 
    --------------------------------------------------------------------------------
-                    README file for JS Engine Switcher: Core v3.24.0
+                    README file for JS Engine Switcher: Core v3.24.1
 
    --------------------------------------------------------------------------------
 
@@ -17,12 +17,6 @@
    ClearScript.V8, VroomJs and YantraJS). This library allows you to quickly and
    easily switch to using of another JavaScript engine.
 
-   =============
-   RELEASE NOTES
-   =============
-   In the `JsEngineSwitcher` class was added the `AllowCurrentProperty` property
-   (default `true`).
-
    =============
    DOCUMENTATION
    =============
diff --git a/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection.csproj b/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection.csproj
index a2757d72..906de85a 100644
--- a/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection.csproj
+++ b/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection.csproj
@@ -2,12 +2,13 @@
 
   
     JS Engine Switcher: MS Dependency Injection
-    3.24.0
+    3.24.1
     net45;netstandard1.3;netstandard2.0
     1.6.0
     Library
     true
-    $(NoWarn);CS1591
+    $(NoWarn);CS1591;NETSDK1215;NU1903
+    false
     true
   
 
@@ -16,11 +17,10 @@
   
 
   
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Extensions_MsDependencyInjection_Logo128x128.png
+    ../../Icons/JavaScriptEngineSwitcher_Extensions_MsDependencyInjection_Logo128x128.png
     JavaScriptEngineSwitcher.Extensions.MsDependencyInjection contains extension methods for adding the JS engine switcher in an `IServiceCollection`.
     $(PackageCommonTags);DI
-    ../../Icons/JavaScriptEngineSwitcher_Extensions_MsDependencyInjection_Logo128x128.png
-    1. `AddJsEngineSwitcher(Action<IJsEngineSwitcher>)` and `AddJsEngineSwitcher(IJsEngineSwitcher, Action<IJsEngineSwitcher>)` extension methods are replaced by new methods accordingly: `AddJsEngineSwitcher(Action<JsEngineSwitcherOptions>)` and `AddJsEngineSwitcher(IJsEngineSwitcher, Action<JsEngineSwitcherOptions>)`;
-2. `AllowCurrentProperty` property of `JsEngineSwitcherOptions` class allows to forbid usage of the `JsEngineSwitcher.Current` property. This feature can be used to fix a error #115 “Concurrency issue when initializing JS engine switcher in startup”. Special thanks to Ville Häkli.
   
 
   
@@ -35,11 +35,4 @@
     
   
 
-  
-    
-      readme.txt
-      true
-    
-  
-
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..95b60008
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/PACKAGE-DESCRIPTION.md
@@ -0,0 +1 @@
+JavaScriptEngineSwitcher.Extensions.MsDependencyInjection contains extension methods for adding the JS engine switcher in an `IServiceCollection`.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/readme.txt b/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/readme.txt
index 864c0d55..a4b6267d 100644
--- a/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Extensions.MsDependencyInjection/readme.txt
@@ -1,7 +1,7 @@
 
 
    --------------------------------------------------------------------------------
-          README file for JS Engine Switcher: MS Dependency Injection v3.24.0
+          README file for JS Engine Switcher: MS Dependency Injection v3.24.1
 
    --------------------------------------------------------------------------------
 
@@ -14,19 +14,6 @@
    JavaScriptEngineSwitcher.Extensions.MsDependencyInjection contains extension
    methods for adding the JS engine switcher in an `IServiceCollection`.
 
-   =============
-   RELEASE NOTES
-   =============
-   1. `AddJsEngineSwitcher(Action)` and
-      `AddJsEngineSwitcher(IJsEngineSwitcher, Action)`
-      extension methods are replaced by new methods accordingly:
-      `AddJsEngineSwitcher(Action)` and
-      `AddJsEngineSwitcher(IJsEngineSwitcher, Action)`;
-   2. `AllowCurrentProperty` property of `JsEngineSwitcherOptions` class allows to
-      forbid usage of the `JsEngineSwitcher.Current` property. This feature can be
-      used to fix a error #115 “Concurrency issue when initializing JS engine
-      switcher in startup”. Special thanks to Ville Häkli.
-
    =============
    DOCUMENTATION
    =============
diff --git a/src/JavaScriptEngineSwitcher.Jint/Helpers/JintJsErrorHelpers.cs b/src/JavaScriptEngineSwitcher.Jint/Helpers/JintJsErrorHelpers.cs
index 8e30d877..af37c9df 100644
--- a/src/JavaScriptEngineSwitcher.Jint/Helpers/JintJsErrorHelpers.cs
+++ b/src/JavaScriptEngineSwitcher.Jint/Helpers/JintJsErrorHelpers.cs
@@ -24,27 +24,45 @@ internal static class JintJsErrorHelpers
 		private const string WrapperAnonymousFunctionName = "Anonymous function";
 		private const string DelegateFunctionName = "delegate";
 
+		/// 
+		/// Pattern for working with document names with coordinates
+		/// 
+		private static readonly string DocumentNameWithCoordinatesPattern =
+			@"(?" + CommonRegExps.DocumentNamePattern + @"):" +
+			@"(?\d+)(?::(?\d+))?";
+
 		/// 
 		/// Regular expression for working with line of the script error location
 		/// 
 		private static readonly Regex _errorLocationLineRegex =
-			new Regex(@"^[ ]{3}at " +
+			new Regex(@"^[ ]{4}at " +
 				@"(?:" +
-					@"(?:" +
-						@"(?" +
-							@"[\w][\w ]*" +
-							@"|" +
-							CommonRegExps.JsFullNamePattern +
-							@"|" +
-							Regex.Escape(OriginalAnonymousFunctionName) +
-						@") " +
-						@"\((?:" + CommonRegExps.JsFullNamePattern + @"(?:, " + CommonRegExps.JsFullNamePattern + @")*)?\)" +
+					@"(?" +
+						@"[\w][\w ]*" +
+						@"|" +
+						CommonRegExps.JsFullNamePattern +
 						@"|" +
-						@"(?" + Regex.Escape(DelegateFunctionName) + @")" +
+						Regex.Escape(OriginalAnonymousFunctionName) +
 					@") " +
-				@")?" +
-				@"(?" + CommonRegExps.DocumentNamePattern + @"):" +
-				@"(?\d+)(?::(?\d+))?$");
+					@"\(" + DocumentNameWithCoordinatesPattern + @"\)" +
+					@"|" +
+					DocumentNameWithCoordinatesPattern +
+				@")" +
+			"$");
+
+		/// 
+		/// Regular expression for working with the syntax error message
+		/// 
+		private static readonly Regex _syntaxErrorMessageRegex =
+			new Regex(@"^(?[\s\S]+?) \(" + CommonRegExps.DocumentNamePattern + @":\d+:\d+\)$");
+
+		/// 
+		/// Regular expression for working with the script preparation error message
+		/// 
+		private static readonly Regex _scriptPreparationErrorMessageRegex =
+			new Regex(@"^Could not prepare script: (?[\s\S]+?) " +
+				@"\((?" + CommonRegExps.DocumentNamePattern + @"):" +
+				@"(?\d+):(?\d+)\)$");
 
 
 		/// 
@@ -152,6 +170,50 @@ public static string ConvertCallChainToStack(string callChain)
 			return callStack;
 		}
 
+		/// 
+		/// Gets a description from the syntax error message
+		/// 
+		/// Error message
+		/// Description of error
+		public static string GetDescriptionFromSyntaxErrorMessage(string message)
+		{
+			Match messageMatch = _syntaxErrorMessageRegex.Match(message);
+			string description = messageMatch.Success ?
+				messageMatch.Groups["description"].Value : message;
+
+			return description;
+		}
+
+		/// 
+		/// Parses a script preparation error message
+		/// 
+		/// Error message
+		/// Description of error
+		/// Script error location
+		public static void ParseScriptPreparationErrorMessage(string message, out string description,
+			out ErrorLocationItem errorLocation)
+		{
+			Match messageMatch = _scriptPreparationErrorMessageRegex.Match(message);
+
+			if (messageMatch.Success)
+			{
+				GroupCollection messageGroups = messageMatch.Groups;
+
+				description = messageGroups["description"].Value;
+				errorLocation = new ErrorLocationItem
+				{
+					DocumentName = messageGroups["documentName"].Value,
+					LineNumber = int.Parse(messageGroups["lineNumber"].Value),
+					ColumnNumber = int.Parse(messageGroups["columnNumber"].Value)
+				};
+			}
+			else
+			{
+				description = message;
+				errorLocation = new ErrorLocationItem();
+			}
+		}
+
 		#endregion
 	}
 }
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj b/src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj
index 9cf7f70c..600738b9 100644
--- a/src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj
+++ b/src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj
@@ -2,11 +2,12 @@
 
   
     JS Engine Switcher: Jint
-    3.23.9
-    net462;netstandard2.0;netstandard2.1;net6.0;net8.0
+    3.30.2
+    net462;netstandard2.0;netstandard2.1;net8.0
     Library
     true
     $(NoWarn);CS1591;NU5104
+    false
     true
     true
   
@@ -17,35 +18,21 @@
   
 
   
-    JavaScriptEngineSwitcher.Jint contains adapter `JintJsEngine` (wrapper for the Jint JavaScript Engine (http://github.com/sebastienros/jint) version 3.0.0).
-    $(PackageCommonTags);Jint
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Jint_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_Jint_Logo128x128.png
-    Jint was updated to version 3.0.0.
+    JavaScriptEngineSwitcher.Jint contains a `JintJsEngine` adapter (wrapper for the Jint).
+    $(PackageCommonTags);Jint
+    Jint was updated to version 4.4.2.
   
 
   
-    
-    
+    
 
     
   
 
   
-    
-      advanced-string-builder-license.txt
-      true
-      false
-    
-    
-      jint-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Jint/JintJsEngine.cs b/src/JavaScriptEngineSwitcher.Jint/JintJsEngine.cs
index bf33b765..dd1f80ab 100644
--- a/src/JavaScriptEngineSwitcher.Jint/JintJsEngine.cs
+++ b/src/JavaScriptEngineSwitcher.Jint/JintJsEngine.cs
@@ -7,15 +7,15 @@
 using OriginalDebuggerEventHandler = Jint.Runtime.Debugger.DebugHandler.DebugEventHandler;
 using OriginalDebuggerStatementHandlingMode = Jint.Runtime.Debugger.DebuggerStatementHandling;
 using OriginalEngine = Jint.Engine;
-using OriginalErrorPosition = Esprima.Position;
+using OriginalErrorPosition = Acornima.Position;
 using OriginalExecutionCanceledException = Jint.Runtime.ExecutionCanceledException;
+using OriginalException = Jint.JintException;
 using OriginalJavaScriptException = Jint.Runtime.JavaScriptException;
 using OriginalMemoryLimitExceededException = Jint.Runtime.MemoryLimitExceededException;
 using OriginalObjectInstance = Jint.Native.Object.ObjectInstance;
-using OriginalParsedScript = Esprima.Ast.Script;
-using OriginalParserException = Esprima.ParserException;
+using OriginalParsedScript = Jint.Prepared;
 using OriginalRecursionDepthOverflowException = Jint.Runtime.RecursionDepthOverflowException;
-using OriginalRuntimeException = Jint.Runtime.JintException;
+using OriginalScriptPreparationException = Jint.ScriptPreparationException;
 using OriginalStatementsCountOverflowException = Jint.Runtime.StatementsCountOverflowException;
 using OriginalTypeReference = Jint.Runtime.Interop.TypeReference;
 using OriginalTypes = Jint.Runtime.Types;
@@ -30,6 +30,7 @@
 using WrapperCompilationException = JavaScriptEngineSwitcher.Core.JsCompilationException;
 using WrapperInterruptedException = JavaScriptEngineSwitcher.Core.JsInterruptedException;
 using WrapperRuntimeException = JavaScriptEngineSwitcher.Core.JsRuntimeException;
+using WrapperScriptException = JavaScriptEngineSwitcher.Core.JsScriptException;
 using WrapperTimeoutException = JavaScriptEngineSwitcher.Core.JsTimeoutException;
 using WrapperUsageException = JavaScriptEngineSwitcher.Core.JsUsageException;
 
@@ -50,7 +51,7 @@ public sealed class JintJsEngine : JsEngineBase
 		/// 
 		/// Version of original JS engine
 		/// 
-		private const string EngineVersion = "3.0.0";
+		private const string EngineVersion = "4.4.2";
 
 		/// 
 		/// Jint JS engine
@@ -201,33 +202,10 @@ private object MapToHostType(OriginalValue value)
 			return value.ToObject();
 		}
 
-		private static WrapperCompilationException WrapParserException(OriginalParserException originalParserException)
+		private WrapperScriptException WrapException(OriginalException originalException)
 		{
-			string description = originalParserException.Description;
-			string type = JsErrorType.Syntax;
-			string documentName = originalParserException.SourceLocation ?? string.Empty;
-			int lineNumber = originalParserException.LineNumber;
-			int columnNumber = originalParserException.Column;
-			string message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, documentName, lineNumber,
-				columnNumber);
-
-			var wrapperCompilationException = new WrapperCompilationException(message, EngineName, EngineVersion,
-				originalParserException)
-			{
-				Description = description,
-				Type = type,
-				DocumentName = documentName,
-				LineNumber = lineNumber,
-				ColumnNumber = columnNumber
-			};
-
-			return wrapperCompilationException;
-		}
-
-		private WrapperRuntimeException WrapRuntimeException(OriginalRuntimeException originalRuntimeException)
-		{
-			WrapperRuntimeException wrapperRuntimeException;
-			string message = originalRuntimeException.Message;
+			WrapperScriptException wrapperScriptException;
+			string message = originalException.Message;
 			if (string.IsNullOrWhiteSpace(message))
 			{
 				message = "An unknown error occurred";
@@ -239,10 +217,10 @@ private WrapperRuntimeException WrapRuntimeException(OriginalRuntimeException or
 			int columnNumber = 0;
 			string callStack = string.Empty;
 
-			if (originalRuntimeException is OriginalJavaScriptException)
+			if (originalException is OriginalJavaScriptException)
 			{
-				var originalJavaScriptException = (OriginalJavaScriptException)originalRuntimeException;
-				documentName = originalJavaScriptException.Location.Source;
+				var originalJavaScriptException = (OriginalJavaScriptException)originalException;
+				documentName = originalJavaScriptException.Location.SourceFile;
 				OriginalErrorPosition errorPosition = originalJavaScriptException.Location.Start;
 				lineNumber = errorPosition.Line;
 				columnNumber = errorPosition.Column + 1;
@@ -272,38 +250,68 @@ private WrapperRuntimeException WrapRuntimeException(OriginalRuntimeException or
 					type = JsErrorType.Common;
 				}
 
-				message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, callStack);
-
-				wrapperRuntimeException = new WrapperRuntimeException(message, EngineName, EngineVersion,
-					originalJavaScriptException);
+				if (type == JsErrorType.Syntax)
+				{
+					description = JintJsErrorHelpers.GetDescriptionFromSyntaxErrorMessage(message);
+					message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, documentName, lineNumber,
+						columnNumber);
+					wrapperScriptException = new WrapperCompilationException(message, EngineName, EngineVersion,
+						originalJavaScriptException);
+				}
+				else
+				{
+					message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, callStack);
+					wrapperScriptException = new WrapperRuntimeException(message, EngineName, EngineVersion,
+						originalJavaScriptException)
+					{
+						CallStack = callStack
+					};
+				}
+			}
+			else if (originalException is OriginalScriptPreparationException)
+			{
+				ErrorLocationItem errorLocation;
+				JintJsErrorHelpers.ParseScriptPreparationErrorMessage(message, out description, out errorLocation);
+
+				type = JsErrorType.Syntax;
+				documentName = errorLocation.DocumentName;
+				lineNumber = errorLocation.LineNumber;
+				columnNumber = errorLocation.ColumnNumber;
+				message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, documentName, lineNumber,
+					columnNumber);
+				wrapperScriptException = new WrapperCompilationException(message, EngineName, EngineVersion,
+					originalException);
 			}
-			else if (originalRuntimeException is OriginalMemoryLimitExceededException)
+			else if (originalException is OriginalMemoryLimitExceededException)
 			{
 				type = JsErrorType.Common;
 				message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, string.Empty);
 
-				wrapperRuntimeException = new WrapperRuntimeException(message, EngineName, EngineVersion,
-					originalRuntimeException);
+				wrapperScriptException = new WrapperRuntimeException(message, EngineName, EngineVersion,
+					originalException);
 			}
-			else if (originalRuntimeException is OriginalRecursionDepthOverflowException)
+			else if (originalException is OriginalRecursionDepthOverflowException)
 			{
-				var originalRecursionException = (OriginalRecursionDepthOverflowException)originalRuntimeException;
+				var originalRecursionException = (OriginalRecursionDepthOverflowException)originalException;
 				callStack = JintJsErrorHelpers.ConvertCallChainToStack(originalRecursionException.CallChain);
 				type = JsErrorType.Range;
 				message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, callStack);
 
-				wrapperRuntimeException = new WrapperRuntimeException(message, EngineName, EngineVersion,
-					originalRecursionException);
+				wrapperScriptException = new WrapperRuntimeException(message, EngineName, EngineVersion,
+					originalRecursionException)
+				{
+					CallStack = callStack
+				};
 			}
-			else if (originalRuntimeException is OriginalStatementsCountOverflowException)
+			else if (originalException is OriginalStatementsCountOverflowException)
 			{
 				type = JsErrorType.Range;
 				message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, string.Empty);
 
-				wrapperRuntimeException = new WrapperRuntimeException(message, EngineName, EngineVersion,
-					originalRuntimeException);
+				wrapperScriptException = new WrapperRuntimeException(message, EngineName, EngineVersion,
+					originalException);
 			}
-			else if (originalRuntimeException is OriginalExecutionCanceledException)
+			else if (originalException is OriginalExecutionCanceledException)
 			{
 				_cancellationTokenSource.Dispose();
 				_cancellationTokenSource = new CancellationTokenSource();
@@ -314,26 +322,25 @@ private WrapperRuntimeException WrapRuntimeException(OriginalRuntimeException or
 				message = CoreStrings.Runtime_ScriptInterrupted;
 				description = message;
 
-				wrapperRuntimeException = new WrapperInterruptedException(message,
-					EngineName, EngineVersion, originalRuntimeException);
+				wrapperScriptException = new WrapperInterruptedException(message,
+					EngineName, EngineVersion, originalException);
 			}
 			else
 			{
 				type = JsErrorType.Common;
 				message = JsErrorHelpers.GenerateScriptErrorMessage(type, description, string.Empty);
 
-				wrapperRuntimeException = new WrapperRuntimeException(message, EngineName, EngineVersion,
-					originalRuntimeException);
+				wrapperScriptException = new WrapperRuntimeException(message, EngineName, EngineVersion,
+					originalException);
 			}
 
-			wrapperRuntimeException.Description = description;
-			wrapperRuntimeException.Type = type;
-			wrapperRuntimeException.DocumentName = documentName;
-			wrapperRuntimeException.LineNumber = lineNumber;
-			wrapperRuntimeException.ColumnNumber = columnNumber;
-			wrapperRuntimeException.CallStack = callStack;
+			wrapperScriptException.Description = description;
+			wrapperScriptException.Type = type;
+			wrapperScriptException.DocumentName = documentName;
+			wrapperScriptException.LineNumber = lineNumber;
+			wrapperScriptException.ColumnNumber = columnNumber;
 
-			return wrapperRuntimeException;
+			return wrapperScriptException;
 		}
 
 		private static WrapperTimeoutException WrapTimeoutException(TimeoutException originalTimeoutException)
@@ -368,9 +375,9 @@ protected override IPrecompiledScript InnerPrecompile(string code, string docume
 			{
 				parsedScript = OriginalEngine.PrepareScript(code, uniqueDocumentName, _strictMode);
 			}
-			catch (OriginalParserException e)
+			catch (OriginalException e)
 			{
-				throw WrapParserException(e);
+				throw WrapException(e);
 			}
 
 			return new JintPrecompiledScript(parsedScript);
@@ -394,13 +401,9 @@ protected override object InnerEvaluate(string expression, string documentName)
 				{
 					resultValue = _jsEngine.Evaluate(expression, uniqueDocumentName);
 				}
-				catch (OriginalParserException e)
-				{
-					throw WrapParserException(e);
-				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 				catch (TimeoutException e)
 				{
@@ -440,13 +443,9 @@ protected override void InnerExecute(string code, string documentName)
 				{
 					_jsEngine.Execute(code, uniqueDocumentName);
 				}
-				catch (OriginalParserException e)
-				{
-					throw WrapParserException(e);
-				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 				catch (TimeoutException e)
 				{
@@ -473,9 +472,9 @@ protected override void InnerExecute(IPrecompiledScript precompiledScript)
 				{
 					_jsEngine.Execute(jintPrecompiledScript.ParsedScript);
 				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 				catch (TimeoutException e)
 				{
@@ -496,9 +495,9 @@ protected override object InnerCallFunction(string functionName, params object[]
 				{
 					functionValue = _jsEngine.GetValue(functionName);
 				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 
 				OriginalValue resultValue;
@@ -507,9 +506,9 @@ protected override object InnerCallFunction(string functionName, params object[]
 				{
 					resultValue = _jsEngine.Invoke(functionValue, args);
 				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 				catch (TimeoutException e)
 				{
@@ -566,9 +565,9 @@ protected override object InnerGetVariableValue(string variableName)
 				{
 					variableValue = _jsEngine.GetValue(variableName);
 				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 
 				result = MapToHostType(variableValue);
@@ -594,9 +593,9 @@ protected override void InnerSetVariableValue(string variableName, object value)
 				{
 					_jsEngine.SetValue(variableName, processedValue);
 				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 			}
 		}
@@ -616,9 +615,9 @@ protected override void InnerEmbedHostObject(string itemName, object value)
 				{
 					_jsEngine.SetValue(itemName, processedValue);
 				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 			}
 		}
@@ -633,9 +632,9 @@ protected override void InnerEmbedHostType(string itemName, Type type)
 				{
 					_jsEngine.SetValue(itemName, typeReference);
 				}
-				catch (OriginalRuntimeException e)
+				catch (OriginalException e)
 				{
-					throw WrapRuntimeException(e);
+					throw WrapException(e);
 				}
 			}
 		}
diff --git a/src/JavaScriptEngineSwitcher.Jint/JintPrecompiledScript.cs b/src/JavaScriptEngineSwitcher.Jint/JintPrecompiledScript.cs
index f30b9423..0d36e5b9 100644
--- a/src/JavaScriptEngineSwitcher.Jint/JintPrecompiledScript.cs
+++ b/src/JavaScriptEngineSwitcher.Jint/JintPrecompiledScript.cs
@@ -1,4 +1,4 @@
-using OriginalParsedScript = Esprima.Ast.Script;
+using OriginalParsedScript = Jint.Prepared;
 
 using JavaScriptEngineSwitcher.Core;
 
diff --git a/src/JavaScriptEngineSwitcher.Jint/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Jint/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..9c58f953
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Jint/PACKAGE-DESCRIPTION.md
@@ -0,0 +1 @@
+JavaScriptEngineSwitcher.Jint contains a `JintJsEngine` adapter (wrapper for the [Jint](http://github.com/sebastienros/jint) version 4.4.2).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Jint/readme.txt b/src/JavaScriptEngineSwitcher.Jint/readme.txt
index 921dbcd9..02775102 100644
--- a/src/JavaScriptEngineSwitcher.Jint/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Jint/readme.txt
@@ -1,24 +1,23 @@
 
 
    --------------------------------------------------------------------------------
-                   README file for JS Engine Switcher: Jint v3.23.9
+                   README file for JS Engine Switcher: Jint v3.30.2
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.Jint contains adapter `JintJsEngine` (wrapper for the
-   Jint JavaScript Engine (http://github.com/sebastienros/jint) version
-   3.0.0).
+   JavaScriptEngineSwitcher.Jint contains a `JintJsEngine` adapter (wrapper for the
+   Jint (http://github.com/sebastienros/jint) version 4.4.2).
 
    =============
    RELEASE NOTES
    =============
-   Jint was updated to version 3.0.0.
+   Jint was updated to version 4.4.2.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.Jurassic/JavaScriptEngineSwitcher.Jurassic.csproj b/src/JavaScriptEngineSwitcher.Jurassic/JavaScriptEngineSwitcher.Jurassic.csproj
index 6cb35f4e..d2bf3a2b 100644
--- a/src/JavaScriptEngineSwitcher.Jurassic/JavaScriptEngineSwitcher.Jurassic.csproj
+++ b/src/JavaScriptEngineSwitcher.Jurassic/JavaScriptEngineSwitcher.Jurassic.csproj
@@ -2,11 +2,12 @@
 
   
     JS Engine Switcher: Jurassic
-    3.23.3
+    3.29.0
     net40-client;net45;netstandard2.0
     Library
     true
     $(NoWarn);CS1591
+    false
     true
   
 
@@ -16,29 +17,21 @@
   
 
   
-    JavaScriptEngineSwitcher.Jurassic contains adapter `JurassicJsEngine` (wrapper for the Jurassic JavaScript Engine (http://github.com/paulbartrum/jurassic) version of November 1, 2023).
-    $(PackageCommonTags);Jurassic
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Jurassic_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_Jurassic_Logo128x128.png
-    Jurassic was updated to version of November 1, 2023.
+    JavaScriptEngineSwitcher.Jurassic contains a `JurassicJsEngine` adapter (wrapper for the Jurassic).
+    $(PackageCommonTags);Jurassic
+    Jurassic was updated to version of February 4, 2025.
   
 
   
-    
+    
 
     
   
 
   
-    
-      jurassic-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Jurassic/JurassicJsEngine.cs b/src/JavaScriptEngineSwitcher.Jurassic/JurassicJsEngine.cs
index 188cb4d2..57d9976b 100644
--- a/src/JavaScriptEngineSwitcher.Jurassic/JurassicJsEngine.cs
+++ b/src/JavaScriptEngineSwitcher.Jurassic/JurassicJsEngine.cs
@@ -45,7 +45,7 @@ public sealed class JurassicJsEngine : JsEngineBase
 		/// 
 		/// Version of original JS engine
 		/// 
-		private const string EngineVersion = "Nov 1, 2023";
+		private const string EngineVersion = "Feb 4, 2025";
 
 		/// 
 		/// Jurassic JS engine
diff --git a/src/JavaScriptEngineSwitcher.Jurassic/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Jurassic/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..ad182c32
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Jurassic/PACKAGE-DESCRIPTION.md
@@ -0,0 +1 @@
+JavaScriptEngineSwitcher.Jurassic contains a `JurassicJsEngine` adapter (wrapper for the [Jurassic](http://github.com/paulbartrum/jurassic) version of February 4, 2025).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Jurassic/readme.txt b/src/JavaScriptEngineSwitcher.Jurassic/readme.txt
index 5d9d6986..88a9730b 100644
--- a/src/JavaScriptEngineSwitcher.Jurassic/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Jurassic/readme.txt
@@ -1,24 +1,24 @@
 
 
    --------------------------------------------------------------------------------
-                  README file for JS Engine Switcher: Jurassic v3.23.3
+                  README file for JS Engine Switcher: Jurassic v3.29.0
 
    --------------------------------------------------------------------------------
 
-      Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+      Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.Jurassic contains adapter `JurassicJsEngine` (wrapper
-   for the Jurassic JavaScript Engine (http://github.com/paulbartrum/jurassic)
-   version of November 1, 2023).
+   JavaScriptEngineSwitcher.Jurassic contains a `JurassicJsEngine` adapter (wrapper
+   for the Jurassic (http://github.com/paulbartrum/jurassic) version of
+   February 4, 2025).
 
    =============
    RELEASE NOTES
    =============
-   Jurassic was updated to version of November 1, 2023.
+   Jurassic was updated to version of February 4, 2025.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.Msie/JavaScriptEngineSwitcher.Msie.csproj b/src/JavaScriptEngineSwitcher.Msie/JavaScriptEngineSwitcher.Msie.csproj
index c6b64735..bfe69608 100644
--- a/src/JavaScriptEngineSwitcher.Msie/JavaScriptEngineSwitcher.Msie.csproj
+++ b/src/JavaScriptEngineSwitcher.Msie/JavaScriptEngineSwitcher.Msie.csproj
@@ -2,12 +2,13 @@
 
   
     JS Engine Switcher: MSIE
-    3.23.7
+    3.24.1
     net40-client;net45;netstandard1.3;netstandard2.0
     1.6.0
     Library
     true
-    $(NoWarn);CS1591
+    $(NoWarn);CS1591;NETSDK1215;NU1903
+    false
     true
     true
   
@@ -18,30 +19,22 @@
   
 
   
-    JavaScriptEngineSwitcher.Msie contains adapter `MsieJsEngine` (wrapper for the MSIE JavaScript Engine for .NET (http://github.com/Taritsyn/MsieJavaScriptEngine)). For correct working of the MSIE JavaScript Engine it is recommended to install Internet Explorer 9+ or Microsoft Edge Legacy on the machine.
-    $(PackageCommonTags);MSIE;IE;Chakra
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Msie_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_Msie_Logo128x128.png
-    MSIE JavaScript Engine was updated to version 3.2.4.
+    JavaScriptEngineSwitcher.Msie contains a `MsieJsEngine` adapter (wrapper for the MSIE JavaScript Engine for .NET).
+    $(PackageCommonTags);MSIE;IE;Chakra
+    MSIE JavaScript Engine was updated to version 3.2.5.
   
 
   
-    
+    
     
 
     
   
 
   
-    
-      msie-javascript-engine-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
   
 
   
diff --git a/src/JavaScriptEngineSwitcher.Msie/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Msie/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..c0017681
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Msie/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,3 @@
+JavaScriptEngineSwitcher.Msie contains a `MsieJsEngine` adapter (wrapper for the [MSIE JavaScript Engine for .NET](http://github.com/Taritsyn/MsieJavaScriptEngine)).
+
+For correct working of the MSIE JavaScript Engine it is recommended to install Internet Explorer 9+ or Microsoft Edge Legacy on the machine.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Msie/readme.txt b/src/JavaScriptEngineSwitcher.Msie/readme.txt
index 938092fd..2f82f48b 100644
--- a/src/JavaScriptEngineSwitcher.Msie/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Msie/readme.txt
@@ -1,7 +1,7 @@
 
 
    --------------------------------------------------------------------------------
-                   README file for JS Engine Switcher: MSIE v3.23.7
+                   README file for JS Engine Switcher: MSIE v3.24.1
 
    --------------------------------------------------------------------------------
 
@@ -11,7 +11,7 @@
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.Msie contains adapter `MsieJsEngine` (wrapper for the
+   JavaScriptEngineSwitcher.Msie contains a `MsieJsEngine` adapter (wrapper for the
    MSIE JavaScript Engine for .NET (http://github.com/Taritsyn/MsieJavaScriptEngine)).
    For correct working of the MSIE JavaScript Engine it is recommended to install
    Internet Explorer 9+ or Microsoft Edge Legacy on the machine.
@@ -19,7 +19,7 @@
    =============
    RELEASE NOTES
    =============
-   MSIE JavaScript Engine was updated to version 3.2.4.
+   MSIE JavaScript Engine was updated to version 3.2.5.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj b/src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj
index 15644df7..1f648172 100644
--- a/src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj
+++ b/src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj
@@ -2,11 +2,12 @@
 
   
     JS Engine Switcher: NiL
-    3.23.5
-    net461;net48;netcoreapp3.1;net5.0;net6.0;net7.0
+    3.30.0
+    net461;net48;netcoreapp3.1;net6.0;net8.0;net9.0
     Library
     true
     $(NoWarn);CS1591
+    false
     true
     false
   
@@ -17,28 +18,20 @@
   
 
   
-    JavaScriptEngineSwitcher.NiL contains adapter `NiLJsEngine` (wrapper for the NiL JavaScript Engine (https://github.com/nilproject/NiL.JS) version 2.5.1677).
-    $(PackageCommonTags);NiL
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_NiL_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_NiL_Logo128x128.png
-    NiL.JS was updated to version 2.5.1677.
+    JavaScriptEngineSwitcher.NiL contains a `NiLJsEngine` adapter (wrapper for the NiL.JS).
+    $(PackageCommonTags);NiL
+    NiL.JS was updated to version 2.6.1709.
   
 
   
     
-    
+    
   
 
   
-    
-      nil-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.NiL/NiLJsEngine.cs b/src/JavaScriptEngineSwitcher.NiL/NiLJsEngine.cs
index 075d0155..7d5f6377 100644
--- a/src/JavaScriptEngineSwitcher.NiL/NiLJsEngine.cs
+++ b/src/JavaScriptEngineSwitcher.NiL/NiLJsEngine.cs
@@ -41,7 +41,7 @@ public sealed class NiLJsEngine : JsEngineBase
 		/// 
 		/// Version of original JS engine
 		/// 
-		private const string EngineVersion = "2.5.1677";
+		private const string EngineVersion = "2.6.1709";
 
 		/// 
 		/// Regular expression for working with the syntax error message
diff --git a/src/JavaScriptEngineSwitcher.NiL/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.NiL/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..751f9b80
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.NiL/PACKAGE-DESCRIPTION.md
@@ -0,0 +1 @@
+JavaScriptEngineSwitcher.NiL contains a `NiLJsEngine` adapter (wrapper for the [NiL.JS](https://github.com/nilproject/NiL.JS) version 2.6.1709).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.NiL/readme.txt b/src/JavaScriptEngineSwitcher.NiL/readme.txt
index 0a5c039d..393f1cf2 100644
--- a/src/JavaScriptEngineSwitcher.NiL/readme.txt
+++ b/src/JavaScriptEngineSwitcher.NiL/readme.txt
@@ -1,23 +1,23 @@
 
 
    --------------------------------------------------------------------------------
-                    README file for JS Engine Switcher: NiL v3.23.5
+                    README file for JS Engine Switcher: NiL v3.30.0
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.NiL contains adapter `NiLJsEngine` (wrapper for the
-   NiL JavaScript Engine (https://github.com/nilproject/NiL.JS) version 2.5.1677).
+   JavaScriptEngineSwitcher.NiL contains a `NiLJsEngine` adapter (wrapper for the
+   NiL.JS (https://github.com/nilproject/NiL.JS) version 2.6.1709).
 
    =============
    RELEASE NOTES
    =============
-   NiL.JS was updated to version 2.5.1677.
+   NiL.JS was updated to version 2.6.1709.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.Node/JavaScriptEngineSwitcher.Node.csproj b/src/JavaScriptEngineSwitcher.Node/JavaScriptEngineSwitcher.Node.csproj
index d70bbdc3..c8d22b0a 100644
--- a/src/JavaScriptEngineSwitcher.Node/JavaScriptEngineSwitcher.Node.csproj
+++ b/src/JavaScriptEngineSwitcher.Node/JavaScriptEngineSwitcher.Node.csproj
@@ -2,13 +2,14 @@
 
   
     JS Engine Switcher: Node
-    3.23.1
+    3.24.1
     net461;netstandard2.0;netcoreapp3.1;net5.0;net6.0;net7.0
     Library
     true
     true
     true
-    $(NoWarn);CS1591
+    $(NoWarn);CS1591;NU1903
+    false
     true
     true
     false
@@ -19,12 +20,10 @@
   
 
   
-    JavaScriptEngineSwitcher.Node contains adapter `NodeJsEngine` (wrapper for the Jering.Javascript.NodeJS (https://github.com/JeringTech/Javascript.NodeJS) version 7.0.0).
-
-This package does not contain the `node.exe`. Therefore, you need to install the Node.js (https://nodejs.org) and add the `node.exe`'s directory to the `Path` environment variable (automatically done by the official installer).
-    $(PackageCommonTags);Node.js;Jering.Javascript.NodeJS
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Node_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_Node_Logo128x128.png
-    Jering.Javascript.NodeJS was updated to version 7.0.0.
+    JavaScriptEngineSwitcher.Node contains a `NodeJsEngine` adapter (wrapper for the Jering.Javascript.NodeJS).
+    $(PackageCommonTags);Node.js;Jering.Javascript.NodeJS
   
 
   
@@ -34,21 +33,8 @@ This package does not contain the `node.exe`. Therefore, you need to install the
   
 
   
-    
-      jering-javascript-nodejs-license.txt
-      true
-      false
-    
-    
-      nodejs-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
+    
   
 
   
diff --git a/src/JavaScriptEngineSwitcher.Node/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Node/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..76c940f9
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Node/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,4 @@
+JavaScriptEngineSwitcher.Node contains a `NodeJsEngine` adapter (wrapper for the [Jering.Javascript.NodeJS](https://github.com/JeringTech/Javascript.NodeJS) version 7.0.0).
+
+This package does not contain the `node.exe`.
+Therefore, you need to install the [Node.js](https://nodejs.org) and add the `node.exe`'s directory to the `Path` environment variable (automatically done by the official installer).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Node/readme.txt b/src/JavaScriptEngineSwitcher.Node/readme.txt
index d4632f90..4f89b068 100644
--- a/src/JavaScriptEngineSwitcher.Node/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Node/readme.txt
@@ -1,17 +1,17 @@
 
 
    --------------------------------------------------------------------------------
-                    README file for JS Engine Switcher: Node v3.23.1
+                    README file for JS Engine Switcher: Node v3.24.1
 
    --------------------------------------------------------------------------------
 
-      Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+      Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.Node contains adapter `NodeJsEngine` (wrapper for the
+   JavaScriptEngineSwitcher.Node contains a `NodeJsEngine` adapter (wrapper for the
    Jering.Javascript.NodeJS (https://github.com/JeringTech/Javascript.NodeJS)
    version 7.0.0).
 
@@ -19,11 +19,6 @@
    Node.js (https://nodejs.org) and add the `node.exe`'s directory to the `Path`
    environment variable (automatically done by the official installer).
 
-   =============
-   RELEASE NOTES
-   =============
-   Jering.Javascript.NodeJS was updated to version 7.0.0.
-
    =============
    DOCUMENTATION
    =============
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.csproj b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.csproj
index 3ac76104..e761c1b1 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.csproj
+++ b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: V8 for Linux (x64)
-    3.23.2
+    3.29.0
     netstandard2.0
   
 
@@ -11,10 +11,11 @@
   
 
   
-    This package is deprecated. Instead, it is recommended to use a 'Microsoft.ClearScript.V8.Native.linux-x64' package.
-    $(PackageCommonTags);V8;ClearScript;Linux;x64
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
-    Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8 version 11.8.172.15).
+    This package is deprecated. Instead, it is recommended to use a Microsoft.ClearScript.V8.Native.linux-x64 package.
+    $(PackageCommonTags);V8;ClearScript;Linux;x64
+    Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8 version 13.3.415.23).
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.nuspec b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.nuspec
index 2613c007..bf4bfdc0 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.nuspec
+++ b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/JavaScriptEngineSwitcher.V8.Native.linux-x64.nuspec
@@ -1,15 +1,14 @@
 
-
+
   
     $CommonMetadataElements$
     
-      
+      
     
   
   
     $CommonFileElements$
-    
-    
-    
+    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..3bb23eb4
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,2 @@
+This package is deprecated.
+Instead, it is recommended to use a [Microsoft.ClearScript.V8.Native.linux-x64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.linux-x64) package.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/readme.txt b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/readme.txt
index 20d4ecb4..9859dd74 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/readme.txt
+++ b/src/JavaScriptEngineSwitcher.V8.Native.linux-x64/readme.txt
@@ -1,24 +1,24 @@
 
 
    --------------------------------------------------------------------------------
-             README file for JS Engine Switcher: V8 for Linux x64 v3.23.2
+             README file for JS Engine Switcher: V8 for Linux x64 v3.29.0
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package is deprecated. Instead, it is recommended to use a
-   'Microsoft.ClearScript.V8.Native.linux-x64' package.
+   Microsoft.ClearScript.V8.Native.linux-x64 package.
 
    =============
    RELEASE NOTES
    =============
-   Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8
-   version 11.8.172.15).
+   Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8
+   version 13.3.415.23).
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.csproj b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.csproj
index 079a867c..060da60d 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.csproj
+++ b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: V8 for OS X (x64)
-    3.23.2
+    3.29.0
     netstandard2.0
   
 
@@ -11,10 +11,11 @@
   
 
   
-    This package is deprecated. Instead, it is recommended to use a 'Microsoft.ClearScript.V8.Native.osx-x64' package.
-    $(PackageCommonTags);V8;ClearScript;macOS;OSX;x64
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
-    Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8 version 11.8.172.15).
+    This package is deprecated. Instead, it is recommended to use a Microsoft.ClearScript.V8.Native.osx-x64 package.
+    $(PackageCommonTags);V8;ClearScript;macOS;OSX;x64
+    Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8 version 13.3.415.23).
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.nuspec b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.nuspec
index fbe48bd2..10bede4f 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.nuspec
+++ b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/JavaScriptEngineSwitcher.V8.Native.osx-x64.nuspec
@@ -1,15 +1,14 @@
 
-
+
   
     $CommonMetadataElements$
     
-      
+      
     
   
   
     $CommonFileElements$
-    
-    
-    
+    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..2455eca2
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,2 @@
+This package is deprecated.
+Instead, it is recommended to use a [Microsoft.ClearScript.V8.Native.osx-x64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.osx-x64) package.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/readme.txt b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/readme.txt
index 97dc8b7c..da4e5d5a 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/readme.txt
+++ b/src/JavaScriptEngineSwitcher.V8.Native.osx-x64/readme.txt
@@ -1,24 +1,24 @@
 
 
    --------------------------------------------------------------------------------
-             README file for JS Engine Switcher: V8 for OS X x64 v3.23.2
+             README file for JS Engine Switcher: V8 for OS X x64 v3.29.0
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package is deprecated. Instead, it is recommended to use a
-   'Microsoft.ClearScript.V8.Native.osx-x64' package.
+   Microsoft.ClearScript.V8.Native.osx-x64 package.
 
    =============
    RELEASE NOTES
    =============
-   Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8
-   version 11.8.172.15).
+   Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8
+   version 13.3.415.23).
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.csproj b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.csproj
index 59f8e199..848e4af8 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.csproj
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: V8 for Windows (x64)
-    3.23.2
+    3.29.0
     netstandard2.0
   
 
@@ -11,10 +11,11 @@
   
 
   
-    This package is deprecated. Instead, it is recommended to use a 'Microsoft.ClearScript.V8.Native.win-x64' package.
-    $(PackageCommonTags);V8;ClearScript;Windows;x64
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
-    Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8 version 11.8.172.15).
+    This package is deprecated. Instead, it is recommended to use a Microsoft.ClearScript.V8.Native.win-x64 package.
+    $(PackageCommonTags);V8;ClearScript;Windows;x64
+    Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8 version 13.3.415.23).
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.nuspec b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.nuspec
index 71dd74ab..7b52ae54 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.nuspec
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/JavaScriptEngineSwitcher.V8.Native.win-x64.nuspec
@@ -1,15 +1,14 @@
 
-
+
   
     $CommonMetadataElements$
     
-      
+      
     
   
   
     $CommonFileElements$
-    
-    
-    
+    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x64/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..2efc6700
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,2 @@
+This package is deprecated.
+Instead, it is recommended to use a [Microsoft.ClearScript.V8.Native.win-x64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-x64) package.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x64/readme.txt b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/readme.txt
index d05916a9..408c9a2c 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.win-x64/readme.txt
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x64/readme.txt
@@ -1,24 +1,24 @@
 
 
    --------------------------------------------------------------------------------
-            README file for JS Engine Switcher: V8 for Windows x64 v3.23.2
+            README file for JS Engine Switcher: V8 for Windows x64 v3.29.0
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package is deprecated. Instead, it is recommended to use a
-   'Microsoft.ClearScript.V8.Native.win-x64' package.
+   Microsoft.ClearScript.V8.Native.win-x64 package.
 
    =============
    RELEASE NOTES
    =============
-   Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8
-   version 11.8.172.15).
+   Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8
+   version 13.3.415.23).
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.csproj b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.csproj
index a3d87835..d4261f95 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.csproj
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.csproj
@@ -2,7 +2,7 @@
 
   
     JS Engine Switcher: V8 for Windows (x86)
-    3.23.2
+    3.29.0
     netstandard2.0
   
 
@@ -11,10 +11,11 @@
   
 
   
-    This package is deprecated. Instead, it is recommended to use a 'Microsoft.ClearScript.V8.Native.win-x86' package.
-    $(PackageCommonTags);V8;ClearScript;Windows;x86
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
-    Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8 version 11.8.172.15).
+    This package is deprecated. Instead, it is recommended to use a Microsoft.ClearScript.V8.Native.win-x86 package.
+    $(PackageCommonTags);V8;ClearScript;Windows;x86
+    Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8 version 13.3.415.23).
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.nuspec b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.nuspec
index 44b416f9..4c5670eb 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.nuspec
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/JavaScriptEngineSwitcher.V8.Native.win-x86.nuspec
@@ -1,15 +1,14 @@
 
-
+
   
     $CommonMetadataElements$
     
-      
+      
     
   
   
     $CommonFileElements$
-    
-    
-    
+    
+    
   
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x86/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..44bc9064
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,2 @@
+This package is deprecated.
+Instead, it is recommended to use a [Microsoft.ClearScript.V8.Native.win-x86](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-x86) package.
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8.Native.win-x86/readme.txt b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/readme.txt
index c15d6782..d874dc4a 100644
--- a/src/JavaScriptEngineSwitcher.V8.Native.win-x86/readme.txt
+++ b/src/JavaScriptEngineSwitcher.V8.Native.win-x86/readme.txt
@@ -1,24 +1,24 @@
 
 
    --------------------------------------------------------------------------------
-            README file for JS Engine Switcher: V8 for Windows x86 v3.23.2
+            README file for JS Engine Switcher: V8 for Windows x86 v3.29.0
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
    This package is deprecated. Instead, it is recommended to use a
-   'Microsoft.ClearScript.V8.Native.win-x86' package.
+   Microsoft.ClearScript.V8.Native.win-x86 package.
 
    =============
    RELEASE NOTES
    =============
-   Microsoft ClearScript.V8 was updated to version 7.4.4 (support of the V8
-   version 11.8.172.15).
+   Microsoft ClearScript.V8 was updated to version 7.5 (support of the V8
+   version 13.3.415.23).
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.V8/JavaScriptEngineSwitcher.V8.csproj b/src/JavaScriptEngineSwitcher.V8/JavaScriptEngineSwitcher.V8.csproj
index 374641f1..3ccf3374 100644
--- a/src/JavaScriptEngineSwitcher.V8/JavaScriptEngineSwitcher.V8.csproj
+++ b/src/JavaScriptEngineSwitcher.V8/JavaScriptEngineSwitcher.V8.csproj
@@ -2,11 +2,12 @@
 
   
     JS Engine Switcher: V8
-    3.23.2
-    net45;net471;netstandard2.1;netcoreapp3.1;net5.0
+    3.29.1
+    net462;net471;netstandard2.1;netcoreapp3.1;net5.0
     Library
     true
-    $(NoWarn);CS1591
+    $(NoWarn);CS1591;NU1903
+    false
     true
     true
     false
@@ -17,54 +18,25 @@
   
 
   
-    JavaScriptEngineSwitcher.V8 contains adapter `V8JsEngine` (wrapper for the Microsoft ClearScript.V8 (http://github.com/Microsoft/ClearScript) version 7.4.4).
-
-This package does not contain the native ClearScript.V8 assemblies. Therefore, you need to choose and install the most appropriate package(s) for your platform. The following packages are available:
-
- * Microsoft.ClearScript.V8.Native.win-x86
- * Microsoft.ClearScript.V8.Native.win-x64
- * Microsoft.ClearScript.V8.Native.win-arm64
- * Microsoft.ClearScript.V8.Native.linux-x64
- * Microsoft.ClearScript.V8.Native.linux-arm
- * Microsoft.ClearScript.V8.Native.linux-arm64
- * Microsoft.ClearScript.V8.Native.osx-x64
- * Microsoft.ClearScript.V8.Native.osx-arm64
-    $(PackageCommonTags);V8;ClearScript
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_V8_Logo128x128.png
-    Microsoft ClearScript.V8 was updated to version 7.4.4.
+    JavaScriptEngineSwitcher.V8 contains a `V8JsEngine` adapter (wrapper for the Microsoft ClearScript.V8).
+    $(PackageCommonTags);V8;ClearScript
+    Performed a migration to a modern API for pre-compilation of scripts.
   
 
   
-    
+    
 
-    
-    
+    
     
 
     
   
 
   
-    
-      advanced-string-builder-license.txt
-      true
-      false
-    
-    
-      clearscript-license.txt
-      true
-      false
-    
-    
-      v8-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
+    
   
 
   
diff --git a/src/JavaScriptEngineSwitcher.V8/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.V8/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..5c20ea92
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.V8/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,14 @@
+JavaScriptEngineSwitcher.V8 contains a `V8JsEngine` adapter (wrapper for the [Microsoft ClearScript.V8](http://github.com/Microsoft/ClearScript) version 7.5).
+
+This package does not contain the native ClearScript.V8 assemblies.
+Therefore, you need to choose and install the most appropriate package(s) for your platform.
+The following packages are available:
+
+ * [Microsoft.ClearScript.V8.Native.win-x86](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-x86)
+ * [Microsoft.ClearScript.V8.Native.win-x64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-x64)
+ * [Microsoft.ClearScript.V8.Native.win-arm64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.win-arm64)
+ * [Microsoft.ClearScript.V8.Native.linux-x64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.linux-x64)
+ * [Microsoft.ClearScript.V8.Native.linux-arm](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.linux-arm)
+ * [Microsoft.ClearScript.V8.Native.linux-arm64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.linux-arm64)
+ * [Microsoft.ClearScript.V8.Native.osx-x64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.osx-x64)
+ * [Microsoft.ClearScript.V8.Native.osx-arm64](https://www.nuget.org/packages/Microsoft.ClearScript.V8.Native.osx-arm64)
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8/V8JsEngine.cs b/src/JavaScriptEngineSwitcher.V8/V8JsEngine.cs
index 4eca1b93..6b5f74db 100644
--- a/src/JavaScriptEngineSwitcher.V8/V8JsEngine.cs
+++ b/src/JavaScriptEngineSwitcher.V8/V8JsEngine.cs
@@ -4,6 +4,9 @@
 using System.Text.RegularExpressions;
 
 using OriginalCacheKind = Microsoft.ClearScript.V8.V8CacheKind;
+using OriginalCacheResult = Microsoft.ClearScript.V8.V8CacheResult;
+using OriginalDocumentFlags = Microsoft.ClearScript.DocumentFlags;
+using OriginalDocumentInfo = Microsoft.ClearScript.DocumentInfo;
 using OriginalEngine = Microsoft.ClearScript.V8.V8ScriptEngine;
 using OriginalEngineFlags = Microsoft.ClearScript.V8.V8ScriptEngineFlags;
 using OriginalException = Microsoft.ClearScript.ScriptEngineException;
@@ -47,7 +50,7 @@ public sealed class V8JsEngine : JsEngineBase
 		/// 
 		/// Version of original JS engine
 		/// 
-		private const string EngineVersion = "11.8.172.15";
+		private const string EngineVersion = "13.3.415.23";
 
 		/// 
 		/// V8 JS engine
@@ -107,6 +110,10 @@ public V8JsEngine(V8Settings settings)
 			};
 
 			OriginalEngineFlags flags = OriginalEngineFlags.None;
+			if (v8Settings.AddPerformanceObject)
+			{
+				flags |= OriginalEngineFlags.AddPerformanceObject;
+			}
 			if (v8Settings.AwaitDebuggerAndPauseOnStart)
 			{
 				flags |= OriginalEngineFlags.AwaitDebuggerAndPauseOnStart;
@@ -123,6 +130,10 @@ public V8JsEngine(V8Settings settings)
 			{
 				flags |= OriginalEngineFlags.DisableGlobalMembers;
 			}
+			if (v8Settings.SetTimerResolution)
+			{
+				flags |= OriginalEngineFlags.SetTimerResolution;
+			}
 
 			int debugPort = v8Settings.DebugPort;
 
@@ -356,12 +367,13 @@ protected override IPrecompiledScript InnerPrecompile(string code)
 
 		protected override IPrecompiledScript InnerPrecompile(string code, string documentName)
 		{
+			var documentInfo = new OriginalDocumentInfo(documentName);
 			var cacheKind = OriginalCacheKind.Code;
 			byte[] cachedBytes;
 
 			try
 			{
-				using (OriginalScript generalScript = _jsEngine.Compile(documentName, code, cacheKind,
+				using (OriginalScript generalScript = _jsEngine.Compile(documentInfo, code, cacheKind,
 					out cachedBytes))
 				{ }
 			}
@@ -370,7 +382,7 @@ protected override IPrecompiledScript InnerPrecompile(string code, string docume
 				throw WrapScriptEngineException(e);
 			}
 
-			return new V8PrecompiledScript(code, cacheKind, cachedBytes, documentName);
+			return new V8PrecompiledScript(code, cacheKind, cachedBytes, documentInfo);
 		}
 
 		protected override object InnerEvaluate(string expression)
@@ -380,11 +392,15 @@ protected override object InnerEvaluate(string expression)
 
 		protected override object InnerEvaluate(string expression, string documentName)
 		{
+			var documentInfo = new OriginalDocumentInfo(documentName)
+			{
+				Flags = OriginalDocumentFlags.None
+			};
 			object result;
 
 			try
 			{
-				result = _jsEngine.Evaluate(documentName, false, expression);
+				result = _jsEngine.Evaluate(documentInfo, expression);
 			}
 			catch (OriginalException e)
 			{
@@ -419,9 +435,14 @@ protected override void InnerExecute(string code)
 
 		protected override void InnerExecute(string code, string documentName)
 		{
+			var documentInfo = new OriginalDocumentInfo(documentName)
+			{
+				Flags = OriginalDocumentFlags.None
+			};
+
 			try
 			{
-				_jsEngine.Execute(documentName, false, code);
+				_jsEngine.Execute(documentInfo, code);
 			}
 			catch (OriginalException e)
 			{
@@ -445,15 +466,15 @@ protected override void InnerExecute(IPrecompiledScript precompiledScript)
 				);
 			}
 
-			bool cacheAccepted;
+			byte[] cachedBytes = v8PrecompiledScript.CachedBytes;
 
 			try
 			{
-				using (OriginalScript script = _jsEngine.Compile(v8PrecompiledScript.DocumentName,
-					v8PrecompiledScript.Code, v8PrecompiledScript.CacheKind, v8PrecompiledScript.CachedBytes,
-					out cacheAccepted))
+				using (OriginalScript script = _jsEngine.Compile(v8PrecompiledScript.DocumentInfo,
+					v8PrecompiledScript.Code, v8PrecompiledScript.CacheKind, ref cachedBytes,
+					out var cacheResult))
 				{
-					if (!cacheAccepted)
+					if (cacheResult != OriginalCacheResult.Accepted && cacheResult != OriginalCacheResult.Verified)
 					{
 						throw new WrapperUsageException(Strings.Usage_PrecompiledScriptNotAccepted, Name, Version);
 					}
diff --git a/src/JavaScriptEngineSwitcher.V8/V8PrecompiledScript.cs b/src/JavaScriptEngineSwitcher.V8/V8PrecompiledScript.cs
index f89f2eea..16464dd5 100644
--- a/src/JavaScriptEngineSwitcher.V8/V8PrecompiledScript.cs
+++ b/src/JavaScriptEngineSwitcher.V8/V8PrecompiledScript.cs
@@ -1,4 +1,5 @@
 using OriginalCacheKind = Microsoft.ClearScript.V8.V8CacheKind;
+using OriginalDocumentInfo = Microsoft.ClearScript.DocumentInfo;
 
 using JavaScriptEngineSwitcher.Core;
 
@@ -37,9 +38,9 @@ public byte[] CachedBytes
 		}
 
 		/// 
-		/// Gets a document name
+		/// Gets a meta-information for the document
 		/// 
-		public string DocumentName
+		public OriginalDocumentInfo DocumentInfo
 		{
 			get;
 			private set;
@@ -52,14 +53,14 @@ public string DocumentName
 		/// The source code of the script
 		/// The kind of cache data to be generated
 		/// Cached data for accelerated recompilation
-		/// Document name
+		/// Meta-information for the document
 		public V8PrecompiledScript(string code, OriginalCacheKind cacheKind, byte[] cachedBytes,
-			string documentName)
+			OriginalDocumentInfo documentInfo)
 		{
 			Code = code;
 			CacheKind = cacheKind;
 			CachedBytes = cachedBytes;
-			DocumentName = documentName;
+			DocumentInfo = documentInfo;
 		}
 
 
diff --git a/src/JavaScriptEngineSwitcher.V8/V8Settings.cs b/src/JavaScriptEngineSwitcher.V8/V8Settings.cs
index c1bb79aa..7d2810f1 100644
--- a/src/JavaScriptEngineSwitcher.V8/V8Settings.cs
+++ b/src/JavaScriptEngineSwitcher.V8/V8Settings.cs
@@ -7,6 +7,20 @@ namespace JavaScriptEngineSwitcher.V8
 	/// 
 	public sealed class V8Settings
 	{
+		/// 
+		/// Gets or sets a flag for whether to add the
+		/// Performance
+		/// object to the script engine's global namespace
+		/// 
+		/// 
+		/// This object provides a set of low-level native facilities for performance-sensitive scripts.
+		/// 
+		public bool AddPerformanceObject
+		{
+			get;
+			set;
+		}
+
 		/// 
 		/// Gets or sets a flag for whether to allow the usage of reflection API in the script code
 		/// 
@@ -217,12 +231,29 @@ public UIntPtr MaxStackUsage
 			set;
 		}
 
+		/// 
+		/// Gets or sets a flag for whether to set native timers to the highest available resolution
+		/// while the current script engine's instance is active
+		/// 
+		/// 
+		/// This property is ignored if value of the  property
+		/// is false. It is only a hint and may be ignored on some systems. On platforms that
+		/// support it, this property can degrade overall system performance or power efficiency, so
+		/// caution is recommended.
+		/// 
+		public bool SetTimerResolution
+		{
+			get;
+			set;
+		}
+
 
 		/// 
 		/// Constructs an instance of the V8 settings
 		/// 
 		public V8Settings()
 		{
+			AddPerformanceObject = false;
 			AllowReflection = false;
 			AwaitDebuggerAndPauseOnStart = false;
 			DebugPort = 9222;
@@ -237,6 +268,7 @@ public V8Settings()
 			MaxNewSpaceSize = 0;
 			MaxOldSpaceSize = 0;
 			MaxStackUsage = UIntPtr.Zero;
+			SetTimerResolution = false;
 		}
 	}
 }
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.V8/readme.txt b/src/JavaScriptEngineSwitcher.V8/readme.txt
index 96f59676..8e5be144 100644
--- a/src/JavaScriptEngineSwitcher.V8/readme.txt
+++ b/src/JavaScriptEngineSwitcher.V8/readme.txt
@@ -1,19 +1,19 @@
 
 
    --------------------------------------------------------------------------------
-                    README file for JS Engine Switcher: V8 v3.23.2
+                    README file for JS Engine Switcher: V8 v3.29.1
 
    --------------------------------------------------------------------------------
 
-      Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+      Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.V8 contains adapter `V8JsEngine` (wrapper for the
+   JavaScriptEngineSwitcher.V8 contains a `V8JsEngine` adapter (wrapper for the
    Microsoft ClearScript.V8 (http://github.com/Microsoft/ClearScript) version
-   7.4.4).
+   7.5).
 
    This package does not contain the native ClearScript.V8 assemblies.
    Therefore, you need to choose and install the most appropriate package(s) for
@@ -31,7 +31,7 @@
    =============
    RELEASE NOTES
    =============
-   Microsoft ClearScript.V8 was updated to version 7.4.4.
+   Performed a migration to a modern API for pre-compilation of scripts.
 
    =============
    DOCUMENTATION
diff --git a/src/JavaScriptEngineSwitcher.Vroom/JavaScriptEngineSwitcher.Vroom.csproj b/src/JavaScriptEngineSwitcher.Vroom/JavaScriptEngineSwitcher.Vroom.csproj
index d15f0186..8f6a4403 100644
--- a/src/JavaScriptEngineSwitcher.Vroom/JavaScriptEngineSwitcher.Vroom.csproj
+++ b/src/JavaScriptEngineSwitcher.Vroom/JavaScriptEngineSwitcher.Vroom.csproj
@@ -2,12 +2,13 @@
 
   
     JS Engine Switcher: Vroom
-    3.21.0
+    3.24.1
     net40-client;net45;net471;netstandard1.6;netstandard2.0
     1.6.0
     Library
     true
-    $(NoWarn);CS1591
+    $(NoWarn);CS1591;NETSDK1215;NU1903
+    false
     true
     true
   
@@ -18,15 +19,13 @@
   
 
   
-    JavaScriptEngineSwitcher.Vroom contains adapter `VroomJsEngine` (wrapper for the VroomJs (http://github.com/pauldotknopf/vroomjs-core) version 1.2.3 with support of V8 version 3.17.16.2).
-
-For correct working of the VroomJs on Windows require the Visual C++ Redistributable for Visual Studio 2012 and Microsoft Visual C++ 2015 Redistributable.
-    $(PackageCommonTags);VroomJs;V8
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Vroom_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_Vroom_Logo128x128.png
+    JavaScriptEngineSwitcher.Vroom contains a `VroomJsEngine` adapter (wrapper for the VroomJs).
+    $(PackageCommonTags);VroomJs;V8
   
 
   
-    
     
     
 
@@ -34,7 +33,7 @@ For correct working of the VroomJs on Windows require the Visual C++ Redistribut
   
 
   
-    
+    
   
 
   
@@ -42,26 +41,8 @@ For correct working of the VroomJs on Windows require the Visual C++ Redistribut
   
 
   
-    
-      advanced-string-builder-license.txt
-      true
-      false
-    
-    
-      vroomjs-core-license.txt
-      true
-      false
-    
-    
-      v8-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
+    
   
 
   
diff --git a/src/JavaScriptEngineSwitcher.Vroom/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Vroom/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..a27c35de
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Vroom/PACKAGE-DESCRIPTION.md
@@ -0,0 +1,3 @@
+JavaScriptEngineSwitcher.Vroom contains a `VroomJsEngine` adapter (wrapper for the [VroomJs](http://github.com/pauldotknopf/vroomjs-core) version 1.2.3 with support of V8 version 3.17.16.2).
+
+For correct working of the VroomJs on Windows require the [Visual C++ Redistributable for Visual Studio 2012](https://www.microsoft.com/en-us/download/details.aspx?id=30679) and [Microsoft Visual C++ 2015 Redistributable](https://www.microsoft.com/en-us/download/details.aspx?id=53840).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Vroom/readme.txt b/src/JavaScriptEngineSwitcher.Vroom/readme.txt
index 54c8a455..b37c965c 100644
--- a/src/JavaScriptEngineSwitcher.Vroom/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Vroom/readme.txt
@@ -1,17 +1,17 @@
 
 
    --------------------------------------------------------------------------------
-                   README file for JS Engine Switcher: Vroom v3.21.0
+                   README file for JS Engine Switcher: Vroom v3.24.1
 
    --------------------------------------------------------------------------------
 
-      Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+      Copyright (c) 2013-2024 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.Vroom contains adapter `VroomJsEngine` (wrapper for the
+   JavaScriptEngineSwitcher.Vroom contains a `VroomJsEngine` adapter (wrapper for the
    VroomJs (http://github.com/pauldotknopf/vroomjs-core) version 1.2.3 with support
    of V8 version 3.17.16.2).
 
diff --git a/src/JavaScriptEngineSwitcher.Yantra/JavaScriptEngineSwitcher.Yantra.csproj b/src/JavaScriptEngineSwitcher.Yantra/JavaScriptEngineSwitcher.Yantra.csproj
index 50c717b3..2453325e 100644
--- a/src/JavaScriptEngineSwitcher.Yantra/JavaScriptEngineSwitcher.Yantra.csproj
+++ b/src/JavaScriptEngineSwitcher.Yantra/JavaScriptEngineSwitcher.Yantra.csproj
@@ -2,11 +2,12 @@
 
   
     JS Engine Switcher: Yantra
-    3.23.4
+    3.30.2
     netstandard2.0;netstandard2.1
     Library
     true
     $(NoWarn);CS1591
+    false
     true
   
 
@@ -14,29 +15,21 @@
   
 
   
-    JavaScriptEngineSwitcher.Yantra contains adapter `YantraJsEngine` (wrapper for the Yantra JavaScript Engine (https://yantrajs.com) version 1.2.206).
-    $(PackageCommonTags);Yantra;YantraJS
+    https://raw.githubusercontent.com/Taritsyn/JavaScriptEngineSwitcher/master/Icons/JavaScriptEngineSwitcher_Yantra_Logo128x128.png
     ../../Icons/JavaScriptEngineSwitcher_Yantra_Logo128x128.png
-    YantraJS was updated to version 1.2.206.
+    JavaScriptEngineSwitcher.Yantra contains a `YantraJsEngine` adapter (wrapper for the YantraJS).
+    $(PackageCommonTags);Yantra;YantraJS
+    YantraJS was updated to version 1.2.293.
   
 
   
-    
+    
 
     
   
 
   
-    
-      yantra-license.txt
-      true
-      false
-    
-
-    
-      readme.txt
-      true
-    
+    
   
 
 
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Yantra/PACKAGE-DESCRIPTION.md b/src/JavaScriptEngineSwitcher.Yantra/PACKAGE-DESCRIPTION.md
new file mode 100644
index 00000000..74bb8b43
--- /dev/null
+++ b/src/JavaScriptEngineSwitcher.Yantra/PACKAGE-DESCRIPTION.md
@@ -0,0 +1 @@
+JavaScriptEngineSwitcher.Yantra contains a `YantraJsEngine` adapter (wrapper for the [YantraJS](https://github.com/yantrajs/yantra) version 1.2.293).
\ No newline at end of file
diff --git a/src/JavaScriptEngineSwitcher.Yantra/YantraJsEngine.cs b/src/JavaScriptEngineSwitcher.Yantra/YantraJsEngine.cs
index 5ea748fe..8b812b65 100644
--- a/src/JavaScriptEngineSwitcher.Yantra/YantraJsEngine.cs
+++ b/src/JavaScriptEngineSwitcher.Yantra/YantraJsEngine.cs
@@ -12,6 +12,7 @@
 using OriginalClrType = YantraJS.Core.Clr.ClrType;
 using OriginalContext = YantraJS.Core.JSContext;
 using OriginalDate = YantraJS.Core.JSDate;
+using OriginalError = YantraJS.Core.JSError;
 using OriginalException = YantraJS.Core.JSException;
 using OriginalFunction = YantraJS.Core.JSFunction;
 using OriginalJsonObject = YantraJS.Core.JSJSON;
@@ -21,6 +22,7 @@
 
 using JavaScriptEngineSwitcher.Core;
 using JavaScriptEngineSwitcher.Core.Constants;
+using JavaScriptEngineSwitcher.Core.Extensions;
 using JavaScriptEngineSwitcher.Core.Helpers;
 using JavaScriptEngineSwitcher.Core.Utilities;
 
@@ -47,7 +49,7 @@ public sealed class YantraJsEngine : JsEngineBase
 		/// 
 		/// Version of original JS engine
 		/// 
-		private const string EngineVersion = "1.2.206";
+		private const string EngineVersion = "1.2.293";
 
 		/// 
 		/// Regular expression for working with the error message
@@ -305,11 +307,11 @@ private WrapperException WrapJsException(OriginalException originalException)
 			int columnNumber = 0;
 			ErrorLocationItem[] callStackItems = null;
 
-			OriginalValue errorValue = originalException.Error;
+			var errorValue = originalException.Error as OriginalError;
 			if (errorValue != null)
 			{
-				message = errorValue.ToString();
-				Match messageMatch = _errorMessageRegex.Match(message);
+				string messageWithType = errorValue.ToString();
+				Match messageMatch = _errorMessageRegex.Match(messageWithType);
 
 				if (messageMatch.Success)
 				{
@@ -322,7 +324,12 @@ private WrapperException WrapJsException(OriginalException originalException)
 						int.Parse(messageGroups["columnNumber"].Value) : 0;
 				}
 
-				string rawCallStack = errorValue["stack"].AsStringOrDefault();
+				string messageWithCallStack = type == JsErrorType.Syntax ?
+					originalException.JSStackTrace.AsStringOrDefault()
+					:
+					errorValue.Stack ?? errorValue["stack"].AsStringOrDefault()
+					;
+				string rawCallStack = GetRawCallStack(message, messageWithType, messageWithCallStack);
 
 				callStackItems = YantraJsErrorHelpers.ParseErrorLocation(rawCallStack);
 				callStackItems = YantraJsErrorHelpers.FilterErrorLocationItems(callStackItems);
@@ -381,6 +388,17 @@ private WrapperException WrapJsException(OriginalException originalException)
 			return wrapperException;
 		}
 
+		private static string GetRawCallStack(string message, string messageWithType, string messageWithCallStack)
+		{
+			string baseMessage = messageWithCallStack.StartsWith(messageWithType) ? messageWithType : message;
+			string rawCallStack = messageWithCallStack
+				.TrimStart(baseMessage)
+				.TrimStart(new char[] { '\n', '\r' })
+				;
+
+			return rawCallStack;
+		}
+
 		private void OnConsoleWrite(OriginalContext context, string type, in OriginalArguments args)
 		{
 			int argCount = args.Length;
diff --git a/src/JavaScriptEngineSwitcher.Yantra/readme.txt b/src/JavaScriptEngineSwitcher.Yantra/readme.txt
index 860c5c0a..78ad2ea3 100644
--- a/src/JavaScriptEngineSwitcher.Yantra/readme.txt
+++ b/src/JavaScriptEngineSwitcher.Yantra/readme.txt
@@ -1,23 +1,23 @@
 
 
    --------------------------------------------------------------------------------
-                  README file for JS Engine Switcher: Yantra v3.23.4
+                  README file for JS Engine Switcher: Yantra v3.30.2
 
    --------------------------------------------------------------------------------
 
-           Copyright (c) 2013-2023 Andrey Taritsyn - http://www.taritsyn.ru
+           Copyright (c) 2013-2025 Andrey Taritsyn - http://www.taritsyn.ru
 
 
    ===========
    DESCRIPTION
    ===========
-   JavaScriptEngineSwitcher.Yantra contains adapter `YantraJsEngine` (wrapper for the
-   Yantra JavaScript Engine (https://yantrajs.com) version 1.2.206).
+   JavaScriptEngineSwitcher.Yantra contains a `YantraJsEngine` adapter (wrapper for the
+   YantraJS (https://github.com/yantrajs/yantra) version 1.2.293).
 
    =============
    RELEASE NOTES
    =============
-   YantraJS was updated to version 1.2.206.
+   YantraJS was updated to version 1.2.293.
 
    =============
    DOCUMENTATION
diff --git a/test/JavaScriptEngineSwitcher.Benchmarks/JavaScriptEngineSwitcher.Benchmarks.csproj b/test/JavaScriptEngineSwitcher.Benchmarks/JavaScriptEngineSwitcher.Benchmarks.csproj
index 2b943bb9..cdcb16f2 100644
--- a/test/JavaScriptEngineSwitcher.Benchmarks/JavaScriptEngineSwitcher.Benchmarks.csproj
+++ b/test/JavaScriptEngineSwitcher.Benchmarks/JavaScriptEngineSwitcher.Benchmarks.csproj
@@ -2,8 +2,8 @@
 
   
     JS Engine Switcher: Benchmarks
-    3.24.0
-    net462;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0
+    3.30.2
+    net462;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0
     Exe
     AnyCPU
     true
@@ -16,7 +16,7 @@
   
 
   
-    
+    
     
     
     
diff --git a/test/JavaScriptEngineSwitcher.Tests/Es5TestsBase.cs b/test/JavaScriptEngineSwitcher.Tests/Es5TestsBase.cs
index affe97f7..bf1106be 100644
--- a/test/JavaScriptEngineSwitcher.Tests/Es5TestsBase.cs
+++ b/test/JavaScriptEngineSwitcher.Tests/Es5TestsBase.cs
@@ -353,13 +353,14 @@ public virtual void SupportsDateNowMethod()
 		{
 			// Arrange
 			const string input = "Date.now();";
-			DateTime targetOutput = DateTime.Now.ToUniversalTime();
+			DateTime targetOutput;
 
 			// Act
 			DateTime output;
 
 			using (var jsEngine = CreateJsEngine())
 			{
+				targetOutput = DateTime.Now.ToUniversalTime();
 				output = new DateTime(1970, 01, 01).AddMilliseconds(jsEngine.Evaluate(input));
 			}
 
diff --git a/test/JavaScriptEngineSwitcher.Tests/JavaScriptEngineSwitcher.Tests.csproj b/test/JavaScriptEngineSwitcher.Tests/JavaScriptEngineSwitcher.Tests.csproj
index 34ef566d..5552e15f 100644
--- a/test/JavaScriptEngineSwitcher.Tests/JavaScriptEngineSwitcher.Tests.csproj
+++ b/test/JavaScriptEngineSwitcher.Tests/JavaScriptEngineSwitcher.Tests.csproj
@@ -2,13 +2,14 @@
 
   
     JS Engine Switcher: Tests
-    3.24.0
-    net462;net471;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0
+    3.30.2
+    net462;net471;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0
     Library
     latest
     true
     true
     true
+    false
     true
     false
   
@@ -16,8 +17,8 @@
   
 
   
-    
-    
+    
+    
     
     
     
@@ -62,12 +63,16 @@
     
   
 
+  
+    
+  
+
   
     
   
 
   
-    
+    
   
 
   
diff --git a/test/JavaScriptEngineSwitcher.Tests/Jint/CommonTests.cs b/test/JavaScriptEngineSwitcher.Tests/Jint/CommonTests.cs
index 97b9e79e..b16e9260 100644
--- a/test/JavaScriptEngineSwitcher.Tests/Jint/CommonTests.cs
+++ b/test/JavaScriptEngineSwitcher.Tests/Jint/CommonTests.cs
@@ -47,7 +47,7 @@ public void MappingCompilationErrorDuringEvaluationOfExpression()
 			// Assert
 			Assert.NotNull(exception);
 			Assert.Equal("Compilation error", exception.Category);
-			Assert.Equal("Unexpected token @", exception.Description);
+			Assert.Equal("Invalid or unexpected token", exception.Description);
 			Assert.Equal("SyntaxError", exception.Type);
 			Assert.Equal("variables.js", exception.DocumentName);
 			Assert.Equal(3, exception.LineNumber);
@@ -126,7 +126,7 @@ public void MappingCompilationErrorDuringExecutionOfCode()
 			// Assert
 			Assert.NotNull(exception);
 			Assert.Equal("Compilation error", exception.Category);
-			Assert.Equal("Unexpected token )", exception.Description);
+			Assert.Equal("Unexpected token ')'", exception.Description);
 			Assert.Equal("SyntaxError", exception.Type);
 			Assert.Equal("factorial.js", exception.DocumentName);
 			Assert.Equal(10, exception.LineNumber);
@@ -250,7 +250,7 @@ public void MappingRuntimeErrorDuringArraySizeExceeded()
 		}
 
 		[Fact]
-		public void MappingRuntimeErrorDuringMaxJsonParseDepthReached()
+		public void MappingCompilationErrorDuringMaxJsonParseDepthReached()
 		{
 			// Arrange
 			const string input = @"var data = '{\n' +
@@ -270,7 +270,7 @@ public void MappingRuntimeErrorDuringMaxJsonParseDepthReached()
 
 JSON.parse(data);";
 
-			JsRuntimeException exception = null;
+			JsCompilationException exception = null;
 
 			// Act
 			using (var jsEngine = new JintJsEngine(
@@ -284,7 +284,7 @@ public void MappingRuntimeErrorDuringMaxJsonParseDepthReached()
 				{
 					jsEngine.Execute(input, "menu.js");
 				}
-				catch (JsRuntimeException e)
+				catch (JsCompilationException e)
 				{
 					exception = e;
 				}
@@ -292,18 +292,13 @@ public void MappingRuntimeErrorDuringMaxJsonParseDepthReached()
 
 			// Assert
 			Assert.NotNull(exception);
-			Assert.Equal("Runtime error", exception.Category);
+			Assert.Equal("Compilation error", exception.Category);
 			Assert.Equal("Max. depth level of JSON reached at position 82", exception.Description);
 			Assert.Equal("SyntaxError", exception.Type);
 			Assert.Equal("menu.js", exception.DocumentName);
 			Assert.Equal(16, exception.LineNumber);
 			Assert.Equal(1, exception.ColumnNumber);
 			Assert.Empty(exception.SourceFragment);
-			Assert.Equal(
-				"   at Global code (parse menu.js:16:12)" + Environment.NewLine +
-				"   at Global code (menu.js:16:1)",
-				exception.CallStack
-			);
 		}
 
 		[Fact]
@@ -499,7 +494,7 @@ public void GenerationOfCompilationErrorMessage()
 			const string input = @"var arr = [];
 var obj = {};
 var foo = 'Browser's bar';";
-			string targetOutput = "SyntaxError: Unexpected identifier" + Environment.NewLine +
+			string targetOutput = "SyntaxError: Unexpected identifier 's'" + Environment.NewLine +
 				"   at variables.js:3:20"
 				;
 
diff --git a/test/JavaScriptEngineSwitcher.Tests/Jint/InteropTests.cs b/test/JavaScriptEngineSwitcher.Tests/Jint/InteropTests.cs
index 9b39653c..3e39ebb2 100644
--- a/test/JavaScriptEngineSwitcher.Tests/Jint/InteropTests.cs
+++ b/test/JavaScriptEngineSwitcher.Tests/Jint/InteropTests.cs
@@ -188,7 +188,7 @@ public void MappingCompilationErrorDuringRecursiveEvaluationOfFiles()
 			// Assert
 			Assert.NotNull(exception);
 			Assert.Equal("Compilation error", exception.Category);
-			Assert.Equal("Unexpected token ,", exception.Description);
+			Assert.Equal("Unexpected token ','", exception.Description);
 			Assert.Equal("SyntaxError", exception.Type);
 			Assert.Equal("math.js", exception.DocumentName);
 			Assert.Equal(25, exception.LineNumber);
@@ -311,11 +311,11 @@ public void MappingCompilationErrorDuringRecursiveExecutionOfFiles()
 			// Assert
 			Assert.NotNull(exception);
 			Assert.Equal("Compilation error", exception.Category);
-			Assert.Equal("Unexpected number", exception.Description);
+			Assert.Equal("Invalid or unexpected token", exception.Description);
 			Assert.Equal("SyntaxError", exception.Type);
 			Assert.Equal("second-file.js", exception.DocumentName);
 			Assert.Equal(1, exception.LineNumber);
-			Assert.Equal(8, exception.ColumnNumber);
+			Assert.Equal(6, exception.ColumnNumber);
 			Assert.Empty(exception.SourceFragment);
 		}
 
diff --git a/test/JavaScriptEngineSwitcher.Tests/Jint/PrecompilationTests.cs b/test/JavaScriptEngineSwitcher.Tests/Jint/PrecompilationTests.cs
index 0597c4ec..0e5a512e 100644
--- a/test/JavaScriptEngineSwitcher.Tests/Jint/PrecompilationTests.cs
+++ b/test/JavaScriptEngineSwitcher.Tests/Jint/PrecompilationTests.cs
@@ -55,11 +55,11 @@ function s4() {
 			Assert.Null(precompiledScript);
 			Assert.NotNull(exception);
 			Assert.Equal("Compilation error", exception.Category);
-			Assert.Equal("Unexpected token }", exception.Description);
+			Assert.Equal("Unexpected token ';'", exception.Description);
 			Assert.Equal("SyntaxError", exception.Type);
 			Assert.Equal("guid.js", exception.DocumentName);
-			Assert.Equal(7, exception.LineNumber);
-			Assert.Equal(2, exception.ColumnNumber);
+			Assert.Equal(6, exception.LineNumber);
+			Assert.Equal(4, exception.ColumnNumber);
 			Assert.Empty(exception.SourceFragment);
 		}
 
@@ -134,7 +134,7 @@ public void GenerationOfCompilationErrorMessage()
 
 	return result;
 }";
-			string targetOutput = "SyntaxError: Unexpected token }" + Environment.NewLine +
+			string targetOutput = "SyntaxError: Unexpected token '}'" + Environment.NewLine +
 				"   at make-id.js:12:1"
 				;
 
diff --git a/test/JavaScriptEngineSwitcher.Tests/Yantra/Es2015Tests.cs b/test/JavaScriptEngineSwitcher.Tests/Yantra/Es2015Tests.cs
index 02efbd97..9b70b4da 100644
--- a/test/JavaScriptEngineSwitcher.Tests/Yantra/Es2015Tests.cs
+++ b/test/JavaScriptEngineSwitcher.Tests/Yantra/Es2015Tests.cs
@@ -1,4 +1,6 @@
-namespace JavaScriptEngineSwitcher.Tests.Yantra
+using Xunit;
+
+namespace JavaScriptEngineSwitcher.Tests.Yantra
 {
 	public class Es2015Tests : Es2015TestsBase
 	{
@@ -6,5 +8,14 @@ protected override string EngineName
 		{
 			get { return "YantraJsEngine"; }
 		}
+
+
+		#region Promises
+
+		[Fact]
+		public override void SupportsPromises()
+		{ }
+
+		#endregion
 	}
 }
\ No newline at end of file
diff --git a/test/JavaScriptEngineSwitcher.Tests/Yantra/Es5Tests.cs b/test/JavaScriptEngineSwitcher.Tests/Yantra/Es5Tests.cs
index 681b3066..da0fea34 100644
--- a/test/JavaScriptEngineSwitcher.Tests/Yantra/Es5Tests.cs
+++ b/test/JavaScriptEngineSwitcher.Tests/Yantra/Es5Tests.cs
@@ -1,6 +1,4 @@
-using Xunit;
-
-namespace JavaScriptEngineSwitcher.Tests.Yantra
+namespace JavaScriptEngineSwitcher.Tests.Yantra
 {
 	public class Es5Tests : Es5TestsBase
 	{
diff --git a/test/JavaScriptEngineSwitcher.Tests/Yantra/InteropTests.cs b/test/JavaScriptEngineSwitcher.Tests/Yantra/InteropTests.cs
index ec922320..7a2ad049 100644
--- a/test/JavaScriptEngineSwitcher.Tests/Yantra/InteropTests.cs
+++ b/test/JavaScriptEngineSwitcher.Tests/Yantra/InteropTests.cs
@@ -108,14 +108,42 @@ public override void EmbeddingOfInstanceOfBuiltinValueTypeWithProperties()
 		public override void EmbeddingOfInstanceOfCustomValueTypeWithProperties()
 		{ }
 
+		[Fact]
+		public override void EmbeddingOfInstanceOfCustomReferenceTypeWithProperties()
+		{
+			// Arrange
+			var person = new Person("Vanya", "Ivanov");
+			const string updateCode = @"person.LastName = person.LastName.substr(0, 5) + 'ff';
+person.Patronymic = '';";
+
+			const string input1 = "person.FirstName";
+			const string targetOutput1 = "Vanya";
+
+			const string input2 = "person.LastName";
+			const string targetOutput2 = "Ivanoff";
+
+			// Act
+			string output1;
+			string output2;
+
+			using (var jsEngine = CreateJsEngine())
+			{
+				jsEngine.EmbedHostObject("person", person);
+				jsEngine.Execute(updateCode);
+
+				output1 = jsEngine.Evaluate(input1);
+				output2 = jsEngine.Evaluate(input2);
+			}
+
+			// Assert
+			Assert.Equal(targetOutput1, output1);
+			Assert.Equal(targetOutput2, output2);
+		}
+
 		#endregion
 
 		#region Objects with methods
 
-		[Fact]
-		public override void EmbeddingOfInstanceOfBuiltinValueTypeWithMethods()
-		{ }
-
 		[Fact]
 		public override void EmbeddingOfInstanceOfCustomValueTypeAndCallingOfItsGetTypeMethod()
 		{
@@ -465,20 +493,8 @@ public override void EmbeddingOfCustomReferenceTypeWithField()
 
 		#endregion
 
-		#region Types with properties
-
-		[Fact]
-		public override void EmbeddingOfBuiltinValueTypeWithProperty()
-		{ }
-
-		#endregion
-
 		#region Types with methods
 
-		[Fact]
-		public override void EmbeddingOfBuiltinValueTypeWithMethod()
-		{ }
-
 		[Fact]
 		public override void EmbeddingOfBuiltinReferenceTypeWithMethods()
 		{