Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package foot for openSUSE:Factory checked in 
at 2025-01-05 15:29:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/foot (Old)
 and      /work/SRC/openSUSE:Factory/.foot.new.1881 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "foot"

Sun Jan  5 15:29:48 2025 rev:38 rq:1234700 version:1.20.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/foot/foot.changes        2025-01-01 
23:09:09.351535137 +0100
+++ /work/SRC/openSUSE:Factory/.foot.new.1881/foot.changes      2025-01-05 
15:29:54.766446521 +0100
@@ -1,0 +2,11 @@
+Fri Jan  3 08:58:48 UTC 2025 - Arnav Singh <opens...@arnavion.dev>
+
+- Update to v1.20.1:
+  * foot.ini options:
+    * colors.flash-alpha can no longer be set to 1.0 (fully opaque).
+  * App ID set using OSC 176 is now limited to 2048 characters.
+  * Fixed a crash from printing certain Unicode characters.
+  * Added new themes: iterm.
+  * See https://codeberg.org/dnkl/foot/releases/tag/1.20.1 for more details.
+
+-------------------------------------------------------------------

Old:
----
  foot-1.20.0.tar.gz
  foot-1.20.0.tar.gz.sig

New:
----
  foot-1.20.1.tar.gz
  foot-1.20.1.tar.gz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ foot.spec ++++++
--- /var/tmp/diff_new_pack.eM8wGd/_old  2025-01-05 15:29:55.290468074 +0100
+++ /var/tmp/diff_new_pack.eM8wGd/_new  2025-01-05 15:29:55.290468074 +0100
@@ -20,7 +20,7 @@
 %define _distconfdir %{_sysconfdir}
 %endif
 Name:           foot
-Version:        1.20.0
+Version:        1.20.1
 Release:        0
 Summary:        A Wayland terminal emulator
 License:        MIT

++++++ foot-1.20.0.tar.gz -> foot-1.20.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/CHANGELOG.md new/foot-1.20.1/CHANGELOG.md
--- old/foot-1.20.0/CHANGELOG.md        2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/CHANGELOG.md        2025-01-03 08:01:35.000000000 +0100
@@ -1,5 +1,6 @@
 # Changelog
 
