Skip to content

Commit 53e58a6

Browse files
committed
fix ci 9
1 parent 599fa23 commit 53e58a6

File tree

19 files changed

+120
-148
lines changed

19 files changed

+120
-148
lines changed

Directory.Build.props

+5-1
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,17 @@
22
<PropertyGroup>
33
<Authors>Maksim Volkau</Authors>
44
<Copyright>Copyright © 2016-2024 Maksim Volkau</Copyright>
5+
56
<NeutralLanguage>en-US</NeutralLanguage>
67
<LangVersion>latest</LangVersion>
8+
<LatestSupportedNet>net9.0</LatestSupportedNet>
9+
710
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
811
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
12+
913
<NoWarn>IDE0251;IDE0079;IDE0047;NETSDK1212</NoWarn>
10-
<LatestNet>net9.0</LatestNet>
1114
</PropertyGroup>
15+
1216
<ItemGroup>
1317
<None Remove="**\*.orig" />
1418
<None Remove="**\*.ncrunchproject" />

appveyor.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ skip_commits:
1010
message: /noci .*/
1111

1212
build_script:
13-
- dotnet run -p:LatestNet=net7.0 -p:GeneratePackageOnBuild=false -f:net7.0 -c:Release --project test/FastExpressionCompiler.TestsRunner/FastExpressionCompiler.TestsRunner.csproj
13+
- dotnet run -p:LatestSupportedNet=net7.0 -f:net7.0 -c:Release --project test/FastExpressionCompiler.TestsRunner/FastExpressionCompiler.TestsRunner.csproj
1414

1515
for:
1616
- matrix:

b.bat

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ echo:
44
echo:## Starting: TESTS...
55
echo:
66

7-
dotnet run -v:m -p:GeneratePackageOnBuild=false -c:Release --project test/FastExpressionCompiler.TestsRunner
7+
dotnet run -c:Release -f:net9.0 --project test/FastExpressionCompiler.TestsRunner/FastExpressionCompiler.TestsRunner.csproj
88
if %ERRORLEVEL% neq 0 goto :error
99

10-
dotnet run -v:m -p:GeneratePackageOnBuild=false -c:Release --project test/FastExpressionCompiler.TestsRunner.Net472
10+
dotnet run -c:Release --project test/FastExpressionCompiler.TestsRunner.Net472
1111
if %ERRORLEVEL% neq 0 goto :error
1212

1313
echo:

b_debug.bat

-39
This file was deleted.

bm.bat

+2-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
dotnet run -c Release --project test/FastExpressionCompiler.Benchmarks/FastExpressionCompiler.Benchmarks.csproj
1+
@echo off
2+
dotnet run -c:Release -f:net9.0 --project test/FastExpressionCompiler.Benchmarks/FastExpressionCompiler.Benchmarks.csproj

bt.bat

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
@echo off
22

33
echo:
4-
echo:## Running TESTS on the Latest .NET version...
4+
echo:## Running TESTS on the Latest Supported .NET...
55
echo:
6-
dotnet run -v:m -p:GeneratePackageOnBuild=false -c:Release --project test/FastExpressionCompiler.TestsRunner/FastExpressionCompiler.TestsRunner.csproj
6+
dotnet run -c:Release -f:net9.0 --project test/FastExpressionCompiler.TestsRunner/FastExpressionCompiler.TestsRunner.csproj
77
if %ERRORLEVEL% neq 0 goto :error
88

99
echo:

build.bat

+14-10
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
1-
@REM @echo off
1+
@echo off
22
setlocal EnableDelayedExpansion
33

4-
set Target=net9.0
5-
set LatestNet=
4+
echo: # BUILDING AND RUNNNG THE TESTS IN RELEASE MODE
5+
echo:
6+
echo:
7+
8+
set "FrameworkParam=-f:net9.0"
9+
set "LatestSupportedNetProp=-p:LatestSupportedNet=net9.0"
610
if [%1] NEQ [] (
7-
set Target=%1
8-
set LatestNet=-p:LatestNet=%1
11+
set "FrameworkParam=-f:%1"
12+
set "LatestSupportedNetProp=-p:LatestSupportedNet=%1"
913
)
10-
echo:Set Target to '%Target%' and LatestNet to '%LatestNet%'
14+
echo:FrameworkParam == '%FrameworkParam%', LatestSupportedNetProp == '%LatestSupportedNetProp%'
1115

