Skip to content

0.21.0

Compare
Choose a tag to compare
@sdroege sdroege released this 15 Jul 06:38
· 50 commits to 0.21 since this release
Andrey Kutejko:
      Implement std::iter::Extend for glib::List
      Implement std::iter::Extend for glib::SList

BiagioFesta:
      glib-macros: add test macro for async-glib-context tests
      Remove unsafe interface requirement for into ptr conversion

Bilal Elmoussaoui:
      docs: Run on our container image
      Update docs.yml
      Update docs.yml
      Update docs.yml
      Update docs.yml
      Update gir submodule
      Regenerate with latest gir
      Don't seal manual traits that correspond to auto-generated types
      Update gir submodule
      Update gir-files
      Regenerate with latest gir-files
      Re-export v2.84 feature
      ci: Bump tested glib/gio version
      Re-sync version requirements
      Fix new beta clippy warnings
      Ignore manual_c_str_literals clippy warning
      Generate all the missing Gio bindings
      ci: Add an automated update job
      ci: Allow triggering a regen update
      ignore typ typo
      gobject: Work around wrongly added v2_82 feature
      glib: Implement Deref/DerefMut for ThreadGuard
      glib/sys: Add aliases for some gtypes
      glib/sys: Manually implement g_atomic_int_get
      image: Disable glycin loader
      image: Disable docs for gdk-pixbuf as well
      image: Disabe gdk-pixbuf thumbnailer

Carlos Martín Nieto:
      glib: link to the Properties macro instead of mentioning Props
      examples: add some docs to the example using the Properties macro
      glib-macros: Properties: copy property docs to getter
      glib-macros: Properties: allow setting getter and setter docs
      glib-macros: Properties: copy over the doc comments more elegantly
      glib-macros: extend `Properties` docs with the getter-setter docs
      glib-macros: add some generic comments for property notifications
      glib: provide a trait to return a `ParamSpec` builder with builtin default
      gio: update doc links in `DBusMethodInvocation`
      glib: implement `HasParamSpecDefaulted` for enums and char
      glib-macros: add a `default` attribute to `#[property]`
      glib-macros: update docs for `property`'s `default` parameter
      gio: add methods for returning and propagating boolean and int in/from a `Task`
      gio: document the interaction of the `Task` result setter and getters

Christopher Head:
      Fix incorrect documentation
      Re-export CancelledHandlerId

David Hewitt:
      gio: manually implement content_type_guess

Fina Wilke:
      glib-macros: Remove &mut to static mut in object_subclass
      examples: Add additional type bounds to Impl traits
      Add additional type bounds to Impl traits
      Add IsA<Object> trait bound to Impl traits
      changelog: Fix typo
      Update MSRV to 1.80
      Use rust 1.79 implied supertraits to simplify trait bounds
      gio: Add interface bounds to ApplicationImpl
      glib: Add unimplemented diagnostic to IsA linking to the wrapper macro

François Laignel:
      gir: update for fix userdata mutability for FnMut callbacks
      regenerate
      glib: fix userdata mutability for FnMut callbacks

Guillaume Gomez:
      Remove `thiserror` dependency

Kévin Commaille:
      glib-macros: Fix typos in docs

Leo Schaefer:
      Fix bug in bindings of shape_full and shape_with_flags
      Use as_ptr and bring shape_full and shape_with_flags into the same format

Maximiliano Sandoval:
      port log_writer fns to safe-io
      Port Unix*Stream::take_fd to safe-io
      Port spawn_async_with_fds to safe-io
      Make Socket:from_fd use an OwnedFd
      Implement AsFd for Socket

Maximiliano Sandoval R:
      Port launch_uris_as_manager_with_fds to safe-io
      Impl AsFd for Unix Streams
      Port file_open_tmp to safe-io
      unix_fd_list: Port to safe-io
      subprocess_launcher: Take owned fds

Paolo Borelli:
      examples: rename variables for clarity in the virtual_methods example
      examples: use a better type for Pet ffi instances in the virtual_methods example
      windows: use a range for windows-rs dependency
      ci: bump gvsbuild version

