diff --git a/srcpkgs/mousepad/template b/srcpkgs/mousepad/template index 8e75a05b28a0e9..8b8c66aed2f63c 100644 --- a/srcpkgs/mousepad/template +++ b/srcpkgs/mousepad/template @@ -1,6 +1,6 @@ # Template file for 'mousepad' pkgname=mousepad -version=0.6.5 +version=0.7.0 revision=1 build_style=meson hostmakedepends="glib-devel gettext pkg-config polkit" @@ -12,4 +12,4 @@ license="GPL-2.0-or-later" homepage="https://xfce.org/" changelog="https://gitlab.xfce.org/apps/mousepad/-/raw/master/NEWS" distfiles="https://archive.xfce.org/src/apps/mousepad/${version%.*}/mousepad-${version}.tar.xz" -checksum=21762bc8c3c4f120a4a509ce39f4a5a58dbc10e3f0da66cdc6d9a8c735fff2ac +checksum=e86c59feb08126d4cace368432c16b2dee8e519aaca8a9d2b409ae1cdd200802 diff --git a/srcpkgs/ristretto/template b/srcpkgs/ristretto/template index db79f8c19b3843..18280674820c05 100644 --- a/srcpkgs/ristretto/template +++ b/srcpkgs/ristretto/template @@ -1,6 +1,6 @@ # Template file for 'ristretto' pkgname=ristretto -version=0.13.4 +version=0.14.0 revision=1 build_style=meson hostmakedepends="gettext pkg-config glib-devel" @@ -12,4 +12,4 @@ license="GPL-2.0-or-later" homepage="https://docs.xfce.org/apps/ristretto/start" changelog="https://gitlab.xfce.org/apps/ristretto/-/raw/master/NEWS" distfiles="https://archive.xfce.org/src/apps/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz" -checksum=a84ef8cb80638681d9b9ef09cddff86a5d7a0e028603b4a601cf0ff6c2869ce8 +checksum=502cf1577de14b38132dc89e56884c5e10f86f6a028d8dde379a8839110fda55 diff --git a/srcpkgs/xfce4-panel/template b/srcpkgs/xfce4-panel/template index 45ba0e9ed2ea91..37547f969944ae 100644 --- a/srcpkgs/xfce4-panel/template +++ b/srcpkgs/xfce4-panel/template @@ -1,6 +1,6 @@ # Template file for 'xfce4-panel' pkgname=xfce4-panel -version=4.20.6 +version=4.20.7 revision=1 build_style=meson build_helper="gir" @@ -13,7 +13,7 @@ maintainer="Đoàn Trần Công Danh " license="GPL-2.0-or-later" homepage="https://docs.xfce.org/xfce/xfce4-panel/start" distfiles="https://archive.xfce.org/src/xfce/$pkgname/${version%.*}/$pkgname-$version.tar.bz2" -checksum=e418e3b884a77a6ac76c0423442dbf866b1900665fefde486f27cdbb87087694 +checksum=696e3eff0b1b5bfa8ba90fd7afdea58f5b06e5547840a7443d11388f2fd578ea xfce4-panel-devel_package() { depends="libxfce4ui-devel libxfce4util-devel diff --git a/srcpkgs/xfce4-screensaver/template b/srcpkgs/xfce4-screensaver/template index 97e3d9f0feba6b..8c882e25322df4 100644 --- a/srcpkgs/xfce4-screensaver/template +++ b/srcpkgs/xfce4-screensaver/template @@ -1,6 +1,6 @@ # Template file for 'xfce4-screensaver' pkgname=xfce4-screensaver -version=4.20.1 +version=4.20.2 revision=1 build_style=meson configure_args="--with-elogind --with-libgl --with-shadow --with-mit-ext @@ -19,4 +19,4 @@ license="GPL-2.0-or-later" homepage="https://gitlab.xfce.org/apps/xfce4-screensaver" changelog="https://gitlab.xfce.org/apps/xfce4-screensaver/-/raw/master/NEWS" distfiles="https://archive.xfce.org/src/apps/xfce4-screensaver/${version%.*}/xfce4-screensaver-${version}.tar.xz" -checksum=a94ce9ca3f56db183f1cbc60ba4accd91575b02a6d20b1876ad19131982f2243 +checksum=5032f60a31df5e50a80512e301b595be5ea6a6bd762cdd95cacc24cbd29a01d7 diff --git a/srcpkgs/xfce4-session/template b/srcpkgs/xfce4-session/template index d4e84fa503f861..51bdb37d6559fc 100644 --- a/srcpkgs/xfce4-session/template +++ b/srcpkgs/xfce4-session/template @@ -1,6 +1,6 @@ # Template file for 'xfce4-session' pkgname=xfce4-session -version=4.20.3 +version=4.20.4 revision=1 build_style=gnu-configure configure_args="--disable-static --enable-polkit" @@ -14,4 +14,4 @@ maintainer="Đoàn Trần Công Danh " license="GPL-2.0-or-later" homepage="https://xfce.org/" distfiles="https://archive.xfce.org/src/xfce/$pkgname/${version%.*}/$pkgname-$version.tar.bz2" -checksum=dbf00672c5316a30b7001fe852e6a5ba9f889afeab8a247545a160d4302f1fa2 +checksum=805c373378d080754d69dd2f20db95cdc066c89a4f024a41435ca0d66571c402 diff --git a/srcpkgs/xfce4-settings/template b/srcpkgs/xfce4-settings/template index a259e70c7ddd65..ae163a488edf14 100644 --- a/srcpkgs/xfce4-settings/template +++ b/srcpkgs/xfce4-settings/template @@ -1,6 +1,6 @@ # Template file for 'xfce4-settings' pkgname=xfce4-settings -version=4.20.3 +version=4.20.4 revision=1 build_style=gnu-configure build_helper=gir @@ -17,4 +17,4 @@ license="GPL-2.0-only" homepage="https://xfce.org/" changelog="https://raw.githubusercontent.com/xfce-mirror/xfce4-settings/xfce-${version%.*}/NEWS" distfiles="https://archive.xfce.org/src/xfce/${pkgname}/${version%.*}/${pkgname}-${version}.tar.bz2" -checksum=f77f79925391b142101bac46e2c48373d87ad73f610af371b8bcf92ba11c6383 +checksum=ad5c3c5bfb36f5eb091c05897d60f468d0d5cc4364c8d1d38ca53d8bb04387da diff --git a/srcpkgs/xfce4-terminal/template b/srcpkgs/xfce4-terminal/template index 8a8787dd7acb8d..030ada86138418 100644 --- a/srcpkgs/xfce4-terminal/template +++ b/srcpkgs/xfce4-terminal/template @@ -1,6 +1,6 @@ # Template file for 'xfce4-terminal' pkgname=xfce4-terminal -version=1.1.5 +version=1.2.0 revision=1 build_style=meson hostmakedepends="gettext pkg-config libxslt glib-devel docbook-xsl" @@ -13,4 +13,4 @@ license="GPL-2.0-or-later" homepage="https://docs.xfce.org/apps/xfce4-terminal/start" changelog="https://gitlab.xfce.org/apps/xfce4-terminal/-/raw/master/NEWS" distfiles="https://archive.xfce.org/src/apps/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz" -checksum=3c5b1d3a01a9a113852ac0f77d1c85bf3a356b43de33ec805b21ceca7d6f0a63 +checksum=6874c7b975cc3dc3bd636d57ffec723de7458202defe65377593d3a7e0734b94 diff --git a/srcpkgs/xfce4-weather-plugin/patches/0001-parsers-Generalise-input-to-array-of-gchar.patch b/srcpkgs/xfce4-weather-plugin/patches/0001-parsers-Generalise-input-to-array-of-gchar.patch deleted file mode 100644 index 54358476ed7bf7..00000000000000 --- a/srcpkgs/xfce4-weather-plugin/patches/0001-parsers-Generalise-input-to-array-of-gchar.patch +++ /dev/null @@ -1,288 +0,0 @@ -From c0653a903c6f2cecdf41ac9eaeba4f4617656ffe Mon Sep 17 00:00:00 2001 -From: Đoàn Trần Công Danh -Date: Fri, 1 Mar 2024 21:56:34 +0700 -Subject: [PATCH 1/2] parsers: Generalise input to array of gchar - -In a later change, we will move to libsoup-3.0, which doesn't expose -`response_body' in SoupMessage. - -Prepare for that move. ---- - panel-plugin/weather-config.c | 18 +++++++++++++++-- - panel-plugin/weather-parsers.c | 36 ++++++++++++++++++---------------- - panel-plugin/weather-parsers.h | 7 +++---- - panel-plugin/weather-search.c | 18 +++++++++++++++-- - panel-plugin/weather.c | 26 ++++++++++++++++++++---- - 5 files changed, 76 insertions(+), 29 deletions(-) - -diff --git a/panel-plugin/weather-config.c b/panel-plugin/weather-config.c -index 2645408..19fa1d8 100644 ---- a/panel-plugin/weather-config.c -+++ b/panel-plugin/weather-config.c -@@ -245,6 +245,13 @@ cb_lookup_altitude(SoupSession *session, - xfceweather_dialog *dialog = (xfceweather_dialog *) user_data; - xml_altitude *altitude; - gdouble alt = 0; -+ const gchar *body = NULL; -+ gsize len = 0; -+ -+ if (G_LIKELY(msg->response_body && msg->response_body->data)) { -+ body = msg->response_body->data; -+ len = msg->response_body->length; -+ } - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -252,7 +259,7 @@ cb_lookup_altitude(SoupSession *session, - } - - altitude = (xml_altitude *) -- parse_xml_document(msg, (XmlParseFunc) parse_altitude); -+ parse_xml_document(body, len, (XmlParseFunc) parse_altitude); - - if (altitude) { - alt = string_to_double(altitude->altitude, -9999); -@@ -274,6 +281,13 @@ cb_lookup_timezone(SoupSession *session, - { - xfceweather_dialog *dialog = (xfceweather_dialog *) user_data; - xml_timezone *xml_tz; -+ const gchar *body = NULL; -+ gsize len = 0; -+ -+ if (G_LIKELY(msg->response_body && msg->response_body->data)) { -+ body = msg->response_body->data; -+ len = msg->response_body->length; -+ } - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -281,7 +295,7 @@ cb_lookup_timezone(SoupSession *session, - } - - xml_tz = (xml_timezone *) -- parse_xml_document(msg, (XmlParseFunc) parse_timezone); -+ parse_xml_document(body, len, (XmlParseFunc) parse_timezone); - weather_dump(weather_dump_timezone, xml_tz); - - if (xml_tz) { -diff --git a/panel-plugin/weather-parsers.c b/panel-plugin/weather-parsers.c -index d53a2bc..28934c4 100644 ---- a/panel-plugin/weather-parsers.c -+++ b/panel-plugin/weather-parsers.c -@@ -791,49 +791,51 @@ parse_timezone(xmlNode *cur_node) - - - xmlDoc * --get_xml_document(SoupMessage *msg) -+get_xml_document(const gchar *data, gsize len) - { -- if (G_LIKELY(msg && msg->response_body && msg->response_body->data)) { -- if (g_utf8_validate(msg->response_body->data, -1, NULL)) { -+ if (G_LIKELY(data && len)) { -+ if (g_utf8_validate(data, len, NULL)) { - /* force parsing as UTF-8, the XML encoding header may lie */ -- return xmlReadMemory(msg->response_body->data, -- strlen(msg->response_body->data), -+ return xmlReadMemory(data, len, - NULL, "UTF-8", 0); - } else { -- return xmlParseMemory(msg->response_body->data, -- strlen(msg->response_body->data)); -+ return xmlParseMemory(data, len); - } - } - return NULL; - } - - json_object * --get_json_tree(SoupMessage *msg) -+get_json_tree(const gchar *data, gsize len) - { - json_object *res=NULL; -- enum json_tokener_error err; -+ struct json_tokener *tok = json_tokener_new(); - -- if (G_LIKELY(msg && msg->response_body && msg->response_body->data)) { -- res = json_tokener_parse_verbose(msg->response_body->data, &err); -- if (err != json_tokener_success) -- g_warning("get_json_tree: error =%d",err); -+ if (G_UNLIKELY(tok == NULL)) { -+ return NULL; -+ } else if (G_LIKELY(data && len)) { -+ res = json_tokener_parse_ex(tok, data, len); -+ if (res == NULL) -+ g_warning("get_json_tree: error =%d", -+ json_tokener_get_error(tok)); - } -+ json_tokener_free(tok); - return res; - } - - gpointer --parse_xml_document(SoupMessage *msg, -+parse_xml_document(const gchar *data, gsize len, - XmlParseFunc parse_func) - { - xmlDoc *doc; - xmlNode *root_node; - gpointer user_data = NULL; - -- g_assert(msg != NULL); -- if (G_UNLIKELY(msg == NULL)) -+ g_assert(data != NULL); -+ if (G_UNLIKELY(data == NULL || len == 0)) - return NULL; - -- doc = get_xml_document(msg); -+ doc = get_xml_document(data, len); - if (G_LIKELY(doc)) { - root_node = xmlDocGetRootElement(doc); - if (G_LIKELY(root_node)) -diff --git a/panel-plugin/weather-parsers.h b/panel-plugin/weather-parsers.h -index a9d019d..09b9c02 100644 ---- a/panel-plugin/weather-parsers.h -+++ b/panel-plugin/weather-parsers.h -@@ -22,7 +22,6 @@ - #include - #include - #include --#include - #include - - #define DATA_EXPIRY_TIME (24 * 3600) -@@ -157,11 +156,11 @@ xml_astro *get_astro(const GArray *astrodata, - const time_t day_t, - guint *index); - --xmlDoc *get_xml_document(SoupMessage *msg); -+xmlDoc *get_xml_document(const gchar *data, gsize len); - --json_object *get_json_tree(SoupMessage *msg); -+json_object *get_json_tree(const gchar *data, gsize len); - --gpointer parse_xml_document(SoupMessage *msg, -+gpointer parse_xml_document(const gchar *data, gsize len, - XmlParseFunc parse_func); - - xml_astro *xml_astro_copy(const xml_astro *src); -diff --git a/panel-plugin/weather-search.c b/panel-plugin/weather-search.c -index 7e87ae8..6a2ba1f 100644 ---- a/panel-plugin/weather-search.c -+++ b/panel-plugin/weather-search.c -@@ -89,6 +89,13 @@ cb_searchdone(SoupSession *session, - gint found = 0; - GtkTreeIter iter; - GtkTreeSelection *selection; -+ const gchar *body = NULL; -+ gsize len = 0; -+ -+ if (G_LIKELY(msg->response_body && msg->response_body->data)) { -+ body = msg->response_body->data; -+ len = msg->response_body->length; -+ } - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -97,7 +104,7 @@ cb_searchdone(SoupSession *session, - - gtk_widget_set_sensitive(dialog->find_button, TRUE); - -- doc = get_xml_document(msg); -+ doc = get_xml_document(body, len); - if (!doc) - return; - -@@ -385,6 +392,13 @@ cb_geolocation(SoupSession *session, - xml_geolocation *geo; - gchar *full_loc; - units_config *units; -+ const gchar *body = NULL; -+ gsize len = 0; -+ -+ if (G_LIKELY(msg->response_body && msg->response_body->data)) { -+ body = msg->response_body->data; -+ len = msg->response_body->length; -+ } - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -392,7 +406,7 @@ cb_geolocation(SoupSession *session, - } - - geo = (xml_geolocation *) -- parse_xml_document(msg, (XmlParseFunc) parse_geolocation); -+ parse_xml_document(body, len, (XmlParseFunc) parse_geolocation); - weather_dump(weather_dump_geolocation, geo); - - if (!geo) { -diff --git a/panel-plugin/weather.c b/panel-plugin/weather.c -index 0a92b4e..b75c633 100644 ---- a/panel-plugin/weather.c -+++ b/panel-plugin/weather.c -@@ -489,11 +489,17 @@ cb_astro_update_sun(SoupSession *session, - json_object *json_tree; - time_t now_t; - guint astro_forecast_days; -+ const gchar *body = NULL; -+ gsize len = 0; - - data->msg_parse->sun_msg_processed++; - data->astro_update->http_status_code = msg->status_code; - if ((msg->status_code == 200 || msg->status_code == 203)) { -- json_tree = get_json_tree(msg); -+ if (G_LIKELY(msg->response_body && msg->response_body->data)) { -+ body = msg->response_body->data; -+ len = msg->response_body->length; -+ } -+ json_tree = get_json_tree(body, len); - if (G_LIKELY(json_tree)) { - if (!parse_astrodata_sun(json_tree, data->astrodata)) { - data->msg_parse->sun_msg_parse_error++; -@@ -545,11 +551,17 @@ cb_astro_update_moon(SoupSession *session, - json_object *json_tree; - time_t now_t; - guint astro_forecast_days; -+ const gchar *body = NULL; -+ gsize len = 0; - - data->msg_parse->moon_msg_processed++; - data->astro_update->http_status_code = msg->status_code; - if ((msg->status_code == 200 || msg->status_code == 203)) { -- json_tree = get_json_tree(msg); -+ if (G_LIKELY(msg->response_body && msg->response_body->data)) { -+ body = msg->response_body->data; -+ len = msg->response_body->length; -+ } -+ json_tree = get_json_tree(body, len); - if (G_LIKELY(json_tree)) { - if (!parse_astrodata_moon(json_tree, data->astrodata)) { - data->msg_parse->moon_msg_parse_error++; -@@ -606,17 +618,23 @@ cb_weather_update(SoupSession *session, - gpointer user_data) - { - plugin_data *data = user_data; -- xmlDoc *doc; -+ xmlDoc *doc = NULL; - xmlNode *root_node; - time_t now_t; - gboolean parsing_error = TRUE; -+ const gchar *body = NULL; -+ gsize len = 0; - - weather_debug("Processing downloaded weather data."); - time(&now_t); - data->weather_update->attempt++; - data->weather_update->http_status_code = msg->status_code; - if (msg->status_code == 200 || msg->status_code == 203) { -- doc = get_xml_document(msg); -+ if (G_LIKELY(msg->response_body && msg->response_body->data)) { -+ body = msg->response_body->data; -+ len = msg->response_body->length; -+ } -+ doc = get_xml_document(body, len); - if (G_LIKELY(doc)) { - root_node = xmlDocGetRootElement(doc); - if (G_LIKELY(root_node)) --- -2.47.1.613.gc27f4b7a9fc45 - diff --git a/srcpkgs/xfce4-weather-plugin/patches/0002-libsoup-Port-to-libsoup-3.0.patch b/srcpkgs/xfce4-weather-plugin/patches/0002-libsoup-Port-to-libsoup-3.0.patch deleted file mode 100644 index 19caa8a863e947..00000000000000 --- a/srcpkgs/xfce4-weather-plugin/patches/0002-libsoup-Port-to-libsoup-3.0.patch +++ /dev/null @@ -1,563 +0,0 @@ -From 279c975dc1f95bd1ce9152eee1d19122e7deb9a8 Mon Sep 17 00:00:00 2001 -From: Đoàn Trần Công Danh -Date: Fri, 1 Mar 2024 21:56:34 +0700 -Subject: [PATCH 2/2] libsoup: Port to libsoup-3.0 - ---- - README | 4 +- - configure.ac | 2 +- - panel-plugin/weather-config.c | 32 ++++--- - panel-plugin/weather-search.c | 37 ++++++--- - panel-plugin/weather-summary.c | 23 ++++-- - panel-plugin/weather.c | 147 +++++++++++++++------------------ - panel-plugin/weather.h | 2 +- - 7 files changed, 132 insertions(+), 115 deletions(-) - -diff --git a/README b/README -index 6587581..3530b1f 100644 ---- a/README -+++ b/README -@@ -152,10 +152,10 @@ using gdb or any other debugger should the plugin crash: - BUILD REQUIREMENTS AND DEPENDENCIES - ========================================================================== - To be able to build the plugin, the following requirements have to be --met in addition to those of XFCE-4.14: -+met in addition to those of XFCE-4.16: - - * >=libxml-2.4.0 --* >=libsoup-2.42.0 -+* >=libsoup-3.0.0 - * >=upower-0.9.0 (optional) - - You might also need developer libraries necessary for building other -diff --git a/configure.ac b/configure.ac -index 324599f..049ef88 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -70,7 +70,7 @@ XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.16.0]) - XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-2.0], [4.14.0]) - XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.12.0]) - XDT_CHECK_PACKAGE([LIBXML], [libxml-2.0], [2.4.0]) --XDT_CHECK_PACKAGE([SOUP], [libsoup-2.4], [2.42.0]) -+XDT_CHECK_PACKAGE([SOUP], [libsoup-3.0], [3.0.0]) - XDT_CHECK_PACKAGE([JSON], [json-c], [0.13.1]) - XDT_CHECK_OPTIONAL_PACKAGE([UPOWER_GLIB], [upower-glib], [0.9.0], [upower], - [upower for adapting update interval to power state]) -diff --git a/panel-plugin/weather-config.c b/panel-plugin/weather-config.c -index 19fa1d8..d27c825 100644 ---- a/panel-plugin/weather-config.c -+++ b/panel-plugin/weather-config.c -@@ -238,8 +238,8 @@ sanitize_location_name(const gchar *location_name) - - - static void --cb_lookup_altitude(SoupSession *session, -- SoupMessage *msg, -+cb_lookup_altitude(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { - xfceweather_dialog *dialog = (xfceweather_dialog *) user_data; -@@ -247,11 +247,14 @@ cb_lookup_altitude(SoupSession *session, - gdouble alt = 0; - const gchar *body = NULL; - gsize len = 0; -+ GError *error = NULL; -+ GBytes *response = -+ soup_session_send_and_read_finish(SOUP_SESSION(source), result, &error); - -- if (G_LIKELY(msg->response_body && msg->response_body->data)) { -- body = msg->response_body->data; -- len = msg->response_body->length; -- } -+ if (G_UNLIKELY(error)) -+ g_error_free(error); -+ else -+ body = g_bytes_get_data(response, &len); - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -271,23 +274,27 @@ cb_lookup_altitude(SoupSession *session, - else if (dialog->pd->units->altitude == FEET) - alt /= 0.3048; - gtk_spin_button_set_value(GTK_SPIN_BUTTON(dialog->spin_alt), alt); -+ g_bytes_unref(response); - } - - - static void --cb_lookup_timezone(SoupSession *session, -- SoupMessage *msg, -+cb_lookup_timezone(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { - xfceweather_dialog *dialog = (xfceweather_dialog *) user_data; - xml_timezone *xml_tz; - const gchar *body = NULL; - gsize len = 0; -+ GError *error = NULL; -+ GBytes *response = -+ soup_session_send_and_read_finish(SOUP_SESSION(source), result, &error); - -- if (G_LIKELY(msg->response_body && msg->response_body->data)) { -- body = msg->response_body->data; -- len = msg->response_body->length; -- } -+ if (G_UNLIKELY(error)) -+ g_error_free(error); -+ else -+ body = g_bytes_get_data(response, &len); - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -304,6 +311,7 @@ cb_lookup_timezone(SoupSession *session, - xml_timezone_free(xml_tz); - } else - gtk_entry_set_text(GTK_ENTRY(dialog->text_timezone), ""); -+ g_bytes_unref(response); - } - - -diff --git a/panel-plugin/weather-search.c b/panel-plugin/weather-search.c -index 6a2ba1f..e030ff8 100644 ---- a/panel-plugin/weather-search.c -+++ b/panel-plugin/weather-search.c -@@ -78,8 +78,8 @@ sanitize_str(const gchar *str) - - - static void --cb_searchdone(SoupSession *session, -- SoupMessage *msg, -+cb_searchdone(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { - search_dialog *dialog = (search_dialog *) user_data; -@@ -91,11 +91,14 @@ cb_searchdone(SoupSession *session, - GtkTreeSelection *selection; - const gchar *body = NULL; - gsize len = 0; -+ GError *error = NULL; -+ GBytes *response = -+ soup_session_send_and_read_finish(SOUP_SESSION(source), result, &error); - -- if (G_LIKELY(msg->response_body && msg->response_body->data)) { -- body = msg->response_body->data; -- len = msg->response_body->length; -- } -+ if (G_UNLIKELY(error)) -+ g_error_free(error); -+ else -+ body = g_bytes_get_data(response, &len); - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -105,8 +108,10 @@ cb_searchdone(SoupSession *session, - gtk_widget_set_sensitive(dialog->find_button, TRUE); - - doc = get_xml_document(body, len); -- if (!doc) -+ if (!doc) { -+ g_bytes_unref(response); - return; -+ } - - cur_node = xmlDocGetRootElement(doc); - if (cur_node) { -@@ -140,6 +145,7 @@ cb_searchdone(SoupSession *session, - } - - gtk_tree_view_column_set_title(dialog->column, _("Results")); -+ g_bytes_unref(response); - } - - -@@ -384,8 +390,8 @@ get_preferred_units(const gchar *country_code) - - - static void --cb_geolocation(SoupSession *session, -- SoupMessage *msg, -+cb_geolocation(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { - geolocation_data *data = (geolocation_data *) user_data; -@@ -394,11 +400,14 @@ cb_geolocation(SoupSession *session, - units_config *units; - const gchar *body = NULL; - gsize len = 0; -+ GError *error = NULL; -+ GBytes *response = -+ soup_session_send_and_read_finish(SOUP_SESSION(source), result, &error); - -- if (G_LIKELY(msg->response_body && msg->response_body->data)) { -- body = msg->response_body->data; -- len = msg->response_body->length; -- } -+ if (G_UNLIKELY(error)) -+ g_error_free(error); -+ else -+ body = g_bytes_get_data(response, &len); - - if (global_dialog == NULL) { - weather_debug("%s called after dialog was destroyed", G_STRFUNC); -@@ -411,6 +420,7 @@ cb_geolocation(SoupSession *session, - - if (!geo) { - data->cb(NULL, NULL, NULL, NULL, data->user_data); -+ g_bytes_unref(response); - g_free(data); - return; - } -@@ -441,6 +451,7 @@ cb_geolocation(SoupSession *session, - g_slice_free(units_config, units); - xml_geolocation_free(geo); - g_free(full_loc); -+ g_bytes_unref(response); - g_free(data); - } - -diff --git a/panel-plugin/weather-summary.c b/panel-plugin/weather-summary.c -index a6a2f56..224bb34 100644 ---- a/panel-plugin/weather-summary.c -+++ b/panel-plugin/weather-summary.c -@@ -234,22 +234,29 @@ get_logo_path(void) - - - static void --logo_fetched(SoupSession *session, -- SoupMessage *msg, -+logo_fetched(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { -- if (msg && msg->response_body && msg->response_body->length > 0) { -+ GError *error = NULL; -+ GBytes *response = -+ soup_session_send_and_read_finish(SOUP_SESSION(source), result, &error); -+ -+ if (G_LIKELY(error == NULL)) { -+ gsize len = 0; -+ const gchar *body = g_bytes_get_data(response, &len); - gchar *path = get_logo_path(); -- GError *error = NULL; - GdkPixbuf *pixbuf = NULL; - gint scale_factor; -- if (!g_file_set_contents(path, msg->response_body->data, -- msg->response_body->length, &error)) { -+ g_file_set_contents(path, body, len, &error); -+ g_bytes_unref(response); -+ if (error) { - g_warning("Error downloading met.no logo image to %s, " - "reason: %s\n", path, - error ? error->message : "unknown"); - g_error_free(error); - g_free(path); -+ g_bytes_unref(response); - return; - } - scale_factor = gtk_widget_get_scale_factor(user_data); -@@ -261,7 +268,9 @@ logo_fetched(SoupSession *session, - cairo_surface_destroy(surface); - g_object_unref(pixbuf); - } -- } -+ g_bytes_unref(response); -+ } else -+ g_error_free(error); - } - - -diff --git a/panel-plugin/weather.c b/panel-plugin/weather.c -index b75c633..1a84537 100644 ---- a/panel-plugin/weather.c -+++ b/panel-plugin/weather.c -@@ -23,6 +23,8 @@ - #include - #include - -+#include -+ - #include - #include - #include -@@ -106,13 +108,14 @@ static void schedule_next_wakeup(plugin_data *data); - void - weather_http_queue_request(SoupSession *session, - const gchar *uri, -- SoupSessionCallback callback_func, -+ GAsyncReadyCallback callback_func, - gpointer user_data) - { - SoupMessage *msg; - - msg = soup_message_new("GET", uri); -- soup_session_queue_message(session, msg, callback_func, user_data); -+ soup_session_send_and_read_async(session, msg, G_PRIORITY_DEFAULT, NULL, -+ callback_func, user_data); - } - - -@@ -481,8 +484,8 @@ calc_next_download_time(const update_info *upi, - * Process downloaded sun astro data and schedule next astro update. - */ - static void --cb_astro_update_sun(SoupSession *session, -- SoupMessage *msg, -+cb_astro_update_sun(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { - plugin_data *data = user_data; -@@ -491,14 +494,17 @@ cb_astro_update_sun(SoupSession *session, - guint astro_forecast_days; - const gchar *body = NULL; - gsize len = 0; -+ SoupMessage *msg; -+ GError *error = NULL; -+ GBytes *response; - -+ msg = soup_session_get_async_result_message(SOUP_SESSION(source), result); - data->msg_parse->sun_msg_processed++; -- data->astro_update->http_status_code = msg->status_code; -- if ((msg->status_code == 200 || msg->status_code == 203)) { -- if (G_LIKELY(msg->response_body && msg->response_body->data)) { -- body = msg->response_body->data; -- len = msg->response_body->length; -- } -+ data->astro_update->http_status_code = soup_message_get_status(msg); -+ response = soup_session_send_and_read_finish(SOUP_SESSION(source), -+ result, &error); -+ if (G_LIKELY(error == NULL)) { -+ body = g_bytes_get_data(response, &len); - json_tree = get_json_tree(body, len); - if (G_LIKELY(json_tree)) { - if (!parse_astrodata_sun(json_tree, data->astrodata)) { -@@ -514,10 +520,12 @@ cb_astro_update_sun(SoupSession *session, - g_warning("Error parsing sun astronomical data!"); - weather_debug("No json_tree"); - } -+ g_bytes_unref(response); - } else { - data->msg_parse->http_msg_fail = TRUE; -- g_warning_once("Download of sun astronomical data failed with HTTP Status Code %d, Reason phrase: %s", -- msg->status_code, msg->reason_phrase); -+ g_warning_once("Download of sun astronomical data failed: %s", -+ error->message); -+ g_error_free(error); - } - - astro_forecast_days = data->forecast_days + 1; -@@ -543,8 +551,8 @@ cb_astro_update_sun(SoupSession *session, - * Process downloaded moon astro data and schedule next astro update. - */ - static void --cb_astro_update_moon(SoupSession *session, -- SoupMessage *msg, -+cb_astro_update_moon(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { - plugin_data *data = user_data; -@@ -553,14 +561,17 @@ cb_astro_update_moon(SoupSession *session, - guint astro_forecast_days; - const gchar *body = NULL; - gsize len = 0; -+ SoupMessage *msg; -+ GError *error = NULL; -+ GBytes *response; - -+ response = soup_session_send_and_read_finish(SOUP_SESSION(source), -+ result, &error); -+ msg = soup_session_get_async_result_message(SOUP_SESSION(source), result); - data->msg_parse->moon_msg_processed++; -- data->astro_update->http_status_code = msg->status_code; -- if ((msg->status_code == 200 || msg->status_code == 203)) { -- if (G_LIKELY(msg->response_body && msg->response_body->data)) { -- body = msg->response_body->data; -- len = msg->response_body->length; -- } -+ data->astro_update->http_status_code = soup_message_get_status(msg); -+ if (G_LIKELY(error == NULL)) { -+ body = g_bytes_get_data(response, &len); - json_tree = get_json_tree(body, len); - if (G_LIKELY(json_tree)) { - if (!parse_astrodata_moon(json_tree, data->astrodata)) { -@@ -576,10 +587,12 @@ cb_astro_update_moon(SoupSession *session, - g_warning("Error parsing moon astronomical data"); - weather_debug("No json_tree"); - } -+ g_bytes_unref(response); - } else { - data->msg_parse->http_msg_fail = TRUE; -- g_warning_once("Download of moon astronomical data failed with HTTP Status Code %d, Reason phrase: %s", -- msg->status_code, msg->reason_phrase); -+ g_warning_once("Download of moon astronomical data failed: %s", -+ error->message); -+ g_error_free(error); - } - - astro_forecast_days = data->forecast_days + 1; -@@ -613,8 +626,8 @@ cb_astro_update_moon(SoupSession *session, - * Process downloaded weather data and schedule next weather update. - */ - static void --cb_weather_update(SoupSession *session, -- SoupMessage *msg, -+cb_weather_update(GObject *source, -+ GAsyncResult *result, - gpointer user_data) - { - plugin_data *data = user_data; -@@ -624,16 +637,19 @@ cb_weather_update(SoupSession *session, - gboolean parsing_error = TRUE; - const gchar *body = NULL; - gsize len = 0; -+ SoupMessage *msg; -+ GError *error = NULL; -+ GBytes *response = NULL; - - weather_debug("Processing downloaded weather data."); -+ response = soup_session_send_and_read_finish(SOUP_SESSION(source), -+ result, &error); -+ msg = soup_session_get_async_result_message(SOUP_SESSION(source), result); - time(&now_t); - data->weather_update->attempt++; -- data->weather_update->http_status_code = msg->status_code; -- if (msg->status_code == 200 || msg->status_code == 203) { -- if (G_LIKELY(msg->response_body && msg->response_body->data)) { -- body = msg->response_body->data; -- len = msg->response_body->length; -- } -+ data->weather_update->http_status_code = soup_message_get_status(msg); -+ if (G_LIKELY(error == NULL)) { -+ body = g_bytes_get_data(response, &len); - doc = get_xml_document(body, len); - if (G_LIKELY(doc)) { - root_node = xmlDocGetRootElement(doc); -@@ -645,12 +661,13 @@ cb_weather_update(SoupSession *session, - } - xmlFreeDoc(doc); - } -+ g_bytes_unref(response); - if (parsing_error) - g_warning("Error parsing weather data!"); -- } else -- weather_debug -- ("Download of weather data failed with HTTP Status Code %d, " -- "Reason phrase: %s", msg->status_code, msg->reason_phrase); -+ } else { -+ weather_debug("Download of weather data failed: %s", error->message); -+ g_error_free(error); -+ } - data->weather_update->next = calc_next_download_time(data->weather_update, - now_t); - -@@ -1708,32 +1725,6 @@ mi_click(GtkWidget *widget, - update_weatherdata_with_reset(data); - } - --static void --proxy_auth(SoupSession *session, -- SoupMessage *msg, -- SoupAuth *auth, -- gboolean retrying, -- gpointer user_data) --{ -- SoupURI *soup_proxy_uri; -- const gchar *proxy_uri; -- -- if (!retrying) { -- if (msg->status_code == SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED) { -- proxy_uri = g_getenv("HTTP_PROXY"); -- if (!proxy_uri) -- proxy_uri = g_getenv("http_proxy"); -- if (proxy_uri) { -- soup_proxy_uri = soup_uri_new(proxy_uri); -- soup_auth_authenticate(auth, -- soup_uri_get_user(soup_proxy_uri), -- soup_uri_get_password(soup_proxy_uri)); -- soup_uri_free(soup_proxy_uri); -- } -- } -- } --} -- - - #ifdef HAVE_UPOWER_GLIB - static void -@@ -2037,9 +2028,10 @@ static plugin_data * - xfceweather_create_control(XfcePanelPlugin *plugin) - { - plugin_data *data = g_slice_new0(plugin_data); -- SoupURI *soup_proxy_uri; -+ GProxyResolver *proxy_resolver; - const gchar *proxy_uri; -- const gchar *proxy_user; -+ const gchar *no_proxy; -+ gchar **no_proxy_lst = NULL; - GtkWidget *refresh; - cairo_surface_t *icon = NULL; - data_types lbl; -@@ -2077,29 +2069,26 @@ xfceweather_create_control(XfcePanelPlugin *plugin) - - /* Setup session for HTTP connections */ - data->session = soup_session_new(); -- g_object_set(data->session, SOUP_SESSION_USER_AGENT, -- PACKAGE_NAME "-" PACKAGE_VERSION, NULL); -- g_object_set(data->session, SOUP_SESSION_TIMEOUT, -- CONN_TIMEOUT, NULL); -+ soup_session_set_user_agent(data->session, -+ PACKAGE_NAME "-" PACKAGE_VERSION); -+ soup_session_set_timeout(data->session, CONN_TIMEOUT); - - /* Set the proxy URI from environment */ - proxy_uri = g_getenv("HTTP_PROXY"); - if (!proxy_uri) - proxy_uri = g_getenv("http_proxy"); - if (proxy_uri) { -- soup_proxy_uri = soup_uri_new(proxy_uri); -- g_object_set(data->session, SOUP_SESSION_PROXY_URI, -- soup_proxy_uri, NULL); -- -- /* check if uri contains authentication info */ -- proxy_user = soup_uri_get_user(soup_proxy_uri); -- if (proxy_user && strlen(proxy_user) > 0) { -- g_signal_connect(G_OBJECT(data->session), "authenticate", -- G_CALLBACK(proxy_auth), NULL); -- } -- -- soup_uri_free(soup_proxy_uri); -- } -+ no_proxy = g_getenv("no_proxy"); -+ if (!no_proxy) -+ no_proxy = g_getenv("NO_PROXY"); -+ if (no_proxy) -+ no_proxy_lst = g_strsplit(no_proxy, ",", -1); -+ proxy_resolver = g_simple_proxy_resolver_new(proxy_uri, no_proxy_lst); -+ g_strfreev(no_proxy_lst); -+ soup_session_set_proxy_resolver(data->session, proxy_resolver); -+ g_object_unref(proxy_resolver); -+ } -+ /* Otherwise, g_proxy_resolver_get_default() will be used */ - - data->scrollbox = gtk_scrollbox_new(); - -diff --git a/panel-plugin/weather.h b/panel-plugin/weather.h -index 208de09..01974ce 100644 ---- a/panel-plugin/weather.h -+++ b/panel-plugin/weather.h -@@ -183,7 +183,7 @@ extern gboolean debug_mode; - - void weather_http_queue_request(SoupSession *session, - const gchar *uri, -- SoupSessionCallback callback_func, -+ GAsyncReadyCallback callback_func, - gpointer user_data); - - void scrollbox_set_visible(plugin_data *data); --- -2.47.1.613.gc27f4b7a9fc45 - diff --git a/srcpkgs/xfce4-weather-plugin/template b/srcpkgs/xfce4-weather-plugin/template index dfa939a83ec5ae..3c843349986784 100644 --- a/srcpkgs/xfce4-weather-plugin/template +++ b/srcpkgs/xfce4-weather-plugin/template @@ -1,20 +1,16 @@ # Template file for 'xfce4-weather-plugin' pkgname=xfce4-weather-plugin -version=0.11.3 +version=0.12.0 revision=1 -build_style=gnu-configure -hostmakedepends="pkg-config gettext xfce4-dev-tools automake libtool" -makedepends="libxfce4ui-devel xfce4-panel-devel libxml2-devel libsoup3-devel +build_style=meson +hostmakedepends="pkg-config gettext xfce4-dev-tools" +makedepends="glib-devel gtk+-devel libxfce4ui-devel xfce4-panel-devel libxml2-devel libsoup3-devel json-c-devel upower-devel" depends="hicolor-icon-theme" short_desc="XFCE panel plugin to show temperature and weather" maintainer="Orphaned " license="GPL-2.0-or-later" homepage="https://goodies.xfce.org/projects/panel-plugins/xfce4-weather-plugin" -distfiles="https://archive.xfce.org/src/panel-plugins/${pkgname}/${version%.*}/${pkgname}-${version}.tar.bz2" -checksum=002d1fe63906d2f3a012f3cb58cceff1dfbcc466759e36c76d3b03dd01c0dc57 +distfiles="https://archive.xfce.org/src/panel-plugins/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz" +checksum=5dd90b032c06ef4b64b818023154ef9463a2c694a0290e57f3412296c7545ff6 lib32disabled=yes - -pre_configure() { - autoreconf -f -} diff --git a/srcpkgs/xfce4-whiskermenu-plugin/template b/srcpkgs/xfce4-whiskermenu-plugin/template index c3977b0ef0ba5b..0166253742cd16 100644 --- a/srcpkgs/xfce4-whiskermenu-plugin/template +++ b/srcpkgs/xfce4-whiskermenu-plugin/template @@ -1,6 +1,6 @@ # Template file for 'xfce4-whiskermenu-plugin' pkgname=xfce4-whiskermenu-plugin -version=2.10.0 +version=2.10.1 revision=1 build_style=cmake hostmakedepends="gettext pkg-config" @@ -12,4 +12,4 @@ license="GPL-2.0-or-later" homepage="https://gitlab.xfce.org/panel-plugins/xfce4-whiskermenu-plugin" changelog="https://gitlab.xfce.org/panel-plugins/xfce4-whiskermenu-plugin/-/raw/main/NEWS" distfiles="https://archive.xfce.org/src/panel-plugins/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz" -checksum=c2efb3782816d44d421dcbee2900b9513bdb2469b695b776641f495601f33a10 +checksum=8b5a777a5d9df1f1c39b109ba8b2d045cb2cc02c41a9a297aa00dcb2a4520530