Releases: tristanlabelle/swift-winrt
Releases · tristanlabelle/swift-winrt
0.2.0
What's Changed
- Refactor support ABI modules by @tristanlabelle in #215
- Make the release-publish workflow dispatch-triggered by @tristanlabelle in #216
- Release workflow: fix powershell error by @tristanlabelle in #217
- Revert to push tag trigger for release creation by @tristanlabelle in #218
- Fix bad newline in create release tag workflow by @tristanlabelle in #219
- Tweak short commit length on create-tag workflow by @tristanlabelle in #220
- Make generated modules reference WindowsRuntime_ABI by @tristanlabelle in #221
- Add --locale and --no-docs flags by @tristanlabelle in #223
- Make COMEmbedding ~Copyable again by @tristanlabelle in #224
- Added doc describing migration from thebrowsercompany/swift-winrt by @tristanlabelle in #225
- Specify thebrowsercompany swift-winrt project name in migration doc by @tristanlabelle in #230
- Add "Using in your project" to Readme by @tristanlabelle in #228
- Tweak EventRegistration + codegen for allocation-less usage by @tristanlabelle in #231
- Updated to latest dotnetmetadata, with improved support for UWP type references by @tristanlabelle in #235
- Support generating CMakeLists.txt files by @tristanlabelle in #238
- Locate Windows SDK WinMDs using WindowsMetadata logic. by @tristanlabelle in #239
- Add comIdentical + winrtIdentical functions by @tristanlabelle in #240
- Support array boxing through IReferenceArray by @tristanlabelle in #232
- Rename IReferenceUnboxingProjection to IReferenceToOptionalProjection by @tristanlabelle in #245
- Add readmes and more doc comments by @tristanlabelle in #246
- Add a more class documentation comments by @tristanlabelle in #251
- Remove box/unbox terminology in favor of createIReference[Array] by @tristanlabelle in #252
- Remove the PrimitiveProjection namespace enum in favor of -Projection suffixes by @tristanlabelle in #253
- Fix error pattern to capture and set the COM error info when crossing ABI boundaries by @tristanlabelle in #250
- Expose ICreateErrorInfo + CreateErrorInfo and use it for creating IErrorInfo objects by @tristanlabelle in #258
- Add docs about projecting errors by @tristanlabelle in #259
- Preserve Swift errors through WinRT boundaries via ILanguageExceptionErrorInfo by @tristanlabelle in #261
- Generate agile classes as @unchecked Sendable by @tristanlabelle in #263
- Support ILanguageExceptionErrorInfo2 for extra context capture by @tristanlabelle in #265
- Add excludes to fix SPM build warnings by @tristanlabelle in #266
- Reorganize Swift files more hierarchically by @tristanlabelle in #267
- Support generating projections that build as dynamic libraries by @tristanlabelle in #268
- Fix Sendable warnings in InteropTests by @tristanlabelle in #269
- Create-NuGetPackage: Fix Swift runtime directory resolution by @tristanlabelle in #271
- Bump swift-dotnetmetadata by @tristanlabelle in #272
- Bump swift-dotnetmetadata by @tristanlabelle in #273
- Bump swift-dotnetmetadata by @tristanlabelle in #274
- Harden UWP module references by @tristanlabelle in #276
- Support SwiftEnumAttribute for closed enum projections by @tristanlabelle in #279
- Rename "Assembly" module folder to "Module" by @tristanlabelle in #280
- Fix incorrect CMakeLists.txt codegen by @tristanlabelle in #282
- Shorten generated COMInterop filenames by @tristanlabelle in #283
- Remove + in projection filenames, and rename ABI.h by @tristanlabelle in #285
- Generate generic instantiations under the same COMInterop extensions file by @tristanlabelle in #286
- Add Unowned struct to replace Module.Reference by @tristanlabelle in #288
- Renamed SwiftProjection to Projection and moved its Module nested class to the top level by @tristanlabelle in #289
- Avoid dots in default names for the modules of assemblies without an explicit mapping by @tristanlabelle in #291
- Rename ABIProjection to ABIBinding throughout by @tristanlabelle in #295
- Extract an ABIBindings module by @tristanlabelle in #296
- Rename ProjectedTypes folder to Projection by @tristanlabelle in #297
- Rename toSwift to fromABI by @tristanlabelle in #298
- Make generated ABI modules depend on one another by @tristanlabelle in #299
- Build InteropTests' projection with CMake in CI by @tristanlabelle in #300
- Use ExternalProject with Generator and InteropTests by @tristanlabelle in #303
- Build the entire project from the root CMakeLists.txt by @tristanlabelle in #304
- Extract GenerateWinMD.cmake to avoid recursive CMake invocation by @tristanlabelle in #307
- Move common generate projection logic to CMake by @tristanlabelle in #308
- Rename --support to --spm-support-package and improve format of url references by @tristanlabelle in #311
- Create Building.md by @tristanlabelle in #312
- Update Readme.md's note on 5.10 requirement by @tristanlabelle in #314
- Move InteropTests under Generator by @tristanlabelle in #315
- Encapsulate the WinRTComponent build by @tristanlabelle in #316
- Support CMake target & SPM library prefixes/suffixes by @tristanlabelle in #318
- Avoid overlapping binary directories when building the generator as a subproject by @tristanlabelle in #321
- Implement projection caching (incomplete) by @tristanlabelle in #322
- Enable the projection build with CMake by @tristanlabelle in #319
- Move the InteropTests directory back to top level by @tristanlabelle in #325
- Document why Package.swift only builds the support modules by @tristanlabelle in #324
- Increase the -driver-filelist-threshold workaround by @tristanlabelle in #329
- Fixed flags enum signedness mismatch in bindings code by @tristanlabelle in #331
- Stage SwiftWinRT.exe in a known location by @tristanlabelle in #334
- Add CStyleEnum[Binding] and support [Flags] bitwise ops by @tristanlabelle in #336
- Add a schema for Projection.json by @tristanlabelle in #337
- Tweak Go/No-Go job by @tristanlabelle in #339
- Rename "inert" to "POD" by @tristanlabelle in #338
- Fix codegen with multiple out params by @tristanlabelle in #341
- Update to actions/checkout@v4 from v3 by @tristanlabelle in #342
- Annotate tests as regression tests by @tristanlabelle in https://github.com/tristanlabelle/swift-winrt/pu...
0.1.0
What's Changed
- Add interop tests with a WinRT component in C++ by @tristanlabelle in #28
- Add running InteropTests to CI by @tristanlabelle in #34
- Replace COMExportedObject class with COMExportedInterface struct by @tristanlabelle in #46
- Moved IUnknown/IInspectable VTable implementations to COM/WinRTExportedInterface by @tristanlabelle in #47
- Split SupportModule into COM and WinRT by @tristanlabelle in #83
- Add WindowsFoundation_ prefix to IStringable and IReference. by @tristanlabelle in #81
- Introduce WindowsRuntime.Char16 by @tristanlabelle in #84
- Fix IStringable to implement IInspectable by @tristanlabelle in #85
- Introduce WinRTPrimitiveProjection(.Int32 etc.) and implement value type boxing by @tristanlabelle in #86
- Made struct/enum boxing ABI-compatible and added tests by @tristanlabelle in #89
- Support IReference of structs and enums to T? by @tristanlabelle in #91
- Refactor WinRT projection protocols and implement delegate boxing by @tristanlabelle in #94
- Rename lpVtbl to VirtualTable by @tristanlabelle in #95
- Add a mechanism for pregenerated types in WindowsRuntime by @tristanlabelle in #99
- Call RoOriginateError when returning to WinRT with an error by @tristanlabelle in #100
- Reorganize output directories and files by @tristanlabelle in #101
- Added WeakReference to ease consuming IWeakReferenceSource by @tristanlabelle in #102
- Remove COMProjection.COMVirtualTable typealias by @tristanlabelle in #103
- Add a GUID typealias by @tristanlabelle in #104
- Sort OrderedCollections by @tristanlabelle in #106
- Fixed support for derived classes defined in WinRT by @tristanlabelle in #108
- Split COMProjection._wrap out of toSwift by @tristanlabelle in #109
- Split COMProjection.toSwift into _unwrap and _wrap by @tristanlabelle in #111
- Renamed WinRTClassLoader to WinRTMetaclassResolver and added a test by @tristanlabelle in #114
- Add a generic overload to _queryInterface by @tristanlabelle in #117
- Reorganize WindowsRuntime files and remove WinRT prefixes by @tristanlabelle in #119
- Made MetaclassResolver into a protocol by @tristanlabelle in #120
- Added SwiftWrapperFactory and a test for upcasting by @tristanlabelle in #122
- Use _Nonnull for the COM this pointers in the C ABI by @tristanlabelle in #123
- Added tests for interface implementation interop by @tristanlabelle in #124
- Added feature set section to readme by @tristanlabelle in #126
- Made getParamProjections aware of abi factory methods to return COMReference by @tristanlabelle in #127
- Change property types to implicitly unwrapped optionals by @tristanlabelle in #129
- Added methods to box Swift collections into WinRT-compatible collections by @tristanlabelle in #130
- Rename COMExportedInterface to COMEmbedding and split primary/secondary COMExports by @tristanlabelle in #135
- Update Projection Design docs by @tristanlabelle in #136
- Started a "How it works" document by @tristanlabelle in #137
- Support free-threaded marshaling by @tristanlabelle in #138
- Merge StrongReferencer in ObjectReferencer by @tristanlabelle in #140
- Rename the -VTable suffix for structs to -_VirtualTable by @tristanlabelle in #141
- Remove _Nonnull annotations in C code to avoid warnings by @tristanlabelle in #142
- Generate enums and structs as Sendable by @tristanlabelle in #144
- Generate documentation comments for default initializers by @tristanlabelle in #145
- Complete support for Windows.Foundation.DateTime/TimeSpan/Point/Size/Rect by @tristanlabelle in #146
- Remove redundant SWRT_WindowsFoundation_IPropertyValue conformance by @tristanlabelle in #147
- Allow Swift-derived classes to implement additional interfaces by @tristanlabelle in #148
- Added IMemoryBufferByteAccess by @tristanlabelle in #151
- Pin the gha-setup-swift action to fix builds by @tristanlabelle in #156
- Fix self-reference bug in multi-assembly modules by @tristanlabelle in #153
- Optimize Module.typeDefinitions access by @tristanlabelle in #158
- Update CI to Swift 5.10.1 by @tristanlabelle in #161
- Migrated collection extensions to resource files by @tristanlabelle in #163
- Generate qualified swift filenames by @tristanlabelle in #164
- Add convenience extensions to IBuffer and IMemoryBuffer. by @tristanlabelle in #166
- Migrated IAsync(Action/Operation)[WithProgress] to extension files. by @tristanlabelle in #165
- Docs: more details on the implementation of COM projections by @tristanlabelle in #167
- Docs: COMProjection & COMExport by @tristanlabelle in #168
- Support custom Swift attributes by @tristanlabelle in #169
- Fixed generic instantiation to module attribution by @tristanlabelle in #159
- Add byte buffer tests by @tristanlabelle in #170
- Add convenience constructors between Array and I[Memory]Buffer by @tristanlabelle in #172
- Migrate iid definitions to
uiidof
functions by @tristanlabelle in #174 - Generate one ABI module per assembly module by @tristanlabelle in #175
- Remove COMIUnknownStruct and rename generic param to ABIStruct by @tristanlabelle in #176
- Call GetActivationFactory once per class by @tristanlabelle in #178
- Rename COMLazyReference to COMReference.Optional by @tristanlabelle in #180
- Add COMProjection.ABIReference typealias by @tristanlabelle in #182
- Remove raw pointers in _queryOverridesInterface by @tristanlabelle in #185
- Use COMReference in ComposableClass.init signature by @tristanlabelle in #186
- Officialize Swift 5.10 dependency by @tristanlabelle in #187
- Add a CMake build (Support module only) by @tristanlabelle in #191
- Split off SPM support module build job by @tristanlabelle in #195
- Use a single idl file for build speed by @tristanlabelle in #196
- Add CMakeLists.txt for the Generator by @tristanlabelle in #192
- Rename workflows by @tristanlabelle in #197
- Improve Windows SDK WinMD loading by @tristanlabelle in #199
- Fix Readme build badge by @tristanlabelle in #200
- Extract a COM_ABI module out of Windows_ABI by @tristanlabelle in #201
- Add a script to create a nuget package by @tristanlabelle in https://github.com/tristanlabelle/swift-winrt/...