Releases: gircore/gir.core
0.6.0-preview.1
This release is the first preview of the upcoming 0.6.0 release. To get an overview of the planned features of the 0.6.0 release please see the corresponding milestone.
Notworthy
- Update to GNOME 47 which includes GTK 4.16 and libadwaita 1.6.
- The dummy implementation of
INotifyPropertyChanged
onGObject.Object
was removed. - Propertydefinitions have a new
Notify
/Unnotify
method which simplifies registration for property specific notifications. For details see the FAQ. - The size of the C
long
datatype on windows is now always 32 bit. On unix it corresponds to 64 / 32 bit depending on the system architecture. In earlier releases it was always 64 bit which was only correct for 64 bit unix systems. - The size of C
gsize
is now equivalent tonint
. In earlier releases it was equal tolong
which was wrong on 32 bit based systems. - Fixed implementation of the memory pressure feature of records. In earlier releases memory pressure was only removed if
Dispose
was called. Now memory pressure is released automatically for records. The feature is not yet implemented for classes and will be part the full 0.6.0 release. - First steps to publish the GirCore generator as a
dotnet tool
.
What's Changed
- Remove INotifyPropertyChanged by @badcel in #1061
- Property: Add Notify / Unnotify methods by @badcel in #1062
- Improve long handling for structs by @badcel in #1065
- Remove duplicate semicolon in return statements by @adamreeve in #1068
- Map "gssize" to native integers by @badcel in #1069
- Improve long handling 2 by @badcel in #1067
- Add nullable annotation to nullable string array parameters in internal methods by @adamreeve in #1079
- Disable rendering code for repositories only required via includes by @adamreeve in #1086
- documenting System.DllNotFoundException troubleshooting by @lamg in #1085
- Improve struct freeing by @badcel in #1072
- Improve logging by @badcel in #1093
- Support loading repositories from files embedded as resources in GirTool by @adamreeve in #1091
- Readme: Update status by @badcel in #1096
- Generator: Support opaque typed records with copy / free annotations by @badcel in #1088
- Support copy annotation typed records by @badcel in #1103
- Add new modifier to class methods that hide base class methods by @adamreeve in #1097
- Add DBus sample to read desktop appearance color scheme by @badcel in #1110
- Foreign typed records: Implement IDisposable by @badcel in #1112
- Foreign typed records: Require to implement a handle release manually by @badcel in #1113
- Opaque typed records: Support adding memory pressure by @badcel in #1114
- ImageSurface: Support memory pressure by @badcel in #1115
- GObject.Type: Mark struct as readonly and make it a record by @badcel in #1117
- Improve alias support by @badcel in #1119
- GObject.Type: Add IsFundamental method by @badcel in #1123
- Differentiate between Long and CLong by @badcel in #1126
- Object: Fix ToggleNotify called after callback is disposed by @badcel in #1128
- Update gir files by @badcel in #1132
- Refactor GdkPixbuf-2.0.Tests by @badcel in #1133
- Update macos runner to version 14 by @badcel in #1134
New Contributors
- @adamreeve made their first contribution in #1068
- @lamg made their first contribution in #1085
Full Changelog: 0.5.0...0.6.0-preview.1
0.5.0
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
0.5.0-preview.4
This release is the fourth preview of the upcoming 0.5.0 release. This is a follow up release to preview.3.
Noteworthy:
- 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)
If you encounter any errors, missing features or encounter problems to adopt to the new version please open an issue.
Important
There is currently no public
parameterless constructor available for typed records. To create a new instance of a typed record you need to create a managed handle first. For example to create an instance of Gdk.Rgba
it would be: new Gdk.RGBA(RGBAManagedHandle.Create())
. There will be a new parameterless constructor in the next version.
What's Changed
- GValue: Support setting a string array by @badcel in #981
- GValue: Support setting an enumeration / bitfield by @badcel in #982
- Bump Serilog.Sinks.Console from 5.0.0 to 5.0.1 in /src/GirTool by @dependabot in #983
- GirModel: Add field writable property by @badcel in #985
- Make struct fields readable by default by @badcel in #986
- Rebase enumerations on integer datatypes by @badcel in #989
- Support boxed records by @badcel in #965
- Update dependencies by @badcel in #990
- GValue.GetStringArray: Ensure type before accessing data by @badcel in #991
- Add Async FontDialog methods and sample by @kashifsoofi in #993
- Move GirTool, Integration folders and props files by @kashifsoofi in #995
- TypedRecord: Add field access by @badcel in #994
- Update GirCore.sln by @badcel in #998
New Contributors
- @kashifsoofi made their first contribution in #993
Full Changelog: 0.5.0-preview.3...0.5.0-preview.4
0.5.0-preview.3
This release is the third preview of the upcoming 0.5.0 release. This is a follow up release to preview.2.
Noteworthy:
- 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.
What's Changed
- Prefer zero terminated string array over length based arrays. by @badcel in #962
- Support opaque untyped records by @badcel in #942
- Update dependencies by @badcel in #972
Full Changelog: 0.5.0-preview.2...0.5.0-preview.3
0.5.0-preview.2
This release is the second preview of the upcoming 0.5.0 release. This is a follow up release to preview.1.
Noteworthy:
- 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).
What's Changed
- Improve "Libraries" section description by @UrtsiSantsi in #940
- Cleanup opaque record code by @badcel in #941
- Bump actions/checkout from 3 to 4 by @dependabot in #943
- Fix nullable class parameters in callbacks by @badcel in #948
- Refer to the API documentation by @UrtsiSantsi in #951
- Add more manual bindings for async functions by @fsobolev in #953
- Add RunWithSynchronizationContext with arguments by @fsobolev in #956
- Improve null terminated string array handling by @badcel in #952
- Fix wrapping opaque typed records by @badcel in #959
Full Changelog: 0.5.0-preview.1...0.5.0-preview.2
0.5.0-preview.1
This release is the first preview of the upcoming 0.5.0 release.
Noteworthy:
- 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
- Remove projects related to dependency injection by @badcel in #904
- Add manual bindings for async functions by @fsobolev in #903
- Improve exception handling by @badcel in #906
- Improve struct generation by @badcel in #907
- Fix generic gobject types by @hol430 in #910
- Fix slnf file by @badcel in #912
- Integrate glib gobject by @badcel in #914
- Enable unit tests on more platforms by @badcel in #913
- Add constructor renderer by @badcel in #918
- Support transfer none return strings in callbacks by @badcel in #920
- Support inout array length parameter by @badcel in #922
- Update CI by @badcel in #923
- Add missing inheritence from Test class by @badcel in #926
- Add InstanceParameterToNativeExpression by @badcel in #927
- Render internal instance parameter information by @badcel in #928
- Support opaque records by @badcel in #908
- Support array length parameters in public constructors by @badcel in #933
- Update nugets by @badcel in #934
- Make Module class static by @UrtsiSantsi in #936
- Copy test image to output folder by @UrtsiSantsi in #935
New Contributors
- @UrtsiSantsi made their first contribution in #936
Full Changelog: 0.4.0...0.5.0-preview.1
0.4.0
This release features a lot of improvements all over the board and several new contributors which is very much appreciated.
Noteworthy:
- Lot's of improvements in regard to strings, callbacks, primitive value types and arrays which should improve the available API quite a bit. This includes support for
Span<T>
in the API to allow writing code without memory duplication if data is exchanged between .NET and native binaries. - Constants are now generated as
const
instead ofstatic readonly
- Several methods can now have the same name if it is defined in the gir file. This means that some existing APIs got a different name.
- Support for C aliases. If a C library defines an alias a struct is generated to represent the alias. This makes the API more readable as the C# API does not need fall back to the underlying type anymore. There are implicit casts in place which should make it easy to continue to pass in primitive types into such parameters.
- Properties clashing with it's containing class name were not generated before. Now they get generated and receive a suffix (_).
- It is now possible to catch exceptions inside callbacks. Beforehand those were crashing the application. Now it is possible to use
GLib.UnhandledException.SetHandler()
to handle any unhandled exception. - There are now bindings for GtkSourceView available including some simple sample.
- Windows: It is now obsolete to explicitly set the apartment state to
STA
in an application. This is done automatically during initialization if the operating system is windows. - It is possible to explicitly enable a
SynchronizationContext
to integrateasync
methods withGLib.MainLoop
to avoid manual dispatching of code back into the main thread of GLib. This can be used either viaGLib.MainLoop.RunWithSynchronizationContext()
orGio.Application.RunWithSynchronizationContext()
. - WebKit2-5.0 got replaced by WebKit-6.0 which introduces some API changes. The samples were updated accordingly.
- Update to LibAdwaita 1.3
- Update to Gtk 4.10
What's Changed
- Rename Signal.Connect parameter by @fsobolev in #794
- Add more comprehensive support for primitive value type parameters by @cameronwhite in #795
- GError support by @cameronwhite in #798
- Lock collections on write access as those methods are not thread safe by @badcel in #801
- Remove some unnecessary manual bindings by @cameronwhite in #804
- Improve handling of string parameters by @cameronwhite in #803
- Update manual Cairo bindings for string parameters by @cameronwhite in #816
- Fix null return of GObject.Value.GetString by @badcel in #813
- Support string parameters with direction=out by @cameronwhite in #818
- Apps - Add Tube Converter by @nlogozzo in #819
- GirModel: Support variadic parameters by @badcel in #808
- Render constants as 'const' rather than 'static' values by @cameronwhite in #824
- Bump josStorer/get-current-time from 2.0.2 to 2.1.0 by @dependabot in #825
- Support shadows attribute by @badcel in #802
- Bump josStorer/get-current-time from 2.1.0 to 2.1.1 by @dependabot in #827
- Refactor internal instance parameter renderer by @badcel in #829
- Removed fallback return type renderer by @hol430 in #807
- Refactor internal parameters renderer by @badcel in #832
- Refactor internal return type renderer by @badcel in #833
- Rename classes by @badcel in #834
- Refactor public parameter renderers by @badcel in #835
- Refactor internal field renderer by @badcel in #836
- Bump OneOf from 3.0.223 to 3.0.243 in /src/GirTool by @dependabot in #828
- Support aliases by @badcel in #826
- Generate aliases by @badcel in #841
- Fix string double free bug in case of full ownership transfer by @badcel in #848
- Render properties which are named like it's containing class by @badcel in #850
- Bump peter-evans/create-pull-request from 4 to 5 by @dependabot in #849
- Disable method if annotations are wrong by @badcel in #852
- Slightly improved support for GPtrArray by @hol430 in #839
- Refactor parameter to managed expressions by @badcel in #855
- Avoid printing to the console when registering a GType. by @cameronwhite in #858
- Fix nullable warnings for interface parameters. by @cameronwhite in #859
- gtksourceview bindings by @hol430 in #790
- Allows to add an exception handler for unhandled exceptions by @badcel in #861
- Add tests for callbacks. by @cameronwhite in #862
- Manual GLib implementations by @badcel in #863
- Implement SynchronizationContext for GLib by @ultimaweapon in #856
- Set the main thread's apartment state when initializing GDK by @cameronwhite in #869
- Improve callback model by @badcel in #872
- Sync'ed dependencies in csproj/gir/Module.cs by @fogzot in #875
- Bump OneOf from 3.0.243 to 3.0.255 in /src/GirTool by @dependabot in #880
- Bump Serilog from 2.12.0 to 3.0.1 in /src/GirTool by @dependabot in #881
- Improve byte array and callback support by @badcel in #851
- Added doc comments for all Module.cs files by @fogzot in #887
- Generalize GLib pointer array handling by @badcel in #890
- Support pointed bitfields by @badcel in #891
- Workaround record array problem by @badcel in #892
- Apps - Rename Tube Converter, add Tagger and Cavalier by @fsobolev in #894
- Add signal tests by @badcel in #897
- Update to webkit 6 by @badcel in #889
- Update nuget packages by @badcel in #899
New Contributors
- @fsobolev made their first contribution in #794
- @nlogozzo made their first contribution in #819
- @hol430 made their first contribution in #807
- @ultimaweapon made their first contribution in #856
- @fogzot made their first contribution in #875
Full Changelog: 0.3.0...0.4.0
0.3.0
This release features a new nuget package WebKit2 and it's depending libraries. Check out the WebKit samples to get a first impression. There was a new C testing library written by @cameronwhite, several bugs were squashed and new API was made available.
Noteworthy:
- Explicit support for .NET 7. If you use this version with .NET 7 some reflection code is not executed in contrast to .NET 6.
- Classes now have a static
GetGType
method #753 - Support for detailed signals via
GObject.Signal.Connect
method #752
What's Changed
- Update gir files by @github-actions in #711
- Create apps.md by @badcel in #750
- Several improvements by @badcel in #751
- Remove incomplete manual binding for TimeoutAddFull by @cameronwhite in #760
- Generator: Render GetGType function by @badcel in #753
- Closure: Handle null pointer for return value by @badcel in #762
- Support detailed signals by @badcel in #752
- Add webkitgtk by @badcel in #746
- Add a C test library for easier testing of the generated bindings by @cameronwhite in #764
- Simplify string helper by @badcel in #769
- Add IDisposable to Glib.Dir by @fleimeris in #770
- Generator: Use explicit interface implementations by @badcel in #772
- Move StrvGetType into internal namespace by @fleimeris in #774
- Fix overusing of new keyword by @fleimeris in #778
- Support using a GLib.Variant in a GObject.Value by @cameronwhite in #779
- Bump Scriban from 5.5.2 to 5.6.0 in /src/Integration by @dependabot in #786
- Handle ownership transfer for GObject parameters by @cameronwhite in #787
- Add test for ownership transfers by @badcel in #788
- Support signals returning a value by @badcel in #775
New Contributors
- @fleimeris made their first contribution in #770
Full Changelog: 0.2.0...0.3.0
0.2.0
This release features initial support for interfaces, support for global and class functions, updated gir files (support for libadwaita 1.2), more cairo bindings and several bugfixes and code cleanups.
Noteworthy:
- Module initialization is now done automatically if GIO / GTK /Adw Application is used #701
- Object indexers to connect signals got removed #726
What's Changed
- Improve module initialization by @badcel in #701
- Refresh gir files by @badcel in #703
- Move call handler classes into internal namespace by @badcel in #707
- Render interface properties by @badcel in #708
- Split fixers into several classes by @badcel in #712
- Support interface types by @badcel in #714
- Support nullable interface / class return types by @badcel in #715
- Update nuget packages by @badcel in #716
- Cleanup properties by @badcel in #719
- Move property code into separate class by @badcel in #720
- Refactor signals by @badcel in #721
- Fix a couple issues with string (array) parameters by @cameronwhite in #725
- Remove signal indexers by @badcel in #726
- Disable enum parameters that have a pointer type but a direction of 'in' by @cameronwhite in #729
- Add binding for cairo_image_surface_get_data() by @cameronwhite in #723
- Fix errors with marshalling record array parameters. by @cameronwhite in #728
- Disable string parameters with a direction of inout by @cameronwhite in #733
- GirModel: Remove unused code by @badcel in #734
- Support global functions by @cameronwhite in #724
- Support interface functions by @badcel in #727
- Bump Scriban from 5.5.1 to 5.5.2 in /src/Integration by @dependabot in #738
- Support class functions by @badcel in #737
Full Changelog: 0.1.0...0.2.0
0.1.0
What's Changed
- Make code a bit more NativeAOT friendly by @kant2002 in #468
- Bump peter-evans/create-pull-request from 3.10.1 to 3.11.0 by @dependabot in #460
- Bump Microsoft.CodeAnalysis.CSharp from 3.11.0 to 4.0.1 in /src/Generation/GirLoader by @dependabot in #463
- Bump Microsoft.CodeAnalysis.CSharp from 3.11.0 to 4.0.1 in /src/Integration by @dependabot in #465
- Bump actions/setup-dotnet from 1.8.2 to 1.9.0 by @dependabot in #469
- wip: Delegate Handlers by @mjakeman in #474
- callbacks: Generate Async and Notified handlers by @mjakeman in #488
- Generator V3 by @badcel in #437
- Build for dotnet 6 by @badcel in #502
- Do not create a Value handle which can not be disposed by @badcel in #503
- Initial concept fundamental classes by @badcel in #499
- Do not throw if types do not match. by @badcel in #506
- Add introspectable fields by @badcel in #507
- Renderer: Increase fault tolerance by @badcel in #508
- Remove instance parameter public model by @badcel in #510
- Feature/fix nullability warnings by @badcel in #512
- SafeHandles: Support owned / unowned refs by @badcel in #513
- Let the CI pipeline build / test / publish the code by @badcel in #515
- Flatten internal type hierarchies by @badcel in #517
- Bump Serilog.Sinks.Console from 4.0.0 to 4.0.1 in /src/GirTool by @dependabot in #520
- Do not free unowned record handles by @badcel in #526
- Fix creation of boxed records by @badcel in #529
- Do not free unowned memory by @badcel in #528
- Bump FluentAssertions to 6.4.0 by @badcel in #534
- Generate constructors for classes by @badcel in #527
- Feature/gdk4 by @badcel in #537
- Generate Graphene-1.0 bindings by @badcel in #538
- Generate Gsk-4.0 bindings by @badcel in #539
- Improve type matching by @badcel in #540
- Validate constants by @badcel in #546
- Ignore duplicate bitfield member by @badcel in #550
- Update gir files by @badcel in #545
- Propagate exit code by @badcel in #555
- Update test dependencies by @badcel in #556
- Improve reference resolving by @badcel in #558
- Update nugets by @badcel in #563
- GirModel: Support construct only properties by @badcel in #565
- Bump actions/setup-dotnet from 1.9.0 to 1.9.1 by @dependabot in #566
- Bump actions/setup-dotnet from 1.9.1 to 2 by @dependabot in #567
- Support accessor annotations by @badcel in #553
- Generate Gtk-4.0 bindings by @badcel in #542
- Bump OneOf from 3.0.211 to 3.0.216 in /src/GirTool by @dependabot in #571
- Bump actions/checkout from 2.4.0 to 3 by @dependabot in #569
- Refactor the manual Cairo bindings by @cameronwhite in #573
- Update System.CommandLine to version 2.0.0-beta3.22114.1 by @badcel in #575
- Update gir-files repository by @badcel in #576
- GirModel: Add "Foreign" property to records by @badcel in #579
- Split the OwnedHandle's into a separate generator by @cameronwhite in #580
- Improve interface support by @badcel in #582
- Require a foreign record's OwnedHandle to manually implement ReleaseHandle() by @cameronwhite in #583
- Use PascalCase for the namespaces in generated code by @cameronwhite in #586
- Convert AboutDialog sample to GTK4 by @badcel in #570
- Add bindings for Cairo.ImageSurface by @cameronwhite in #578
- Add most of the Cairo.Surface bindings by @cameronwhite in #589
- Use PascalCase for Cairo.TextExtents fields by @cameronwhite in #592
- Add bindings for Cairo.FontOptions by @cameronwhite in #593
- Update packages by @badcel in #599
- Fix errors when closing the Cairo SafeHandle's by @cameronwhite in #600
- Wait for garbage collector to free memory by @badcel in #598
- Add platform support to GirLoader by @badcel in #594
- Generator: Use constant for DLLImport by @badcel in #604
- Split return type converter into several smaller classes by @badcel in #608
- Automatically update gir files by @badcel in #609
- Update gir files by @badcel in #611
- Split parameter converter into several smaller classes by @badcel in #613
- Bump nuget versions by @badcel in #619
- Add support for Gtk.Builder from UI files for Gtk4 by @mikkeljohnsen in #615
- Bump github/codeql-action from 1 to 2 by @dependabot in #616
- Bump peter-evans/create-pull-request from 3 to 4 by @dependabot in #617
- Add more bindings for Cairo.Context by @cameronwhite in #624
- Add the remaining general Cairo.Context bindings by @cameronwhite in #625
- Update gir files by @github-actions in #620
- Add Cairo.Context bindings related to paths by @cameronwhite in #626
- Add bindings for Cairo.Pattern by @cameronwhite in #632
- Add Cairo.Context text-related methods by @cameronwhite in #635
- Add Cairo.Context bindings for transformation-related methods by @cameronwhite in #634
- Bump StrongInject from 1.4.3 to 1.4.4 in /src/GirTool by @dependabot in #628
- Add bindings for Cairo.Matrix methods by @cameronwhite in #638
- Add bindings for Cairo.ScaledFont by @cameronwhite in #637
- Bump System.CommandLine to 2.0.0-beta4.22272.1 by @badcel in #639
- Bump several nuget packages to their newest version: by @badcel in #640
- Add GtkDependencyInjection project by @badcel in #642
- Changed member generation formatting to use invariant culture by @hhyyrylainen in #649
- Refactor by @badcel in #623
- Improve generator by @badcel in #656
- Add version information by @badcel in #657
- Support package generation by @badcel in #658
- Fix PackageId and update readme by @badcel in #659
- Bump OneOf from 3.0.216 to 3.0.223 in /src/GirTool by @dependabot in #643
- Remove module initializers by @badcel in #660
- Add test to explicitly check setting nullable properties by @badcel in #662
- Bump Microsoft.CodeAnalysis.CSharp from 4.2.0 to 4.3.0 in /src/GirTool by @dependabot in #664
- Bump Microsoft.CodeAnalysis.CSharp from 4.2.0 to 4.3.0 in /src/Integration by @dependabot in #663
- Bump Serilog.Sinks.Console from 4.0.1 to 4.1.0 in /src/GirTool by @dependabot in #665
- Add Gtk4 drawing area sample by @badcel in #606
- Update gir files by @badcel in #667
- Update package id by @badcel in #669
- Update samples by @badcel in https://github.com/gircore/...