1216
echo:
1317
echo:## Starting: RESTORE and BUILD...
1418
echo:
1519

16-
@REM dotnet clean %LatestNet% -v:m
17-
dotnet build %LatestNet% -c:Release -v:m
20+
dotnet clean %LatestSupportedNetProp%
21+
dotnet build %LatestSupportedNetProp% -c:Release
1822
if %ERRORLEVEL% neq 0 goto :error
1923

2024
echo:
@@ -24,10 +28,10 @@ echo:
2428
echo:## Starting: TESTS...
2529
echo:
2630

27-
dotnet run -v:m %LatestNet% -p:GeneratePackageOnBuild=false -f:%Target% -c:Release --project test/FastExpressionCompiler.TestsRunner
31+
dotnet run --no-build %LatestSupportedNetProp% %FrameworkParam% -c:Release --project test/FastExpressionCompiler.TestsRunner
2832
if %ERRORLEVEL% neq 0 goto :error
2933

30-
dotnet run -v:m -p:GeneratePackageOnBuild=false -c:Release -f:net472 --project test/FastExpressionCompiler.TestsRunner.Net472
34+
dotnet run --no-build -c:Release --project test/FastExpressionCompiler.TestsRunner.Net472
3135
if %ERRORLEVEL% neq 0 goto :error
3236
echo:
3337
echo:## Finished: TESTS

build_debug.bat

+54
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
@echo off
2+
setlocal EnableDelayedExpansion
3+
4+
echo: # BUILDING AND RUNNNG THE TESTS IN DEBUG MODE
5+
echo:
6+
echo:
7+
8+
set "FrameworkParam=-f:net9.0"
9+
set "LatestSupportedNetProp=-p:LatestSupportedNet=net9.0"
10+
if [%1] NEQ [] (
11+
set "FrameworkParam=-f:%1"
12+
set "LatestSupportedNetProp=-p:LatestSupportedNet=%1"
13+
)
14+
echo:FrameworkParam == '%FrameworkParam%', LatestSupportedNetProp == '%LatestSupportedNetProp%'
15+
16+
echo:
17+
echo:## Starting: RESTORE and BUILD...
18+
echo:
19+
20+
dotnet build %LatestSupportedNetProp% -c:Debug
21+
if %ERRORLEVEL% neq 0 goto :error
22+
23+
echo:
24+
echo:## Finished: RESTORE and BUILD
25+
26+
echo:
27+
echo:## Starting: TESTS...
28+
echo:
29+
30+
dotnet run --no-build %LatestSupportedNetProp% %FrameworkParam% -c:Debug --project test/FastExpressionCompiler.TestsRunner
31+
if %ERRORLEVEL% neq 0 goto :error
32+
33+
dotnet run --no-build -c:Debug --project test/FastExpressionCompiler.TestsRunner.Net472
34+
if %ERRORLEVEL% neq 0 goto :error
35+
echo:
36+
echo:## Finished: TESTS
37+
38+
echo:
39+
echo:## Starting: SOURCE PACKAGING...
40+
echo:
41+
call BuildScripts\NugetPack.bat
42+
if %ERRORLEVEL% neq 0 goto :error
43+
echo:
44+
echo:## Finished: SOURCE PACKAGING
45+
echo:
46+
echo:# Finished: ALL
47+
echo:
48+
exit /b 0
49+
50+
:error
51+
echo:
52+
echo:## :-( Failed with ERROR: %ERRORLEVEL%
53+
echo:
54+
exit /b %ERRORLEVEL%

src/FastExpressionCompiler.LightExpression/FastExpressionCompiler.LightExpression.csproj

+7-82
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFrameworks>net472;netstandard2.0;netstandard2.1;net6.0;net8.0;$(LatestNet)</TargetFrameworks>
3+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net7.0' ">net472;netstandard2.0;netstandard2.1;net6.0;net7.0</TargetFrameworks>
4+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net8.0' ">net472;netstandard2.0;netstandard2.1;net6.0;net8.0</TargetFrameworks>
5+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net9.0' ">net472;netstandard2.0;netstandard2.1;net6.0;net8.0;net9.0</TargetFrameworks>
46

5-
<VersionPrefix>4.2.2</VersionPrefix>
7+
<VersionPrefix>5.0.0</VersionPrefix>
68
<VersionSuffix></VersionSuffix>
79

