From 8afa17fa8702ae5d1ec1e83c126b1d97ee8cf1aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sat, 19 Dec 2020 12:25:18 +0100 Subject: [PATCH 01/15] =?UTF-8?q?changelog:=20add=20new=20=E2=80=98unrelea?= =?UTF-8?q?sed=E2=80=99=20section?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cf0b774..c946292 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,20 @@ # Changelog +* [Unreleased](#Unreleased) * [1.6.0](#1-6-0) * [1.5.0](#1-5-0) +## Unreleased + +### Added +### Changed +### Deprecated +### Removed +### Fixed +### Security + + ## 1.6.0 ### Added From 492efdd10eafab85d5518a26f4bb4d62abb28cfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sun, 20 Dec 2020 12:48:06 +0100 Subject: [PATCH 02/15] config: fix rounding error when calculating background color with alpha MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We use pre-multiplied alpha color channels, but were having bad rounding errors due to the alpha divider being truncated to an integer. The algorithm for pre-multiplying a color channel is: alpha_divider = 0xffff / alpha pre_mult_color = color / alpha_divider In order to fix the rounding errors, we could turn ‘alpha_divider’ into a double. That however would introduce a performance penalty since now we’d need to do floating point math for each cell. The algorithm can be trivially converted to: pre_mult_color = color * alpha / 0xffff Since both color and alpa values are < 65536, the multiplication is “safe”; it will not overflow an uint32_t. --- config.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/config.c b/config.c index 743a1a3..989bc2e 100644 --- a/config.c +++ b/config.c @@ -53,16 +53,12 @@ conf_to_color(const struct yml_node *node) uint16_t blue = hex_byte(&hex[4]); uint16_t alpha = hex_byte(&hex[6]); - if (alpha == 0) - return (pixman_color_t){0, 0, 0, 0}; - alpha |= alpha << 8; - int alpha_div = 0xffff / alpha; return (pixman_color_t){ - .red = (red << 8 | red) / alpha_div, - .green = (green << 8 | green) / alpha_div, - .blue = (blue << 8 | blue) / alpha_div, + .red = (red << 8 | red) * alpha / 0xffff, + .green = (green << 8 | green) * alpha / 0xffff, + .blue = (blue << 8 | blue) * alpha / 0xffff, .alpha = alpha, }; } From 536f9d22ec20dfb87bbeb4f5582157ed67a147a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Fri, 25 Dec 2020 12:31:20 +0100 Subject: [PATCH 03/15] codespell: spelling fixes --- tag.c | 2 +- yml.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tag.c b/tag.c index 52750fe..02e0794 100644 --- a/tag.c +++ b/tag.c @@ -454,7 +454,7 @@ tags_expand_template(const char *template, const struct tag_set *tags) continue; } - /* Copy characters preceeding the tag (name) */ + /* Copy characters preceding the tag (name) */ sbuf_append_at_most(&formatted, template, begin - template); /* Parse arguments */ diff --git a/yml.c b/yml.c index 40ece40..bdf474a 100644 --- a/yml.c +++ b/yml.c @@ -228,7 +228,7 @@ post_process(struct yml_node *node) tll_push_back(node->dict.pairs, p); } - /* Destroy lits, but don't free (since its nodes + /* Destroy list, but don't free (since its nodes * have been moved to this node), *before* * destroying the key/value nodes. This ensures * the dict nodes aren't free:d in the From 5b13b5315fee94b8536ef6a4419b68226fbe3866 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sat, 26 Dec 2020 13:01:21 +0100 Subject: [PATCH 04/15] doc: codespell fixes --- doc/yambar-modules.5.scd | 6 +++--- doc/yambar-particles.5.scd | 2 +- doc/yambar-tags.5.scd | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/yambar-modules.5.scd b/doc/yambar-modules.5.scd index 5bc15e1..14aed8f 100644 --- a/doc/yambar-modules.5.scd +++ b/doc/yambar-modules.5.scd @@ -539,7 +539,7 @@ address. | state : string : One of *unknown*, *not present*, *down*, *lower layers down*, - *testing*, *dormant* or *up*. You are probably interrested in *down* and *up*. + *testing*, *dormant* or *up*. You are probably interested in *down* and *up*. | mac : string : MAC address @@ -659,7 +659,7 @@ about the river tags. It has an interface similar to the i3/sway module. -The configuration for the river module speficies one _title_ particle, +The configuration for the river module specifies one _title_ particle, which will be instantiated with tags representing the currently active seat and the currently focused view's title. @@ -838,7 +838,7 @@ instantiated from this template, and represents an input device. :[ *Description* | id : string -: Input device indentifier +: Input device identifier | layout : string : The input device's currently active XKB layout diff --git a/doc/yambar-particles.5.scd b/doc/yambar-particles.5.scd index 6dbd6a1..08977c5 100644 --- a/doc/yambar-particles.5.scd +++ b/doc/yambar-particles.5.scd @@ -224,7 +224,7 @@ indicator. : list : yes : List of particles. Note that the tag value is *not* used as-is; its - minumum and maximum values are used to map the tag's range to the + minimum and maximum values are used to map the tag's range to the particle list's range. ## EXAMPLES diff --git a/doc/yambar-tags.5.scd b/doc/yambar-tags.5.scd index 32132cf..1e3c138 100644 --- a/doc/yambar-tags.5.scd +++ b/doc/yambar-tags.5.scd @@ -26,7 +26,7 @@ The available tag *types* are: : Value is an integer, with a minimum and maximum value associated with it. By default, the _string_ particle renders the value. The *:min* or *:max* suffixes may be added to instead render the - mininum or maximum value (_\"{tag_name:min}\"_). + minimum or maximum value (_\"{tag_name:min}\"_). | realtime : Value is an integer that changes in a predictable manner (in "realtime"). This allows the particle to update itself From 47c42b507f06e87f87e77d6346191a2f5ae185f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sat, 2 Jan 2021 12:53:24 +0100 Subject: [PATCH 05/15] config: fix asan signed integer overflow warning --- config.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/config.c b/config.c index 989bc2e..aaa62f9 100644 --- a/config.c +++ b/config.c @@ -56,9 +56,9 @@ conf_to_color(const struct yml_node *node) alpha |= alpha << 8; return (pixman_color_t){ - .red = (red << 8 | red) * alpha / 0xffff, - .green = (green << 8 | green) * alpha / 0xffff, - .blue = (blue << 8 | blue) * alpha / 0xffff, + .red = (uint32_t)(red << 8 | red) * alpha / 0xffff, + .green = (uint32_t)(green << 8 | green) * alpha / 0xffff, + .blue = (uint32_t)(blue << 8 | blue) * alpha / 0xffff, .alpha = alpha, }; } From f88f7a5046e425ad7d8195d4975486d105bcac62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Mon, 4 Jan 2021 20:01:46 +0100 Subject: [PATCH 06/15] module/mpd: increase tag count in tag set MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://codeberg.org/dnkl/yambar/commit/96d2d057e0197914dde9f37f37726bedb6a8715f added a new tag, ‘volume’, but didn’t bump the tag count. This meant the last tag in the set, ‘elapsed’ was never seen by anybody, and not free:d when the tag set was free:d. --- modules/mpd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/mpd.c b/modules/mpd.c index ed80751..a501f76 100644 --- a/modules/mpd.c +++ b/modules/mpd.c @@ -173,7 +173,7 @@ content(struct module *mod) tag_new_int_realtime( mod, "elapsed", elapsed, 0, m->duration, realtime), }, - .count = 11, + .count = 12, }; mtx_unlock(&mod->lock); From 6cbf093af95d3f250d4334100387e8884c6a707b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Mon, 4 Jan 2021 20:16:30 +0100 Subject: [PATCH 07/15] module/i3: separate numerical workspace names from non-numerical When sorting workspaces in ascending order, put numerical workspaces *after* non-numerical ones. When sorting in descending order, put numerical workspaces *before* non-numerical. In both cases, sort numerical workspaces using a numerical comparison, rather that doing a lexicographical sorting. Closes #30 --- modules/i3.c | 59 ++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 50 insertions(+), 9 deletions(-) diff --git a/modules/i3.c b/modules/i3.c index c6975fb..e2f58de 100644 --- a/modules/i3.c +++ b/modules/i3.c @@ -30,6 +30,8 @@ struct ws_content { struct workspace { char *name; + int name_as_int; /* -1 is name is not a decimal number */ + char *output; bool visible; bool focused; @@ -78,8 +80,22 @@ workspace_from_json(const struct json_object *json, struct workspace *ws) json_object_object_get_ex(json, "focused", &focused); json_object_object_get_ex(json, "urgent", &urgent); + const char *name_as_string = json_object_get_string(name); + + int name_as_int = 0; + for (const char *p = name_as_string; *p != '\0'; p++) { + if (!(*p >= '0' && *p <= '9')) { + name_as_int = -1; + break; + } + + name_as_int *= 10; + name_as_int += *p - '0'; + } + *ws = (struct workspace) { - .name = strdup(json_object_get_string(name)), + .name = strdup(name_as_string), + .name_as_int = name_as_int, .output = strdup(json_object_get_string(output)), .visible = json_object_get_boolean(visible), .focused = json_object_get_boolean(focused), @@ -107,6 +123,7 @@ workspaces_free(struct private *m) tll_free(m->workspaces); } + static void workspace_add(struct private *m, struct workspace ws) { @@ -116,20 +133,44 @@ workspace_add(struct private *m, struct workspace ws) return; case SORT_ASCENDING: - tll_foreach(m->workspaces, it) { - if (strcoll(it->item.name, ws.name) > 0) { - tll_insert_before(m->workspaces, it, ws); - return; + if (ws.name_as_int >= 0) { + tll_foreach(m->workspaces, it) { + if (it->item.name_as_int < 0) + continue; + if (it->item.name_as_int > ws.name_as_int) { + tll_insert_before(m->workspaces, it, ws); + return; + } + } + } else { + tll_foreach(m->workspaces, it) { + if (strcoll(it->item.name, ws.name) > 0 || + it->item.name_as_int >= 0) + { + tll_insert_before(m->workspaces, it, ws); + return; + } } } tll_push_back(m->workspaces, ws); return; case SORT_DESCENDING: - tll_foreach(m->workspaces, it) { - if (strcoll(it->item.name, ws.name) < 0) { - tll_insert_before(m->workspaces, it, ws); - return; + if (ws.name_as_int >= 0) { + tll_foreach(m->workspaces, it) { + if (it->item.name_as_int < ws.name_as_int) { + tll_insert_before(m->workspaces, it, ws); + return; + } + } + } else { + tll_foreach(m->workspaces, it) { + if (it->item.name_as_int >= 0) + continue; + if (strcoll(it->item.name, ws.name) < 0) { + tll_insert_before(m->workspaces, it, ws); + return; + } } } tll_push_back(m->workspaces, ws); From 2f66ac75ba3c6902f910e6160629340482240a51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 14 Jan 2021 11:02:45 +0100 Subject: [PATCH 08/15] changelog: mention fix for mpd tags --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c946292..1b712c7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,10 @@ ### Deprecated ### Removed ### Fixed + +* mpd: `elapsed` tag not working (regression, introduced in 1.6.0). + + ### Security From 72660b3c014ff0790edaac18d35da5ab8821483a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 14 Jan 2021 11:04:13 +0100 Subject: [PATCH 09/15] changelog: mention fix for wrong background colors when not fully opaque --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1b712c7..09d9be9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ ### Fixed * mpd: `elapsed` tag not working (regression, introduced in 1.6.0). +* Wrong background color for (semi-) transparent backgrounds. ### Security From 972395bf2e20f356ffee2c3caa5e1f2fd97e4cdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 14 Jan 2021 11:06:33 +0100 Subject: [PATCH 10/15] changelog: i3: numerically names workspaces are sorted separately --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 09d9be9..1a88dd3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,12 @@ ### Added ### Changed + +* i3: workspaces with numerical names are sorted separately from + non-numerically named workspaces + (https://codeberg.org/dnkl/yambar/issues/30). + + ### Deprecated ### Removed ### Fixed From 8f3de369aca6b36eeef5f13bad0031f3f8f916a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sat, 2 Jan 2021 12:51:34 +0100 Subject: [PATCH 11/15] module/battery: re-open files on every update Closes #25 --- modules/battery.c | 67 ++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 27 deletions(-) diff --git a/modules/battery.c b/modules/battery.c index 99bad3c..b4da871 100644 --- a/modules/battery.c +++ b/modules/battery.c @@ -276,11 +276,29 @@ err: } static void -update_status(struct module *mod, int capacity_fd, int energy_fd, int power_fd, - int charge_fd, int current_fd, int status_fd, int time_to_empty_fd) +update_status(struct module *mod, int base_dir_fd) { struct private *m = mod->private; + int status_fd = openat(base_dir_fd, "status", O_RDONLY); + if (status_fd < 0) { + LOG_ERRNO("status: failed to open"); + return; + } + + int capacity_fd = openat(base_dir_fd, "capacity", O_RDONLY); + if (capacity_fd < 0) { + LOG_ERRNO("capacity: failed to open"); + close(status_fd); + return; + } + + int energy_fd = openat(base_dir_fd, "energy_now", O_RDONLY); + int power_fd = openat(base_dir_fd, "power_now", O_RDONLY); + int charge_fd = openat(base_dir_fd, "charge_now", O_RDONLY); + int current_fd = openat(base_dir_fd, "current_now", O_RDONLY); + int time_to_empty_fd = openat(base_dir_fd, "time_to_empty_now", O_RDONLY); + long capacity = readint_from_fd(capacity_fd); long energy = energy_fd >= 0 ? readint_from_fd(energy_fd) : -1; long power = power_fd >= 0 ? readint_from_fd(power_fd) : -1; @@ -289,6 +307,22 @@ update_status(struct module *mod, int capacity_fd, int energy_fd, int power_fd, long time_to_empty = time_to_empty_fd >= 0 ? readint_from_fd(time_to_empty_fd) : -1; const char *status = readline_from_fd(status_fd); + + if (status_fd >= 0) + close(status_fd); + if (capacity_fd >= 0) + close(capacity_fd); + if (energy_fd >= 0) + close(energy_fd); + if (power_fd >= 0) + close(power_fd); + if (charge_fd >= 0) + close(charge_fd); + if (current_fd >= 0) + close(current_fd); + if (time_to_empty_fd >= 0) + close(time_to_empty_fd); + enum state state; if (status == NULL) { @@ -322,6 +356,7 @@ update_status(struct module *mod, int capacity_fd, int energy_fd, int power_fd, m->current = current; m->time_to_empty = time_to_empty; mtx_unlock(&mod->lock); + } static int @@ -343,26 +378,17 @@ run(struct module *mod) : 0.0)); int ret = 1; - int status_fd = openat(base_dir_fd, "status", O_RDONLY); - int capacity_fd = openat(base_dir_fd, "capacity", O_RDONLY); - int energy_fd = openat(base_dir_fd, "energy_now", O_RDONLY); - int power_fd = openat(base_dir_fd, "power_now", O_RDONLY); - int charge_fd = openat(base_dir_fd, "charge_now", O_RDONLY); - int current_fd = openat(base_dir_fd, "current_now", O_RDONLY); - int time_to_empty_fd = openat(base_dir_fd, "time_to_empty_now", O_RDONLY); struct udev *udev = udev_new(); struct udev_monitor *mon = udev_monitor_new_from_netlink(udev, "udev"); - if (status_fd < 0 || capacity_fd < 0 || udev == NULL || mon == NULL) + if (udev == NULL || mon == NULL) goto out; udev_monitor_filter_add_match_subsystem_devtype(mon, "power_supply", NULL); udev_monitor_enable_receiving(mon); - update_status( - mod, capacity_fd, energy_fd, power_fd, - charge_fd, current_fd, status_fd, time_to_empty_fd); + update_status(mod, base_dir_fd); bar->refresh(bar); while (true) { @@ -388,9 +414,7 @@ run(struct module *mod) continue; } - update_status( - mod, capacity_fd, energy_fd, power_fd, - charge_fd, current_fd, status_fd, time_to_empty_fd); + update_status(mod, base_dir_fd); bar->refresh(bar); } @@ -400,17 +424,6 @@ out: if (udev != NULL) udev_unref(udev); - if (power_fd != -1) - close(power_fd); - if (energy_fd != -1) - close(energy_fd); - if (capacity_fd != -1) - close(capacity_fd); - if (status_fd != -1) - close(status_fd); - if (time_to_empty_fd != -1) - close(time_to_empty_fd); - close(base_dir_fd); return ret; } From 524f93c997a6f733357c22c51893ddb5d8203f2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Mon, 4 Jan 2021 19:59:58 +0100 Subject: [PATCH 12/15] module/battery: re-open /sys/class/power_supply// every update --- modules/battery.c | 61 +++++++++++++++++++++++++++++++---------------- 1 file changed, 40 insertions(+), 21 deletions(-) diff --git a/modules/battery.c b/modules/battery.c index b4da871..7dcfc45 100644 --- a/modules/battery.c +++ b/modules/battery.c @@ -171,21 +171,21 @@ readint_from_fd(int fd) return ret; } -static int +static bool initialize(struct private *m) { int pw_fd = open("/sys/class/power_supply", O_RDONLY); - if (pw_fd == -1) { + if (pw_fd < 0) { LOG_ERRNO("/sys/class/power_supply"); - return -1; + return false; } int base_dir_fd = openat(pw_fd, m->battery, O_RDONLY); close(pw_fd); - if (base_dir_fd == -1) { - LOG_ERRNO("%s", m->battery); - return -1; + if (base_dir_fd < 0) { + LOG_ERRNO("/sys/class/power_supply/%s", m->battery); + return false; } { @@ -268,29 +268,46 @@ initialize(struct private *m) m->charge_full = m->charge_full_design = -1; } - return base_dir_fd; + close(base_dir_fd); + return true; err: close(base_dir_fd); - return -1; + return false; } -static void -update_status(struct module *mod, int base_dir_fd) +static bool +update_status(struct module *mod) { struct private *m = mod->private; + int pw_fd = open("/sys/class/power_supply", O_RDONLY); + if (pw_fd < 0) { + LOG_ERRNO("/sys/class/power_supply"); + return false; + } + + int base_dir_fd = openat(pw_fd, m->battery, O_RDONLY); + close(pw_fd); + + if (base_dir_fd < 0) { + LOG_ERRNO("/sys/class/power_supply/%s", m->battery); + return false; + } + int status_fd = openat(base_dir_fd, "status", O_RDONLY); if (status_fd < 0) { - LOG_ERRNO("status: failed to open"); - return; + LOG_ERRNO("/sys/class/power_supply/%s/status", m->battery); + close(base_dir_fd); + return false; } int capacity_fd = openat(base_dir_fd, "capacity", O_RDONLY); if (capacity_fd < 0) { - LOG_ERRNO("capacity: failed to open"); + LOG_ERRNO("/sys/class/power_supply/%s/capacity", m->battery); close(status_fd); - return; + close(base_dir_fd); + return false; } int energy_fd = openat(base_dir_fd, "energy_now", O_RDONLY); @@ -322,6 +339,8 @@ update_status(struct module *mod, int base_dir_fd) close(current_fd); if (time_to_empty_fd >= 0) close(time_to_empty_fd); + if (base_dir_fd >= 0) + close(base_dir_fd); enum state state; @@ -356,7 +375,7 @@ update_status(struct module *mod, int base_dir_fd) m->current = current; m->time_to_empty = time_to_empty; mtx_unlock(&mod->lock); - + return true; } static int @@ -365,8 +384,7 @@ run(struct module *mod) const struct bar *bar = mod->bar; struct private *m = mod->private; - int base_dir_fd = initialize(m); - if (base_dir_fd == -1) + if (!initialize(m)) return -1; LOG_INFO("%s: %s %s (at %.1f%% of original capacity)", @@ -388,7 +406,9 @@ run(struct module *mod) udev_monitor_filter_add_match_subsystem_devtype(mon, "power_supply", NULL); udev_monitor_enable_receiving(mon); - update_status(mod, base_dir_fd); + if (!update_status(mod)) + goto out; + bar->refresh(bar); while (true) { @@ -414,7 +434,8 @@ run(struct module *mod) continue; } - update_status(mod, base_dir_fd); + if (!update_status(mod)) + break; bar->refresh(bar); } @@ -423,8 +444,6 @@ out: udev_monitor_unref(mon); if (udev != NULL) udev_unref(udev); - - close(base_dir_fd); return ret; } From 90339a00a5f40a9070803197bfe4cdb4bf96ee6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 14 Jan 2021 11:09:50 +0100 Subject: [PATCH 13/15] changelog: battery stats no longer getting stuck --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a88dd3..7175cd3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,8 @@ * mpd: `elapsed` tag not working (regression, introduced in 1.6.0). * Wrong background color for (semi-) transparent backgrounds. +* battery: stats sometimes getting stuck at 0, or impossibly large + values (https://codeberg.org/dnkl/yambar/issues/25). ### Security From 686e57176efb0cec9ccc2510870d3edaf7b4ef47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 14 Jan 2021 11:12:56 +0100 Subject: [PATCH 14/15] changelog: prepare for 1.6.1 --- CHANGELOG.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7175cd3..c7d7c2d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,13 +1,12 @@ # Changelog -* [Unreleased](#Unreleased) +* [1.6.1](#1-6-1) * [1.6.0](#1-6-0) * [1.5.0](#1-5-0) -## Unreleased +## 1.6.1 -### Added ### Changed * i3: workspaces with numerical names are sorted separately from @@ -15,8 +14,6 @@ (https://codeberg.org/dnkl/yambar/issues/30). -### Deprecated -### Removed ### Fixed * mpd: `elapsed` tag not working (regression, introduced in 1.6.0). @@ -25,9 +22,6 @@ values (https://codeberg.org/dnkl/yambar/issues/25). -### Security - - ## 1.6.0 ### Added From 2563a233d787422750660c6ba36f807e35e12d60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 14 Jan 2021 11:13:16 +0100 Subject: [PATCH 15/15] meson/PKGBUILD: bump to 1.6.1 --- PKGBUILD | 2 +- PKGBUILD.wayland-only | 2 +- meson.build | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/PKGBUILD b/PKGBUILD index 0b9b02c..12e6642 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,5 +1,5 @@ pkgname=yambar -pkgver=1.6.0 +pkgver=1.6.1 pkgrel=1 pkgdesc="Simplistic and highly configurable status panel for X and Wayland" arch=('x86_64' 'aarch64') diff --git a/PKGBUILD.wayland-only b/PKGBUILD.wayland-only index 9da0d18..10a44ea 100644 --- a/PKGBUILD.wayland-only +++ b/PKGBUILD.wayland-only @@ -1,5 +1,5 @@ pkgname=yambar-wayland -pkgver=1.6.0 +pkgver=1.6.1 pkgrel=1 pkgdesc="Simplistic and highly configurable status panel for Wayland" arch=('x86_64' 'aarch64') diff --git a/meson.build b/meson.build index dd6b910..9309064 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('yambar', 'c', - version: '1.6.0', + version: '1.6.1', license: 'MIT', meson_version: '>=0.53.0', default_options: ['c_std=c18',