This release is the final version of the 0.5.0 release. This is a follow up release to preview.4.
Notworthy
Since 0.5.0-preview.4
- All bindings were updated to support the GNOME SDK version 46. Among other things this adds support for GTK 4.14 and libadwaita 1.5. (#1052)
- The libraries get build explicitly for .NET 8 (#1038). Remark: If support for .NET 6 / 7 is dropped those versions will get droped from GirCore with the following release, too
- preview.4 added support for typed records but was missing a parameterless constructors. (#1002 )
- Support for foreign records was added (#1010 )
- Support for untyped records was added (#1013)
- Support for untyped foreign records was added (#1029)
- New samples for GTK were created by @kashifsoofi (#1022, #1024)
- A bug was fixed if an object was not freed on main thread (#1045)
- A bug was fixed if an interface was passed as a parameter into a method / function (#1055)
- The homepage got updated with new content and a new docfx version (#1039, #1040)
0.5.0-preview.4
- This release adds support for typed records constructors, methods, functions and fields. Previously in the public record API there was only the record type available without any possibility to access it's data. If you used some custom code to access this data please verify if you can replace this code with the newly available API. In general the available API surface should have improved significantly. (#965, #985, #986, #994)
- The generation of typed records lead to several API breaks in the
GObject
namespace especially for the classGObject.Value
. Those manually written methods originated from the very beginning of the project which were leaning into the direction to divert a lot farther from the original API. API breaks happened in other namespaces, too as manually written bindings got replaced by generated bindings which often have a slightly different method signature. (#981, #982, #991) - Enumerations got rebased on
int
instead oflong
to match their C definition. (#989) - More bindings for
async
methods (#993)
0.5.0-preview.3
- Update to the latest Gnome SDK version 45. This includes GTK 4.12 and Libadwaita 1.4
- Improved API surface for opaque records which are not registered in the GObject type system.
0.5.0-preview.2
- More bindings for
async
methods (#953). - The parameterless
Gio.Application.Run
method got removed as it is not part of the official Gio Api. AdditionallyGio.Application.RunWithSynchronizationContext
now has a parameter to provide arguments. To achieve the original behaviour just passnull
as a parameter (#956). - Fixed a bug introduced in preview.1 which caused an exception if an opaque typed record was used in a
GObject.Value
(#959).
0.5.0-preview.1
- The Gtk-4.0.DependencyInjection project was removed as there is not one way to do dependency injection right. Every project needs to find it's own solution.
- Improved API surface for opaque records which are registered as boxed types with the GObject type system.
What's Changed since 0.5.0-preview.4
- Small fixes by @badcel in #1005
- Avoid marshalling of instance data by @badcel in #1007
- Value: Avoid marshalling by @badcel in #1008
- Support foreign records by @badcel in #1010
- Typed Record: Add parameterless constructor by @badcel in #1002
- Fix warnings by @badcel in #1011
- Properties by @badcel in #1014
- Lazy parameter expressions by @badcel in #1020
- ListView sample with code only and ListItem template by @kashifsoofi in #1022
- GridView Sample with StringList and CustomObject ListStore by @kashifsoofi in #1024
- Add support for untyped records by @badcel in #1013
- Support foreigen untyped records by @badcel in #1029
- Remove legacy record code by @badcel in #1028
- Generator: Remove obsolete record class by @badcel in #1030
- Generator: Generate property descriptors for boxed records by @badcel in #1031
- Test: Add Variant test which uses VariantIter and VariantBuilder by @badcel in #1033
- Seal record types by @badcel in #1037
- Dotnet 8 by @badcel in #1038
- Document how to handle DllNotFoundException by @badcel in #1039
- Add documentation to gir.core repository by @badcel in #1040
- Tests: Add string array tests by @badcel in #1041
- ToggleRef: Remove toggle ref on main context by @badcel in #1045
- Typed Records: Implement IEquality via pointer comparison by @badcel in #1047
- Opaque typed Records: Implement IEquality via pointer comparison by @badcel in #1048
- Opaque untyped Records: Implement IEquality via pointer comparison by @badcel in #1049
- Untyped records: Implement IEquality via pointer comparison by @badcel in #1050
- Gnome sdk 46 by @badcel in #1052
- Handle parameter ownership transfer for interfaces by @badcel in #1055
- Fundamental types: Support returning a null value by @badcel in #1056
Full Changelog since 0.4.0: 0.4.0...0.5.0