Skip to content

Releases: gtk-rs/gtk-rs-core

0.17.6

23 Mar 15:06
Compare
Choose a tag to compare

0.17.6

Fabio Valentini:

  • glib-macros: enable default features of syn

SeaDve:

  • glib-macros: add docs on supported #[property] attributes

0.17.5

15 Mar 10:12
7a9e54c
Compare
Choose a tag to compare

0.17.5

Bilal Elmoussaoui:

  • glib-macros: Don't assume edition=2021

Johan Bjäreholt:

  • glib: Fix building for architectures without 64-bit atomics

SeaDve:

  • glib-macros: generate "From for Value" on ValueDelegate

0.17.4

14 Mar 11:12
Compare
Choose a tag to compare

0.17.4

Bilal Elmoussaoui:

  • Fix nightly clippy warnings

Jason Francis:

  • pango: rename removed clippy lint
  • glib: update error messages in compiletests for rust 1.68
  • glib: implement From<GStringPtr> for GString

SeaDve:

  • glib-macros: qualify ToValue::to_value
  • glib-macros: support higher level types on ValueDelegate
  • glib: impl StaticType, FromValue, ToValue, HasParamSpec for Box<str>

Sebastian Dröge:

  • Update gir
  • Update gir-files
  • Regenerate with latest gir / gir-files
  • Require glib 2.76.0 for the v2_76 feature

0.17.3

06 Mar 08:59
Compare
Choose a tag to compare

0.17.3

Fabio Valentini:

  • pangocairo-sys: fix package.description in Cargo.toml

Jason Francis:

  • gio: add FileEnumerator::into_stream
  • glib: Only optimize IntoGStr for String when capacity allows

Marco Mastropaolo:

  • gio: Added subclassing support for gio::SocketControlMessage
  • gio: Fixed unit tests under macOS and possibly other *nix flavors

Marco Melorio:

  • glib: Add connect_notify* methods to SignalGroup

Matteo Biggio:

  • glib: strv: when calling g_strv FFI method, use our as_ptr implementation

Sebastian Dröge:

  • glib: Optimize IntoGStr impl for String by simply appending a NUL-byte
  • glib: Depend on glib-macros 0.17.3 for ValueDelegate derive macro

ranfdev:

  • glib: Add ValueDelegate derive macro
  • glib: impl HasParamSpec on glib::Variant
  • glib: Add nullable attribute on Properties macro
  • glib: Explain nullable attribute

0.17.2

21 Feb 14:28
Compare
Choose a tag to compare

0.17.2

Andrey Kutejko:

  • glib: Implement PartialEq and PartialOrd for WeakRef

Bilal Elmoussaoui:

  • glib: Add missing ObjectImpl vfuncs overrides
  • glib: Mention lack of finalize method on ObjectImpl

Jason Francis:

  • glib-macros: allow properties macro generated functions to be unused
  • glib: implement WatchedObject for BorrowedObject

Mathieu Duponchelle:

  • glib: object: address misleading casting docs

Matteo Biggio:

  • gio: SimpleAction: take ownership of value without leaking it

Paolo Borelli:

  • glib: properties: impl HasParamSpec for Vec<String> and StrV
  • glib-macros: Derive HasParamSpec for SharedBoxed
  • glib: Add StrV::join() method
  • glib: Add StrV::contains() method

SeaDve:

  • glib-macros: slightly improve Properties macro docs

Sebastian Dröge:

  • Update gir-files
  • Regenerate with latest gir-files
  • glib: Ignore new 2.76 free functions
  • gio: Don't pass NULL to g_list_store_find_with_equal_func_full()

0.17.1

13 Feb 09:25
Compare
Choose a tag to compare

0.17.1

Guillaume Desmottes:

  • glib: param_spec: add ParamSpecEnumBuilder::default_value()

Mițca Dumitru:

  • glib: Make WeakRef useable with the Properties derive macro
  • glib: Make SendWeakRef useable with the Properties derive macro

Sebastian Dröge:

  • glib: Add various IntoStrV impls

YuraIz:

  • graphene: Implement Default trait for vectors, matrix, points and rect

ranfdev:

  • glib: properties: improve conversion error reporting inside setter

0.17.0

08 Feb 16:27
Compare
Choose a tag to compare

Aaron Erhardt:

  • glib-build-tools: Fix reporting of errors

Alberto Ruiz:

  • gdk-pixbuf: check if either width/height is null before assignment in animation_get_size()

Andrey Kutejko:

  • glib-build-tools: Do not hard-code path separator

Bilal Elmoussaoui:

  • gio: Make GioFuture handle infallible futures
  • glib: Ignore useless new constant
  • glib: Implement more From traits for StrV
  • clippy: Drop/move certain lints guards

Guillaume Gomez:

  • glib: Greatly improve compiler errors in clone! proc macro
  • glib: Add span info into clone! UI tests

