Releases: dotnet/ClangSharp
Releases · dotnet/ClangSharp
v16.0.0
What's Changed
- Ensure that we null out the stream for generate-multi-file by @qmfrederik in #410
- Updating repo infrastructure and use new sign client by @tannergooding in #421
- Document ability to use wildcards for with-access-specifier by @kant2002 in #418
- Fix truncated message in generated Obsolete attributes by @TechPizzaDev in #420
- Ensure that we null out the stream for generate-multi-file for all helper class generation methods. by @teo-tsirpanis in #424
- Adding a differentiator between "LTS" (default) and "STS" (latest) codegen by @tannergooding in #426
- Ensure that IsIncludedFileOrLocation checks the full path by @tannergooding in #430
- Workaround some bugs in a few boolean returning interop methods by @tannergooding in #431
- Small infrastructure cleanup by @tannergooding in #436
- Some small targeted fixes around remappings and type lookup by @tannergooding in #437
- Improve how clang type checks are done to make it more consistent and robust by @tannergooding in #438
- Improve NativeTypeName information to ensure it isn't dropped and doesn't conflict due to path changes by @tannergooding in #441
- Add a generate-native-bitfield-attribute switch by @tannergooding in #442
- Ensure the constructor uses the right name by @tannergooding in #443
- Fix generate-macro-bindings generation by @GasInfinity in #440
- Fixed broken anchor link in readme by @TheLeftExit in #453
- Updating to libClang v16.0.6 by @tannergooding in #456
New Contributors
- @qmfrederik made their first contribution in #410
- @TechPizzaDev made their first contribution in #420
- @GasInfinity made their first contribution in #440
- @TheLeftExit made their first contribution in #453
Full Changelog: v15.0.2...v16.0.0
v15.0.2
What's Changed
- Ensure System.CommandLine is included in the tool package by @tannergooding in #395
- Ensure .NET Foundation and Contributors on the FreeBSD nuspecs by @tannergooding in #397
- Add tests for anonymous enums by @reflectronic in #194
- Add support for --with-packing by @DaZombieKiller in #405
- Don't apply --with-packing overrides to fixed buffer types by @DaZombieKiller in #407
- Adding tests for --with-packing output by @DaZombieKiller in #406
- Small fixes for the dotnet tool by @tannergooding in #408
New Contributors
- @DaZombieKiller made their first contribution in #405
Full Changelog: v15.0.0...v15.0.2
v15.0.0
What's Changed
- Adding tests covering preview-codegen by @tannergooding in #376
- Adding support for UnscopedRef by @tannergooding in #377
- Add access specifier to method class by @saucecontrol in #378
- Few misc fixups to better handle some C++ patterns by @tannergooding in #384
- Updating the .editorconfig to have support newer rules by @tannergooding in #385
- Updating to Clang v15.0.0 by @tannergooding in #386
- Enable the build-nuget-release job by @tannergooding in #387
- Adding basic support for stripping text out of NativeTypeName attributes by @tannergooding in #388
- Adding support for decltype by @tannergooding in #389
- Ensure a typedef to a
typedef union Nameworks with C by @tannergooding in #390 - Ensure generate-helper-types works with single-file mode by @tannergooding in #391
- Ensure CXCursor and CXType don't crash the debugger for default values by @tannergooding in #392
- Ensure that we null out the stream for generate-multi-file by @tannergooding in #393
Full Changelog: v14.0.0-rc1...v15.0.0
v14.0.0-rc1
What's Changed
- Update specified version of ClangSharpPInvokeGenerator by @will-jj in #335
- Allow private access specifiers on functions by @saucecontrol in #341
- Fix clangsharp_Type_getTemplateArgument for record decl by @xoofx in #337
- Add note about libclang/libClangSharp runtime and restore discussions by @ihnorton in #320
- Updating ClangSharp to support UTF-8 literals in preview mode by @tannergooding in #342
- Updating to use the latest System.CommandLine by @Keboo in #343
- explicit AllowMultipleArgumentsPerToken on string[] options by @miloush in #348
- Improve UTF-8 string literal, Guid, and attribute handling by @tannergooding in #352
- Ensure that bool as a struct field is correctly handled by @tannergooding in #353
- Fix paths for dotnet 6 by @kant2002 in #356
- Add support for varargs. by @Berrysoft in #344
- Ensure that --with-access-specifier works with
*=internalby @tannergooding in #359 - Do not remove parethensis by @kant2002 in #358
- Update versions and help output in
README.mdby @SeeminglyScience in #361 - Fix
lpVtblfield declaration when bothexplicit-vtblsandgenerate-marker interfacesare specified by @SeeminglyScience in #363 - Version check skip option and patch verison leniency by @Beyley in #368
- Updating VersionSuffix to rc1 by @tannergooding in #370
- Adding tests and validate handling for various global string literal variables by @tannergooding in #371
- Ensure that C incomplete arrays are correctly handled by the generator by @tannergooding in #372
- Ensure that multiple-inheritance scenarios generate unique field names by @tannergooding in #373
- Fixing C Incomplete Array to be treated as a Constant Array of length 1 by @tannergooding in #374
- Adding support for signing by @tannergooding in #375
New Contributors
- @will-jj made their first contribution in #335
- @saucecontrol made their first contribution in #341
- @xoofx made their first contribution in #337
- @ihnorton made their first contribution in #320
- @Keboo made their first contribution in #343
- @miloush made their first contribution in #348
- @Berrysoft made their first contribution in #344
- @SeeminglyScience made their first contribution in #361
- @Beyley made their first contribution in #368
Full Changelog: v14.0.0-beta1...v14.0.0-rc1
v14.0.0-beta1
What's Changed
- Updating version suffix to beta2 and move to use NUnit by @tannergooding in #308
- Ensure that non-virtual C++ instance methods without a body have an inserted parameter for pThis by @tannergooding in #309
- Adding a nightly nuget feed by @tannergooding in #310
- Add a link to the source browser by @tannergooding in #311
- Fix Nightly NuGet Feed URL by @yamachu in #312
- Add support for marking methods as manual imports and fixing the PInvokeGeneratorConfiguration to be more forward compatible by @tannergooding in #313
- Ensure anonymous enums get tracked as part of a top-level class by @tannergooding in #314
- Ensure that log-potential-typedef-remappings doesn't include typedefs from every file by @tannergooding in #316
- Add some additional handling for patterns found when generating bindings for GDI+ by @tannergooding in #317
- Fix when the base vtbl is emitted inline by @tannergooding in #318
- Update link to win32metadata. by @teo-tsirpanis in #329
- Regenerating bindings for v14.0.0 by @tannergooding in #330
New Contributors
- @yamachu made their first contribution in #312
- @teo-tsirpanis made their first contribution in #329
Full Changelog: v13.0.0-beta1...v14.0.0-beta1
v13.0.0-beta1
What's Changed
- Revert the handling for struct packing as it regresses more scenarios than it fixed by @tannergooding in #263
- Minor fix the libclangsharp build instructions by @danieljennings in #262
- Fix clangsharp_Cursor_getDefinition not handling declarations with no definition by @PathogenDavid in #264
- Merging various fixes and improvements by @tannergooding in #269
- Adding support for generating unmanaged constants by @tannergooding in #271
- Updating Cursor and Type to avoid repeated hot path allocations by @tannergooding in #272
- Updating to Clang v13.0.0 by @tannergooding in #274
- Ensure anonymous unions stay "anonymous" and not "unnamed" by @tannergooding in #275
- Fix extraneous
using System;by @reflectronic in #276 - Print version information on
--versionby @tannergooding in #277 - Ensure that test outputs are marked "partial" by @tannergooding in #278
- Adding support for overriding the access specifier by @tannergooding in #279
- Ensure that all new kinds are being properly handled by @tannergooding in #280
- Greatly improve the understanding of the
log-potential-typedef-remappingsfeature by @tannergooding in #281 - Moving forward to net6.0 and fixing a few issues around -m64 by @tannergooding in #282
- Add support for transparent structs, automatically generating the used attributes/helper types, and to simplify
NativeTypeNameoutput in a few scenarios by @tannergooding in #284 - Adding support for specifying a transparent struct kind by @tannergooding in #285
- Add support for avoiding pinning when returning a ref to an anonymous pointer field by @tannergooding in #286
- Add support for trimmable vtbls, marker interfaces, and SupportedOSPlatformAttribute by @tannergooding in #287
- Add support for a new --with-namespace option by @tannergooding in #288
- Updating repo for transfer to the .NET Foundation by @tannergooding in #289
- Adding support for explicitly including members to bind by @tannergooding in #290
- Adding support for overriding the output class for constants and methods by @tannergooding in #291
- Handle attributes for class remappings by @tannergooding in #292
- Ensure that top level classes/structs correctly mark themselves as unsafe and include the right namespace for tests by @tannergooding in #293
- Provide a few new features for C# 10 and .NET 6 by @tannergooding in #299
- Add a few more options to help with "feature-completing" a set of bindings by @tannergooding in #301
- Resolve dotnet-org-policy PR15 by ensuring we only link to the foundation CoC by @tannergooding in #303
- Changing CI over to use GitHub Actions by @tannergooding in #304
- Fixing up some URLs and variables used for versioning by @tannergooding in #305
- Temporarily disable packing for ClangSharpPInvokeGenerator by @tannergooding in #306
- Disable publishing of nightly builds until the permissions issue can be resolved by @tannergooding in #307
New Contributors
- @danieljennings made their first contribution in #262
Full Changelog: v12.0.0-beta2...v13.0.0-beta1
v12.0.0-beta2
What's Changed
- Updating to Clang v12.0.0 by @tannergooding in #235
- Specify llvm branch in readme by @FriendlyChicken in #236
- Document how to use local Clang on Linux by @kant2002 in #242
- Fix build with Clang 12 and install the native lib by @zeule in #244
- Handle virtual destructors by @zeule in #243
- Be explicit on which symbols are exported by @zeule in #247
- Ensure the translation unit is kept alive by @tannergooding in #248
- Single quote must be escaped otherwise ''' is generated instead of '''. by @ronaldvanmanen in #249
- Fix looking for libclang10 when 12 should be searched for by @ThadHouse in #252
- Provide more information in Desc structures by @andrew-boyarshin in #228
- Fixing some low hanging bugs. by @tannergooding in #256
- Fix additional low hanging bugs by @tannergooding in #257
- Ensure that the record packing and calling convention are correct regardless of -m32 or -m64 by @tannergooding in #258
New Contributors
- @FriendlyChicken made their first contribution in #236
- @kant2002 made their first contribution in #242
- @zeule made their first contribution in #244
- @ronaldvanmanen made their first contribution in #249
Full Changelog: v12.0.0-beta1...v12.0.0-beta2
v12.0.0-beta1
What's Changed
- Fixing various bugs, analyzer warnings, and adding very basic template support by @tannergooding in #226
- Mark ternary macros that can be evaluated as constants as const by @ThadHouse in #221
- Introduce EnumDesc, add ability to output source location attribute by @andrew-boyarshin in #227
- Updating to Clang v12.0.0 by @tannergooding in #235
New Contributors
- @ThadHouse made their first contribution in #221
- @andrew-boyarshin made their first contribution in #227
Full Changelog: v11.0.0-beta3...v12.0.0-beta1
v11.0.0-beta3
What's Changed
- Fixing build scripts to use pwsh and to call GenerateMetadataSource.ps1, rather than .cmd by @tannergooding in #208
- Fix required for win32metadata project by @sotteson1 in #210
- Abstract away output mechanisms & add support for XML dumps by @Perksey in #206
- Updating the tests coverage by @tannergooding in #211
- Adding test coverage for the XML generator by @tannergooding in #212
- Updating libClangSharp to have more extensive support for the underlying AST by @tannergooding in #213
- Adding some basic documentation on usage by @tannergooding in #214
- Cleanup to resolves some bugs and codegen issues by @tannergooding in #215
- Ensure the right call conv is checked for x86 Windows by @tannergooding in #216
- Ensure remapping and anonymous record names are correct by @tannergooding in #219
- A couple fixes for the win32metadata project by @sotteson1 in #218
New Contributors
Full Changelog: v11.0.0-beta2...v11.0.0-beta3
v11.0.0-beta2
What's Changed
- Ensure that ClangSharpPInvokeGenerator works with the System.CommandLine breaking changes by @tannergooding in #204
Full Changelog: v11.0.0-beta1...v11.0.0-beta2