Hello community, here is the log from the commit of package caja for openSUSE:Factory checked in at 2020-03-03 10:17:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/caja (Old) and /work/SRC/openSUSE:Factory/.caja.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "caja" Tue Mar 3 10:17:21 2020 rev:34 rq:780839 version:1.24.0 Changes: -------- --- /work/SRC/openSUSE:Factory/caja/caja.changes 2019-07-31 14:34:36.997918110 +0200 +++ /work/SRC/openSUSE:Factory/.caja.new.26092/caja.changes 2020-03-03 10:18:38.422948306 +0100 @@ -1,0 +2,74 @@ +Wed Feb 26 19:38:40 UTC 2020 - Alexei Sorokin <[email protected]> + +- Update to version 1.24.0 (changes since 1.23.1): + * caja-progress-info: Use NotifyNotification instead of + GNotification. + * Copy file and keep timestamps of original file including + remotes. + * Fix Caja crashes on file move in Korean. + * Support querying files by contained text. + * Use show icons option in views tab. + * Add preference option to hide icons in list view. + * fm-directory-view: Add icon to "empty trash" into "File" menu. + * gla11y: Use version 0.3 which already defaults to using + python3. + * caja-places-sidebar: Add icon to "empty trash". + * spatial-window: Replace geprecated gtk_menu_popup. + * property-browser: Replace deprecated gtk_drag_begin. + * fm-list-view: Replace deprecated gtk_drag_begin. + * Show thumbnails in list view. + * file-manager: Reduce the scope of some variables. + * preferences: Render extension icons as cairo_surfaces. + * preferences: Render media icons as cairo_surface. + * Replace gdkpixbuf with cairo_surfaces in a few more places. + * sidebar: Render info icon as vector. + * desktop: Add specific CSS for ContrastHigh and + ContrastHighInverse. + * desktop: Add specific CSS for HighContrast and + HighContrastInverse. + * Add support for loading theme-specific caja-desktop CSS. + * Refactor custom CSS loading into a separate function. + * Add support for checking .ui accessibility with gla11y. + * Render file-conflict icons as cairo_surface vectors. + * file-conflict-dialog: Don't scale icons twice on hidpi monitors. + * eel-string: Fix "make check". + * Restore transparent background on icon view labels. + * desktop icon view: Disconnect callback from correct GSettings + instance. + * Add scroll tabs with mouse wheel for File's properties and + caja's preferences windows. + * hidpi: Ensure all icons are properly scaled. + * Use GETTEXTDATADIRS replace GETTEXTDATADIR. + * Create msgstr for data/browser.xml. + * Add gettext ITS. + * Migrate intltool to gettext. + * fm-properties: Remove use of mate-desktop-thumbnail helper. + * Make device ejection notifications translatable. + * Keep path same when opening new window from an existing one. + * editable-label: Don't hyphenate filenames. + * libcaja-private/caja-file: Redundant condition. + * Avoid redundant redeclarations. + * canvas-item: Don't hyphenate filenames. + * change name from caja.{its,loc} to mimeinfo.{its,loc}. + * caja-window-slot: "folder-saved-search" icon instead + "text-x-generic". + * Let some strings be translatable. + * Add document for CajaWidgetViewProvider api. + * Add new interface. + * Add CajaWidgetViewProvider docs. + * Add new extension for widget view. + * Hide menu and toolbutton when view is only one. + * Set FmWidgetView is single view. + * Add new FmWidgetView object. + * Fix build error about autoptr clean. + * Use absolute path of binary on desktop files. + * build: Fix wrong executing dir in caja.desktop. + * Set a real title on the desktop window (as provided to ATK). + * Drop GLIB version check. + * build: Show compiler flags on configuration summary. + * Fix build using the -fno-common flag. + * Update translations. +- Drop support for old openSUSE versions. +- Add caja-glib-2.54.patch: restore GLib 2.54 support. + +------------------------------------------------------------------- Old: ---- caja-1.23.1.tar.xz New: ---- caja-1.24.0.tar.xz caja-glib-2.54.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ caja.spec ++++++ --- /var/tmp/diff_new_pack.dNtLne/_old 2020-03-03 10:18:40.190951965 +0100 +++ /var/tmp/diff_new_pack.dNtLne/_new 2020-03-03 10:18:40.194951973 +0100 @@ -1,7 +1,7 @@ # # spec file for package caja # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,28 +18,28 @@ %define lname libcaja-extension1 %define typelib typelib-1_0-Caja-2_0 -%define _version 1.23 +%define _version 1.24 Name: caja -Version: 1.23.1 +Version: 1.24.0 Release: 0 Summary: File manager for the MATE desktop License: GPL-2.0-only AND LGPL-2.0-only -Group: System/GUI/Other -Url: https://mate-desktop.org/ +URL: https://mate-desktop.org/ Source: https://pub.mate-desktop.org/releases/%{_version}/%{name}-%{version}.tar.xz -# set to _version when mate-common has an equal release -BuildRequires: mate-common >= 1.22 +# PATCH-FEATURE-OPENSUSE caja-glib-2.54.patch -- Restore GLib 2.54 support. +Patch0: %{name}-glib-2.54.patch +BuildRequires: mate-common >= %{_version} BuildRequires: pkgconfig BuildRequires: update-desktop-files BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: pkgconfig(exempi-2.0) BuildRequires: pkgconfig(gail) -BuildRequires: pkgconfig(gio-2.0) >= 2.50 +BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-unix-2.0) -BuildRequires: pkgconfig(glib-2.0) >= 2.50 +BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(gthread-2.0) -BuildRequires: pkgconfig(gtk+-3.0) >= 3.22 +BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(libexif) BuildRequires: pkgconfig(libnotify) BuildRequires: pkgconfig(libxml-2.0) @@ -62,7 +62,6 @@ %package devel Summary: Caja development files -Group: Development/Libraries/C and C++ Requires: %{lname} = %{version} Requires: %{name} = %{version} # mate-file-manager-devel was last used in openSUSE 13.1. @@ -77,7 +76,6 @@ %package -n %{lname} Summary: Caja shared libraries -Group: System/Libraries Requires: %{name}-gschemas >= %{version} %description -n %{lname} @@ -87,10 +85,8 @@ desktop. It works on local and remote filesystems. # Needed for using pluma as standalone from MATE. - %package gschemas Summary: Caja GSchemas -Group: System/Libraries Obsoletes: mate-file-manager < %{version} # caja-gsettings-schemas was last used in openSUSE Leap 42.1. Obsoletes: %{name}-gsettings-schemas < %{version} @@ -107,7 +103,6 @@ %package -n %{typelib} Summary: MATE file manager typelib -Group: System/GUI/Other %description -n %{typelib} Caja is the official file manager for the MATE desktop. It allows to @@ -116,18 +111,15 @@ desktop. It works on local and remote filesystems. %prep -%setup -q +%autosetup -p1 %build -%if 0%{?suse_version} < 1500 -export CFLAGS="%{optflags} -std=gnu99" -%endif NOCONFIGURE=1 mate-autogen %configure \ --disable-update-mimedb \ --disable-static \ --enable-introspection -make %{?_smp_mflags} V=1 +%make_build %install %make_install @@ -151,24 +143,6 @@ %postun -n %{lname} -p /sbin/ldconfig -%if 0%{?suse_version} < 1500 -%post -%desktop_database_post -%icon_theme_cache_post -%mime_database_post - -%postun -%desktop_database_postun -%icon_theme_cache_postun -%mime_database_postun - -%post gschemas -%glib2_gsettings_schema_post - -%postun gschemas -%glib2_gsettings_schema_postun -%endif - %files %license COPYING COPYING.EXTENSIONS COPYING.LIB %doc AUTHORS NEWS ++++++ caja-1.23.1.tar.xz -> caja-1.24.0.tar.xz ++++++ ++++ 1482826 lines of diff (skipped) ++++++ caja-glib-2.54.patch ++++++ --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ(2.54) dnl =========================================================================== m4_define(gdk-pixbuf_minver, 2.36.5) -m4_define(glib_minver, 2.58.1) +m4_define(glib_minver, 2.54.0) m4_define(gio_minver, 2.50.0) m4_define(mate_desktop_minver, 1.17.3) m4_define(pango_minver, 1.1.2) --- a/eel/eel-string.c +++ b/eel/eel-string.c @@ -754,6 +754,110 @@ eel_strdup_printf_with_custom (EelPrintf return res; } +#if !GLIB_CHECK_VERSION (2, 58, 0) +/*********** refcounted strings ****************/ + +G_LOCK_DEFINE_STATIC (interned_ref_strings); +static GHashTable *interned_ref_strings; + +char * +g_ref_string_new (const char *str) +{ + gpointer allocated; + char *res; + volatile gint *count; + gsize len; + + g_return_val_if_fail (str != NULL, NULL); + + len = strlen (str); + allocated = g_malloc (sizeof (gint) + sizeof (char) * len + 1); + count = (volatile gint *) allocated; + *count = 1; + res = allocated + sizeof (gint); + memcpy (res, str, len + 1); + return res; +} + +static gboolean +interned_str_equal (gconstpointer v1, + gconstpointer v2) +{ + const char *str1 = v1; + const char *str2 = v2; + + if (v1 == v2) + return TRUE; + return strcmp (str1, str2) == 0; +} + +char * +g_ref_string_new_intern (const char *str) +{ + char *res; + + g_return_val_if_fail (str != NULL, NULL); + + G_LOCK (interned_ref_strings); + + if (G_UNLIKELY (interned_ref_strings == NULL)) + interned_ref_strings = g_hash_table_new (g_str_hash, interned_str_equal); + + res = g_hash_table_lookup (interned_ref_strings, str); + if (res != NULL) + { + volatile gint *count; + + count = (volatile gint *) (res - sizeof (gint)); + g_atomic_int_inc (count); + G_UNLOCK (interned_ref_strings); + return res; + } + + res = g_ref_string_new (str); + g_hash_table_add (interned_ref_strings, res); + G_UNLOCK (interned_ref_strings); + return res; +} + +char * +g_ref_string_acquire (char *str) +{ + volatile gint *count; + + g_return_val_if_fail (str != NULL, NULL); + + count = (volatile gint *) (str - sizeof (gint)); + g_atomic_int_inc (count); + return str; +} + +void +g_ref_string_release (char *str) +{ + volatile gint *count; + + g_return_if_fail (str != NULL); + + count = (volatile gint *) (str - sizeof (gint)); + + if (!g_atomic_int_dec_and_test (count)) + return; + + G_LOCK (interned_ref_strings); + if (G_LIKELY (interned_ref_strings != NULL)) + { + g_hash_table_remove (interned_ref_strings, str); + + if (g_hash_table_size (interned_ref_strings) == 0) + g_clear_pointer (&interned_ref_strings, g_hash_table_destroy); + } + G_UNLOCK (interned_ref_strings); + + g_free ((gpointer) count); +} +#endif + #if !defined (EEL_OMIT_SELF_CHECK) static void --- a/eel/eel-string.h +++ b/eel/eel-string.h @@ -79,6 +79,17 @@ char * eel_str_replace_substring const char *substring, const char *replacement); +#if !GLIB_CHECK_VERSION (2, 58, 0) +typedef char GRefString; + +char *g_ref_string_new (const char *str); +char *g_ref_string_new_intern (const char *str); + +char *g_ref_string_acquire (char *str); +void g_ref_string_release (char *str); +#endif + + typedef struct { char character;