Jason Francis:

  • glib: impl From<T> for Variant to move into variants
  • gio: use Into<Variant> for SettingsExtManual::set
  • add impl From<T> for Value for manually implemented types
  • glib: use Into<Value> instead of ToValue when possible
  • glib-sys: ignore some unsupported types
  • sys: add a few extra preprocessor bits to fix abi tests
  • gio: support sending/receiving socket control messages
  • gio: implement DatagramBased
  • gio: implement output stream writev methods
  • gio: support writev in stream impls for io::Write, AsyncWrite
  • cairo: fix some misc warnings
  • glib: remove unsafe from SourceId::as_raw
  • glib: support return values and catching panics in spawn/spawn_local
  • glib: catch panics in ThreadPool push methods
  • gio: add spawn_blocking
  • gio: fix clippy lints for rust 1.64
  • glib: Add #[inline] to more GString trait methods
  • glib: implement Display for GStr
  • glib: rename GStr::to_bytes to as_bytes
  • glib: refactor GStr and GString constructors
  • glib: bump required Rust version to 1.64
  • glib: make some GStr methods const
  • glib: have ToGlibPtr check interior string nuls in debug mode
  • glib: add more From implementations for GString
  • glib: add ToGlibPtr implementations for more string types
  • glib: add GStringBuilder::as_gstr and AsRef<GStr>
  • glib: add gformat! for directly formatting into a GString
  • glib: add IntoGStr traits
  • glib: allow GString to store small inline strings
  • glib: convert some functions to use IntoGStr
  • gio: bind GFileDescriptorBased
  • glib: use strcmp for GStringPtr comparisons
  • glib: add GStr::from_ptr_checked()

Matteo Biggio:

  • glib: implement ToGlibPtr<*mut _> for boxed types

Maximiliano Sandoval R:

  • gio: application: Return ExitCode

Mițca Dumitru:

  • glib: Bind more g_utf8 APIs
  • build-tools: Allow passing multiple source dirs to compile_resources

Paolo Borelli:

  • gio: ActionEntry: take proper types instead of strings
  • gio: SimpleAction: take state by value
  • glib-macros: Suggest kebab-case for the error domain in error domain derive macro
  • gio: simplify async initable
  • Bump MSRV to 1.64 everywhere
  • glib-build-tools: fix documentation link
  • gio: use StrV for the simple proxy resolver API
  • gio: use StrV for TlsConnection
  • pango: use the new List api to simplify reorder_items
  • gio: settings: implement strv setter and getter manually
  • gio: use StrV for the file_info API
  • gio: use GStr for the manual extension point implementation
  • glib: list: mark as transparent and impl TransparentPtr
  • glib: Rename StrVItem to GStrPtr and make it clonable and transparent
  • glib: key_file: return PtrSlice<GStrPtr>
  • glib-macros: further tweak docs
  • glib: Rename GStrPtr to GStringPtr
  • glib: GStringPtr: remove impl AsRef, provide explicit to_gstr() and to_str()
  • glib: strv: make as_slice const
  • gio: implement FromIterator for ListStore
  • glib-macros: move the test foo object out of the unit test function
  • glib: properties: accept default = value attribute
  • glib-macros: support overrides in the properties macro
  • gio: make ListModel::iter() infallible

