Skip to content

Commit 25f25a4

Browse files
committed
Add new gtk-rs-core 0.20 / gtk4-rs 0.9 release
1 parent f1fa9a4 commit 25f25a4

File tree

1 file changed

+191
-0
lines changed

1 file changed

+191
-0
lines changed

_posts/2024-07-17-new-release.md

+191
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,191 @@
1+
---
2+
layout: post
3+
author: gtk-rs developers
4+
title: New Release
5+
categories: [front, crates]
6+
date: 2024-07-17 09:00:00 +0000
7+
---
8+
9+
gtk4-rs `0.9` and gtk-rs-core `0.20` were just freshly released, just in time
10+
for also being included in the GNOME 47 release.
11+
12+
This release is again relatively small, mostly providing bindings to new APIs
13+
and improvements to the `glib::clone!` and `glib::closure!` macros to work
14+
better with `cargo fmt` and rust-analyzer.
15+
16+
As usual, at the same time gstreamer-rs `0.23` and gst-plugins-rs `0.13`,
17+
libadwaita `0.7` and other related crates got a new release compatible with
18+
the new gtk4-rs and gtk-rs-core releases and their own set of changes.
19+
20+
### gtk-rs-core
21+
22+
#### New syntax for `glib::clone!` and `glib::closure!`
23+
24+
blablablabla
25+
26+
#### TBD
27+
28+
blablablabla
29+
30+
### gtk4-rs
31+
32+
#### TBD
33+
34+
blablablabla
35+
36+
### Changes
37+
38+
For the interested ones, here is the list of the merged pull requests:
39+
40+
[gtk4-rs](https://github.com/gtk-rs/gtk4-rs):
41+
42+
* [Regenerate with new gir/gir-files](https://github.com/gtk-rs/gtk4-rs/pull/1792)
43+
* [Update to new clone! macro syntax](https://github.com/gtk-rs/gtk4-rs/pull/1773)
44+
* [book: Fix typo](https://github.com/gtk-rs/gtk4-rs/pull/1769)
45+
* [Remove unnecessary upcast from examples/squeezer\_bin/main.rs](https://github.com/gtk-rs/gtk4-rs/pull/1763)
46+
* [typos: Ignore versions.txt file](https://github.com/gtk-rs/gtk4-rs/pull/1762)
47+
* [examples/squeezer\_bin: Mark properties as writable](https://github.com/gtk-rs/gtk4-rs/pull/1761)
48+
* [Fix `SqueezerBin::size\_allocate()` in example](https://github.com/gtk-rs/gtk4-rs/pull/1760)
49+
* [Regen bindings with new gir {g,s}etter annotations](https://github.com/gtk-rs/gtk4-rs/pull/1759)
50+
* [Stop renaming ffi crates](https://github.com/gtk-rs/gtk4-rs/pull/1758)
51+
* [custom\_orientable: Fix interface property override](https://github.com/gtk-rs/gtk4-rs/pull/1755)
52+
* [gtk: Implement Downgrade for TemplateChild<T>](https://github.com/gtk-rs/gtk4-rs/pull/1750)
53+
* [Update list\_widgets.md](https://github.com/gtk-rs/gtk4-rs/pull/1742)
54+
* [examples: Support GL >= 3.1 and GLES >= 3.0 in the glium example](https://github.com/gtk-rs/gtk4-rs/pull/1733)
55+
* [Fix nightly clippy warnings](https://github.com/gtk-rs/gtk4-rs/pull/1730)
56+
* [Update link for Cogitri/Health to World/Health](https://github.com/gtk-rs/gtk4-rs/pull/1725)
57+
* [Simplify reading file contents to a String](https://github.com/gtk-rs/gtk4-rs/pull/1719)
58+
* [Update dependencies](https://github.com/gtk-rs/gtk4-rs/pull/1717)
59+
* [macros: Drop anyhow dependency](https://github.com/gtk-rs/gtk4-rs/pull/1708)
60+
* [Fix typo in todo\_1.md](https://github.com/gtk-rs/gtk4-rs/pull/1707)
61+
* [gtk4: Manually implement `GraphicsOffload` constructor for now](https://github.com/gtk-rs/gtk4-rs/pull/1705)
62+
* [gtk4: Require GDK 4.14 when enabling the `v4\_14` feature](https://github.com/gtk-rs/gtk4-rs/pull/1704)
63+
* [macros: Drop macro-proc-error and upgrade syn to 2.0](https://github.com/gtk-rs/gtk4-rs/pull/1688)
64+
* [dockerfile: Update libadwaita to 1.5](https://github.com/gtk-rs/gtk4-rs/pull/1687)
65+
* [book: Update dependencies](https://github.com/gtk-rs/gtk4-rs/pull/1686)
66+
* [Regenerate with latest gir](https://github.com/gtk-rs/gtk4-rs/pull/1678)
67+
* [docs: fix `Path` setting on windows](https://github.com/gtk-rs/gtk4-rs/pull/1675)
68+
* [Correctly handle `NULL` `GError\*\*` out parameters](https://github.com/gtk-rs/gtk4-rs/pull/1672)
69+
* [Fix nightly clippy warnings](https://github.com/gtk-rs/gtk4-rs/pull/1670)
70+
* [Replace simple `impl Debug` with derived `Debug` in tokio example](https://github.com/gtk-rs/gtk4-rs/pull/1663)
71+
* [Simplify library configuration step for Windows](https://github.com/gtk-rs/gtk4-rs/pull/1644)
72+
* [Regenerate with latest gir-files](https://github.com/gtk-rs/gtk4-rs/pull/1637)
73+
* [cargo-deny: Remove libloading dependencies](https://github.com/gtk-rs/gtk4-rs/pull/1633)
74+
75+
[gtk-rs-core](https://github.com/gtk-rs/gtk-rs-core):
76+
77+
* [ci: Fix docs release tag handling](https://github.com/gtk-rs/gtk-rs-core/pull/1457)
78+
* [docs: Run on our container image](https://github.com/gtk-rs/gtk-rs-core/pull/1455)
79+
* [gio: Add a method to get a stream of incoming connections to SocketListener](https://github.com/gtk-rs/gtk-rs-core/pull/1454)
80+
* [Update gir files](https://github.com/gtk-rs/gtk-rs-core/pull/1453)
81+
* [glib: Add support for registering GTypes with name conflicts](https://github.com/gtk-rs/gtk-rs-core/pull/1451)
82+
* [glib: Make `TypeData` struct fields private](https://github.com/gtk-rs/gtk-rs-core/pull/1449)
83+
* [Update gir files & regenerate](https://github.com/gtk-rs/gtk-rs-core/pull/1448)
84+
* [glib-macros: Don't produce unnecessary braces in `clone!(async move {…](https://github.com/gtk-rs/gtk-rs-core/pull/1443)
85+
* [Update to system-deps 7](https://github.com/gtk-rs/gtk-rs-core/pull/1440)
86+
* [glib-macros: Fix unit return in `closure!()` macro](https://github.com/gtk-rs/gtk-rs-core/pull/1438)
87+
* [strv: add From implementation from a String array](https://github.com/gtk-rs/gtk-rs-core/pull/1432)
88+
* [Derive TransparentPtrType trait for Boxed](https://github.com/gtk-rs/gtk-rs-core/pull/1431)
89+
* [gio: Properly export Win32InputStream / Win32OutputStream traits](https://github.com/gtk-rs/gtk-rs-core/pull/1429)
90+
* [ci: bump gvsbuild](https://github.com/gtk-rs/gtk-rs-core/pull/1427)
91+
* [Update `clone!` and `closure!` macro to new syntax](https://github.com/gtk-rs/gtk-rs-core/pull/1424)
92+
* [Stop renaming ffi crates](https://github.com/gtk-rs/gtk-rs-core/pull/1423)
93+
* [gio: remove Send + Sync requirements from DBusConnection::register\_ob…](https://github.com/gtk-rs/gtk-rs-core/pull/1422)
94+
* [Fix various nightly clippy warnings](https://github.com/gtk-rs/gtk-rs-core/pull/1421)
95+
* [Regenerate with latest gir/gir-files](https://github.com/gtk-rs/gtk-rs-core/pull/1420)
96+
* [spell fix](https://github.com/gtk-rs/gtk-rs-core/pull/1419)
97+
* [gio: make DBusConnection::register\_object take optional clousures](https://github.com/gtk-rs/gtk-rs-core/pull/1417)
98+
* [glib: Add unsafe `Value::into\_send\_value()`](https://github.com/gtk-rs/gtk-rs-core/pull/1413)
99+
* [glib: Improve `ValueArray` API, add tests and assertions for invalid …](https://github.com/gtk-rs/gtk-rs-core/pull/1411)
100+
* [glib: Fix `MatchInfo::next()` handling of returning `FALSE`](https://github.com/gtk-rs/gtk-rs-core/pull/1410)
101+
* [glib/functions: add compute\_checksum\_for\_string](https://github.com/gtk-rs/gtk-rs-core/pull/1406)
102+
* [glib: Add bindings for `g\_value\_set\_static\_string()`](https://github.com/gtk-rs/gtk-rs-core/pull/1400)
103+
* [docs: Fix broken links / cleanup README](https://github.com/gtk-rs/gtk-rs-core/pull/1395)
104+
* [Fix clippy warnings](https://github.com/gtk-rs/gtk-rs-core/pull/1393)
105+
* [glib: Implement Sync for ThreadGuard](https://github.com/gtk-rs/gtk-rs-core/pull/1388)
106+
* [glib: Only implement Send on JoinHandle if the result is Send](https://github.com/gtk-rs/gtk-rs-core/pull/1387)
107+
* [glib: Decouple ObjectInterface impl from interface class struct](https://github.com/gtk-rs/gtk-rs-core/pull/1384)
108+
* [glib: Add missing Send bound to the output type of the `spawn\_from\_within()` future](https://github.com/gtk-rs/gtk-rs-core/pull/1383)
109+
* [glib-macros: Refactor parsing code of object\_subclass/object\_interface](https://github.com/gtk-rs/gtk-rs-core/pull/1379)
110+
* [examples: Add example for custom class structs and virtual methods](https://github.com/gtk-rs/gtk-rs-core/pull/1378)
111+
* [ObjectBuilder: add property\_if(), property\_if\_some(), property\_from\_iter() ...](https://github.com/gtk-rs/gtk-rs-core/pull/1377)
112+
* [glib: Don't use `g\_object\_list\_properties()` for setting properties](https://github.com/gtk-rs/gtk-rs-core/pull/1376)
113+
* [glib: Use a reference to a pointer of correct mutability for from\_gli…](https://github.com/gtk-rs/gtk-rs-core/pull/1375)
114+
* [glib: Re-add and rename manual Win32 API additions](https://github.com/gtk-rs/gtk-rs-core/pull/1372)
115+
* [glib-macros/properties: Allow structs with no properties](https://github.com/gtk-rs/gtk-rs-core/pull/1370)
116+
* [glib::wrapper: Add docs for impls generated by the wrapper macro](https://github.com/gtk-rs/gtk-rs-core/pull/1369)
117+
* [ci: Enable glib-sys / gobject-sys tests](https://github.com/gtk-rs/gtk-rs-core/pull/1368)
118+
* [glib-sys: Add missing includes in `manual.h`](https://github.com/gtk-rs/gtk-rs-core/pull/1361)
119+
* [glib-sys: fix struct size mismatches](https://github.com/gtk-rs/gtk-rs-core/pull/1360)
120+
* [glib: Freeze property notifications while setting multiple properties](https://github.com/gtk-rs/gtk-rs-core/pull/1355)
121+
* [glib-macros: Improve error message when `Properties` struct doesn't have at least one `#\[property(…)\]`](https://github.com/gtk-rs/gtk-rs-core/pull/1352)
122+
* [Update gir / gir-files and update for `time\_t`](https://github.com/gtk-rs/gtk-rs-core/pull/1349)
123+
* [Fix nightly clippy warnings](https://github.com/gtk-rs/gtk-rs-core/pull/1348)
124+
* [docs: `construct` attribute for `glib::Properties`](https://github.com/gtk-rs/gtk-rs-core/pull/1344)
125+
* [glib: fix UB in VariantStrIter::impl\_get](https://github.com/gtk-rs/gtk-rs-core/pull/1343)
126+
* [Fix glib compiletest expected output for Rust 1.77](https://github.com/gtk-rs/gtk-rs-core/pull/1342)
127+
* [glib: Don't misuse `slice::get\_unchecked()`](https://github.com/gtk-rs/gtk-rs-core/pull/1337)
128+
* [gio: correctly free argument list items](https://github.com/gtk-rs/gtk-rs-core/pull/1331)
129+
* [glib: Optimize string collation bindings a bit](https://github.com/gtk-rs/gtk-rs-core/pull/1329)
130+
* [glib: Drop the main context future return value sender on finalize](https://github.com/gtk-rs/gtk-rs-core/pull/1328)
131+
* [pango: add some missing AttrInt constructors.](https://github.com/gtk-rs/gtk-rs-core/pull/1325)
132+
* [Regenerate with latest gir files](https://github.com/gtk-rs/gtk-rs-core/pull/1324)
133+
* [glib: Embed docs for ParamSpec types](https://github.com/gtk-rs/gtk-rs-core/pull/1323)
134+
* [glib: Requires Upgrade on Downgrade::Weak type](https://github.com/gtk-rs/gtk-rs-core/pull/1321)
135+
* [macros: allow to specify #\[default\] for glib::flags](https://github.com/gtk-rs/gtk-rs-core/pull/1316)
136+
* [Update Cargo.lock](https://github.com/gtk-rs/gtk-rs-core/pull/1313)
137+
* [glib: Add `Quark::from\_static\_str()`](https://github.com/gtk-rs/gtk-rs-core/pull/1312)
138+
* [docs: Move metadata back to packages](https://github.com/gtk-rs/gtk-rs-core/pull/1311)
139+
* [cairo: Fix version of the v1\_18 feature](https://github.com/gtk-rs/gtk-rs-core/pull/1310)
140+
* [glib: Fix expected error output of compiletests for 1.76](https://github.com/gtk-rs/gtk-rs-core/pull/1308)
141+
* [Document values of Continue and Break](https://github.com/gtk-rs/gtk-rs-core/pull/1304)
142+
143+
All this was possible thanks to the [gtk-rs/gir](https://github.com/gtk-rs/gir) project as well:
144+
145+
* [Minor cleanup to use `is\_some\_and(...)` instead of `map\_or(false, ...)`](https://github.com/gtk-rs/gir/pull/1584)
146+
* [Update to system-deps 7](https://github.com/gtk-rs/gir/pull/1583)
147+
* [More docs improvements](https://github.com/gtk-rs/gir/pull/1576)
148+
* [codegen: Handle mangled types names](https://github.com/gtk-rs/gir/pull/1575)
149+
* [members: drop useless alias config](https://github.com/gtk-rs/gir/pull/1574)
150+
* [Various properties fixes](https://github.com/gtk-rs/gir/pull/1573)
151+
* [codegen: Avoid double alias on badly annotated fn](https://github.com/gtk-rs/gir/pull/1572)
152+
* [Use getter and setter annotations](https://github.com/gtk-rs/gir/pull/1571)
153+
* [Support finish-func annotation](https://github.com/gtk-rs/gir/pull/1570)
154+
* [codegen: Stop renaming ffi crate](https://github.com/gtk-rs/gir/pull/1569)
155+
* [Use final annotation](https://github.com/gtk-rs/gir/pull/1568)
156+
* [Codegen clippy fixes](https://github.com/gtk-rs/gir/pull/1566)
157+
* [Add support for `libc::time\_t` and related types](https://github.com/gtk-rs/gir/pull/1562)
158+
* [Revert Automatically assume that win32\_ and unix\_ should use the related cfg](https://github.com/gtk-rs/gir/pull/1547)
159+
* [Correctly generate cfg condition for ABI tests](https://github.com/gtk-rs/gir/pull/1546)
160+
* [Generate cfgs with `update\_cfgs` on enums as well](https://github.com/gtk-rs/gir/pull/1545)
161+
162+
Thanks to all of our contributors for their (awesome!) work on this release:
163+
164+
* [@A6GibKm](https://github.com/A6GibKm)
165+
* [@alatiera](https://github.com/alatiera)
166+
* [@amyspark](https://github.com/amyspark)
167+
* [@bilelmoussaoui](https://github.com/bilelmoussaoui)
168+
* [@carlosmn](https://github.com/carlosmn)
169+
* [@DaKnig](https://github.com/DaKnig)
170+
* [@decathorpe](https://github.com/decathorpe)
171+
* [@ellnix](https://github.com/ellnix)
172+
* [@enaut](https://github.com/enaut)
173+
* [@exi](https://github.com/exi)
174+
* [@felinira](https://github.com/felinira)
175+
* [@fengalin](https://github.com/fengalin)
176+
* [@GuillaumeGomez](https://github.com/GuillaumeGomez)
177+
* [@Hofer-Julian](https://github.com/Hofer-Julian)
178+
* [@liushuyu](https://github.com/liushuyu)
179+
* [@marcinjahn](https://github.com/marcinjahn)
180+
* [@misson20000](https://github.com/misson20000)
181+
* [@mjgarton](https://github.com/mjgarton)
182+
* [@mokurin000](https://github.com/mokurin000)
183+
* [@mtilda](https://github.com/mtilda)
184+
* [@nazar-pc](https://github.com/nazar-pc)
185+
* [@pbor](https://github.com/pbor)
186+
* [@pranjalkole](https://github.com/pranjalkole)
187+
* [@sdroege](https://github.com/sdroege)
188+
* [@vhakulinen](https://github.com/vhakulinen)
189+
* [@woelfman](https://github.com/woelfman)
190+
* [@ystreet](https://github.com/ystreet)
191+
* [@zecakeh](https://github.com/zecakeh)

0 commit comments

Comments
 (0)