+* [1.20.1](#1-20-1)
 * [1.20.0](#1-20-0)
 * [1.19.0](#1-19-0)
 * [1.18.1](#1-18-1)
@@ -55,6 +56,27 @@
 * [1.2.0](#1-2-0)
 
 
+## 1.20.1
+
+### Changed
+
+* Runtime changes to the app-id (OSC-176) now limits the app-id string
+  to 2048 characters ([#1897][1897]).
+* `colors.flash-alpha` can no longer be set to 1.0 (i.e. fully
+  opaque). This fixes an issue where the window would be stuck in the
+  flash state.
+
+[1897]: https://codeberg.org/dnkl/foot/issues/1897
+
+
+### Fixed
+
+* Regression: trying to print a Unicode _"Legacy Computing symbol"_,
+  in the range U+1FB00 - U+1FB9B would crash foot ([#][]).
+
+[1901]: https://codeberg.org/dnkl/foot/issues/1901
+
+
 ## 1.20.0
 
 ### Added
@@ -69,6 +91,8 @@
   host clipboard access via the OSC-52 escape sequence
   ([#1867][1867]).
 
+[1867]: https://codeberg.org/dnkl/foot/issues/1867
+
 
 ### Changed
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/config.c new/foot-1.20.1/config.c
--- old/foot-1.20.0/config.c    2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/config.c    2025-01-03 08:01:35.000000000 +0100
@@ -1445,8 +1445,8 @@
         if (!value_to_float(ctx, &alpha))
             return false;
 
-        if (alpha < 0. || alpha > 1.) {
-            LOG_CONTEXTUAL_ERR("not in range 0.0-1.0");
+        if (alpha < 0. || alpha >= 1.) {
+            LOG_CONTEXTUAL_ERR("not in range 0.0-0.999");
             return false;
         }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/meson.build new/foot-1.20.1/meson.build
--- old/foot-1.20.0/meson.build 2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/meson.build 2025-01-03 08:01:35.000000000 +0100
@@ -1,5 +1,5 @@
 project('foot', 'c',
-        version: '1.20.0',
+        version: '1.20.1',
         license: 'MIT',
         meson_version: '>=0.59.0',
         default_options: [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/notify.c new/foot-1.20.1/notify.c
--- old/foot-1.20.0/notify.c    2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/notify.c    2025-01-03 08:01:35.000000000 +0100
@@ -10,7 +10,7 @@
 #include <fcntl.h>
 
 #define LOG_MODULE "notify"
-#define LOG_ENABLE_DBG 1
+#define LOG_ENABLE_DBG 0
 #include "log.h"
 #include "config.h"
 #include "spawn.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/osc.c new/foot-1.20.1/osc.c
--- old/foot-1.20.0/osc.c       2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/osc.c       2025-01-03 08:01:35.000000000 +0100
@@ -8,7 +8,7 @@
 #include <sys/epoll.h>
 
 #define LOG_MODULE "osc"
-#define LOG_ENABLE_DBG 1
+#define LOG_ENABLE_DBG 0
 #include "log.h"
 #include "base64.h"
 #include "config.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/render.c new/foot-1.20.1/render.c
--- old/foot-1.20.0/render.c    2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/render.c    2025-01-03 08:01:35.000000000 +0100
@@ -817,14 +817,14 @@
             size_t count;
             size_t idx;
 
-            if (base >= GLYPH_OCTANTS_FIRST) {
-                arr = &term->custom_glyphs.octants;
-                count = GLYPH_OCTANTS_COUNT;
-                idx = base - GLYPH_OCTANTS_FIRST;
-            } else if (base >= GLYPH_LEGACY_FIRST) {
+            if (base >= GLYPH_LEGACY_FIRST) {
                 arr = &term->custom_glyphs.legacy;
                 count = GLYPH_LEGACY_COUNT;
                 idx = base - GLYPH_LEGACY_FIRST;
+            } else if (base >= GLYPH_OCTANTS_FIRST) {
+                arr = &term->custom_glyphs.octants;
+                count = GLYPH_OCTANTS_COUNT;
+                idx = base - GLYPH_OCTANTS_FIRST;
             } else if (base >= GLYPH_BRAILLE_FIRST) {
                 arr = &term->custom_glyphs.braille;
                 count = GLYPH_BRAILLE_COUNT;
@@ -1898,6 +1898,27 @@
         break;
 
     case OVERLAY_FLASH:
+        /*
+         * A compositor will not send a frame callback for our main
+         * window if it is fully occluded (for example, by a fully
+         * opaque overlay...). This causes the overlay to stuck.
+         *
+         * For regular buffers, it _should_ be enough to *not* hint
+         * the compositor it's opaque. But at least some compositor
+         * special cases single-pixel buffers, and actually look at
+         * their pixel value.
+         *
+         * Thus, we have two options: implement frame callback
+         * handling for the overlay sub-surface, or ensure we don't
+         * use a fully opaque surface. Since no overlays are fully
+         * opaque by default, and the flash surface is the only one
+         * that can be configured to be opaque (colors.flash-alpha),
+         * and since adding frame callback handling adds a lot of
+         * boilerplate code... let's go with the simpler solution of
+         * not allowing colors.flash-alpha to be 1.0.
+         */
+        xassert(term->conf->colors.flash_alpha != 0xffff);
+
         color = color_hex_to_pixman_with_alpha(
                 term->conf->colors.flash,
                 term->conf->colors.flash_alpha);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/terminal.c new/foot-1.20.1/terminal.c
--- old/foot-1.20.0/terminal.c  2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/terminal.c  2025-01-03 08:01:35.000000000 +0100
@@ -3588,8 +3588,10 @@
 {
     if (app_id != NULL && *app_id == '\0')
         app_id = NULL;
+
     if (term->app_id == NULL && app_id == NULL)
         return;
+
     if (term->app_id != NULL && app_id != NULL && streq(term->app_id, app_id))
         return;
 
@@ -3604,6 +3606,19 @@
     } else {
         term->app_id = NULL;
     }
+
+    const size_t length = strlen(app_id);
+    if (length > 2048) {
+        /*
+         * Not sure if there's a limit in the protocol, or the
+         * libwayland implementation, or e.g. wlroots, but too long
+         * app-id's (not e.g. title) causes at least river and sway to
+         * peg the CPU at 100%, and stop sending e.g. frame callbacks.
+         *
+         */
+        term->app_id[2048] = '\0';
+    }
+
     render_refresh_app_id(term);
     render_refresh_icon(term);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/terminal.h new/foot-1.20.1/terminal.h
--- old/foot-1.20.0/terminal.h  2025-01-01 09:21:51.000000000 +0100
+++ new/foot-1.20.1/terminal.h  2025-01-03 08:01:35.000000000 +0100
@@ -482,8 +482,8 @@
     struct {
         struct fcft_glyph **box_drawing;
         struct fcft_glyph **braille;
-        struct fcft_glyph **legacy;
         struct fcft_glyph **octants;
+        struct fcft_glyph **legacy;
 
         #define GLYPH_BOX_DRAWING_FIRST 0x2500
         #define GLYPH_BOX_DRAWING_LAST  0x259F
@@ -495,15 +495,15 @@
         #define GLYPH_BRAILLE_COUNT \
             (GLYPH_BRAILLE_LAST - GLYPH_BRAILLE_FIRST + 1)
 
-        #define GLYPH_LEGACY_FIRST 0x1FB00
-        #define GLYPH_LEGACY_LAST  0x1FB9B
-        #define GLYPH_LEGACY_COUNT \
-            (GLYPH_LEGACY_LAST - GLYPH_LEGACY_FIRST + 1)
-
         #define GLYPH_OCTANTS_FIRST 0x1CD00
         #define GLYPH_OCTANTS_LAST  0x1CDE5
         #define GLYPH_OCTANTS_COUNT \
             (GLYPH_OCTANTS_LAST - GLYPH_OCTANTS_FIRST + 1)
+
+        #define GLYPH_LEGACY_FIRST 0x1FB00
+        #define GLYPH_LEGACY_LAST  0x1FB9B
+        #define GLYPH_LEGACY_COUNT \
+            (GLYPH_LEGACY_LAST - GLYPH_LEGACY_FIRST + 1)
     } custom_glyphs;
 
     bool is_sending_paste_data;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/foot-1.20.0/themes/iterm new/foot-1.20.1/themes/iterm
--- old/foot-1.20.0/themes/iterm        1970-01-01 01:00:00.000000000 +0100
+++ new/foot-1.20.1/themes/iterm        2025-01-03 08:01:35.000000000 +0100
@@ -0,0 +1,27 @@
+# -*- conf -*-
+# this foot theme is based on alacritty iterm theme:
+# https://github.com/alacritty/alacritty-theme/blob/master/themes/iterm.toml
+
+[colors]
+foreground=fffbf6
+background=101421
+
+## Normal/regular colors (color palette 0-7)
+regular0=2e2e2e  # black
+regular1=eb4129  # red
+regular2=abe047  # green
+regular3=f6c744  # yellow
+regular4=47a0f3  # blue
+regular5=7b5cb0  # magenta
+regular6=64dbed  # cyan
+regular7=e5e9f0  # white
+
+## Bright colors (color palette 8-15)
+bright0=565656   # bright black
+bright1=ec5357   # bright red
+bright2=c0e17d   # bright green
+bright3=f9da6a   # bright yellow
+bright4=49a4f8   # bright blue
+bright5=a47de9   # bright magenta
+bright6=99faf2   # bright cyan
+bright7=ffffff   # bright white

Reply via email to