810
<Product>FastExpressionCompiler.LightExpression</Product>
@@ -12,86 +14,9 @@
1214
<Description>FastExpressionCompiler for LightExpression is 10-40x times faster than Expression.Compile()</Description>
1315
<PackageTags>Performance;Expression;ExpressionTree;Compile;DynamicMethod;IL;ILEmit;DryIoc;ExpressionToCodeLib</PackageTags>
1416
<PackageReleaseNotes><![CDATA[
15-
## v4.2.2 Bug-fix release
16-
17-
- fix: #418 Wrong output when comparing NaN value
18-
- fix: #419 System.InvalidProgramException : The JIT compiler encountered invalid IL code or an internal limitation
19-
- fix: #420 Nullable<DateTime> comparison differs from Expression.Compile
20-
- fix: #421 Date difference is giving wrong negative value
21-
- fix: #422 [bug] InvalidProgramException when having TryCatch + Default in Catch
22-
- fix: #423 Converting a uint to a float gives the wrong result
23-
24-
25-
## v4.2.1 Feature and bug-fix release
26-
27-
- fix: ImTools should disable the nullable context
28-
- fix: nullable property
29-
- fix: Incorrect il for struct indexer
30-
- fix: Fix or support return ref value
31-
- fix: Incorrect il when passing by ref value
32-
33-
## Contributors
34-
35-
* @sebastienros made contribution in https://github.com/dadhi/FastExpressionCompiler/pull/412
36-
37-
## Full Changelog
38-
39-
https://github.com/dadhi/FastExpressionCompiler/compare/v4.2.0...v4.2.1
40-
41-
42-
## v4.2.0 Feature and bug-fix release
43-
44-
- feat: #133 Optimize Switch Expression
45-
- feat: #393 Support ToCSharpString of the block in the ternary expression
46-
- feat: #396 Optimize conditional expressions with the DefaultExpression left or right operand the same way as ConstantExpression
47-
48-
- fix: #390 System.AccessViolationException when mapping using Mapster
49-
- fix: #391 ToCSharpString outputs ? for Nullable which does not produce the compile-able code
50-
- fix: #392 ToExpressionString wrongly declares Label instead of LabelTarget array
51-
- fix: #394 Calling a user defined == operator runs into a CLR invalid program exception
52-
- fix: #397 Fix and optimize the Switch support
53-
- fix: #399 Coalesce nullable with 0 is not working
54-
- fix: #400 Fix the direct assignment of Try to Member expression because indirect assignment through tmp var works
55-
- fix: #401 Invoke inlining is not working with collections in AutoMapper tests
56-
- fix: #404 An expression with a single parameter concatenated to a string causes 'Exception has been thrown by the target of an invocation' during delegate invocation
57-
- fix: #405 NullReferenceException with V4.X when using long?[]
58-
- fix: #406 NullReferenceException with V4.X
59-
- fix: #407 NullReferenceException when setting the Enum field
60-
- fix: #408 Dictionary mapping failing when the InvocationExpression inlining is involved
61-
62-
63-
## v4.0.2 Bug-fix release
64-
65-
- added: #379 Add direct net8.0 target as soon as Appveyor CI will support it
66-
- fixed: #380 Comparisons with nullable types
67-
- fixed: #381 NullReferenceException with V4.X when trying to map
68-
- fixed: #386 Value can not be null(parametr 'meth')
69-
70-
71-
## v4.0.1 Bug-fix release
72-
73-
- fixed: #374 CompileFast doesn't work with HasFlag
74-
75-
## v4.0.0 Major release
76-
77-
- fixed: #352 xxxAssign doesn't work with MemberAccess
78-
- fixed: #353 NullReferenceException when calling CompileFast() results
79-
- fixed: #357 Invalid program exception
80-
- fixed: #366 FastExpressionCompiler[v3.3.4] gives incorrect results in some linq operations
81-
- fixed: #368 Fix duplicate nested lambda compilation
82-
- fixed: #374 CompileFast doesn't work with HasFlag
83-
84-
- added: #264 Optimize the array index emit to emit specific Ldelem_ code instead of generic Ldelem
85-
- added: #273 Implement IArgumentProvider for the BlockExpression to minimize the consumed memory
86-
- added: #346 Is it possible to implement ref local variables?
87-
- added: #359 Improve the performance of variable lookup
88-
- added: #367 Better diagnostics and debugging with error codes from Collect and Compile rounds
89-
- added: #369 Decrease memory occupied by the LightExpression Block by storing Expression in SmallList (partly on stack)
90-
- added: #370 Optimize any nested lambda compilation (LINQ) by compiling right after collect one-by-one
91-
- added: #372 Support LightExpression.Expression.TryConvertDelegateIntrinsic for converting one type of delegate to another
92-
- added: #373 Support custom C# printing for the LightExpression.Expression
93-
94-
]]> </PackageReleaseNotes>
17+
## v5.0.0 Major feature release
18+
]]>
19+
</PackageReleaseNotes>
9520