Philipp Jungkamp:
      glib: Change signal accumulator function signature
      glib: Add signal accumulator to object test
      glib: Implement ToGlibContainerFromSlice for CStr and CString
      gio: Use manual `env: &[OsString]` parameter for SubprocessLauncher::set_environ
      gio: Rework `glib::ExitCode` for `gio::Application`
      Replace `map_or` with `is_none_or` to satisfy clippy

Sebastian Dröge:
      Update versions to 0.21.0
      Build 0.20 docs and drop 0.14 docs
      ci: Fix docs release tag handling
      Fix various Rust 1.80 clippy warnings
      Update gir
      Regenerate with latest gir
      Fix code style
      deny: Update to new format
      glib: Don't use the default main context in the tests
      glib: Make sure to join threads spawned in tests
      deny: Remove proc-macro-crate override
      Update dependencies
      glib: Add `ObjectInterface::Instance` for symmetry with `ObjectSubclass::Instance`
      glib: Assert that the size of the interface type is 0
      Remove deprecated API
      glib: Fix Rust 1.81 clippy warnings
      glib: Collation keys are not necessary valid UTF-8
      Update branch from master to main
      Update gir
      Regenerate with latest gir / gir-files
      Update Cargo.lock
      glib-macros: Derived boxed types are not `TransparentPtrType` but `TransparentType`
      glib: collections: Add some more debug assertions about type sizes
      pango: Fix `LayoutLine::x_ranges()` bindings
      glib: Remove type parameter from `Object::has_property()` and add separate `has_property_with_type()`
      glib: Also check for subtypes in `Object::has_property_with_type()`
      Update gir
      Update gir-files
      Regenerate with latest gir / gir-files
      gio: Clean up and autogenerate `UnixMountEntry` bindings
      glib: Ignore CPP feature constants
      glib: Add correct versions to various new unicode scripts
      glib: Add `Bytes::into_data() and `Bytes::from_bytes()` bindings
      glib: Remove `SignalClassHandlerToken` from default class handler
      Fix / silence various new Rust 1.83 clippy warnings
      gio: Fix nullability of various DBus method call related parameters
      gio: Add test for DBus method calls over a UNIX fd pair
      Update gir
      Update gir-files
      Regenerate with latest gir / gir-files
      ci: Check pango 1.56 feature on the CI
      pango: Update C library version requirements
      Update Cargo.lock
      deny: Update unicode license name
      Update gir-files
      Regenerate with latest gir-files
      gio: Export `RegistrationBuilder` from the crate root
      gio: Work around GLib memory leak in g_dbus_connection_register_object_with_closures()
      Update gir
      Update gir-files
      Regenerate with latest gir / gir-files
      Update Cargo.lock
      gio: Only provide UNIX mount compat API on UNIX platforms
      Fix some new clippy warnings
      glib: Fix expected compiler error text for Rust 1.84
      pango: Add bindings for `Font::languages()`
      glib: Add v2_84 gobject-sys feature
      pango: Ignore FontDescription::set_features_static() and set_variations_static() for now
      gdk-pixbuf: Allow unused imports in auto-generated code
      Update Cargo.lock
      gio: Ignore `g_dbus_connection_register_object_with_closures2()` for now
      glib: Add bindings for `g_intern_string()` and `g_intern_static_string()` to `GStr`
      graphene: Add some `// rustdoc-stripper-ignore-next`
      Update Cargo.lock
      glib: Add From<AsRef<str>> impl for GStringPtr
      pango: Implement `pango_shape()` bindings manually and ignore `pango_shape_item()` for now
      gio: Use `OwnedSocket` / `BorrowedSocket` for Windows APIs on GSocket
      gio: Use `OwnedFd` to close the socket on error instead of `libc::close()`
      gio: Return `BorrowedFd` / `BorrowedSocket` from `Socket::as_fd()` / `as_socket()`
      cairo: Pass a mutable reference when we expect the function to mutate the value
      Fix new clippy 1.86 warnings
      ci: Update to Ubuntu 24.04 for building the image
      ci: Install some more development packages for the image build
      Add 2.86 glib/gio version features
      Use std::io::Error::other() instead of new()
      glib: Use std::hint::black_box() instead of criterion version of it
      tests: Add Cargo.lock
      Update gir
      glib: Manually implement `Source::context()`
      Regenerate with latest gir
      graphene: Add `v1_12` feature
      graphene: Lower 1.12 version dependency to 1.11
      graphene: Add `Box2D` bindings
      ci: Enable v1_12 feature for graphene
      graphene: Rename `Box2D::init_from_rect()` to `from_rect()` for consistency
      glib: Remove nonsense comments about `glib::Slice` pointers being `NULL`-terminated
      glib: Make sure that empty `glib::StrV` / `glib::PtrSlice` returns a valid pointer
      Fix new nightly warning about confusing lifetime flows
      gdk-pixbuf: Add v2_44 version feature
      glib-macros: Fix various new 1.88 clippy warnings
      gio: Fix some new 1.88 clippy warnings
      Update gir
      Regenerate with latest gir
      gio: Manually implement new g_inet_address_new_from_bytes_with_ipv6_info() bindings
      Update Cargo.lock
      Update gir
      Regenerate with latest gir

