0.17.0
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 forStrV
- 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>
forSettingsExtManual::set
- add
impl From<T> for Value
for manually implemented types - glib: use
Into<Value>
instead ofToValue
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 forio::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 moreGString
trait methods - glib: implement
Display for GStr
- glib: rename
GStr::to_byte
s toas_bytes
- glib: refactor
GStr
andGString
constructors - glib: bump required Rust version to 1.64
- glib: make some
GStr
methodsconst
- glib: have
ToGlibPtr
check interior string nuls in debug mode - glib: add more
From
implementations forGString
- glib: add
ToGlibPtr
implementations for more string types - glib: add
GStringBuilder::as_gstr
andAsRef<GStr>
- glib: add
gformat!
for directly formatting into aGString
- 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
forGStringPtr
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
forTlsConnection
- pango: use the new List api to simplify
reorder_items
- gio: settings: implement strv setter and getter manually
- gio: use
StrV
for thefile_info
API - gio: use
GStr
for the manual extension point implementation - glib: list: mark as transparent and impl TransparentPtr
- glib: Rename
StrVItem
toGStrPtr
and make it clonable and transparent - glib:
key_file
: returnPtrSlice<GStrPtr>
- glib-macros: further tweak docs
- glib: Rename
GStrPtr
toGStringPtr
- glib:
GStringPtr
: removeimpl AsRef
, provide explicitto_gstr()
andto_str()
- glib: strv: make
as_slice
const - gio: implement
FromIterator
forListStore
- 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 forinstance()
- glib: Add unsafe bindings to
g_object_run_dispose()
- Move from
imp.instance()
toimp.obj()
- pango: Make
pango::Language::from_string()
infallible - glib: Document the value guarantees for
ObjectImpl::set_property()
andproperty()
- pango: Autogenerate
Language::get_preferred()
- glib/gio: Add
v2_76
feature - cairo: Update to freetype 0.32
- glib: Implement
IntoGlibPtr
forOption<T>
- glib: Add
function_name!
macro and make use of that forglib::BoolError
- glib: Use actual function name for structured logging and also log source file/line number
- glib: Implement
From<&GStr>
andFrom<GString>
forCow<GStr>
- glib: Add
GStr::from_ptr_lossy()
andGString::from_ptr_lossy()
- glib: Fix docs typo
- glib: Implement
GStringBuilder
asBoxedInline
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
asStash::Storage
if nothing has to be stored except for a lifetime - glib: Don't create a temporary copy of
&GStr
forToGlibPtr::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 ofOsString::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 toVec
- glib: Remove a couple of unnecessary trait impls for
glib::ObjectRef
- glib: Use plain
g_malloc()
instead ofg_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 toVec
- glib: Add zero-copy conversion from
PtrSlice
toSlice
and back - glib: Make
glib::SList
andglib::List
API more complete and similar toLinkedList
- glib: Implement
glib::StrV
forNULL
-terminated string arrays - glib: Minor optimization for
List
/SList
withCopy
types - glib: Remove unnecessary forwarding of attributes in
glib::wrapper!
forBoxedInline
- glib: Fix
glib::wrapper!
forBoxedInline
with generic parameters - glib: Remove an unnecessary
FromGlibContainerAsVec
impl - glib: Optimize various from/to
Vec
FFI translation functions - glib: Use
IntoGlibPtr
instead ofto_glib_full()
in more places - glib: Fix
IntoGlibPtr
implementation forBoxedInline
- 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 ifGString
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 forv2_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()
toObject::new()
and remove deprecated API - gdk-pixbuf: Return a
Option<Duration>
fromAnimationIter::delay_time()
- gdk-pixbuf: Use
SystemTime
instead ofDuration
forPixbufAnimation::iter()
andPixbufAnimationIter::advance()
- gdk-pixbuf: Ensure that
transfer-none
return values in subclassing are staying alive long enough - gio: Don't require a
'static
&str
inFile::enumerate_children_async()
andenumerate_children_future()
- glib: Add
NULL
debug assertion tofrom_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
forReceivedAttrs
- glib: properties: improve errors of missing properties, refactor
- glib: properties: impl
PropertyGet
forT: HasParamSpec
- glib: properties: Improve properties macro docs