Skip to content

Commit 781e1fc

Browse files
author
Maksim Volkau
committed
release v5.4.0
1 parent 0cbe069 commit 781e1fc

13 files changed

+169
-19
lines changed

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project>
22
<PropertyGroup>
33
<Authors>Maksim Volkau</Authors>
4-
<Copyright>Copyright © 2016-2025 Maksim Volkau</Copyright>
4+
<Copyright>Copyright © 2016-2026 Maksim Volkau</Copyright>
55

66
<NeutralLanguage>en-US</NeutralLanguage>
77
<LangVersion>latest</LangVersion>

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) 2016-2025 Maksim Volkau
3+
Copyright (c) 2016-2026 Maksim Volkau
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
[Apex.Serialization]: https://github.com/dbolin/Apex.Serialization
1717
[MapsterMapper]: https://github.com/MapsterMapper/Mapster
1818

19-
[![Latest Release Notes](https://img.shields.io/badge/latest%20release%20notes-v5.3.3-blue)](https://github.com/dadhi/FastExpressionCompiler/releases/tag/v5.3.3)[![License](https://img.shields.io/github/license/dadhi/FastExpressionCompiler.svg)](http://opensource.org/licenses/MIT)[![Build Windows,Ubuntu](https://github.com/dadhi/FastExpressionCompiler/actions/workflows/build.yml/badge.svg)](https://github.com/dadhi/FastExpressionCompiler/actions/workflows/build.yml)
19+
[![Latest Release Notes](https://img.shields.io/badge/latest%20release%20notes-v5.4.0-blue)](https://github.com/dadhi/FastExpressionCompiler/releases/tag/v5.4.0)[![License](https://img.shields.io/github/license/dadhi/FastExpressionCompiler.svg)](http://opensource.org/licenses/MIT)[![Build Windows,Ubuntu](https://github.com/dadhi/FastExpressionCompiler/actions/workflows/build.yml/badge.svg)](https://github.com/dadhi/FastExpressionCompiler/actions/workflows/build.yml)
2020

2121
Targets .NET 6+, .NET 4.7.2+, .NET Standard 2.0+
2222

nuspecs/FastExpressionCompiler.Internal.src.nuspec

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,41 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
33
<metadata minClientVersion="3.3.0">
44
<id>FastExpressionCompiler.Internal.src</id>
5-
<version>5.3.3</version>
5+
<version>5.4.0</version>
66
<authors>Maksim Volkau</authors>
7-
<copyright>Copyright © 2016-2025 Maksim Volkau</copyright>
7+
<copyright>Copyright © 2016-2026 Maksim Volkau</copyright>
88
<projectUrl>https://github.com/dadhi/FastExpressionCompiler</projectUrl>
99
<license type="expression">MIT</license>
1010
<requireLicenseAcceptance>false</requireLicenseAcceptance>
1111
<icon>logo.png</icon>
1212
<description>FastExpressionCompiler is 10-40x times faster than Expression.Compile()</description>
1313
<tags>Performance;Expression;ExpressionTree;Compile;DynamicMethod;IL;ILEmit;DryIoc;ExpressionToCodeLib</tags>
1414
<releaseNotes><![CDATA[
15+
## v5.4.0 Feature and bug-fix release
16+
17+
### Features
18+
19+
- #398 Optimize Switch with OpCodes.Switch
20+
- #484 PrintIL options to output op-codes in the format directly copyable to AssertOpCodes method
21+
- #482 [impl] Update to the modern optimized and fixed versions of ImTools SmallList and SmallMap
22+
23+
### Fixes
24+
25+
- Multiple fixes in `ToCSharpString`, `PrintCSharp`
26+
- #480 "CLR detected an invalid program" exception
27+
- #483 fix recursive PrintIL output for Label Offset and Argument Ordinal
28+
- #485 PrintCSharp for Switch does not prints "break" when required
29+
- #487 Fix ToCSharpString output for boolean equality expressions
30+
- #490 Regression in compiling lambdas with ref struct parameters
31+
- by [exyi](https://github.com/exyi) #491 Fix unsigned int to floating point number conversion
32+
- by [exyi](https://github.com/exyi) #493 Fix ParentFlags propagating in TryEmitNewExpression
33+
- #495 Incomplete pattern detection for error 1007: Return goto from TryCatch with Assign generates invalid IL instead of failing gracefully
34+
35+
### Full Changelog
36+
37+
https://github.com/dadhi/FastExpressionCompiler/compare/v5.3.3...v5.4.0
38+
39+
1540
## v5.3.3 Bug-fix release (src packages only)
1641
1742
- fixed: #488 Fix warnings in src package

nuspecs/FastExpressionCompiler.LightExpression.Internal.src.nuspec

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,41 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
33
<metadata minClientVersion="3.3.0">
44
<id>FastExpressionCompiler.LightExpression.Internal.src</id>
5-
<version>5.3.3</version>
5+
<version>5.4.0</version>
66
<authors>Maksim Volkau</authors>
7-
<copyright>Copyright © 2016-2025 Maksim Volkau</copyright>
7+
<copyright>Copyright © 2016-2026 Maksim Volkau</copyright>
88
<projectUrl>https://github.com/dadhi/FastExpressionCompiler</projectUrl>
99
<license type="expression">MIT</license>
1010
<requireLicenseAcceptance>false</requireLicenseAcceptance>
1111
<icon>logo.png</icon>
1212
<description>FastExpressionCompiler is 10-40x times faster than Expression.Compile()</description>
1313
<tags>Performance;Expression;ExpressionTree;Compile;DynamicMethod;IL;ILEmit;DryIoc;ExpressionToCodeLib</tags>
1414
<releaseNotes><![CDATA[
15+
## v5.4.0 Feature and bug-fix release
16+
17+
### Features
18+
19+
- #398 Optimize Switch with OpCodes.Switch
20+
- #484 PrintIL options to output op-codes in the format directly copyable to AssertOpCodes method
21+
- #482 [impl] Update to the modern optimized and fixed versions of ImTools SmallList and SmallMap
22+
23+
### Fixes
24+
25+
- Multiple fixes in `ToCSharpString`, `PrintCSharp`
26+
- #480 "CLR detected an invalid program" exception
27+
- #483 fix recursive PrintIL output for Label Offset and Argument Ordinal
28+
- #485 PrintCSharp for Switch does not prints "break" when required
29+
- #487 Fix ToCSharpString output for boolean equality expressions
30+
- #490 Regression in compiling lambdas with ref struct parameters
31+
- by [exyi](https://github.com/exyi) #491 Fix unsigned int to floating point number conversion
32+
- by [exyi](https://github.com/exyi) #493 Fix ParentFlags propagating in TryEmitNewExpression
33+
- #495 Incomplete pattern detection for error 1007: Return goto from TryCatch with Assign generates invalid IL instead of failing gracefully
34+
35+
### Full Changelog
36+
37+
https://github.com/dadhi/FastExpressionCompiler/compare/v5.3.3...v5.4.0
38+
39+
1540
## v5.3.3 Bug-fix release (src packages only)
1641
1742
- fixed: #488 Fix warnings in src package

nuspecs/FastExpressionCompiler.LightExpression.src.nuspec

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,41 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
33
<metadata minClientVersion="3.3.0">
44
<id>FastExpressionCompiler.LightExpression.src</id>
5-
<version>5.3.3</version>
5+
<version>5.4.0</version>
66
<authors>Maksim Volkau</authors>
7-
<copyright>Copyright © 2016-2025 Maksim Volkau</copyright>
7+
<copyright>Copyright © 2016-2026 Maksim Volkau</copyright>
88
<projectUrl>https://github.com/dadhi/FastExpressionCompiler</projectUrl>
99
<license type="expression">MIT</license>
1010
<requireLicenseAcceptance>false</requireLicenseAcceptance>
1111
<icon>logo.png</icon>
1212
<description>FastExpressionCompiler is 10-40x times faster than Expression.Compile()</description>
1313
<tags>Performance;Expression;ExpressionTree;Compile;DynamicMethod;IL;ILEmit;DryIoc;ExpressionToCodeLib</tags>
1414
<releaseNotes><![CDATA[
15+
## v5.4.0 Feature and bug-fix release
16+
17+
### Features
18+
19+
- #398 Optimize Switch with OpCodes.Switch
20+
- #484 PrintIL options to output op-codes in the format directly copyable to AssertOpCodes method
21+
- #482 [impl] Update to the modern optimized and fixed versions of ImTools SmallList and SmallMap
22+
23+
### Fixes
24+
25+
- Multiple fixes in `ToCSharpString`, `PrintCSharp`
26+
- #480 "CLR detected an invalid program" exception
27+
- #483 fix recursive PrintIL output for Label Offset and Argument Ordinal
28+
- #485 PrintCSharp for Switch does not prints "break" when required
29+
- #487 Fix ToCSharpString output for boolean equality expressions
30+
- #490 Regression in compiling lambdas with ref struct parameters
31+
- by [exyi](https://github.com/exyi) #491 Fix unsigned int to floating point number conversion
32+
- by [exyi](https://github.com/exyi) #493 Fix ParentFlags propagating in TryEmitNewExpression
33+
- #495 Incomplete pattern detection for error 1007: Return goto from TryCatch with Assign generates invalid IL instead of failing gracefully
34+
35+
### Full Changelog
36+
37+
https://github.com/dadhi/FastExpressionCompiler/compare/v5.3.3...v5.4.0
38+
39+
1540
## v5.3.3 Bug-fix release (src packages only)
1641
1742
- fixed: #488 Fix warnings in src package

nuspecs/FastExpressionCompiler.src.nuspec

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,41 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
33
<metadata minClientVersion="3.3.0">
44
<id>FastExpressionCompiler.src</id>
5-
<version>5.3.3</version>
5+
<version>5.4.0</version>
66
<authors>Maksim Volkau</authors>
7-
<copyright>Copyright © 2016-2025 Maksim Volkau</copyright>
7+
<copyright>Copyright © 2016-2026 Maksim Volkau</copyright>
88
<projectUrl>https://github.com/dadhi/FastExpressionCompiler</projectUrl>
99
<license type="expression">MIT</license>
1010
<requireLicenseAcceptance>false</requireLicenseAcceptance>
1111
<description>FastExpressionCompiler is 10-40x times faster than Expression.Compile()</description>
1212
<tags>Performance;Expression;ExpressionTree;Compile;DynamicMethod;IL;ILEmit;DryIoc;ExpressionToCodeLib</tags>
1313
<icon>logo.png</icon>
1414
<releaseNotes><![CDATA[
15+
## v5.4.0 Feature and bug-fix release
16+
17+
### Features
18+
19+
- #398 Optimize Switch with OpCodes.Switch
20+
- #484 PrintIL options to output op-codes in the format directly copyable to AssertOpCodes method
21+
- #482 [impl] Update to the modern optimized and fixed versions of ImTools SmallList and SmallMap
22+
23+
### Fixes
24+
25+
- Multiple fixes in `ToCSharpString`, `PrintCSharp`
26+
- #480 "CLR detected an invalid program" exception
27+
- #483 fix recursive PrintIL output for Label Offset and Argument Ordinal
28+
- #485 PrintCSharp for Switch does not prints "break" when required
29+
- #487 Fix ToCSharpString output for boolean equality expressions
30+
- #490 Regression in compiling lambdas with ref struct parameters
31+
- by [exyi](https://github.com/exyi) #491 Fix unsigned int to floating point number conversion
32+
- by [exyi](https://github.com/exyi) #493 Fix ParentFlags propagating in TryEmitNewExpression
33+
- #495 Incomplete pattern detection for error 1007: Return goto from TryCatch with Assign generates invalid IL instead of failing gracefully
34+
35+
### Full Changelog
36+
37+
https://github.com/dadhi/FastExpressionCompiler/compare/v5.3.3...v5.4.0
38+
39+
1540
## v5.3.3 Bug-fix release (src packages only)
1641
1742
- fixed: #488 Fix warnings in src package

src/FastExpressionCompiler.LightExpression/Expression.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
/*
33
The MIT License (MIT)
44
5-
Copyright (c) 2016-2025 Maksim Volkau
5+
Copyright (c) 2016-2026 Maksim Volkau
66
77
Permission is hereby granted, free of charge, to any person obtaining a copy
88
of this software and associated documentation files (the "Software"), to deal

src/FastExpressionCompiler.LightExpression/ExpressionVisitor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
/*
33
The MIT License (MIT)
44
5-
Copyright (c) 2016-2025 Maksim Volkau
5+
Copyright (c) 2016-2026 Maksim Volkau
66
77
Permission is hereby granted, free of charge, to any person obtaining a copy
88
of this software and associated documentation files (the "Software"), to deal

src/FastExpressionCompiler.LightExpression/FastExpressionCompiler.LightExpression.csproj

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<TargetFrameworks Condition="'$(DevMode)' != 'true'">net472;netstandard2.0;netstandard2.1;net6.0;net8.0;net9.0</TargetFrameworks>
44
<TargetFrameworks Condition="'$(DevMode)' == 'true'">net472;net9.0</TargetFrameworks>
55

6-
<VersionPrefix>5.3.0</VersionPrefix>
6+
<VersionPrefix>5.4.0</VersionPrefix>
77
<VersionSuffix></VersionSuffix>
88

99
<Product>FastExpressionCompiler.LightExpression</Product>
@@ -13,6 +13,31 @@
1313
<Description>FastExpressionCompiler for LightExpression is 10-40x times faster than Expression.Compile()</Description>
1414
<PackageTags>Performance;Expression;ExpressionTree;Compile;DynamicMethod;IL;ILEmit;DryIoc;ExpressionToCodeLib</PackageTags>
1515
<PackageReleaseNotes><![CDATA[
16+
## v5.4.0 Feature and bug-fix release
17+
18+
### Features
19+
20+
- #398 Optimize Switch with OpCodes.Switch
21+
- #484 PrintIL options to output op-codes in the format directly copyable to AssertOpCodes method
22+
- #482 [impl] Update to the modern optimized and fixed versions of ImTools SmallList and SmallMap
23+
24+
### Fixes
25+
26+
- Multiple fixes in `ToCSharpString`, `PrintCSharp`
27+
- #480 "CLR detected an invalid program" exception
28+
- #483 fix recursive PrintIL output for Label Offset and Argument Ordinal
29+
- #485 PrintCSharp for Switch does not prints "break" when required
30+
- #487 Fix ToCSharpString output for boolean equality expressions
31+
- #490 Regression in compiling lambdas with ref struct parameters
32+
- by [exyi](https://github.com/exyi) #491 Fix unsigned int to floating point number conversion
33+
- by [exyi](https://github.com/exyi) #493 Fix ParentFlags propagating in TryEmitNewExpression
34+
- #495 Incomplete pattern detection for error 1007: Return goto from TryCatch with Assign generates invalid IL instead of failing gracefully
35+
36+
### Full Changelog
37+
38+
https://github.com/dadhi/FastExpressionCompiler/compare/v5.3.3...v5.4.0
39+
40+
1641
## v5.3.0 Feature release
1742
1843
- feat: [performance] Reuse the ILGenerator used by the nested lambda compilation

0 commit comments

Comments
 (0)