Sebastian Wiesner:
      Safely and correctly convert InetAddress to IpAddr
      Add test for current output of log impl
      Enable log feature for glib tests
      Remove duplicated call
      Do not use log_structured!
      Write line number without allocation
      Add convenience function to return a result
      Streamline call dispatching in example
      Add helper to return result from a future
      Demo async call handling for gdbus
      Add DBusMethodCall convenience trait
      Fix typo to get Github actions to pass
      Rewrite DBus registration example with inheritance
      Bind dbus_register vfunc
      Bind dbus_unregister vfunc
      Bind name_lost vfunc
      Use DBus errors in example
      Wrap IntoFuture around Cancellable::future
      Derive Debug and Clone for variant DictEntry

Tomoaki Kawada:
      glib-sys: Fix value of `G_VARIANT_TYPE_BYTE_STRING_ARRAY`
      glib: Ensure NULL terminator is present after creating allocation in `StrV::reserve`
      glib: Ensure NULL terminator is present after creating allocation in `PtrSlice::reserve`
      glib: Do not use `end_unsafe` in `<Variant as From<VariantDict>>::from`
      glib-macros: Do not generate import of `Property{Get,Set}` in `Properties`
      glib: Make `<Variant as HasParamSpec>::BuilderFn` generic over lifetimes

Wesley Moore:
      cairo: Fix some typos in Error Display impl
      quartz opt-in

erer1243:
      use crate::Borrowed when not using glib

eri:
      generate gir without link attribute
      generate link attribute only for msvc
      patch doc unused warning
      try manual __imp_ dereference
      detect static library and regenerate gir
      remove g_param_spec_types link alltogether
      suggested fixes
      regenerate with latest gir

fbrouille:
      Implement gio::File::set_attribute
      Implement gio::FileInfo::set_attribute
      Add gio::FileMonitor subclass
      Add glib::StrVRef
      Add gio::Vfs subclass
      Fix gio::FileEnumeratorExt::close(): return value does not indicate success or error
      Add gio::FileEnumerator subclass

jgcodes2020:
      vector operator overloads
      matrix multiplication and transforms
      more matrix operations, quaternion operations
      cargo fmt
      fix clippy warnings

nozwock:
      Clarify usage requirement of `Properties` macro for enum types
      Link to `Properties` macro section on usage with `Enum` derived enums
      Derive `Default` for `MyEnum` in example of `Properties` macro

ogios:
      add_full for unix fd

quo:
      gio: Fix order of arguments to g_dbus_connection_register_object_with_closures()
      gio: Add DBus RegistrationBuilder.property()/set_property() tests
      glib: Remove SendWeakRef::new() because implementation is unsound

yvt:
      glib: Fully transfer ownership in `<Value as From<Vec<GString>>>::from`