Skip to content

Conversation

@Perksey
Copy link
Member

@Perksey Perksey commented Jan 3, 2026

This incorporates Curin's changes in #2406. I am undecided on whether I want to merge my changes back into Curin's branch, I'm more opening this so I can see the diffs of the changes that I make.

Perksey and others added 30 commits February 15, 2025 18:33
-also support for csv lists in --only and --skip
-Setup to run using new mod system properly
-Added pointer member accessor to member accessor conversion
-Added Logging
per Mod Performance
-Added early out
-fix duplicate call
-Add INativeGuid
-fixed some broken using from TerraFX files
-Allowed BaseType to be specified for ComTypes
-Added several files for override due to issue in generation
-allowed for multiple COM base types
-allowed for addition of manual COM types
-added several manual overrides
-added all manual files necessary for compilation
Fixed some manual warnings as well
This reverts commit 0a1bd47.
-using globbing instead of regex
-removed an unnecessary restriction on interface finding
-updates single line code to expression bodies
Co-authored-by: Dylan Perks <11160611+Perksey@users.noreply.github.com>
for rollback purposes
moved to internal Native struct
INativeInterface and IComInterface added to represent all interfaces and Com interfaces, respectively.
- IComInterface is a child of INativeInterface and INativeGuid
-and fixing issues with how it works
added manual file importer
added a progress bar in some cases for QoL
moved rename function into NameUtils
Added per job file logs
fixed up the progress bar system to be cleaner
Also split some common classes out into core
curin and others added 25 commits February 28, 2025 23:47
Benefit of the doubt is expected and will now be accounted for
also fix for CI issues
Co-authored-by: Dylan Perks <11160611+Perksey@users.noreply.github.com>
added prettify names
handled renaming HString and HResult properly
Added injected name remapping for clang scrapper
Added injected generator options for clang scrapper
also set warnings as error back to true
Bool -> MaybeBool<int>
Keep UnmanagedCallersOnly attributes
Mark JobContext as Experimental
Removed unnecessary warning disable from tests
- made both JobContext and ProgressService internal
- Added missing HResult functions
-also uncomment HResult Manual whoops
- Fix duplicate Entries in prettifyNames
- Add RemapTypes to fix remappings in manual Files
- Add RemoveStaticUsings to fix static usings in manual files
- Removed Timing recoding from TransformFunctions (was meant to be temp)
- Added RemapAllAsync to NameUtils
- Moved regex logic to FileUtils
- Fixes several instances of QualifiedNames instead of using ParseTypeName
-Fixes many issues with PrettifyNames and Microsoft Job
-Added DiscardOutput Mod to allow generation of files for better generation and then deletion at the end to avoid duplication
- Added FixOptionalParams Mod to handle HResult and similar types which have optional parameters but cannot be compile time constants because they are custom types
-Updated RenameAllAsync to use a faster rewriter method in places where there was noticable slowdown
     + RenameAllRoslynAsync is the old method renamed
- Fixed an issue where type names were having __dsl_ prepended due to a logic error in PtrRefTransformer
- Updated all dependencies
- fixed remapping which worked better using the old renaming method
- Started work to strip out IIDs and apply them as NativeGuid property
- Fixed an issue with interface detection
Apparently it didn't catch everything the first time. Weird...
Error in question:

Unhandled exception: System.TypeLoadException: Could not load type 'Microsoft.CodeAnalysis.CSharp.Syntax.ExtensionDeclarationSyntax' from assembly 'Microsoft.CodeAnalysis.CSharp, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
   at CSharpier.Core.CSharp.SyntaxPrinter.SyntaxNodePrinters.BaseTypeDeclaration.Print(BaseTypeDeclarationSyntax node, PrintingContext context)

----

Some context:

Apparently this type was renamed here: <dotnet/roslyn@8a0684c>
CSharpier targets `v4.14.0`: `<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.14.0" />`

Fortunately the version of CSharpier on develop/3.0 works (`v0.30.2`).
I'm going to revert the update until CSharpier updates.
…update

Update com-bindings-refactor branch with changes from develop/3.0
@github-actions
Copy link
Contributor

github-actions bot commented Jan 3, 2026

Some of the native library builds modified in this PR were not referenced in the PR description. Please ensure that the PR description contains /build-native SDL. These libraries won't be rebuilt without this being specified. If you believe this is in error, then please write a comment explaining why and ignore this suggestion. This comment will be automatically updated if rectified.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

4 participants