Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package jgmenu for openSUSE:Factory checked in at 2026-11-09 16:07:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/jgmenu (Old) and /work/SRC/openSUSE:Factory/.jgmenu.new.3759290 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "jgmenu" Mon Nov 9 16:07:39 2026 rev:24 rq:1396291 version:4.7.1 Changes: -------- --- /work/SRC/openSUSE:Factory/jgmenu/jgmenu.changes 2026-09-17 15:19:48.470957524 +0200 +++ /work/SRC/openSUSE:Factory/.jgmenu.new.3759290/jgmenu.changes 2026-11-09 16:08:46.034179457 +0100 @@ -1,0 +2,7 @@ +Mon Nov 9 09:42:52 UTC 2026 - Michael Vetter <[email protected]> + +- Update to 4.7.1: + * jgmenu-apps: use locale aware sorting for applications and categories #275 #278 + * contrib/jgmenu-lx: fix build error relating to recent refactoring #273 + +------------------------------------------------------------------- Old: ---- v4.7.0.tar.gz New: ---- v4.7.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ jgmenu.spec ++++++ --- /var/tmp/diff_new_pack.diuJUl/_old 2026-11-09 16:08:46.722208278 +0100 +++ /var/tmp/diff_new_pack.diuJUl/_new 2026-11-09 16:08:46.724208362 +0100 @@ -17,7 +17,7 @@ Name: jgmenu -Version: 4.7.0 +Version: 4.7.1 Release: 0 Summary: Small X11 menu intended to be used with openbox and tint2 License: GPL-2.0-only ++++++ v4.7.0.tar.gz -> v4.7.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/NEWS.md new/jgmenu-4.7.1/NEWS.md --- old/jgmenu-4.7.0/NEWS.md 2026-09-15 21:09:14.000000000 +0200 +++ new/jgmenu-4.7.1/NEWS.md 2026-11-07 15:09:41.000000000 +0100 @@ -8,13 +8,7 @@ | Date | Release Notes | |------------|-----------------------------------| +| 2026-10-07 | [v4.7.1](docs/relnotes/4.7.1.txt) | | 2026-09-15 | [v4.7.0](docs/relnotes/4.7.0.txt) | | 2026-08-07 | [v4.6.0](docs/relnotes/4.6.0.txt) | -| 2024-12-06 | [v4.5.0](docs/relnotes/4.5.0.txt) | -| 2022-10-30 | [v4.4.1](docs/relnotes/4.4.1.txt) | -| 2021-09-16 | [v4.4.0](docs/relnotes/4.4.0.txt) | -| 2021-01-02 | [v4.3.0](docs/relnotes/4.3.0.txt) | -| 2020-05-19 | [v4.2.1](docs/relnotes/4.2.1.txt) | -| 2020-05-06 | [v4.2.0](docs/relnotes/4.2.0.txt) | -| 2020-03-02 | [v4.1.0](docs/relnotes/4.1.0.txt) | diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/contrib/lx/jgmenu-lx.c new/jgmenu-4.7.1/contrib/lx/jgmenu-lx.c --- old/jgmenu-4.7.0/contrib/lx/jgmenu-lx.c 2026-09-15 21:09:14.000000000 +0200 +++ new/jgmenu-4.7.1/contrib/lx/jgmenu-lx.c 2026-11-07 15:09:41.000000000 +0100 @@ -96,13 +96,13 @@ } } -static void strip_exec_field_codes(char **exec) +static void strip_exec_field_codes(char *exec) { char *p; - if (!**exec || !*exec) + if (!*exec || !exec) return; - for (p = *exec; *p; p++) { + for (p = exec; *p; p++) { if (*p == '%') { *p = ' '; ++p; @@ -154,7 +154,7 @@ if (strchr(exec.buf, ',')) sbuf_addstr(&cur->buf, "\"\"\""); ugly_hack(&exec); - strip_exec_field_codes(&exec.buf); + strip_exec_field_codes(exec.buf); sbuf_addstr(&cur->buf, exec.buf); if (strchr(exec.buf, ',')) sbuf_addstr(&cur->buf, " \"\"\""); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/docs/relnotes/4.7.1.txt new/jgmenu-4.7.1/docs/relnotes/4.7.1.txt --- old/jgmenu-4.7.0/docs/relnotes/4.7.1.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/jgmenu-4.7.1/docs/relnotes/4.7.1.txt 2026-11-07 15:09:41.000000000 +0100 @@ -0,0 +1,8 @@ +jgmenu v4.7.1 + +### Fixed + +- jgmenu-apps: use locale aware sorting for applications and categories + @City-busz [#275] [#278] +- contrib/jgmenu-lx: fix build error relating to recent refactoring + @johanmalm [#273] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/scripts/version-gen.sh new/jgmenu-4.7.1/scripts/version-gen.sh --- old/jgmenu-4.7.0/scripts/version-gen.sh 2026-09-15 21:09:14.000000000 +0200 +++ new/jgmenu-4.7.1/scripts/version-gen.sh 2026-11-07 15:09:41.000000000 +0100 @@ -8,7 +8,7 @@ # Change "default_version" before doing a `git tag -a ...` # -default_version="4.7.0" +default_version="4.7.1" v=$(git describe --dirty --abbrev=1 2>/dev/null) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/src/desktop.c new/jgmenu-4.7.1/src/desktop.c --- old/jgmenu-4.7.0/src/desktop.c 2026-09-15 21:09:14.000000000 +0200 +++ new/jgmenu-4.7.1/src/desktop.c 2026-11-07 15:09:41.000000000 +0100 @@ -247,7 +247,7 @@ bb_name = bb->name_localized[0] != '\0' ? bb->name_localized : bb->name; aa_name = g_utf8_casefold(aa_name, -1); bb_name = g_utf8_casefold(bb_name, -1); - ret = strcmp(aa_name, bb_name); + ret = g_utf8_collate(aa_name, bb_name); xfree(aa_name); xfree(bb_name); return ret; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/src/dirs.c new/jgmenu-4.7.1/src/dirs.c --- old/jgmenu-4.7.0/src/dirs.c 2026-09-15 21:09:14.000000000 +0200 +++ new/jgmenu-4.7.1/src/dirs.c 2026-11-07 15:09:41.000000000 +0100 @@ -9,6 +9,7 @@ #include <string.h> #include <dirent.h> #include <stdbool.h> +#include <glib.h> #include "dirs.h" #include "xdgdirs.h" @@ -104,6 +105,29 @@ schema_builtin[i].value); } +static bool not_empty(const char *s) +{ + return s && *s; +} + +static int compare_dir_name(const void *a, const void *b) +{ + const struct dir *aa = (struct dir *)a; + const struct dir *bb = (struct dir *)b; + const char *aa_name, *bb_name; + int ret; + + BUG_ON(!aa->name || !bb->name); + aa_name = not_empty(aa->name_localized) ? aa->name_localized : aa->name; + bb_name = not_empty(bb->name_localized) ? bb->name_localized : bb->name; + aa_name = g_utf8_casefold(aa_name, -1); + bb_name = g_utf8_casefold(bb_name, -1); + ret = g_utf8_collate(aa_name, bb_name); + xfree(aa_name); + xfree(bb_name); + return ret; +} + void dirs_read_schema(struct dir **vector) { struct list_head xdg_config_dirs; @@ -134,5 +158,6 @@ /* NULL terminate vector *dirs */ add_dir(); + qsort(dirs, nr_dirs - 1, sizeof(struct dir), compare_dir_name); *vector = dirs; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/src/jgmenu-apps.c new/jgmenu-4.7.1/src/jgmenu-apps.c --- old/jgmenu-4.7.0/src/jgmenu-apps.c 2026-09-15 21:09:14.000000000 +0200 +++ new/jgmenu-4.7.1/src/jgmenu-apps.c 2026-11-07 15:09:41.000000000 +0100 @@ -5,6 +5,7 @@ */ #include <getopt.h> +#include <locale.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -247,6 +248,9 @@ struct dir *dirs; int c; + if (!setlocale(LC_ALL, "")) + warn("setlocale(): locale not supported by C library; using 'C' locale"); + while (1) { int index = 0; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jgmenu-4.7.0/tests/helper/Makefile new/jgmenu-4.7.1/tests/helper/Makefile --- old/jgmenu-4.7.0/tests/helper/Makefile 2026-09-15 21:09:14.000000000 +0200 +++ new/jgmenu-4.7.1/tests/helper/Makefile 2026-11-07 15:09:41.000000000 +0100 @@ -31,7 +31,7 @@ $(CC) $(CFLAGS) -o $@ $^ -I$(src) $(LDFLAGS) `pkg-config cairo --cflags --libs` test-dirs: test-dirs.c $(src)dirs.c $(src)xdgdirs.c $(src)argv-buf.c $(src)compat.c $(src)lang.c $(util) - $(CC) $(CFLAGS) -o $@ $^ -I$(src) $(LDFLAGS) + $(CC) $(CFLAGS) -o $@ $^ -I$(src) $(LDFLAGS) `pkg-config glib-2.0 --cflags --libs` test-xdgdirs: test-xdgdirs.c $(src)xdgdirs.c $(src)argv-buf.c $(util) $(CC) $(CFLAGS) -o $@ $^ -I$(src) $(LDFLAGS)
