Skip to content

Commit ad3e140

Browse files
committed
In JavaScriptEngineSwitcher.NiL:
1. NiL.JS was updated to version 2.6.1714; 2. No longer supports a .NET Core App 3.1 and .NET 6; 3. Added support for .NET 10.
1 parent f516c32 commit ad3e140

18 files changed

+75
-29
lines changed

src/JavaScriptEngineSwitcher.NiL/Helpers/NiLJsErrorHelpers.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System.Text.RegularExpressions;
1+
using System;
2+
using System.Text.RegularExpressions;
23

34
using JavaScriptEngineSwitcher.Core.Helpers;
45

@@ -47,7 +48,7 @@ public static string RemoveDotNetStackTraceFromErrorLocation(string errorLocatio
4748
}
4849

4950
string jsErrorLocation = errorLocation;
50-
int dotNetStackTraceIndex = errorLocation.IndexOf(DotNetStackTraceLinePrefix);
51+
int dotNetStackTraceIndex = errorLocation.IndexOf(DotNetStackTraceLinePrefix, StringComparison.Ordinal);
5152

5253
if (dotNetStackTraceIndex != -1)
5354
{

src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<PropertyGroup>
44
<Product>JS Engine Switcher: NiL</Product>
55
<VersionPrefix>3.31.0</VersionPrefix>
6-
<TargetFrameworks>net461;net48;netcoreapp3.1;net6.0;net8.0;net9.0</TargetFrameworks>
6+
<TargetFrameworks>net461;net48;net8.0;net9.0;net10.0</TargetFrameworks>
77
<OutputType>Library</OutputType>
88
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
99
<NoWarn>$(NoWarn);CS1591</NoWarn>
@@ -22,14 +22,14 @@
2222
<PackageIconFullPath>../../Icons/JavaScriptEngineSwitcher_NiL_Logo128x128.png</PackageIconFullPath>
2323
<Description>JavaScriptEngineSwitcher.NiL contains a `NiLJsEngine` adapter (wrapper for the NiL.JS).</Description>
2424
<PackageTags>$(PackageCommonTags);NiL</PackageTags>
25-
<PackageReleaseNotes>1. Performed a migration to the modern C# null/not-null checks;
26-
2. In the `lock` statements for .NET 9 target now uses a instances of the `System.Threading.Lock` class;
27-
3. Reduced a memory allocation by using collection expressions.</PackageReleaseNotes>
25+
<PackageReleaseNotes>1. NiL.JS was updated to version 2.6.1714;
26+
2. No longer supports a .NET Core App 3.1 and .NET 6;
27+
3. Added support for .NET 10.</PackageReleaseNotes>
2828
</PropertyGroup>
2929

3030
<ItemGroup>
3131
<ProjectReference Include="../JavaScriptEngineSwitcher.Core/JavaScriptEngineSwitcher.Core.csproj" />
32-
<PackageReference Include="NiL.JS" Version="2.6.1712" />
32+
<PackageReference Include="NiL.JS" Version="2.6.1714" />
3333
</ItemGroup>
3434

3535
<ItemGroup>

src/JavaScriptEngineSwitcher.NiL/NiLJsEngine.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,13 @@ public sealed class NiLJsEngine : JsEngineBase
4646
/// <summary>
4747
/// Version of original JS engine
4848
/// </summary>
49-
private const string EngineVersion = "2.6.1712";
49+
private const string EngineVersion = "2.6.1714";
5050

5151
/// <summary>
5252
/// Regular expression for working with the syntax error message
5353
/// </summary>
5454
private static readonly Regex _syntaxErrorMessageRegex =
55-
new Regex(@"^(?<description>[\s\S]+?) (?:at )?\((?<lineNumber>\d+):(?<columnNumber>\d+)\)$");
55+
new Regex(@"^(?<description>[\s\S]+?) (?:at )?\((?<lineNumber>\d+):(?<columnNumber>\d+)(?:\*\d+)?\)$");
5656

5757
/// <summary>
5858
/// NiL JS context
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
JavaScriptEngineSwitcher.NiL contains a `NiLJsEngine` adapter (wrapper for the [NiL.JS](https://github.com/nilproject/NiL.JS) version 2.6.1712).
1+
JavaScriptEngineSwitcher.NiL contains a `NiLJsEngine` adapter (wrapper for the [NiL.JS](https://github.com/nilproject/NiL.JS) version 2.6.1714).

src/JavaScriptEngineSwitcher.NiL/readme.txt

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,14 @@
1212
DESCRIPTION
1313
===========
1414
JavaScriptEngineSwitcher.NiL contains a `NiLJsEngine` adapter (wrapper for the
15-
NiL.JS (https://github.com/nilproject/NiL.JS) version 2.6.1712).
15+
NiL.JS (https://github.com/nilproject/NiL.JS) version 2.6.1714).
1616

1717
=============
1818
RELEASE NOTES
1919
=============
20-
1. Performed a migration to the modern C# null/not-null checks;
21-
2. In the `lock` statements for .NET 9 target now uses a instances of the
22-
`System.Threading.Lock` class;
23-
3. Reduced a memory allocation by using collection expressions.
20+
1. NiL.JS was updated to version 2.6.1714;
21+
2. No longer supports a .NET Core App 3.1 and .NET 6;
22+
3. Added support for .NET 10.
2423

2524
=============
2625
DOCUMENTATION

test/JavaScriptEngineSwitcher.Benchmarks/HostObjectsEmbeddingBenchmark.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
using JavaScriptEngineSwitcher.Jint;
1111
using JavaScriptEngineSwitcher.Jurassic;
1212
using JavaScriptEngineSwitcher.Msie;
13+
#if NIL_JS
1314
using JavaScriptEngineSwitcher.NiL;
15+
#endif
1416
using JavaScriptEngineSwitcher.V8;
1517

1618
using JavaScriptEngineSwitcher.Benchmarks.Interop.ObjectsEmbedding;
@@ -159,13 +161,15 @@ public void MsieChakraEdgeJsRt()
159161
});
160162
EmbedAndUseHostObjects(createJsEngine);
161163
}
164+
#if NIL_JS
162165

163166
[Benchmark]
164167
public void NiL()
165168
{
166169
Func<IJsEngine> createJsEngine = () => new NiLJsEngine();
167170
EmbedAndUseHostObjects(createJsEngine);
168171
}
172+
#endif
169173

170174
[Benchmark]
171175
[Arguments(false)]

test/JavaScriptEngineSwitcher.Benchmarks/HostTypesEmbeddingBenchmark.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
using JavaScriptEngineSwitcher.Jint;
1111
using JavaScriptEngineSwitcher.Jurassic;
1212
using JavaScriptEngineSwitcher.Msie;
13+
#if NIL_JS
1314
using JavaScriptEngineSwitcher.NiL;
15+
#endif
1416
using JavaScriptEngineSwitcher.V8;
1517

1618
using JavaScriptEngineSwitcher.Benchmarks.Interop.TypesEmbedding;
@@ -139,13 +141,15 @@ public void MsieChakraEdgeJsRt()
139141
});
140142
EmbedAndUseHostTypes(createJsEngine);
141143
}
144+
#if NIL_JS
142145

143146
[Benchmark]
144147
public void NiL()
145148
{
146149
Func<IJsEngine> createJsEngine = () => new NiLJsEngine();
147150
EmbedAndUseHostTypes(createJsEngine);
148151
}
152+
#endif
149153

150154
[Benchmark]
151155
[Arguments(false)]

test/JavaScriptEngineSwitcher.Benchmarks/JavaScriptEngineSwitcher.Benchmarks.csproj

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@
1515

1616
<Import Project="../../build/common.props" />
1717

18+
<PropertyGroup Condition=" '$(TargetFramework)' != 'netcoreapp3.1' And '$(TargetFramework)' != 'net5.0' And '$(TargetFramework)' != 'net6.0' And '$(TargetFramework)' != 'net7.0' ">
19+
<DefineConstants>$(DefineConstants);NIL_JS</DefineConstants>
20+
</PropertyGroup>
21+
1822
<ItemGroup>
1923
<PackageReference Include="BenchmarkDotNet" VersionOverride="0.15.8" />
2024
<PackageReference Include="BuildBundlerMinifier" VersionOverride="3.2.449" PrivateAssets="All" />
@@ -31,13 +35,16 @@
3135
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj" />
3236
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Jurassic/JavaScriptEngineSwitcher.Jurassic.csproj" />
3337
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Msie/JavaScriptEngineSwitcher.Msie.csproj" />
34-
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj" />
3538
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Node/JavaScriptEngineSwitcher.Node.csproj" />
3639
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Vroom/JavaScriptEngineSwitcher.Vroom.csproj" />
3740
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.V8/JavaScriptEngineSwitcher.V8.csproj" />
3841
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Yantra/JavaScriptEngineSwitcher.Yantra.csproj" />
3942
</ItemGroup>
4043

44+
<ItemGroup Condition=" '$(TargetFramework)' != 'netcoreapp3.1' And '$(TargetFramework)' != 'net5.0' And '$(TargetFramework)' != 'net6.0' And '$(TargetFramework)' != 'net7.0' ">
45+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj" />
46+
</ItemGroup>
47+
4148
<ItemGroup Condition=" '$(TargetFramework)' != 'net462' ">
4249
<PackageReference Include="JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64" />
4350
<PackageReference Include="JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64" />

test/JavaScriptEngineSwitcher.Benchmarks/JsExecutionHeavyBenchmark.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
using JavaScriptEngineSwitcher.Jint;
1111
using JavaScriptEngineSwitcher.Jurassic;
1212
using JavaScriptEngineSwitcher.Msie;
13+
#if NIL_JS
1314
using JavaScriptEngineSwitcher.NiL;
15+
#endif
1416
using JavaScriptEngineSwitcher.Node;
1517
using JavaScriptEngineSwitcher.V8;
1618
using JavaScriptEngineSwitcher.Vroom;
@@ -222,13 +224,15 @@ public void MsieChakraEdgeJsRt(bool withPrecompilation)
222224
});
223225
RenderTemplates(createJsEngine, withPrecompilation);
224226
}
227+
#if NIL_JS
225228

