news 28 Posted May 29, 2017 *** glibmm: glibmm 2.54 wraps glib 2.54 glibmm 2.54 is a version of the glibmm-2.54 API. It installs in parallel with the gtkmm-2.4 API/ABI, of which the most recent version is glibmm 2.51.7. http://www.gtkmm.org *** Changes 2.53.2 (unstable): Distro packagers should probably not package this yet. Glib: * ConstructParams: Do not increment allocation size twice  (Daniel Elstner) Gio: * ActionMap: Really fix add_action_with_parameter().  (Daniel Boles) Bug 774444#c31 * UnixSocketAddress::create(): Remove a default value to avoid ambiguity.  (Kjell Ahlstedt) Bug #782592 Gio::DBus * Proxy: Wrap call() and call_sync() methods.  (Vyacheslav Yurkov) Bug #781818 gmmproc: * Use of static_cast instead of C-style casts.  (Murray Cumming) Build: * Fix the build on MacOS, where glib doesn't have gdesktopinfo.  (John Ralls) Bug #781947 * Really use desktopappinfo.hg to fix the build.  (Murray Cumming) Documentation: * Glib, Gio: Update documentation of in-class enums.  (Kjell Ahlstedt) * ActionMap: Improve add_action_with_parameter docs  (Daniel Boles) 2.53.1.1 (unstable): Glib: * Use C++11 enum classes instead of old-style enums, and put many enums  inside relevant class declarations:  - Glib::NodeTree: Move enums into class.  - Glib::BindingFlags is now Glib::Binding::Flags.  - Glib::KeyfileFlags is now Glib::Keyfile::Flags.  - Glib::ModuleFlags is now Glib::Module::Flags.  - Glib::ChecksumType is now Glib::Checksum::Type.  - Glib::Regex: Move enums inside class.  - Glib::Resource: Move enums into class.  (Murray Cumming, Kjell Ahlstedt) * RefPtr: Make this an alias for std::shared_ptr instead.  - Use std::dynamic_pointer_cast() instead of RefPtr::cast_dynamic().  - Use std::static_pointer_cast() instead of RefPtr::cast_static().  - Use std::const_pointer_cast() instead of RefPtr::cast_const().  - When creating RefPtr directly, instead of using create() methods,     use Glib::make_refptr_for_instance() so the std::shared_ptr has the     necessary Deleter.  (Murray Cumming) Bug #755037 * Remove Glib::WeakRef. Use std::weak_ref instead.  (Murray Cumming) Bug #755037 * Object: Use g_object_new_with_properties() instead of (deprecated)  g_object_newv() and (deprecated) GParameter.  (Murray Cumming) * IOChannel: Avoid creating a RefPtr to this.  (Murray Cumming) Bug #755037 * SignalProxy:  connect(): Signals with non-void return values now have no default value  for the "after" parameter, forcing application developers to think about  whether they should connect before or after already-connected signal  handlers, and default signal handlers. This is awkward but necessary.  Just provide "true" to get the previous behaviour, or use connect_notify().  connect_notify(): Signals with void return values have no connect_notify(),  because it is not useful with those signals.  (Kjell Ahlstedt) Bug #126213. Gio: * Use C++11 enum classes instead of old-style enums, and put many enums  inside relevant class declarations:  - Gio::Drive: Move enums into class.  - Gio::TlsDatabase: Move enums into class.  - Gio::UnixSocketAddressType is now Gio::UnixSocketAddress::Type.  - Gio::Mount: Move enums into class.  - Gio::TlsPasswordFlags is now Gio::TlsPassword::Flags.  - Gio::IOStreamSpliceFlags is now Gio::IOStream::SpliceFlags.  - Gio::SettingsBindFlags is now Gio::Settings::BindFlags.  - Gio::ResolverRecordType is now Gio::Resolver::RecordType.  - Gio::Socket: Move enums into class.  - Gio::File: Move some flags enums into the class.  - Gio::OutputStreamSpliceFlags is now Gio::OuputStream::SpliceFlags.  - Gio::CredentialsType is now Gio::Credentials::Type.  - Gio::NotificationPriority is now Gio::Notification::Priority.  - Gio::FileMonitorEvent is now Gio::FileMonitor::Event.  - Gio::FileAttributeInfoFlags is now Gio::FileAttributeInfo::Flags.  - Gio::EmblemOrigin is now Gio::Emblem::Origin.  - Gio::Converter: Put enums inside class.  - Gio::ConverterFlags is now Gio::Converter::Flags.  - Gio::ConverterResult is now Gio::Converter::Result.  - Gio::AppInfoCreateFlags is now Gio::AppInfo::CreateFlags.  - Gio::ApplicationFlags is now Gio::Application::Flags.  (Murray Cumming, Kjell Ahlstedt) * Remove duplicate ErrorEnum declaration.  (Kjell Ahlstedt) * ConstructParams:  - Remove (hopefully really unnecessary) copy constructor.  - C++11: =delete the operator=, instead of making it private.  (Murray Cumming) * Value:  - Remove the CType alias, which should be unnecessary.  - value_custom: Replace a template parameter with C++11 type traits.  - Value: Only use this specialization if T has get_base_type().  (Murray Cumming) Bug #755037 * Variant:  - operator bool(): Simplify to avoid clang++ warnings.  - C++11: Variant: Replace throw(std::bad_cast) with noexcept(false).     See https://bugzilla.redhat.com/show_bug.cgi?id=1438766  (Murray Cumming) * Socket: Avoid creating a RefPtr to this.  (Murray Cumming) Bug #755037 Gio:DBus: * Use C++11 enum classes instead of old-style enums, and put many enums  inside relevant class declarations:  - Gio::DBus::InterfaceSkeletonFlags is now Gio::DBus::InterfaceSkeleton::Flags.  - Gio::DBus::ServerFlags is now Gio::DBus::Server::Flags.  (Murray Cumming, Kjell Ahlstedt) gmmproc: * _WRAP_ENUM(): Generate C++ enum classes instead of enums, and let the enums  be inside class declarations.  (Kjell Ahlstedt) Bug #86864 Build * Windows:  Visual Studio builds: Update ABI version  (Chun-wei Fan) -- Murray Cumming murrayc ( -at -) murrayc.com www.murrayc.com _______________________________________________ Share this post Link to post