Skip to content

Releases: adrianoc/cecilifier

April 2025 Update

04 Apr 22:32
9424d62
Compare
Choose a tag to compare

2e5a08d fixes crash when resolving types in anonymous function expressions declaration (#331)
37e2926 adds tests and fixes for NoCapturedVariableValidator (#320)
ab293d5 add tests for DefaultParameterExtractorVisitor (#320)
e6a6c88 do not publish non-english resource assemblies
11be4fb adds tests to improve code coverage (#320)
93a564e adds disable test for issue #331
39f921d adds tests for TypeSyntaxExtensions (#320)
4611269 Adds disabled test for assignment of inline array stored in a field to a Span (#320)
de80972 Adds 'default' assignment tests for short, ushort and UIntPtr (#320)
1d89ac5 Adds value handling tests for short, ushort and UIntPtr (#320)
b130419 Added tests for loading constants of type short, ushort, IntPtr, UIntPtr (#320)
22af8d7 excludes some types/members from coverage analysis (#320)
3306ec9 removes whats seems to be dead code (#320)
a215598 fixes handling of enum members in TypeDeclarationResolver (#320)
3fa4c94 code cleanup
fc792b2 excludes some types/members from coverage analysis (#320)
5873a1d added simple test for CecilifierDiagnostic class (#320)
95d9764 extract method to improve code coverage report (#320)
a8aa845 ensure we use codecov token when uploading results
cd1cd73 extract method to improve code coverage report (#320)
1445f98 bumps version to 2.20

March 2025 Update

05 Mar 20:58
ee248ec
Compare
Choose a tag to compare

5963e16 better handling of 4xx/5xx server responses when sending assemblies (#327)
196f66d fixes Nullable initialization with null literal (#323)
197f02c change naming of field in PrivateImplementationDetails nested type to match Roslyn naming (#324)
388749b prefixes 'ldelema' instructions with 'readonly' if element type is a generic type parameter (#326)
9676317 reenabled more generic type parameter boxing tests (#263)
cc23e3d reenabled and fixed boxing tests for generic types (#242)
190c3e1 adds github action to check for disabled tests when closing issues (#325)
1205e9b reenabled disabled tests referencing closed issues (#324)

February 2025 Update 1 (Version 2.18)

05 Feb 02:09
08fd73f
Compare
Choose a tag to compare

01f9120 forwarded attribute reference with cycles (#311)
326683f set module architecture (either arm64 or amd64) after the runtime architecture
d072d0e added more generic attribute tests (#311)
fae791c fixes order of generated code when attributes were applied with its short syntax
ec7a009 adds support for null coalescing operator (only ??, not ??=) (#253)
1fd4e2b fixes stack underflow on local functions calls (#322)
eb3f37e Revert "fixes local functions always being handled as static (#271)"
dd4b9f5 bump cecilifier to 2.18.0

January 2025 Update (Version 2.17)

05 Jan 00:11
676712f
Compare
Choose a tag to compare

676712f bump Cecilifier to 2.17
f5eba15 visit member declarations sorted by order of references to minimize interleaving code generation for members (#314)
256e13d code cleanup
73aae8e fixes Activation.CreateInstance() invocation on 'ObjectCreationExpression' (#315)
a001b9c use ILVerification library instead of ilverify tool (#313)

November 2024 Update 1 (Version 2.16) - Shit Happens

06 Nov 23:09
8415fcf
Compare
Choose a tag to compare

c29ca42 fix Cecilifier.Web.csproj after monaco editor update
801cdad removes non relevant TODO (#303)
f431936 ensure that tests recompile cecilified code whenever the cecilified code or any of its dependencies changes
f491a64 includes public fields in synthetic PrintMembers() method on records (#303)
9934ca0 fixes field access on generic type generating invalid field reference
edfd79b improve assembly comparison code (#303)
27adf08 avoid instantiating visitor for each type processed
033a613 simplified project compression code (#303)
7c82937 updates monaco editor to 0.52.0
e0cf06f displays .NET version in the 'about' section
171acf8 updates Dockerfile to use nightly builds of .NET (used to test new versions of .NET)
c8b2e21 takes parameter types into account during method resolution (#303)
4e70b33 fixes assignment of value types in instance methods (#303)
bd4879a addressed stackalloc with size specified through property/local variable/parameter (#303)
5c3430e fixes pointer to pointer assignment emitting Stind instruction instead of plain stloc/starg/stfld/etc (#303)
c3d1d8c improves workflow when assembly comparison code throws exceptions
24e115e removes some code duplication in the area of conversion application (#303)
5704e96 use top level statements in test (#303)
591ebe1 bumps version to 2.16.0

... and a lot of TODO cleanups:

1167133 removes outdated TODO (#303)
23a6c13 replaces TODO with issue #312 (#303)
dbc8faa code cleanup
7d37efa removes misleading TODO (#303)
8fee84f removes outdated TODO regarding method attributes on synthetic methods (#303)
251c1ce removes misleading TODO (#303)
932d97b removes TODO regarding coverage of type syntaxes and adds clarifying comment (#303)
c1a0776 replaced TODO regardint tuple handling with existing issue #93 (#303)
744e98c replaced TODO regarding attribute handling with issue #311 (#303)
21790e9 removes unclear TODO + adds a couple of tests to improve coverage (#303)
f5fc600 converted TODO from code to issue #309 (#303)
987b2a5 removes stale, incorrect TODO and cleans up the code (#303)
16c791d removed outdated TODO (#303)

October 2024 Updates 2 (Version 2.15)

18 Oct 20:35
0f954ca
Compare
Choose a tag to compare

d4aa7bc updates Mono.Cecil package from 0.11.5 -> 0.11.6
c170938 bumps version to 2.15.0
2117d49 cecilified code respects 'SkipLocalsInitAttribute' (#220)
cf58feb fix incorrect name being used when interacting with reflection APIs in some scenarios (#304)
bf49b02 extracted CecilifierContextBasedTestBase from TypeResolverTests to simplify writing unit tests
2220a5e fixes calls to 'Object.GetType()' on value types generating incorrect code (#298)
dbd20e4 improves generated code for 'foreach' statements
5d1b855 fixes resolving nested, non generic types of generic parent types with type arguments from the cecilified code (#306)
11e9183 use SemanticModel.GetForEachStatementInfo() instead of custom code to resolve IEnumerable/IEnumerator members (#305)

October 2024 Updates (Version 2.14)

05 Oct 20:02
3d41a5b
Compare
Choose a tag to compare

List of commits in this Version

8fd2f98 fixes page footer font
a63011e fix missing operand in LdObj instruction in some scenarios (#256)
d81642e adds support for boxing elements in a collection expression (#256)
3c089fc use test case parameterized values instead of hardcoded ones (#256)
c4b2255 adds support for user conversions in collection expressions/array initialization (#256)
6b6a5e0 fixes collection expression initialization when a implicit numeric conversion is required (#256)
03869eb rename method to match intent
923bf18 code cleanup, rename parameter to match intent
317d574 fixes crashes in output based tests when cecilified code does not produce any output
6632e35 adds support for initializing List with collection expressions (#256)
2897d9b moves helper methods that adds local variables to CecilifierContextExtensions
dd3e940 fixes broken code generation after refactoring of array initialization code (#256)
27ef4bb code cleanup
a1e3500 adds support for initializing spans with collection expressions (#256)
96045c4 moved common array initialization code to a helper type and added CollectionExpressionProcessor type (#256)
3a4ea26 adds support and tests for initializing arrays with collection expressions (#256)
71e2d59 fix typo in comment
f097539 Fixes 'ArgumentNullException' when processing call to generic instance method on non generic type (#302)
bca8fc2 moved test to better test fixture
5dfb0c1 updates dependent packages versions
cc52dd0 bumps fontawesome version to 6.5.0
cbf3a69 bump version to 2.14.0

September 2024 updates (Milestone 2.13)

30 Sep 12:26
e9df310
Compare
Choose a tag to compare

Fixes:

  • 08f54c0 fixes type resolution handling local type as an external one (#284)
  • 4243be5 output the correct paths of generated assembies in tests
  • e8e71fe do not try to apply attribute to backing field of non auto-property properties (#283)
  • 9ed2bc7 fixes crahes with some recursive patterns (#281)

Changes:

  • 19f9320 replaces legacy error reporting mechanism with toasts when processing gists
  • 18e9c67 Add support for emitting warning / errors from cecilifier (#292)
  • f741946 bump version to 2.13

August 2024 updates (Milestone 2.12)

25 Aug 15:19
f1c129a
Compare
Choose a tag to compare
  • Add support for records (#273)
  • Fixed wrong reference non existing member ModuleDefinition.TypeSystem.DateTime reference when processing System.DateTime (#277)
  • Fixed invalid IL generation when accessing base.Member (#278)

Full Changelog: v2.11.0...v2.12.0

June 2024 Updates

09 Jun 15:59
abb8818
Compare
Choose a tag to compare

What's Changed

  • 2d5a9cd bumps Cecilifier version to 2.11.0
  • aefc580 improves generic methods overload handling (#275)
  • c87998d improves user experience on auto saving snippets
  • 7314e16 fixes field access through MemberAccessExpressions on 'T[]', 'List', etc (#274)
  • 0914e34 fixes blank page upon invalid urls (#98)
  • bf583ec report violations of 'EnsureNotNull()' as 'NullReferenceException' instead of 'NotSupportedException'
  • 101e6c3 reports local functions capturing context as not supported (#272)

Full Changelog: v2.10.0...v2.11.0