226229
[Benchmark]
227230
public void NiL()
228231
{
229232
Func<IJsEngine> createJsEngine = () => new NiLJsEngine();
230233
RenderTemplates(createJsEngine, false);
231234
}
235+
#endif
232236

233237
[Benchmark]
234238
public void Node()

test/JavaScriptEngineSwitcher.Benchmarks/JsExecutionLightBenchmark.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
using JavaScriptEngineSwitcher.Jint;
1111
using JavaScriptEngineSwitcher.Jurassic;
1212
using JavaScriptEngineSwitcher.Msie;
13+
#if NIL_JS
1314
using JavaScriptEngineSwitcher.NiL;
15+
#endif
1416
using JavaScriptEngineSwitcher.Node;
1517
using JavaScriptEngineSwitcher.V8;
1618
using JavaScriptEngineSwitcher.Vroom;
@@ -256,13 +258,15 @@ public void MsieChakraEdgeJsRt(bool withPrecompilation)
256258
});
257259
TransliterateStrings(createJsEngine, withPrecompilation);
258260
}
261+
#if NIL_JS
259262

260263
[Benchmark]
261264
public void NiL()
262265
{
263266
Func<IJsEngine> createJsEngine = () => new NiLJsEngine();
264267
TransliterateStrings(createJsEngine, false);
265268
}
269+
#endif
266270

267271
[Benchmark]
268272
public void Node()

0 commit comments

Comments
 (0)