9621
<AssemblyName>$(Product)</AssemblyName>
9722
<AssemblyTitle>$(Product) $(TargetFramework)</AssemblyTitle>

src/FastExpressionCompiler/FastExpressionCompiler.csproj

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFrameworks>net472;netstandard2.0;netstandard2.1;net6.0;net8.0;$(LatestNet)</TargetFrameworks>
3+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net7.0' ">net472;netstandard2.0;netstandard2.1;net6.0;net7.0</TargetFrameworks>
4+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net8.0' ">net472;netstandard2.0;netstandard2.1;net6.0;net8.0</TargetFrameworks>
5+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net9.0' ">net472;netstandard2.0;netstandard2.1;net6.0;net8.0;net9.0</TargetFrameworks>
46

57
<VersionPrefix>5.0.0</VersionPrefix>
68
<VersionSuffix></VersionSuffix>

test/FastExpressionCompiler.Benchmarks/FastExpressionCompiler.Benchmarks.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>$(LatestNet)</TargetFramework>
5-
<OutputType>Exe</OutputType>
4+
<TargetFrameworks>$(LatestSupportedNet)</TargetFrameworks>
65

6+
<OutputType>Exe</OutputType>
77
<IsTestProject>false</IsTestProject>
88

99
<!--skip tiering jitting for the fare benchmarks -->

test/FastExpressionCompiler.ILDecoder/FastExpressionCompiler.ILDecoder.csproj

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net472;net6.0;net8.0;$(LatestNet)</TargetFrameworks>
4+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net7.0' ">net472;net7.0</TargetFrameworks>
5+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net8.0' ">net472;net8.0</TargetFrameworks>
6+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net9.0' ">net472;net9.0</TargetFrameworks>
57
</PropertyGroup>
68

79
<ItemGroup>

test/FastExpressionCompiler.IssueTests/FastExpressionCompiler.IssueTests.csproj

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFrameworks>net472;net8.0;$(LatestNet)</TargetFrameworks>
3+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net7.0' ">net472;net7.0</TargetFrameworks>
4+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net8.0' ">net472;net8.0</TargetFrameworks>
5+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net9.0' ">net472;net9.0</TargetFrameworks>
46
</PropertyGroup>
57

68
<ItemGroup>

test/FastExpressionCompiler.LightExpression.IssueTests/FastExpressionCompiler.LightExpression.IssueTests.csproj

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFrameworks>net472;net8.0;$(LatestNet)</TargetFrameworks>
3+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net7.0' ">net472;net7.0</TargetFrameworks>
4+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net8.0' ">net472;net8.0</TargetFrameworks>
5+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net9.0' ">net472;net9.0</TargetFrameworks>
6+
47
<DefineConstants>LIGHT_EXPRESSION</DefineConstants>
58
</PropertyGroup>
69

test/FastExpressionCompiler.LightExpression.UnitTests/FastExpressionCompiler.LightExpression.UnitTests.csproj

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFrameworks>net472;net8.0;$(LatestNet)</TargetFrameworks>
3+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net7.0' ">net472;net7.0</TargetFrameworks>
4+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net8.0' ">net472;net8.0</TargetFrameworks>
5+
<TargetFrameworks Condition=" '$(LatestSupportedNet)' == 'net9.0' ">net472;net9.0</TargetFrameworks>
6+
47
<DefineConstants>LIGHT_EXPRESSION</DefineConstants>
58
</PropertyGroup>
69

test/FastExpressionCompiler.TestsRunner.Net472/FastExpressionCompiler.TestsRunner.Net472.csproj

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFrameworks>net472</TargetFrameworks>
3+
<TargetFramework>net472</TargetFramework>
4+
45
<OutputType>Exe</OutputType>
56
<IsTestProject>false</IsTestProject>
7+
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
8+
69
<NoWarn>$(NoWarn);NETSDK1005;NETSDK1138;NU1702</NoWarn>
710
</PropertyGroup>
811
<ItemGroup>

0 commit comments

Comments
 (0)