Sebastian Dröge:

  • ci: Add 0.16 release
  • glib: Add a getter for ObjectBuilder::type_
  • glib: Add ObjectSubclass::obj() as a shorter alias for instance()
  • glib: Add unsafe bindings to g_object_run_dispose()
  • Move from imp.instance() to imp.obj()
  • pango: Make pango::Language::from_string() infallible
  • glib: Document the value guarantees for ObjectImpl::set_property() and property()
  • pango: Autogenerate Language::get_preferred()
  • glib/gio: Add v2_76 feature
  • cairo: Update to freetype 0.32
  • glib: Implement IntoGlibPtr for Option<T>
  • glib: Add function_name! macro and make use of that for glib::BoolError
  • glib: Use actual function name for structured logging and also log source file/line number
  • glib: Implement From<&GStr> and From<GString> for Cow<GStr>
  • glib: Add GStr::from_ptr_lossy() and GString::from_ptr_lossy()
  • glib: Fix docs typo
  • glib: Implement GStringBuilder as BoxedInline to avoid a useless additional heap allocation
  • glib: GStringBuilder by construction always returns an UTF-8 string and never a NULL pointer
  • glib: Micro-optimize GStringBuilder construction to have fewer function calls
  • Group imports and use prelude
  • Fix various new beta clippy warnings
  • Use PhantomData as Stash::Storage if nothing has to be stored except for a lifetime
  • glib: Don't create a temporary copy of &GStr for ToGlibPtr::to_glib_none()
  • glib: Optimize [Type]::to_glib_none() to not have an additional heap allocation
  • glib: Only use a single temporary Vec for [T]::to_glib_none()
  • glib: Make sure to keep the original values alive in [T]::to_glib_none()
  • glib: Remove useless UserDirectory::NDirectories enum variant
  • gio: Use OsStr::to_str() instead of OsString::into_string() to avoid unnecessary heap allocations
  • glib: Assert immediately after type registration that the returned type is valid
  • Inline various trivial functions
  • Change some assertions to debug assertions
  • glib: Add new marker traits for transparent types
  • glib: Simplify as_ptr() implementation and add new function to borrow values from pointers directly
  • glib: Make glib::PtrSlice API more complete and similar to Vec
  • glib: Remove a couple of unnecessary trait impls for glib::ObjectRef
  • glib: Use plain g_malloc() instead of g_malloc0() if we initialize the result anyway
  • glib: Optimize ToGlibPtrFromSlice impls for shared/boxed/object/boxed-inline
  • glib: Make glib::Slice API more complete and similar to Vec
  • glib: Add zero-copy conversion from PtrSlice to Slice and back
  • glib: Make glib::SList and glib::List API more complete and similar to LinkedList
  • glib: Implement glib::StrV for NULL-terminated string arrays
  • glib: Minor optimization for List/SList with Copy types
  • glib: Remove unnecessary forwarding of attributes in glib::wrapper! for BoxedInline
  • glib: Fix glib::wrapper! for BoxedInline with generic parameters
  • glib: Remove an unnecessary FromGlibContainerAsVec impl
  • glib: Optimize various from/to Vec FFI translation functions
  • glib: Use IntoGlibPtr instead of to_glib_full() in more places
  • glib: Fix IntoGlibPtr implementation for BoxedInline
  • glib: Return a reference to the ValueArray pspec element spec
  • glib: Get rid of some unnecessary Option wrapping
  • glib: Add Value::from_type_unchecked()
  • Use Value::from_type_unchecked() where applicable
  • glib: Use IntoGStr trait in a couple of places
  • glib: Fix usage of gformat! macro if GString is not in scope
  • glib: Add MainContext::spawn_from_within() for spawning non-Send futures from another thread
  • gdk-pixbuf: Trust return value nullability
  • glib: Add ParamSpec::is() helper function
  • glib: Deprecate paramspec new() functions in favour of the builder
  • glib: Deprecate ObjectSubclass::instance() / from_instance() in favour of the shorter versions
  • glib: Make ObjectBuilder a bit more efficient
  • glib: Implement enum paramspec builder variant that builds the default value automatically
  • glib: Add new object constructor for constructing an object with default property values
  • glib: Implement From<&String> for GString
  • glib: Deprecate suboptimal Object constructors
  • Stop usage of deprecated constructor functions
  • gio: Make (Async)InitableBuilder public
  • glib: Implement various traits on GStr manually
  • gio: Make sure to have IntoStrV in scope for v2_60 too
  • glib: Manually implement TimeZone::adjust_time() instead of ignoring it
  • ci: Only deny clippy warnings with stable clippy
  • glib: Rename Object::new_default() to Object::new() and remove deprecated API
  • gdk-pixbuf: Return a Option<Duration> from AnimationIter::delay_time()
  • gdk-pixbuf: Use SystemTime instead of Duration for PixbufAnimation::iter() and PixbufAnimationIter::advance()
  • gdk-pixbuf: Ensure that transfer-none return values in subclassing are staying alive long enough
  • gio: Don't require a 'static &str in File::enumerate_children_async() and enumerate_children_future()
  • glib: Add NULL debug assertion to from_glib_full() and others for GObjects
  • glib: Implement ValueArray Value traits manually because of the custom paramspec

YuraIz:

  • ci: Enable introspection
  • ci: Install gobject-introspection-devel into image

ranfdev:

  • glib: Add a #[properties] derive macro
  • glib: Remove construct_cell, too experimental
  • glib-macros: Improve doc about Boxed
  • glib: properties: Update syntax for custom flags and other builder fields
  • glib: properties: infer inline get type
  • glib: properties: impl Parse for ReceivedAttrs
  • glib: properties: improve errors of missing properties, refactor
  • glib: properties: impl PropertyGet for T: HasParamSpec
  • glib: properties: Improve properties macro docs

0.16.7

16 Dec 07:55
Compare
Choose a tag to compare
Paolo Borelli (1):
      examples: spawn async gio task on the current thread context

Sebastian Dröge (2):
      Fix various new beta clippy warnings
      Update versions to 0.16.7

0.16.6

12 Dec 08:11
Compare
Choose a tag to compare
Bilal Elmoussaoui (1):
      gio: Add a GioInfallibleFuture

Sebastian Dröge (6):
      glib: Implement `IntoGlibPtr` for `Option<T>`
      glib: Implement `From<&GStr>` and `From<GString>` for `Cow<GStr>`
      glib: Fix docs typo
      Update versions to 0.16.6

0.16.5

05 Dec 09:27
81ac6fc
Compare
Choose a tag to compare
Bilal Elmoussaoui (3):
      pango: Auto generate Language
      pango: Manually implement Language::to_string & Language::default
      Bump release to 0.16.5

Sebastian Dröge (2):
      pango: Make `pango::Language::from_string()` infallible

ranfdev (1):
      Add CastNone trait (#843)