-
-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
November 2024 Update (v 2.16) #321
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This TODO mentions checking missing types but the code seems to be handling this scenario in [line 107](https://github.com/adrianoc/cecilifier/blob/main/Cecilifier.Core.Tests/Framework/AssemblyDiff/AssemblyComparer.cs#L107)
…d of plain stloc/starg/stfld/etc (#303)
In this case I think introducing a constant would only make the code less readable
#303) the comment mentions abstract static methods from interfaces but the method in question should only be used while emitting synthetic methods (for instance, Add/Remove for events, get_/set_/etc for properties, etc) and in these scenarios we probably don´t support abstract static methods.
the comment claims that Equals(RecordType) overload should not have 'MethodAttributes.NewSlot' applied but it seems it is not the case (the compiler does add this attribute)
Also uses right parameter attributes instead of hardcoded None
this was found while working on #303
…ode or any of its dependencies changes the previous logic was wrong and we were recompiling the cecilified code whenever Cecilifier.Core assembly (and not when Cecilifier.Runtime) changed This is bad since relevant changes from core will reflect in the cecilified code so we don't nedd to track changes in the core assembly itself; by the other hand, changes in Cecilifier.Runtime were not taken into account and those changes can change the behavior of the cecilified code; also, non relevant changes in Cecilifier.Core (like, changes that does not change the generated code) would still force recompilation of the cecilified code slowiing down tests
TODO was questioning whether it would make sense to register a variable definition; it may or may not improve the generated code quality but the method in question is only being used to handle events add/remove methods so it does not worth investigating it.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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)