openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
October 2023
- 1 participants
- 2656 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fcitx5-chinese-addons for openSUSE:Factory checked in at 2023-10-02 20:05:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fcitx5-chinese-addons (Old)
and /work/SRC/openSUSE:Factory/.fcitx5-chinese-addons.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fcitx5-chinese-addons"
Mon Oct 2 20:05:18 2023 rev:9 rq:1114468 version:5.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/fcitx5-chinese-addons/fcitx5-chinese-addons.changes 2023-08-21 11:44:55.319613015 +0200
+++ /work/SRC/openSUSE:Factory/.fcitx5-chinese-addons.new.28202/fcitx5-chinese-addons.changes 2023-10-02 20:06:54.051741889 +0200
@@ -1,0 +2,5 @@
+Sat Sep 30 05:08:53 UTC 2023 - Marguerite Su <i(a)marguerite.su>
+
+- fix build on leap, gcc7 doesn't have charconv
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fcitx5-chinese-addons.spec ++++++
--- /var/tmp/diff_new_pack.WKYyC2/_old 2023-10-02 20:06:55.007776270 +0200
+++ /var/tmp/diff_new_pack.WKYyC2/_new 2023-10-02 20:06:55.007776270 +0200
@@ -31,7 +31,6 @@
BuildRequires: fcitx5-qt-devel
BuildRequires: fdupes
BuildRequires: fmt-devel
-BuildRequires: gcc-c++
BuildRequires: hicolor-icon-theme
BuildRequires: libQt5Concurrent-devel
BuildRequires: libQt5DBus-devel
@@ -44,6 +43,12 @@
BuildRequires: opencc-devel
BuildRequires: pkgconfig
BuildRequires: xz
+%if 0%{?suse_version} == 1500
+BuildRequires: gcc8
+BuildRequires: gcc8-c++
+%else
+BuildRequires: gcc-c++
+%endif
Supplements: fcitx5
Conflicts: fcitx <= 4.2.9.8
Provides: fcitx-cloudpinyin = %{version}
@@ -102,6 +107,10 @@
%setup -q
%build
+%if 0%{?suse_version} == 1500
+export CC=gcc-8
+export CXX=g++-8
+%endif
%cmake -DUSE_WEBKIT=OFF
%make_build
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mdbook for openSUSE:Factory checked in at 2023-10-02 20:05:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mdbook (Old)
and /work/SRC/openSUSE:Factory/.mdbook.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mdbook"
Mon Oct 2 20:05:14 2023 rev:15 rq:1114465 version:0.4.35
Changes:
--------
--- /work/SRC/openSUSE:Factory/mdbook/mdbook.changes 2023-08-28 17:15:10.124550638 +0200
+++ /work/SRC/openSUSE:Factory/.mdbook.new.28202/mdbook.changes 2023-10-02 20:06:50.403610692 +0200
@@ -1,0 +2,10 @@
+Sat Sep 30 00:59:33 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Update to version 0.4.35:
+ * added the book.text-direction setting for explicit support for right-to-left
+ languages.
+ * added rel=prefetch to the "next" links to potentially improve browser performance
+ * added a .warning css class which is styled for displaying warning blocks.
+ * better support of the sidebar when JS is disabled.
+
+-------------------------------------------------------------------
Old:
----
mdBook-0.4.34.tar.zst
New:
----
mdbook-0.4.35.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mdbook.spec ++++++
--- /var/tmp/diff_new_pack.FH8h5d/_old 2023-10-02 20:06:53.655727647 +0200
+++ /var/tmp/diff_new_pack.FH8h5d/_new 2023-10-02 20:06:53.655727647 +0200
@@ -17,12 +17,12 @@
Name: mdbook
-Version: 0.4.34
+Version: 0.4.35
Release: 0
Summary: Create books from markdown
License: (Apache-2.0 OR MIT) AND Unicode-DFS-2016 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (MIT OR Unlicense) AND (Apache-2.0 OR Zlib OR MIT) AND Apache-2.0 AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT AND MPL-2.0
URL: https://github.com/rust-lang/mdBook
-Source0: mdBook-%{version}.tar.zst
+Source0: https://github.com/rust-lang/mdBook/archive/refs/tags/v%{version}.tar.gz#/%…
Source1: vendor.tar.zst
Source2: cargo_config
BuildRequires: cargo-packaging
++++++ _service ++++++
--- /var/tmp/diff_new_pack.FH8h5d/_old 2023-10-02 20:06:53.695729085 +0200
+++ /var/tmp/diff_new_pack.FH8h5d/_new 2023-10-02 20:06:53.699729229 +0200
@@ -1,28 +1,9 @@
<services>
- <service mode="manual" name="obs_scm">
- <param name="url">https://github.com/rust-lang/mdBook</param>
- <param name="versionformat">@PARENT_TAG@</param>
- <param name="scm">git</param>
- <param name="revision">v0.4.34</param>
- <param name="match-tag">*</param>
- <param name="versionrewrite-pattern">v(.*)</param>
- <param name="versionrewrite-replacement">\1</param>
- <param name="changesgenerate">enable</param>
- <param name="changesauthor">socvirnyl.estela(a)gmail.com</param>
- </service>
- <service mode="manual" name="tar" />
- <service mode="manual" name="recompress">
- <param name="file">*.tar</param>
- <param name="compression">zstd</param>
- </service>
- <service mode="manual" name="set_version" />
+ <service name="download_files" mode="manual" />
<service name="cargo_vendor" mode="manual">
- <param name="srcdir">mdBook</param>
- <param name="compression">zst</param>
+ <param name="srctar">mdbook-*.tar.gz</param>
<param name="update">true</param>
</service>
- <service name="cargo_audit" mode="manual">
- <param name="srcdir">mdBook</param>
- </service>
+ <service name="cargo_audit" mode="manual" />
</services>
++++++ cargo_config ++++++
--- /var/tmp/diff_new_pack.FH8h5d/_old 2023-10-02 20:06:53.715729805 +0200
+++ /var/tmp/diff_new_pack.FH8h5d/_new 2023-10-02 20:06:53.719729949 +0200
@@ -3,5 +3,4 @@
[source.vendored-sources]
directory = "vendor"
-(No newline at EOF)
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.FH8h5d/_old and /var/tmp/diff_new_pack.FH8h5d/_new differ
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package nwg-displays for openSUSE:Factory checked in at 2023-10-02 20:05:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nwg-displays (Old)
and /work/SRC/openSUSE:Factory/.nwg-displays.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nwg-displays"
Mon Oct 2 20:05:13 2023 rev:2 rq:1114464 version:0.3.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/nwg-displays/nwg-displays.changes 2023-07-31 15:24:18.831304981 +0200
+++ /work/SRC/openSUSE:Factory/.nwg-displays.new.28202/nwg-displays.changes 2023-10-02 20:06:48.787552574 +0200
@@ -1,0 +2,8 @@
+Fri Sep 29 23:50:37 UTC 2023 - Muhammad Akbar Yanuar Mantari <mantarimay(a)pm.me>
+
+- Update to version 0.3.8
+ + Added popup & countdown timer to restore from improper settings
+ ; close
+- Simplify spec source url and requires typelib GtkLayerShell
+
+-------------------------------------------------------------------
Old:
----
nwg-displays-0.3.7.tar.gz
New:
----
nwg-displays-0.3.8.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nwg-displays.spec ++++++
--- /var/tmp/diff_new_pack.mMZunl/_old 2023-10-02 20:06:49.771587962 +0200
+++ /var/tmp/diff_new_pack.mMZunl/_new 2023-10-02 20:06:49.775588106 +0200
@@ -17,12 +17,12 @@
Name: nwg-displays
-Version: 0.3.7
+Version: 0.3.8
Release: 0
Summary: A GTK3 wrapper to display text on the desktop for wlroots
License: MIT
URL: https://github.com/nwg-piotr/nwg-displays
-Source0: https://github.com/nwg-piotr/nwg-displays/archive/refs/tags/v%{version}.tar…
+Source0: %{url}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
BuildRequires: gtk-layer-shell-devel
BuildRequires: pkgconfig
BuildRequires: python3-devel
@@ -31,7 +31,7 @@
Requires: libgtk-layer-shell0
Requires: python3-gobject
Requires: python3-i3ipc
-Requires: typelib-1_0-GtkLayerShell-0_1
+Requires: typelib(GtkLayerShell)
Recommends: wlr-randr
BuildArch: noarch
++++++ nwg-displays-0.3.7.tar.gz -> nwg-displays-0.3.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nwg-displays-0.3.7/flake.nix new/nwg-displays-0.3.8/flake.nix
--- old/nwg-displays-0.3.7/flake.nix 2023-07-13 03:26:32.000000000 +0200
+++ new/nwg-displays-0.3.8/flake.nix 2023-09-28 01:28:29.000000000 +0200
@@ -32,6 +32,7 @@
];
propagatedBuildInputs = with pkgs; [
+ wlr-randr
pango
gtk-layer-shell
gdk-pixbuf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nwg-displays-0.3.7/nwg_displays/langs/en_US.json new/nwg-displays-0.3.8/nwg_displays/langs/en_US.json
--- old/nwg-displays-0.3.7/nwg_displays/langs/en_US.json 2023-07-13 03:26:32.000000000 +0200
+++ new/nwg-displays-0.3.8/nwg_displays/langs/en_US.json 2023-09-28 01:28:29.000000000 +0200
@@ -7,11 +7,14 @@
"custom-mode": "Custom mode",
"custom-mode-tooltip": "Adds '--custom' argument to set a mode \nnot listed in the list of available modes.\nUse this ONLY if you know what you're doing.",
"dpms-tooltip": "Enables or disables output via DPMS. \nTo turn an output off (ie. blank the screen \nbut keep workspaces as-is), one can set DPMS to off.",
+ "keep": "Keep",
+ "keep-current-settings": "Keep current settings",
"modes": "Modes",
"modes-tooltip": "Displays a list of available \noutput modes to choose from.",
"none": "None",
"position-x": "Position X",
"refresh": "Refresh",
+ "restore": "Restore",
"scale": "Scale",
"scale-filter": "Scale filter",
"scale-filter-tooltip": "'Linear' is smoother and blurrier, 'nearest' is sharper and blockier.\nSetting 'smart' will apply nearest when the output has an integer\nscale factor, otherwise linear.",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nwg-displays-0.3.7/nwg_displays/langs/pl_PL.json new/nwg-displays-0.3.8/nwg_displays/langs/pl_PL.json
--- old/nwg-displays-0.3.7/nwg_displays/langs/pl_PL.json 2023-07-13 03:26:32.000000000 +0200
+++ new/nwg-displays-0.3.8/nwg_displays/langs/pl_PL.json 2023-09-28 01:28:29.000000000 +0200
@@ -7,11 +7,14 @@
"custom-mode": "Tryb niestandardowy",
"custom-mode-tooltip": "Dodaje argument '--custom', by ustawić tryb \nnie występujący na liście dostępnych trybów.\nUżywaj TYLKO gdy dobrze wiesz co robisz.",
"dpms-tooltip": "Włącza lub wyłącza wyjście przez DPMS.\nAby wyłączyć wyjście (tj. wygasić ekran, ale zachować\nobszary robocze bez zmian), można wyłączyć DPMS.",
+ "keep": "Zachowaj",
+ "keep-current-settings": "Zachować bieżące ustawienia",
"modes": "Tryby",
"modes-tooltip": "Wyświetla do wyboru listę dostępnych trybów.",
"none": "Brak",
"position-x": "Pozycja X",
- "refresh": "Odśwież.",
+ "refresh": "Odśwież",
+ "restore": "Przywróć",
"scale": "Skala",
"scale-filter": "Filtr skalowania",
"scale-filter-tooltip": "'Linear' jest gładszy i bardziej rozmyty, 'nearest' jest ostrzejszy i blokowy.\nUstawienie 'smart' zastosuje 'nearest' gdy wyjście na całkowity współczynnik\nskalowania w przeciwnym razie - 'linear'.",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nwg-displays-0.3.7/nwg_displays/langs/ru_RU.json new/nwg-displays-0.3.8/nwg_displays/langs/ru_RU.json
--- old/nwg-displays-0.3.7/nwg_displays/langs/ru_RU.json 2023-07-13 03:26:32.000000000 +0200
+++ new/nwg-displays-0.3.8/nwg_displays/langs/ru_RU.json 2023-09-28 01:28:29.000000000 +0200
@@ -7,11 +7,14 @@
"custom-mode": "Пользовательский режим",
"custom-mode-tooltip": "Добавляет аргумент '--custom' для указания режима, \nотсутствующего в списке. Используйте эту опцию \nТОЛЬКО если вы знаете, что делаете.",
"dpms-tooltip": "Включение или выключение вывода через DPMS. Чтобы отключить вывод \n(т.е. отключить экран, но оставить рабочие пространства без изменений), вы можете отключить DPMS.",
+ "keep": "Сохранить",
+ "keep-current-settings": "Сохранить текущие настройки",
"modes": "Режимы",
"modes-tooltip": "Список доступных режимов вывода.",
"none": "Нет",
"position-x": "Позиция X",
"refresh": "Частота обновления",
+ "restore": "Восстановить",
"scale": "Масштаб",
"scale-filter": "Фильтр масштабирования",
"scale-filter-tooltip": "'Linear' более мякгий и размытый, 'nearest' более резкий и блочный.\nОпция 'smart' применит nearest при использовании целочисленного \nмасштабирования, в остальных случаях linear.",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nwg-displays-0.3.7/nwg_displays/main.py new/nwg-displays-0.3.8/nwg_displays/main.py
--- old/nwg-displays-0.3.7/nwg_displays/main.py 2023-07-13 03:26:32.000000000 +0200
+++ new/nwg-displays-0.3.8/nwg_displays/main.py 2023-09-28 01:28:29.000000000 +0200
@@ -16,6 +16,7 @@
import argparse
import os.path
import sys
+import time
import gi
@@ -94,6 +95,9 @@
form_mirror = None
dialog_win = None
+confirm_win = None
+src_tag = 0
+counter = 0
"""
We need to rebuild the modes GtkComboBoxText on each DisplayButton click. Unfortunately appending an item fires the
@@ -275,7 +279,10 @@
def update_form_from_widget(widget):
form_name.set_text(widget.name)
- form_description.set_text(widget.description)
+ if len(widget.description) > 48:
+ form_description.set_text(f"{widget.description[:47]}(…)")
+ else:
+ form_description.set_text(widget.description)
form_dpms.set_active(widget.dpms)
form_adaptive_sync.set_active(widget.adaptive_sync)
form_custom_mode.set_active(widget.custom_mode)
@@ -765,6 +772,196 @@
close_dialog(w, win)
+def apply_settings(display_buttons, outputs_activity, outputs_path, use_desc=False):
+ now = datetime.datetime.now()
+ lines = ["# Generated by nwg-displays on {} at {}. Do not edit manually.\n".format(
+ datetime.datetime.strftime(now, '%Y-%m-%d'),
+ datetime.datetime.strftime(now, '%H:%M:%S'))]
+ cmds = []
+ db_names = []
+ # just active outputs have their buttons
+ if os.getenv("SWAYSOCK"):
+ for db in display_buttons:
+ name = db.name if not use_desc else db.description
+ db_names.append(name)
+
+ lines.append('output "%s" {' % name)
+ cmd = 'output "{}"'.format(name)
+
+ custom_mode_str = "--custom" if db.custom_mode else ""
+ lines.append(
+ " mode {} {}x{}@{}Hz".format(custom_mode_str, db.physical_width, db.physical_height, db.refresh))
+ cmd += " mode {} {}x{}@{}Hz".format(custom_mode_str, db.physical_width, db.physical_height, db.refresh)
+
+ lines.append(" pos {} {}".format(db.x, db.y))
+ cmd += " pos {} {}".format(db.x, db.y)
+
+ lines.append(" transform {}".format(db.transform))
+ cmd += " transform {}".format(db.transform)
+
+ lines.append(" scale {}".format(db.scale))
+ cmd += " scale {}".format(db.scale)
+
+ lines.append(" scale_filter {}".format(db.scale_filter))
+ cmd += " scale_filter {}".format(db.scale_filter)
+
+ a_s = "on" if db.adaptive_sync else "off"
+ lines.append(" adaptive_sync {}".format(a_s))
+ cmd += " adaptive_sync {}".format(a_s)
+
+ dpms = "on" if db.dpms else "off"
+ lines.append(" dpms {}".format(dpms))
+ cmd += " dpms {}".format(dpms)
+
+ lines.append("}")
+ cmds.append(cmd)
+
+ if not use_desc:
+ for key in outputs_activity:
+ if key not in db_names:
+ lines.append('output "{}" disable'.format(key))
+ cmds.append('output "{}" disable'.format(key))
+ else:
+ for key in outputs_activity:
+ desc = inactive_output_description(key)
+ if desc not in db_names:
+ lines.append('output "{}" disable'.format(desc))
+ cmds.append('output "{}" disable'.format(desc))
+
+ print("[Saving]")
+ for line in lines:
+ print(line)
+
+ backup = load_text_file(outputs_path).splitlines()
+ save_list_to_text_file(lines, outputs_path)
+
+ print("[Executing]")
+ for cmd in cmds:
+ print(cmd)
+
+ i3 = Connection()
+ for cmd in cmds:
+ i3.command(cmd)
+
+ create_confirm_win(backup, outputs_path)
+
+ elif os.getenv("HYPRLAND_INSTANCE_SIGNATURE"):
+ transforms = {"normal": 0, "90": 1, "180": 2, "270": 3, "flipped": 4, "flipped-90": 5, "flipped-180": 6,
+ "flipped-270": 7}
+ for db in display_buttons:
+ name = db.name if not use_desc else "desc:{}".format(db.description)
+ db_names.append(name)
+
+ if not db.mirror:
+ lines.append(
+ "monitor={},{}x{}@{},{}x{},{}".format(name, db.physical_width, db.physical_height, db.refresh, db.x,
+ db.y, db.scale))
+ else:
+ lines.append(
+ "monitor={},{}x{}@{},{}x{},{},mirror,{}".format(name, db.physical_width, db.physical_height,
+ db.refresh, db.x, db.y, db.scale, db.mirror))
+ if db.transform != "normal":
+ lines.append("monitor={},transform,{}".format(name, transforms[db.transform]))
+
+ if name in outputs_activity and not outputs_activity[name]:
+ lines.append("monitor={},disable".format(name))
+
+ print("[Saving]")
+ for line in lines:
+ print(line)
+
+ backup = load_text_file(outputs_path).splitlines()
+ save_list_to_text_file(lines, outputs_path)
+ create_confirm_win(backup, outputs_path)
+
+
+def create_confirm_win(backup, path):
+ global confirm_win
+ if confirm_win:
+ confirm_win.destroy()
+ confirm_win = Gtk.Window()
+ confirm_win.set_resizable(False)
+ confirm_win.set_modal(True)
+ grid = Gtk.Grid()
+ grid.set_column_spacing(12)
+ grid.set_row_spacing(12)
+ grid.set_column_homogeneous(True)
+ grid.set_property("margin", 12)
+ confirm_win.add(grid)
+ lbl = Gtk.Label.new("{}?".format(voc["keep-current-settings"]))
+ grid.attach(lbl, 0, 0, 2, 1)
+
+ cnt_lbl = Gtk.Label.new("10")
+ grid.attach(cnt_lbl, 0, 1, 2, 1)
+ btn_restore = Gtk.Button.new_with_label(voc["restore"])
+
+ btn_restore.connect("clicked", restore_old_settings, backup, path)
+
+ grid.attach(btn_restore, 0, 2, 1, 1)
+ btn_keep = Gtk.Button.new_with_label(voc["keep"])
+ btn_keep.connect("clicked", keep_current_settings)
+ grid.attach(btn_keep, 1, 2, 1, 1)
+
+ confirm_win.show_all()
+
+ global counter
+ counter = 10
+ global src_tag
+ src_tag = GLib.timeout_add_seconds(1, count_down, cnt_lbl, backup, path)
+
+
+def count_down(label, backup, path):
+ global counter
+ if counter > 0:
+ counter -= 1
+ label.set_text(str(counter))
+ return True
+
+ restore_old_settings(None, backup, path)
+
+
+def keep_current_settings(btn):
+ if src_tag > 0:
+ GLib.Source.remove(src_tag)
+ confirm_win.close()
+
+
+def restore_old_settings(btn, backup, path):
+ print("Restoring old settings...")
+ if src_tag > 0:
+ GLib.Source.remove(src_tag)
+
+ if os.getenv("SWAYSOCK"):
+ save_list_to_text_file(backup, path)
+
+ # Parse backup file back to commands and execute them
+ single_line = ""
+ # omit comments & empty lines
+ for line in backup:
+ if not line.startswith("#") and line:
+ single_line += line
+ # remove "{"
+ single_line = single_line.replace("{", "")
+ # convert multiple spaces into single
+ single_line = ' '.join(single_line.split())
+ cmds = single_line.split("}")
+ # execute line by line
+ i3 = Connection()
+ for cmd in cmds:
+ if cmd:
+ i3.command(cmd)
+
+ confirm_win.close()
+ create_display_buttons()
+
+ elif os.getenv("HYPRLAND_INSTANCE_SIGNATURE"):
+ save_list_to_text_file(backup, path)
+ confirm_win.close()
+ # Don't execute any command here, just save the file and wait for Hyprland to notice and apply the change.
+ # Let's give it some time to do it before refreshing UI.
+ GLib.timeout_add(2000, create_display_buttons)
+
+
def main():
GLib.set_prgname('nwg-displays')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nwg-displays-0.3.7/nwg_displays/tools.py new/nwg-displays-0.3.8/nwg_displays/tools.py
--- old/nwg-displays-0.3.7/nwg_displays/tools.py 2023-07-13 03:26:32.000000000 +0200
+++ new/nwg-displays-0.3.8/nwg_displays/tools.py 2023-09-28 01:28:29.000000000 +0200
@@ -263,102 +263,7 @@
return "90" in transform or "270" in transform
-def apply_settings(display_buttons, outputs_activity, outputs_path, use_desc=False):
- now = datetime.datetime.now()
- lines = ["# Generated by nwg-displays on {} at {}. Do not edit manually.\n".format(
- datetime.datetime.strftime(now, '%Y-%m-%d'),
- datetime.datetime.strftime(now, '%H:%M:%S'))]
- cmds = []
- db_names = []
- # just active outputs have their buttons
- if os.getenv("SWAYSOCK"):
- for db in display_buttons:
- name = db.name if not use_desc else db.description
- db_names.append(name)
- lines.append('output "%s" {' % name)
- cmd = 'output "{}"'.format(name)
-
- custom_mode_str = "--custom" if db.custom_mode else ""
- lines.append(
- " mode {} {}x{}@{}Hz".format(custom_mode_str, db.physical_width, db.physical_height, db.refresh))
- cmd += " mode {} {}x{}@{}Hz".format(custom_mode_str, db.physical_width, db.physical_height, db.refresh)
-
- lines.append(" pos {} {}".format(db.x, db.y))
- cmd += " pos {} {}".format(db.x, db.y)
-
- lines.append(" transform {}".format(db.transform))
- cmd += " transform {}".format(db.transform)
-
- lines.append(" scale {}".format(db.scale))
- cmd += " scale {}".format(db.scale)
-
- lines.append(" scale_filter {}".format(db.scale_filter))
- cmd += " scale_filter {}".format(db.scale_filter)
-
- a_s = "on" if db.adaptive_sync else "off"
- lines.append(" adaptive_sync {}".format(a_s))
- cmd += " adaptive_sync {}".format(a_s)
-
- dpms = "on" if db.dpms else "off"
- lines.append(" dpms {}".format(dpms))
- cmd += " dpms {}".format(dpms)
-
- lines.append("}")
- cmds.append(cmd)
-
- if not use_desc:
- for key in outputs_activity:
- if key not in db_names:
- lines.append('output "{}" disable'.format(key))
- cmds.append('output "{}" disable'.format(key))
- else:
- for key in outputs_activity:
- desc = inactive_output_description(key)
- if desc not in db_names:
- lines.append('output "{}" disable'.format(desc))
- cmds.append('output "{}" disable'.format(desc))
-
- print("[Saving]")
- for line in lines:
- print(line)
-
- save_list_to_text_file(lines, outputs_path)
-
- print("[Executing]")
- for cmd in cmds:
- print(cmd)
-
- i3 = Connection()
- for cmd in cmds:
- i3.command(cmd)
-
- elif os.getenv("HYPRLAND_INSTANCE_SIGNATURE"):
- transforms = {"normal": 0, "90": 1, "180": 2, "270": 3, "flipped": 4, "flipped-90": 5, "flipped-180": 6,
- "flipped-270": 7}
- for db in display_buttons:
- name = db.name if not use_desc else "desc:{}".format(db.description)
- db_names.append(name)
-
- if not db.mirror:
- lines.append(
- "monitor={},{}x{}@{},{}x{},{}".format(name, db.physical_width, db.physical_height, db.refresh, db.x,
- db.y, db.scale))
- else:
- lines.append(
- "monitor={},{}x{}@{},{}x{},{},mirror,{}".format(name, db.physical_width, db.physical_height,
- db.refresh, db.x, db.y, db.scale, db.mirror))
- if db.transform != "normal":
- lines.append("monitor={},transform,{}".format(name, transforms[db.transform]))
-
- if name in outputs_activity and not outputs_activity[name]:
- lines.append("monitor={},disable".format(name))
-
- print("[Saving]")
- for line in lines:
- print(line)
-
- save_list_to_text_file(lines, outputs_path)
def inactive_output_description(name):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nwg-displays-0.3.7/setup.py new/nwg-displays-0.3.8/setup.py
--- old/nwg-displays-0.3.7/setup.py 2023-07-13 03:26:32.000000000 +0200
+++ new/nwg-displays-0.3.8/setup.py 2023-09-28 01:28:29.000000000 +0200
@@ -9,7 +9,7 @@
setup(
name='nwg-displays',
- version='0.3.7',
+ version='0.3.8',
description='nwg-shell output configuration utility',
packages=find_packages(),
include_package_data=True,
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package exim for openSUSE:Factory checked in at 2023-10-02 20:05:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/exim (Old)
and /work/SRC/openSUSE:Factory/.exim.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "exim"
Mon Oct 2 20:05:12 2023 rev:76 rq:1114826 version:4.96.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/exim/exim.changes 2023-04-04 21:27:42.783676901 +0200
+++ /work/SRC/openSUSE:Factory/.exim.new.28202/exim.changes 2023-10-02 20:06:45.559436481 +0200
@@ -1,0 +2,8 @@
+Mon Oct 2 05:53:32 UTC 2023 - Peter Wullinger <wullinger(a)rz.uni-kiel.de>
+
+- security update to exim 4.96.1
+ * fixes CVE-2023-42114 (bsc#1215784)
+ * fixes CVE-2023-42115 (bsc#1215785)
+ * fixes CVE-2023-42116 (bsc#1215786)
+
+-------------------------------------------------------------------
Old:
----
exim-4.96.tar.bz2
exim-4.96.tar.bz2.asc
patch-cve-2022-3559
New:
----
exim-4.96.1.tar.bz2
exim-4.96.1.tar.bz2.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ exim.spec ++++++
--- /var/tmp/diff_new_pack.IlUvlA/_old 2023-10-02 20:06:47.571508841 +0200
+++ /var/tmp/diff_new_pack.IlUvlA/_new 2023-10-02 20:06:47.575508985 +0200
@@ -74,8 +74,8 @@
%endif
Requires(pre): fileutils textutils
%endif
-Version: 4.96
-Release: 1
+Version: 4.96.1
+Release: 0
%if %{with_mysql}
BuildRequires: mysql-devel
%endif
@@ -106,7 +106,6 @@
Patch0: exim-tail.patch
Patch1: gnu_printf.patch
Patch2: patch-no-exit-on-rewrite-malformed-address.patch
-Patch3: patch-cve-2022-3559
%package -n eximon
Summary: Eximon, an graphical frontend to administer Exim's mail queue
@@ -151,7 +150,6 @@
%patch0
%patch1 -p1
%patch2 -p1
-%patch3 -p1
# build with fPIE/pie on SUSE 10.0 or newer, or on any other platform
%if %{?suse_version:%suse_version}%{?!suse_version:99999} > 930
fPIE="-fPIE"
++++++ exim-4.96.tar.bz2 -> exim-4.96.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/doc/ChangeLog new/exim-4.96.1/doc/ChangeLog
--- old/exim-4.96/doc/ChangeLog 2022-06-23 15:41:10.000000000 +0200
+++ new/exim-4.96.1/doc/ChangeLog 2023-09-30 22:52:59.000000000 +0200
@@ -2,6 +2,24 @@
affect Exim's operation, with an unchanged configuration file. For new
options, and new features, see the NewStuff file next to this ChangeLog.
+Exim version 4.96.1
+-------------------
+
+This is a security release.
+
+JH/01 Bug 2999: Fix a possible OOB write in the external authenticator, which
+ could be triggered by externally-supplied input. Found by Trend Micro.
+ CVE-2023-42115
+
+JH/02 Bug 3000: Fix a possible OOB write in the SPA authenticator, which could
+ be triggered by externally-controlled input. Found by Trend Micro.
+ CVE-2023-42116
+
+JH/03 Bug 3001: Fix a possible OOB read in the SPA authenticator, which could
+ be triggered by externally-controlled input. Found by Trend Micro.
+ CVE-2023-42114
+
+
Exim version 4.96
-----------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/doc/filter.txt new/exim-4.96.1/doc/filter.txt
--- old/exim-4.96/doc/filter.txt 2022-06-25 15:36:30.000000000 +0200
+++ new/exim-4.96.1/doc/filter.txt 2023-10-02 12:25:25.000000000 +0200
@@ -4,7 +4,7 @@
Copyright (c) 2021 The Exim Maintainers
-Revision 4.96 25 Jun 2022 PH
+Revision 4.96.1 02 Oct 2023 PH
-------------------------------------------------------------------------------
@@ -72,7 +72,7 @@
This document describes the user interfaces to Exim's in-built mail filtering
facilities, and is copyright (c) The Exim Maintainers 2021. It corresponds to
-Exim version 4.96.
+Exim version 4.96.1.
1.1 Introduction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/doc/spec.txt new/exim-4.96.1/doc/spec.txt
--- old/exim-4.96/doc/spec.txt 2022-06-25 15:36:30.000000000 +0200
+++ new/exim-4.96.1/doc/spec.txt 2023-10-02 12:25:25.000000000 +0200
@@ -4,7 +4,7 @@
Copyright (c) 2022 The Exim Maintainers
-Revision 4.96 25 Jun 2022 EM
+Revision 4.96.1 02 Oct 2023 EM
-------------------------------------------------------------------------------
@@ -596,7 +596,7 @@
1.1 Exim documentation
----------------------
-This edition of the Exim specification applies to version 4.96 of Exim.
+This edition of the Exim specification applies to version 4.96.1 of Exim.
Substantive changes from the 4.95 edition are marked in some renditions of this
document; this paragraph is so marked if the rendition is capable of showing a
change indicator.
@@ -1723,7 +1723,7 @@
Exim is distributed as a gzipped or bzipped tar file which, when unpacked,
creates a directory with the name of the current release (for example,
-exim-4.96) into which the following files are placed:
+exim-4.96.1) into which the following files are placed:
ACKNOWLEDGMENTS contains some acknowledgments
CHANGES contains a reference to where changes are documented
@@ -2345,7 +2345,7 @@
For the utility programs, old versions are renamed by adding the suffix .O to
their names. The Exim binary itself, however, is handled differently. It is
installed under a name that includes the version number and the compile number,
-for example, exim-4.96-1. The script then arranges for a symbolic link called
+for example, exim-4.96.1-1. The script then arranges for a symbolic link called
exim to point to the binary. If you are updating a previous version of Exim,
the script takes care to ensure that the name exim is never absent from the
directory (as seen by other processes).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/src/auths/auth-spa.c new/exim-4.96.1/src/auths/auth-spa.c
--- old/exim-4.96/src/auths/auth-spa.c 2022-06-23 15:41:10.000000000 +0200
+++ new/exim-4.96.1/src/auths/auth-spa.c 2023-09-30 22:52:59.000000000 +0200
@@ -155,6 +155,9 @@
up with a different answer to the one above)
*/
+#ifndef MACRO_PREDEF
+
+
#define DEBUG_X(a,b) ;
extern int DEBUGLEVEL;
@@ -1211,7 +1214,9 @@
#define spa_bytes_add(ptr, header, buf, count) \
{ \
-if (buf && (count) != 0) /* we hate -Wint-in-bool-contex */ \
+if ( buf && (count) != 0 /* we hate -Wint-in-bool-contex */ \
+ && ptr->bufIndex + count < sizeof(ptr->buffer) \
+ ) \
{ \
SSVAL(&ptr->header.len,0,count); \
SSVAL(&ptr->header.maxlen,0,count); \
@@ -1229,35 +1234,30 @@
#define spa_string_add(ptr, header, string) \
{ \
-char *p = string; \
+uschar * p = string; \
int len = 0; \
-if (p) len = strlen(p); \
-spa_bytes_add(ptr, header, (US p), len); \
+if (p) len = Ustrlen(p); \
+spa_bytes_add(ptr, header, p, len); \
}
#define spa_unicode_add_string(ptr, header, string) \
{ \
-char *p = string; \
-uschar *b = NULL; \
+uschar * p = string; \
+uschar * b = NULL; \
int len = 0; \
if (p) \
{ \
- len = strlen(p); \
- b = strToUnicode(p); \
+ len = Ustrlen(p); \
+ b = US strToUnicode(CS p); \
} \
spa_bytes_add(ptr, header, b, len*2); \
}
-#define GetUnicodeString(structPtr, header) \
-unicodeToString(((char*)structPtr) + IVAL(&structPtr->header.offset,0) , SVAL(&structPtr->header.len,0)/2)
-#define GetString(structPtr, header) \
-toString(((CS structPtr) + IVAL(&structPtr->header.offset,0)), SVAL(&structPtr->header.len,0))
-
#ifdef notdef
#define DumpBuffer(fp, structPtr, header) \
-dumpRaw(fp,(US structPtr)+IVAL(&structPtr->header.offset,0),SVAL(&structPtr->header.len,0))
+ dumpRaw(fp,(US structPtr)+IVAL(&structPtr->header.offset,0),SVAL(&structPtr->header.len,0))
static void
@@ -1321,8 +1321,33 @@
return buf;
}
+static inline uschar *
+get_challenge_unistr(SPAAuthChallenge * challenge, SPAStrHeader * hdr)
+{
+int off = IVAL(&hdr->offset, 0);
+int len = SVAL(&hdr->len, 0);
+return off + len < sizeof(SPAAuthChallenge)
+ ? US unicodeToString(CS challenge + off, len/2) : US"";
+}
+
+static inline uschar *
+get_challenge_str(SPAAuthChallenge * challenge, SPAStrHeader * hdr)
+{
+int off = IVAL(&hdr->offset, 0);
+int len = SVAL(&hdr->len, 0);
+return off + len < sizeof(SPAAuthChallenge)
+ ? US toString(CS challenge + off, len) : US"";
+}
+
#ifdef notdef
+#define GetUnicodeString(structPtr, header) \
+ unicodeToString(((char*)structPtr) + IVAL(&structPtr->header.offset,0) , SVAL(&structPtr->header.len,0)/2)
+
+#define GetString(structPtr, header) \
+ toString(((CS structPtr) + IVAL(&structPtr->header.offset,0)), SVAL(&structPtr->header.len,0))
+
+
void
dumpSmbNtlmAuthRequest (FILE * fp, SPAAuthRequest * request)
{
@@ -1366,15 +1391,15 @@
#endif
void
-spa_build_auth_request (SPAAuthRequest * request, char *user, char *domain)
+spa_build_auth_request (SPAAuthRequest * request, uschar * user, uschar * domain)
{
-char *u = strdup (user);
-char *p = strchr (u, '@');
+uschar * u = string_copy(user);
+uschar * p = Ustrchr(u, '@');
if (p)
{
if (!domain)
- domain = p + 1;
+ domain = p + 1;
*p = '\0';
}
@@ -1384,7 +1409,6 @@
SIVAL (&request->flags, 0, 0x0000b207); /* have to figure out what these mean */
spa_string_add (request, user, u);
spa_string_add (request, domain, domain);
-free (u);
}
@@ -1475,16 +1499,16 @@
void
spa_build_auth_response (SPAAuthChallenge * challenge,
- SPAAuthResponse * response, char *user,
- char *password)
+ SPAAuthResponse * response, uschar * user,
+ uschar * password)
{
uint8x lmRespData[24];
uint8x ntRespData[24];
uint32x cf = IVAL(&challenge->flags, 0);
-char *u = strdup (user);
-char *p = strchr (u, '@');
-char *d = NULL;
-char *domain;
+uschar * u = string_copy(user);
+uschar * p = Ustrchr(u, '@');
+uschar * d = NULL;
+uschar * domain;
if (p)
{
@@ -1492,33 +1516,33 @@
*p = '\0';
}
-else domain = d = strdup((cf & 0x1)?
- CCS GetUnicodeString(challenge, uDomain) :
- CCS GetString(challenge, uDomain));
+else domain = d = string_copy(cf & 0x1
+ ? CUS get_challenge_unistr(challenge, &challenge->uDomain)
+ : CUS get_challenge_str(challenge, &challenge->uDomain));
-spa_smb_encrypt (US password, challenge->challengeData, lmRespData);
-spa_smb_nt_encrypt (US password, challenge->challengeData, ntRespData);
+spa_smb_encrypt(password, challenge->challengeData, lmRespData);
+spa_smb_nt_encrypt(password, challenge->challengeData, ntRespData);
response->bufIndex = 0;
memcpy (response->ident, "NTLMSSP\0\0\0", 8);
SIVAL (&response->msgType, 0, 3);
-spa_bytes_add (response, lmResponse, lmRespData, (cf & 0x200) ? 24 : 0);
-spa_bytes_add (response, ntResponse, ntRespData, (cf & 0x8000) ? 24 : 0);
+spa_bytes_add(response, lmResponse, lmRespData, cf & 0x200 ? 24 : 0);
+spa_bytes_add(response, ntResponse, ntRespData, cf & 0x8000 ? 24 : 0);
if (cf & 0x1) { /* Unicode Text */
- spa_unicode_add_string (response, uDomain, domain);
- spa_unicode_add_string (response, uUser, u);
- spa_unicode_add_string (response, uWks, u);
+ spa_unicode_add_string(response, uDomain, domain);
+ spa_unicode_add_string(response, uUser, u);
+ spa_unicode_add_string(response, uWks, u);
} else { /* OEM Text */
- spa_string_add (response, uDomain, domain);
- spa_string_add (response, uUser, u);
- spa_string_add (response, uWks, u);
+ spa_string_add(response, uDomain, domain);
+ spa_string_add(response, uUser, u);
+ spa_string_add(response, uWks, u);
}
-spa_string_add (response, sessionKey, NULL);
+spa_string_add(response, sessionKey, NULL);
response->flags = challenge->flags;
-
-if (d != NULL) free (d);
-free (u);
}
+
+
+#endif /*!MACRO_PREDEF*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/src/auths/auth-spa.h new/exim-4.96.1/src/auths/auth-spa.h
--- old/exim-4.96/src/auths/auth-spa.h 2022-06-23 15:41:10.000000000 +0200
+++ new/exim-4.96.1/src/auths/auth-spa.h 2023-09-30 22:52:59.000000000 +0200
@@ -79,10 +79,10 @@
void spa_bits_to_base64 (unsigned char *, const unsigned char *, int);
int spa_base64_to_bits(char *, int, const char *);
-void spa_build_auth_response (SPAAuthChallenge *challenge,
- SPAAuthResponse *response, char *user, char *password);
-void spa_build_auth_request (SPAAuthRequest *request, char *user,
- char *domain);
+void spa_build_auth_response (SPAAuthChallenge * challenge,
+ SPAAuthResponse * response, uschar * user, uschar * password);
+void spa_build_auth_request (SPAAuthRequest * request, uschar * user,
+ uschar * domain);
extern void spa_smb_encrypt (unsigned char * passwd, unsigned char * c8,
unsigned char * p24);
extern void spa_smb_nt_encrypt (unsigned char * passwd, unsigned char * c8,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/src/auths/external.c new/exim-4.96.1/src/auths/external.c
--- old/exim-4.96/src/auths/external.c 2022-06-23 15:41:10.000000000 +0200
+++ new/exim-4.96.1/src/auths/external.c 2023-09-30 22:52:59.000000000 +0200
@@ -103,7 +103,7 @@
if (ob->server_param2)
{
uschar * s = expand_string(ob->server_param2);
- auth_vars[expand_nmax] = s;
+ auth_vars[expand_nmax = 1] = s;
expand_nstring[++expand_nmax] = s;
expand_nlength[expand_nmax] = Ustrlen(s);
if (ob->server_param3)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/src/auths/spa.c new/exim-4.96.1/src/auths/spa.c
--- old/exim-4.96/src/auths/spa.c 2022-06-23 15:41:10.000000000 +0200
+++ new/exim-4.96.1/src/auths/spa.c 2023-09-30 22:52:59.000000000 +0200
@@ -284,14 +284,13 @@
SPAAuthChallenge challenge;
SPAAuthResponse response;
char msgbuf[2048];
-char *domain = NULL;
-char *username, *password;
+uschar * domain = NULL, * username, * password;
/* Code added by PH to expand the options */
*buffer = 0; /* Default no message when cancelled */
-if (!(username = CS expand_string(ob->spa_username)))
+if (!(username = expand_string(ob->spa_username)))
{
if (f.expand_string_forcedfail) return CANCELLED;
string_format(buffer, buffsize, "expansion of \"%s\" failed in %s "
@@ -300,7 +299,7 @@
return ERROR;
}
-if (!(password = CS expand_string(ob->spa_password)))
+if (!(password = expand_string(ob->spa_password)))
{
if (f.expand_string_forcedfail) return CANCELLED;
string_format(buffer, buffsize, "expansion of \"%s\" failed in %s "
@@ -310,7 +309,7 @@
}
if (ob->spa_domain)
- if (!(domain = CS expand_string(ob->spa_domain)))
+ if (!(domain = expand_string(ob->spa_domain)))
{
if (f.expand_string_forcedfail) return CANCELLED;
string_format(buffer, buffsize, "expansion of \"%s\" failed in %s "
@@ -330,7 +329,7 @@
DSPA("\n\n%s authenticator: using domain %s\n\n", ablock->name, domain);
-spa_build_auth_request(&request, CS username, domain);
+spa_build_auth_request(&request, username, domain);
spa_bits_to_base64(US msgbuf, US &request, spa_request_length(&request));
DSPA("\n\n%s authenticator: sending request (%s)\n\n", ablock->name, msgbuf);
@@ -347,7 +346,7 @@
DSPA("\n\n%s authenticator: challenge (%s)\n\n", ablock->name, buffer + 4);
spa_base64_to_bits(CS (&challenge), sizeof(challenge), CCS (buffer + 4));
-spa_build_auth_response(&challenge, &response, CS username, CS password);
+spa_build_auth_response(&challenge, &response, username, password);
spa_bits_to_base64(US msgbuf, US &response, spa_request_length(&response));
DSPA("\n\n%s authenticator: challenge response (%s)\n\n", ablock->name, msgbuf);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/src/version.h new/exim-4.96.1/src/version.h
--- old/exim-4.96/src/version.h 2022-06-25 15:36:07.000000000 +0200
+++ new/exim-4.96.1/src/version.h 2023-10-02 12:24:59.000000000 +0200
@@ -1,5 +1,5 @@
/* automatically generated file - see ../scripts/reversion */
-#define EXIM_RELEASE_VERSION "4.96"
+#define EXIM_RELEASE_VERSION "4.96.1"
#ifdef EXIM_VARIANT_VERSION
#define EXIM_VERSION_STR EXIM_RELEASE_VERSION "-" EXIM_VARIANT_VERSION
#else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/exim-4.96/src/version.sh new/exim-4.96.1/src/version.sh
--- old/exim-4.96/src/version.sh 2022-06-25 15:36:07.000000000 +0200
+++ new/exim-4.96.1/src/version.sh 2023-10-02 12:24:59.000000000 +0200
@@ -1,3 +1,3 @@
# automatically generated file - see ../scripts/reversion
-EXIM_RELEASE_VERSION="4.96"
+EXIM_RELEASE_VERSION="4.96.1"
EXIM_COMPILE_NUMBER="1"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package conntrack-tools for openSUSE:Factory checked in at 2023-10-02 20:05:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/conntrack-tools (Old)
and /work/SRC/openSUSE:Factory/.conntrack-tools.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "conntrack-tools"
Mon Oct 2 20:05:11 2023 rev:36 rq:1114328 version:1.4.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/conntrack-tools/conntrack-tools.changes 2022-10-08 01:23:55.394050515 +0200
+++ /work/SRC/openSUSE:Factory/.conntrack-tools.new.28202/conntrack-tools.changes 2023-10-02 20:06:43.883376206 +0200
@@ -1,0 +2,8 @@
+Fri Sep 29 11:32:56 UTC 2023 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Update to release 1.4.8
+ * Fix spurious EOPNOSUPP and ENOBUFS errors with -U/--update
+ command.
+ * Fix spurious ENOENT -D/--delete.
+
+-------------------------------------------------------------------
Old:
----
conntrack-tools-1.4.7.tar.bz2
conntrack-tools-1.4.7.tar.bz2.sig
New:
----
conntrack-tools-1.4.8.tar.xz
conntrack-tools-1.4.8.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ conntrack-tools.spec ++++++
--- /var/tmp/diff_new_pack.o4SivO/_old 2023-10-02 20:06:45.255425548 +0200
+++ /var/tmp/diff_new_pack.o4SivO/_new 2023-10-02 20:06:45.255425548 +0200
@@ -1,7 +1,7 @@
#
# spec file for package conntrack-tools
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -22,7 +22,7 @@
%endif
Name: conntrack-tools
-Version: 1.4.7
+Version: 1.4.8
Release: 0
Summary: Userspace tools for interacting with the Connection Tracking System
License: GPL-2.0-or-later
@@ -30,8 +30,8 @@
URL: http://conntrack-tools.netfilter.org/
#Git-Clone: git://git.netfilter.org/conntrack-tools
-Source: https://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-%v…
-Source2: https://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-%v…
+Source: https://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-%v…
+Source2: https://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-%v…
Source3: %name.keyring
Source5: conntrackd.service
Source6: conntrackd.README.SUSE
@@ -88,7 +88,7 @@
# CC read_config_lex.o
#read_config_lex.l:24:28: fatal error: read_config_yy.h: No such file or
#directory
-make %{?_smp_mflags} -j1 V=1
+%make_build -j1
%install
%make_install
@@ -124,7 +124,7 @@
%_mandir/man8/conntrack.8*
%_mandir/man8/nfct.8*
# Shared betweenn nfct and conntrackd:
-%_libdir/%name
+%_libdir/%name/
%files -n conntrackd
%_sysconfdir/logrotate.d/conntrackd*
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package eksctl for openSUSE:Factory checked in at 2023-10-02 20:05:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/eksctl (Old)
and /work/SRC/openSUSE:Factory/.eksctl.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "eksctl"
Mon Oct 2 20:05:09 2023 rev:10 rq:1114324 version:0.160.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/eksctl/eksctl.changes 2023-09-28 00:32:18.983445404 +0200
+++ /work/SRC/openSUSE:Factory/.eksctl.new.28202/eksctl.changes 2023-10-02 20:06:40.695261551 +0200
@@ -1,0 +2,9 @@
+Fri Sep 29 11:08:29 UTC 2023 - kastl(a)b1-systems.de
+
+- Update to version 0.160.0:
+ * Release notes for 0.160.0
+ * Bump dependencies
+ * Add support for EKS 1.28
+ * Prepare for next development iteration (#7093)
+
+-------------------------------------------------------------------
Old:
----
eksctl-0.159.0.obscpio
New:
----
eksctl-0.160.0.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ eksctl.spec ++++++
--- /var/tmp/diff_new_pack.N6SFye/_old 2023-10-02 20:06:43.623366855 +0200
+++ /var/tmp/diff_new_pack.N6SFye/_new 2023-10-02 20:06:43.623366855 +0200
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: eksctl
-Version: 0.159.0
+Version: 0.160.0
Release: 0
Summary: The official CLI for Amazon EKS
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.N6SFye/_old 2023-10-02 20:06:43.651367862 +0200
+++ /var/tmp/diff_new_pack.N6SFye/_new 2023-10-02 20:06:43.655368005 +0200
@@ -3,7 +3,7 @@
<param name="url">https://github.com/weaveworks/eksctl</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.159.0</param>
+ <param name="revision">v0.160.0</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.N6SFye/_old 2023-10-02 20:06:43.671368581 +0200
+++ /var/tmp/diff_new_pack.N6SFye/_new 2023-10-02 20:06:43.675368725 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/weaveworks/eksctl</param>
- <param name="changesrevision">87eca01c97fbbef9964a0b138368aa850eb5aa4e</param></service></servicedata>
+ <param name="changesrevision">fb500f047e6583a3fdd91271b2ad42e05719405a</param></service></servicedata>
(No newline at EOF)
++++++ eksctl-0.159.0.obscpio -> eksctl-0.160.0.obscpio ++++++
/work/SRC/openSUSE:Factory/eksctl/eksctl-0.159.0.obscpio /work/SRC/openSUSE:Factory/.eksctl.new.28202/eksctl-0.160.0.obscpio differ: char 49, line 1
++++++ eksctl.obsinfo ++++++
--- /var/tmp/diff_new_pack.N6SFye/_old 2023-10-02 20:06:43.711370020 +0200
+++ /var/tmp/diff_new_pack.N6SFye/_new 2023-10-02 20:06:43.715370164 +0200
@@ -1,5 +1,5 @@
name: eksctl
-version: 0.159.0
-mtime: 1695391498
-commit: 87eca01c97fbbef9964a0b138368aa850eb5aa4e
+version: 0.160.0
+mtime: 1695741657
+commit: fb500f047e6583a3fdd91271b2ad42e05719405a
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/eksctl/vendor.tar.gz /work/SRC/openSUSE:Factory/.eksctl.new.28202/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package liblnk for openSUSE:Factory checked in at 2023-10-02 20:05:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/liblnk (Old)
and /work/SRC/openSUSE:Factory/.liblnk.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "liblnk"
Mon Oct 2 20:05:08 2023 rev:26 rq:1114825 version:20230928
Changes:
--------
--- /work/SRC/openSUSE:Factory/liblnk/liblnk.changes 2023-08-09 17:25:28.781464852 +0200
+++ /work/SRC/openSUSE:Factory/.liblnk.new.28202/liblnk.changes 2023-10-02 20:06:38.323176245 +0200
@@ -1,0 +2,6 @@
+Mon Oct 2 13:22:50 UTC 2023 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Update to release 20230928
+ * Python 3.12 support
+
+-------------------------------------------------------------------
Old:
----
liblnk-alpha-20230716.tar.gz
liblnk-alpha-20230716.tar.gz.asc
New:
----
liblnk-alpha-20230928.tar.gz
liblnk-alpha-20230928.tar.gz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ liblnk.spec ++++++
--- /var/tmp/diff_new_pack.eJbj1M/_old 2023-10-02 20:06:39.511218970 +0200
+++ /var/tmp/diff_new_pack.eJbj1M/_new 2023-10-02 20:06:39.511218970 +0200
@@ -18,7 +18,7 @@
%define lname liblnk1
Name: liblnk
-Version: 20230716
+Version: 20230928
Release: 0
Summary: Library and tools to access the Windows Shortcut File (LNK) format
License: GFDL-1.3-or-later AND LGPL-3.0-or-later
++++++ liblnk-alpha-20230716.tar.gz -> liblnk-alpha-20230928.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/Makefile.am new/liblnk-20230928/Makefile.am
--- old/liblnk-20230716/Makefile.am 2022-04-28 06:23:51.000000000 +0200
+++ new/liblnk-20230928/Makefile.am 2023-09-09 10:49:40.000000000 +0200
@@ -50,6 +50,9 @@
liblnk.pc.in
SETUP_PY_FILES = \
+ pyproject.toml \
+ setup.cfg \
+ setup.cfg.in \
setup.py
SPEC_FILES = \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/Makefile.in new/liblnk-20230928/Makefile.in
--- old/liblnk-20230716/Makefile.in 2023-07-16 08:36:51.000000000 +0200
+++ new/liblnk-20230928/Makefile.in 2023-09-30 10:35:17.000000000 +0200
@@ -119,7 +119,7 @@
CONFIG_HEADER = $(top_builddir)/common/config.h
CONFIG_CLEAN_FILES = include/liblnk/definitions.h \
include/liblnk/features.h include/liblnk/types.h \
- dpkg/changelog liblnk.pc liblnk.spec
+ dpkg/changelog liblnk.pc liblnk.spec setup.cfg
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -204,7 +204,8 @@
done | $(am__uniquify_input)`
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/liblnk.pc.in \
- $(srcdir)/liblnk.spec.in $(top_srcdir)/dpkg/changelog.in \
+ $(srcdir)/liblnk.spec.in $(srcdir)/setup.cfg.in \
+ $(top_srcdir)/dpkg/changelog.in \
$(top_srcdir)/include/liblnk/definitions.h.in \
$(top_srcdir)/include/liblnk/features.h.in \
$(top_srcdir)/include/liblnk/types.h.in ABOUT-NLS AUTHORS \
@@ -647,6 +648,9 @@
liblnk.pc.in
SETUP_PY_FILES = \
+ pyproject.toml \
+ setup.cfg \
+ setup.cfg.in \
setup.py
SPEC_FILES = \
@@ -715,6 +719,8 @@
cd $(top_builddir) && $(SHELL) ./config.status $@
liblnk.spec: $(top_builddir)/config.status $(srcdir)/liblnk.spec.in
cd $(top_builddir) && $(SHELL) ./config.status $@
+setup.cfg: $(top_builddir)/config.status $(srcdir)/setup.cfg.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
mostlyclean-libtool:
-rm -f *.lo
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/common/config.h new/liblnk-20230928/common/config.h
--- old/liblnk-20230716/common/config.h 2023-07-16 08:37:02.000000000 +0200
+++ new/liblnk-20230928/common/config.h 2023-09-30 10:35:34.000000000 +0200
@@ -527,7 +527,7 @@
#define PACKAGE_NAME "liblnk"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "liblnk 20230716"
+#define PACKAGE_STRING "liblnk 20230928"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "liblnk"
@@ -536,7 +536,7 @@
#define PACKAGE_URL ""
/* Define to the version of this package. */
-#define PACKAGE_VERSION "20230716"
+#define PACKAGE_VERSION "20230928"
/* The size of `int', as computed by sizeof. */
#define SIZEOF_INT 4
@@ -562,7 +562,7 @@
/* #undef STRERROR_R_CHAR_P */
/* Version number of package */
-#define VERSION "20230716"
+#define VERSION "20230928"
/* Number of bits in a file offset, on hosts where this is settable. */
/* #undef _FILE_OFFSET_BITS */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/configure new/liblnk-20230928/configure
--- old/liblnk-20230716/configure 2023-07-16 08:36:49.000000000 +0200
+++ new/liblnk-20230928/configure 2023-09-30 10:35:16.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for liblnk 20230716.
+# Generated by GNU Autoconf 2.71 for liblnk 20230928.
#
# Report bugs to <joachim.metz(a)gmail.com>.
#
@@ -621,8 +621,8 @@
# Identity of this package.
PACKAGE_NAME='liblnk'
PACKAGE_TARNAME='liblnk'
-PACKAGE_VERSION='20230716'
-PACKAGE_STRING='liblnk 20230716'
+PACKAGE_VERSION='20230928'
+PACKAGE_STRING='liblnk 20230928'
PACKAGE_BUGREPORT='joachim.metz(a)gmail.com'
PACKAGE_URL=''
@@ -1689,7 +1689,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures liblnk 20230716 to adapt to many kinds of systems.
+\`configure' configures liblnk 20230928 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1760,7 +1760,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of liblnk 20230716:";;
+ short | recursive ) echo "Configuration of liblnk 20230928:";;
esac
cat <<\_ACEOF
@@ -2018,7 +2018,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-liblnk configure 20230716
+liblnk configure 20230928
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2739,7 +2739,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by liblnk $as_me 20230716, which was
+It was created by liblnk $as_me 20230928, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@@ -4228,7 +4228,7 @@
# Define the identity of the package.
PACKAGE='liblnk'
- VERSION='20230716'
+ VERSION='20230928'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -52235,7 +52235,7 @@
then :
ax_python_progs="python${PYTHON_VERSION}"
else $as_nop
- ax_python_progs="python python3 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2 python2.7 python2.6 python2.5"
+ ax_python_progs="python python3 python3.12 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2 python2.7 python2.6 python2.5"
fi
for ac_prog in $ax_python_progs
do
@@ -52351,7 +52351,7 @@
fi
if test "x${PYTHON_CONFIG}" = x
then :
- for ac_prog in python-config python3-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config python2-config python2.7-config python2.6-config python2.5-config
+ for ac_prog in python-config python3-config python3.12-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config python2-config python2.7-config python2.6-config python2.5-config
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
@@ -52770,7 +52770,7 @@
if test "x${ac_cv_enable_python3}" != xno
then :
- ax_python3_progs="python3 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0"
+ ax_python3_progs="python3 python3.12 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0"
for ac_prog in $ax_python3_progs
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -52837,7 +52837,7 @@
if test "x${PYTHON3_CONFIG}" = x
then :
- for ac_prog in python3-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config
+ for ac_prog in python3-config python3.12-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
@@ -53374,6 +53374,8 @@
ac_config_files="$ac_config_files liblnk.spec"
+ac_config_files="$ac_config_files setup.cfg"
+
ac_config_headers="$ac_config_headers common/config.h"
@@ -53988,7 +53990,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by liblnk $as_me 20230716, which was
+This file was extended by liblnk $as_me 20230928, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -54056,7 +54058,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-liblnk config.status 20230716
+liblnk config.status 20230928
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
@@ -54618,6 +54620,7 @@
"liblnk/liblnk.rc") CONFIG_FILES="$CONFIG_FILES liblnk/liblnk.rc" ;;
"liblnk.pc") CONFIG_FILES="$CONFIG_FILES liblnk.pc" ;;
"liblnk.spec") CONFIG_FILES="$CONFIG_FILES liblnk.spec" ;;
+ "setup.cfg") CONFIG_FILES="$CONFIG_FILES setup.cfg" ;;
"common/config.h") CONFIG_HEADERS="$CONFIG_HEADERS common/config.h" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/configure.ac new/liblnk-20230928/configure.ac
--- old/liblnk-20230716/configure.ac 2023-07-16 07:57:42.000000000 +0200
+++ new/liblnk-20230928/configure.ac 2023-09-30 10:14:10.000000000 +0200
@@ -2,7 +2,7 @@
AC_INIT(
[liblnk],
- [20230716],
+ [20230928],
[joachim.metz(a)gmail.com]
AC_CONFIG_SRCDIR(
@@ -203,6 +203,7 @@
AC_CONFIG_FILES([liblnk/liblnk.rc])
AC_CONFIG_FILES([liblnk.pc])
AC_CONFIG_FILES([liblnk.spec])
+AC_CONFIG_FILES([setup.cfg])
dnl Generate a source configuration file
AC_CONFIG_HEADERS([common/config.h])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/dpkg/changelog new/liblnk-20230928/dpkg/changelog
--- old/liblnk-20230716/dpkg/changelog 2023-07-16 08:37:02.000000000 +0200
+++ new/liblnk-20230928/dpkg/changelog 2023-09-30 10:35:34.000000000 +0200
@@ -1,5 +1,5 @@
-liblnk (20230716-1) unstable; urgency=low
+liblnk (20230928-1) unstable; urgency=low
* Auto-generated
- -- Joachim Metz <joachim.metz(a)gmail.com> Sun, 16 Jul 2023 08:37:01 +0200
+ -- Joachim Metz <joachim.metz(a)gmail.com> Sat, 30 Sep 2023 10:35:33 +0200
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/include/liblnk/definitions.h new/liblnk-20230928/include/liblnk/definitions.h
--- old/liblnk-20230716/include/liblnk/definitions.h 2023-07-16 08:37:02.000000000 +0200
+++ new/liblnk-20230928/include/liblnk/definitions.h 2023-09-30 10:35:34.000000000 +0200
@@ -24,11 +24,11 @@
#include <liblnk/types.h>
-#define LIBLNK_VERSION 20230716
+#define LIBLNK_VERSION 20230928
/* The liblnk version string
*/
-#define LIBLNK_VERSION_STRING "20230716"
+#define LIBLNK_VERSION_STRING "20230928"
/* The liblnk file access
* bit 1 set to 1 for read access
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/liblnk/liblnk.rc new/liblnk-20230928/liblnk/liblnk.rc
--- old/liblnk-20230716/liblnk/liblnk.rc 2023-07-16 08:37:02.000000000 +0200
+++ new/liblnk-20230928/liblnk/liblnk.rc 2023-09-30 10:35:34.000000000 +0200
@@ -22,12 +22,12 @@
BLOCK "040904E4"
BEGIN
VALUE "FileDescription", "Library to access the Windows Shortcut File (LNK) format\0"
- VALUE "FileVersion", "20230716" "\0"
+ VALUE "FileVersion", "20230928" "\0"
VALUE "InternalName", "liblnk.dll\0"
VALUE "LegalCopyright", "(C) 2009-2023, Joachim Metz <joachim.metz(a)gmail.com>\0"
VALUE "OriginalFilename", "liblnk.dll\0"
VALUE "ProductName", "liblnk\0"
- VALUE "ProductVersion", "20230716" "\0"
+ VALUE "ProductVersion", "20230928" "\0"
VALUE "Comments", "For more information visit https://github.com/libyal/liblnk/\0"
END
END
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/liblnk/liblnk_definitions.h new/liblnk-20230928/liblnk/liblnk_definitions.h
--- old/liblnk-20230716/liblnk/liblnk_definitions.h 2023-07-16 08:37:02.000000000 +0200
+++ new/liblnk-20230928/liblnk/liblnk_definitions.h 2023-09-30 10:35:34.000000000 +0200
@@ -37,11 +37,11 @@
* for local use of liblnk
*/
#else
-#define LIBLNK_VERSION 20230716
+#define LIBLNK_VERSION 20230928
/* The liblnk version string
*/
-#define LIBLNK_VERSION_STRING "20230716"
+#define LIBLNK_VERSION_STRING "20230928"
/* The liblnk file access
* bit 1 set to 1 for read access
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/liblnk/liblnk_file.c new/liblnk-20230928/liblnk/liblnk_file.c
--- old/liblnk-20230716/liblnk/liblnk_file.c 2023-07-16 07:57:45.000000000 +0200
+++ new/liblnk-20230928/liblnk/liblnk_file.c 2023-09-28 10:08:39.000000000 +0200
@@ -562,11 +562,11 @@
int access_flags,
libcerror_error_t **error )
{
- liblnk_internal_file_t *internal_file = NULL;
- static char *function = "liblnk_file_open_file_io_handle";
- int bfio_access_flags = 0;
- int file_io_handle_is_open = 0;
- int file_io_handle_opened_in_library = 0;
+ liblnk_internal_file_t *internal_file = NULL;
+ static char *function = "liblnk_file_open_file_io_handle";
+ uint8_t file_io_handle_opened_in_library = 0;
+ int bfio_access_flags = 0;
+ int file_io_handle_is_open = 0;
if( file == NULL )
{
@@ -3474,36 +3474,40 @@
{
utf8_local_path_size += 1;
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
- {
- result = libuna_utf8_string_size_from_utf16_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- &utf8_common_path_size,
- error );
- }
- else
- {
- result = libuna_utf8_string_size_from_byte_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- &utf8_common_path_size,
- error );
- }
- if( result != 1 )
+ if( internal_file->location_information->common_path != NULL )
{
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_GET_FAILED,
- "%s: unable to retrieve UTF-8 common path string size.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf8_string_size_from_utf16_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ &utf8_common_path_size,
+ error );
+ }
+ else
+ {
+ result = libuna_utf8_string_size_from_byte_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ &utf8_common_path_size,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_GET_FAILED,
+ "%s: unable to retrieve UTF-8 common path string size.",
+ function );
- return( -1 );
+ return( -1 );
+ }
+ utf8_local_path_size -= 1;
}
- *utf8_string_size = utf8_local_path_size + utf8_common_path_size - 1;
+ *utf8_string_size = utf8_local_path_size + utf8_common_path_size;
return( 1 );
}
@@ -3678,38 +3682,41 @@
}
utf8_string[ string_index++ ] = (uint8_t) '\\';
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ if( internal_file->location_information->common_path != NULL )
{
- result = libuna_utf8_string_with_index_copy_from_utf16_stream(
- utf8_string,
- utf8_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- error );
- }
- else
- {
- result = libuna_utf8_string_with_index_copy_from_byte_stream(
- utf8_string,
- utf8_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- error );
- }
- if( result != 1 )
- {
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_SET_FAILED,
- "%s: unable to set UTF-8 common path string.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf8_string_with_index_copy_from_utf16_stream(
+ utf8_string,
+ utf8_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ error );
+ }
+ else
+ {
+ result = libuna_utf8_string_with_index_copy_from_byte_stream(
+ utf8_string,
+ utf8_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_SET_FAILED,
+ "%s: unable to set UTF-8 common path string.",
+ function );
- return( -1 );
+ return( -1 );
+ }
}
return( 1 );
}
@@ -3856,36 +3863,40 @@
{
utf16_local_path_size += 1;
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
- {
- result = libuna_utf16_string_size_from_utf16_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- &utf16_common_path_size,
- error );
- }
- else
- {
- result = libuna_utf16_string_size_from_byte_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- &utf16_common_path_size,
- error );
- }
- if( result != 1 )
+ if( internal_file->location_information->common_path != NULL )
{
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_GET_FAILED,
- "%s: unable to retrieve UTF-16 common path string size.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf16_string_size_from_utf16_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ &utf16_common_path_size,
+ error );
+ }
+ else
+ {
+ result = libuna_utf16_string_size_from_byte_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ &utf16_common_path_size,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_GET_FAILED,
+ "%s: unable to retrieve UTF-16 common path string size.",
+ function );
- return( -1 );
+ return( -1 );
+ }
+ utf16_local_path_size -= 1;
}
- *utf16_string_size = utf16_local_path_size + utf16_common_path_size - 1;
+ *utf16_string_size = utf16_local_path_size + utf16_common_path_size;
return( 1 );
}
@@ -4060,38 +4071,41 @@
}
utf16_string[ string_index++ ] = (uint16_t) '\\';
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ if( internal_file->location_information->common_path != NULL )
{
- result = libuna_utf16_string_with_index_copy_from_utf16_stream(
- utf16_string,
- utf16_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- error );
- }
- else
- {
- result = libuna_utf16_string_with_index_copy_from_byte_stream(
- utf16_string,
- utf16_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- error );
- }
- if( result != 1 )
- {
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_SET_FAILED,
- "%s: unable to set UTF-16 common path string.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf16_string_with_index_copy_from_utf16_stream(
+ utf16_string,
+ utf16_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ error );
+ }
+ else
+ {
+ result = libuna_utf16_string_with_index_copy_from_byte_stream(
+ utf16_string,
+ utf16_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_SET_FAILED,
+ "%s: unable to set UTF-16 common path string.",
+ function );
- return( -1 );
+ return( -1 );
+ }
}
return( 1 );
}
@@ -4238,36 +4252,40 @@
{
utf8_network_share_name_size += 1;
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
- {
- result = libuna_utf8_string_size_from_utf16_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- &utf8_common_path_size,
- error );
- }
- else
- {
- result = libuna_utf8_string_size_from_byte_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- &utf8_common_path_size,
- error );
- }
- if( result != 1 )
+ if( internal_file->location_information->common_path != NULL )
{
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_GET_FAILED,
- "%s: unable to retrieve UTF-8 common path string size.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf8_string_size_from_utf16_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ &utf8_common_path_size,
+ error );
+ }
+ else
+ {
+ result = libuna_utf8_string_size_from_byte_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ &utf8_common_path_size,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_GET_FAILED,
+ "%s: unable to retrieve UTF-8 common path string size.",
+ function );
- return( -1 );
+ return( -1 );
+ }
+ utf8_network_share_name_size -= 1;
}
- *utf8_string_size = utf8_network_share_name_size + utf8_common_path_size - 1;
+ *utf8_string_size = utf8_network_share_name_size + utf8_common_path_size;
return( 1 );
}
@@ -4442,38 +4460,41 @@
}
utf8_string[ string_index++ ] = (uint8_t) '\\';
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ if( internal_file->location_information->common_path != NULL )
{
- result = libuna_utf8_string_with_index_copy_from_utf16_stream(
- utf8_string,
- utf8_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- error );
- }
- else
- {
- result = libuna_utf8_string_with_index_copy_from_byte_stream(
- utf8_string,
- utf8_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- error );
- }
- if( result != 1 )
- {
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_SET_FAILED,
- "%s: unable to set UTF-8 common path string.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf8_string_with_index_copy_from_utf16_stream(
+ utf8_string,
+ utf8_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ error );
+ }
+ else
+ {
+ result = libuna_utf8_string_with_index_copy_from_byte_stream(
+ utf8_string,
+ utf8_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_SET_FAILED,
+ "%s: unable to set UTF-8 common path string.",
+ function );
- return( -1 );
+ return( -1 );
+ }
}
return( 1 );
}
@@ -4620,36 +4641,40 @@
{
utf16_network_share_name_size += 1;
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ if( internal_file->location_information->common_path != NULL )
{
- result = libuna_utf16_string_size_from_utf16_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- &utf16_common_path_size,
- error );
- }
- else
- {
- result = libuna_utf16_string_size_from_byte_stream(
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- &utf16_common_path_size,
- error );
- }
- if( result != 1 )
- {
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_GET_FAILED,
- "%s: unable to retrieve UTF-16 common path string size.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf16_string_size_from_utf16_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ &utf16_common_path_size,
+ error );
+ }
+ else
+ {
+ result = libuna_utf16_string_size_from_byte_stream(
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ &utf16_common_path_size,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_GET_FAILED,
+ "%s: unable to retrieve UTF-16 common path string size.",
+ function );
- return( -1 );
+ return( -1 );
+ }
+ utf16_network_share_name_size -= 1;
}
- *utf16_string_size = utf16_network_share_name_size + utf16_common_path_size - 1;
+ *utf16_string_size = utf16_network_share_name_size + utf16_common_path_size;
return( 1 );
}
@@ -4824,38 +4849,41 @@
}
utf16_string[ string_index++ ] = (uint16_t) '\\';
}
- if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
- {
- result = libuna_utf16_string_with_index_copy_from_utf16_stream(
- utf16_string,
- utf16_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
- error );
- }
- else
+ if( internal_file->location_information->common_path != NULL )
{
- result = libuna_utf16_string_with_index_copy_from_byte_stream(
- utf16_string,
- utf16_string_size,
- &string_index,
- internal_file->location_information->common_path,
- internal_file->location_information->common_path_size,
- internal_file->io_handle->ascii_codepage,
- error );
- }
- if( result != 1 )
- {
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_SET_FAILED,
- "%s: unable to set UTF-16 common path string.",
- function );
+ if( ( internal_file->location_information->string_flags & LIBLNK_LOCATION_INFORMATION_STRING_FLAG_COMMON_PATH_IS_UNICODE ) != 0 )
+ {
+ result = libuna_utf16_string_with_index_copy_from_utf16_stream(
+ utf16_string,
+ utf16_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ LIBUNA_ENDIAN_LITTLE | LIBUNA_UTF16_STREAM_ALLOW_UNPAIRED_SURROGATE,
+ error );
+ }
+ else
+ {
+ result = libuna_utf16_string_with_index_copy_from_byte_stream(
+ utf16_string,
+ utf16_string_size,
+ &string_index,
+ internal_file->location_information->common_path,
+ internal_file->location_information->common_path_size,
+ internal_file->io_handle->ascii_codepage,
+ error );
+ }
+ if( result != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_SET_FAILED,
+ "%s: unable to set UTF-16 common path string.",
+ function );
- return( -1 );
+ return( -1 );
+ }
}
return( 1 );
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/liblnk/liblnk_location_information.c new/liblnk-20230928/liblnk/liblnk_location_information.c
--- old/liblnk-20230716/liblnk/liblnk_location_information.c 2023-07-16 07:57:45.000000000 +0200
+++ new/liblnk-20230928/liblnk/liblnk_location_information.c 2023-09-28 10:08:39.000000000 +0200
@@ -332,7 +332,8 @@
function,
common_path_offset );
}
-#endif
+#endif /* defined( HAVE_DEBUG_OUTPUT ) */
+
if( ( location_information_header_size != 28 )
&& ( location_information_header_size != 32 )
&& ( location_information_header_size != 36 ) )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/liblnk.spec new/liblnk-20230928/liblnk.spec
--- old/liblnk-20230716/liblnk.spec 2023-07-16 08:37:02.000000000 +0200
+++ new/liblnk-20230928/liblnk.spec 2023-09-30 10:35:34.000000000 +0200
@@ -1,5 +1,5 @@
Name: liblnk
-Version: 20230716
+Version: 20230928
Release: 1
Summary: Library to access the Windows Shortcut File (LNK) format
Group: System Environment/Libraries
@@ -94,6 +94,6 @@
%{_mandir}/man1/*
%changelog
-* Sun Jul 16 2023 Joachim Metz <joachim.metz(a)gmail.com> 20230716-1
+* Sat Sep 30 2023 Joachim Metz <joachim.metz(a)gmail.com> 20230928-1
- Auto-generated
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/lnktools/info_handle.c new/liblnk-20230928/lnktools/info_handle.c
--- old/liblnk-20230716/lnktools/info_handle.c 2023-07-16 07:58:36.000000000 +0200
+++ new/liblnk-20230928/lnktools/info_handle.c 2023-09-28 14:40:26.000000000 +0200
@@ -726,41 +726,43 @@
return( -1 );
}
- if( path_string_copy_from_file_entry_path(
- &escaped_value_string,
- &escaped_value_string_size,
- value_string,
- value_string_length,
- error ) != 1 )
+ if( value_string_length > 0 )
{
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_COPY_FAILED,
- "%s: unable to copy path from file entry path.",
- function );
+ if( path_string_copy_from_file_entry_path(
+ &escaped_value_string,
+ &escaped_value_string_size,
+ value_string,
+ value_string_length,
+ error ) != 1 )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_COPY_FAILED,
+ "%s: unable to copy path from file entry path.",
+ function );
+
+ goto on_error;
+ }
+ if( escaped_value_string == NULL )
+ {
+ libcerror_error_set(
+ error,
+ LIBCERROR_ERROR_DOMAIN_RUNTIME,
+ LIBCERROR_RUNTIME_ERROR_VALUE_MISSING,
+ "%s: missing escaped value string.",
+ function );
+
+ goto on_error;
+ }
+ fprintf(
+ info_handle->notify_stream,
+ "%" PRIs_SYSTEM "",
+ escaped_value_string );
- goto on_error;
+ memory_free(
+ escaped_value_string );
}
- if( escaped_value_string == NULL )
- {
- libcerror_error_set(
- error,
- LIBCERROR_ERROR_DOMAIN_RUNTIME,
- LIBCERROR_RUNTIME_ERROR_VALUE_MISSING,
- "%s: missing escaped value string.",
- function );
-
- goto on_error;
- }
- fprintf(
- info_handle->notify_stream,
- "%" PRIs_SYSTEM "",
- escaped_value_string );
-
- memory_free(
- escaped_value_string );
-
return( 1 );
on_error:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/m4/python.m4 new/liblnk-20230928/m4/python.m4
--- old/liblnk-20230716/m4/python.m4 2021-11-14 14:23:54.000000000 +0100
+++ new/liblnk-20230928/m4/python.m4 2023-09-23 15:13:51.000000000 +0200
@@ -1,6 +1,6 @@
dnl Functions for Python bindings
dnl
-dnl Version: 20211114
+dnl Version: 20230923
dnl Function to check if the python binary is available
dnl "python${PYTHON_VERSION} python python# python#.#"
@@ -8,7 +8,7 @@
[AS_IF(
[test "x${PYTHON_VERSION}" != x],
[ax_python_progs="python${PYTHON_VERSION}"],
- [ax_python_progs="python python3 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2 python2.7 python2.6 python2.5"])
+ [ax_python_progs="python python3 python3.12 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2 python2.7 python2.6 python2.5"])
AC_CHECK_PROGS(
[PYTHON],
[$ax_python_progs])
@@ -58,7 +58,7 @@
dnl Function to check if the python3 binary is available
dnl "python3 python3.#"
AC_DEFUN([AX_PROG_PYTHON3],
- [ax_python3_progs="python3 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0"
+ [ax_python3_progs="python3 python3.12 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0"
AC_CHECK_PROGS(
[PYTHON3],
[$ax_python3_progs])
@@ -95,7 +95,7 @@
[test "x${PYTHON_CONFIG}" = x],
[AC_CHECK_PROGS(
[PYTHON_CONFIG],
- [python-config python3-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config python2-config python2.7-config python2.6-config python2.5-config])
+ [python-config python3-config python3.12-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config python2-config python2.7-config python2.6-config python2.5-config])
])
AS_IF(
[test "x${PYTHON_CONFIG}" = x],
@@ -131,7 +131,7 @@
[test "x${PYTHON3_CONFIG}" = x],
[AC_CHECK_PROGS(
[PYTHON3_CONFIG],
- [python3-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config])
+ [python3-config python3.12-config python3.11-config python3.10-config python3.9-config python3.8-config python3.7-config python3.6-config python3.5-config python3.4-config python3.3-config python3.2-config python3.1-config python3.0-config])
])
AS_IF(
[test "x${PYTHON3_CONFIG}" = x],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/pylnk/pylnk_file_object_io_handle.c new/liblnk-20230928/pylnk/pylnk_file_object_io_handle.c
--- old/liblnk-20230716/pylnk/pylnk_file_object_io_handle.c 2023-07-16 07:57:46.000000000 +0200
+++ new/liblnk-20230928/pylnk/pylnk_file_object_io_handle.c 2023-09-30 09:35:47.000000000 +0200
@@ -232,13 +232,13 @@
Py_DecRef(
( *file_object_io_handle )->file_object );
- PyGILState_Release(
- gil_state );
-
PyMem_Free(
*file_object_io_handle );
*file_object_io_handle = NULL;
+
+ PyGILState_Release(
+ gil_state );
}
return( 1 );
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/pylnk/pylnk_string.c new/liblnk-20230928/pylnk/pylnk_string.c
--- old/liblnk-20230716/pylnk/pylnk_string.c 2023-07-16 07:57:46.000000000 +0200
+++ new/liblnk-20230928/pylnk/pylnk_string.c 2023-09-28 10:08:39.000000000 +0200
@@ -164,16 +164,6 @@
goto on_error;
}
}
- if( PyUnicode_READY(
- string_object ) == -1 )
- {
- PyErr_Format(
- PyExc_RuntimeError,
- "%s: unable to finalize string object.",
- function );
-
- goto on_error;
- }
PyMem_Free(
utf32_string );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/pyproject.toml new/liblnk-20230928/pyproject.toml
--- old/liblnk-20230716/pyproject.toml 1970-01-01 01:00:00.000000000 +0100
+++ new/liblnk-20230928/pyproject.toml 2023-09-09 08:53:21.000000000 +0200
@@ -0,0 +1,4 @@
+[build-system]
+requires = ["setuptools", "wheel"]
+build-backend = "setuptools.build_meta"
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/setup.cfg new/liblnk-20230928/setup.cfg
--- old/liblnk-20230716/setup.cfg 1970-01-01 01:00:00.000000000 +0100
+++ new/liblnk-20230928/setup.cfg 2023-09-30 10:35:34.000000000 +0200
@@ -0,0 +1,15 @@
+[metadata]
+name = liblnk-python
+version = 20230928
+description = Python bindings module for liblnk
+long_description = Python bindings module for liblnk
+author = Joachim Metz
+author_email = joachim.metz(a)gmail.com
+license = GNU Lesser General Public License v3 or later (LGPLv3+)
+license_files = COPYING COPYING.LESSER
+classifiers =
+ Development Status :: 3 - Alpha
+ Programming Language :: Python
+
+[options]
+python_requires = >=3.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/setup.cfg.in new/liblnk-20230928/setup.cfg.in
--- old/liblnk-20230716/setup.cfg.in 1970-01-01 01:00:00.000000000 +0100
+++ new/liblnk-20230928/setup.cfg.in 2023-09-24 08:24:35.000000000 +0200
@@ -0,0 +1,15 @@
+[metadata]
+name = liblnk-python
+version = @VERSION@
+description = Python bindings module for liblnk
+long_description = Python bindings module for liblnk
+author = Joachim Metz
+author_email = joachim.metz(a)gmail.com
+license = GNU Lesser General Public License v3 or later (LGPLv3+)
+license_files = COPYING COPYING.LESSER
+classifiers =
+ Development Status :: 3 - Alpha
+ Programming Language :: Python
+
+[options]
+python_requires = >=3.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/setup.py new/liblnk-20230928/setup.py
--- old/liblnk-20230716/setup.py 2023-07-16 07:58:12.000000000 +0200
+++ new/liblnk-20230928/setup.py 2023-09-28 10:09:13.000000000 +0200
@@ -1,7 +1,7 @@
#!/usr/bin/env python
#
# Script to build and install Python-bindings.
-# Version: 20230411
+# Version: 20230909
from __future__ import print_function
@@ -25,44 +25,11 @@
from setuptools.command.build_ext import build_ext
from setuptools.command.sdist import sdist
-try:
- from distutils.command.bdist_msi import bdist_msi
-except ImportError:
- bdist_msi = None
-
-try:
- from setuptools.command.bdist_rpm import bdist_rpm
-except ImportError:
- from distutils.command.bdist import bdist as bdist_rpm
-
-
-if not bdist_msi:
- custom_bdist_msi = None
-else:
- class custom_bdist_msi(bdist_msi):
- """Custom handler for the bdist_msi command."""
-
- def run(self):
- """Builds an MSI."""
- # Make a deepcopy of distribution so the following version changes
- # only apply to bdist_msi.
- self.distribution = copy.deepcopy(self.distribution)
-
- # bdist_msi does not support the library version so we add ".1"
- # as a work around.
- self.distribution.metadata.version = "{0:s}.1".format(
- self.distribution.metadata.version)
- bdist_msi.run(self)
-
-
-class custom_bdist_rpm(bdist_rpm):
- """Custom handler for the bdist_rpm command."""
-
- def run(self):
- """Builds a RPM."""
- print("'setup.py bdist_rpm' command not supported use 'rpmbuild' instead.")
- sys.exit(1)
+if (sys.version_info[0], sys.version_info[1]) < (3, 7):
+ print(("Unsupported Python version: {0:s}, version 3.7 or higher "
+ "required.").format(sys.version))
+ sys.exit(1)
class custom_build_ext(build_ext):
@@ -218,49 +185,25 @@
"""The Python module name."""
return "py{0:s}".format(self.library_name[3:])
- @property
- def package_name(self):
- """The package name."""
- return "{0:s}-python".format(self.library_name)
-
- @property
- def package_description(self):
- """The package description."""
- return "Python bindings module for {0:s}".format(self.library_name)
-
- @property
- def project_url(self):
- """The project URL."""
- return "https://github.com/libyal/{0:s}/".format(self.library_name)
-
def _ReadConfigureAc(self):
"""Reads configure.ac to initialize the project information."""
- file_object = open("configure.ac", "rb")
- if not file_object:
- raise IOError("Unable to open: configure.ac")
-
- found_ac_init = False
- found_library_name = False
- for line in file_object.readlines():
- line = line.strip()
- if found_library_name:
- library_version = line[1:-2]
- if sys.version_info[0] >= 3:
- library_version = library_version.decode("ascii")
- self.library_version = library_version
- break
-
- elif found_ac_init:
- library_name = line[1:-2]
- if sys.version_info[0] >= 3:
- library_name = library_name.decode("ascii")
- self.library_name = library_name
- found_library_name = True
+ with open("configure.ac", "r", encoding="utf-8") as file_object:
+ found_ac_init = False
+ found_library_name = False
+ for line in file_object.readlines():
+ line = line.strip()
+ if found_library_name:
+ library_version = line[1:-2]
+ self.library_version = library_version
+ break
- elif line.startswith(b"AC_INIT"):
- found_ac_init = True
+ elif found_ac_init:
+ library_name = line[1:-2]
+ self.library_name = library_name
+ found_library_name = True
- file_object.close()
+ elif line.startswith("AC_INIT"):
+ found_ac_init = True
if not self.library_name or not self.library_version:
raise RuntimeError(
@@ -271,30 +214,23 @@
if not self.library_name:
raise RuntimeError("Missing library name")
- file_object = open("Makefile.am", "rb")
- if not file_object:
- raise IOError("Unable to open: Makefile.am")
-
- found_subdirs = False
- for line in file_object.readlines():
- line = line.strip()
- if found_subdirs:
- library_name, _, _ = line.partition(b" ")
- if sys.version_info[0] >= 3:
- library_name = library_name.decode("ascii")
-
- self.include_directories.append(library_name)
+ with open("Makefile.am", "r", encoding="utf-8") as file_object:
+ found_subdirs = False
+ for line in file_object.readlines():
+ line = line.strip()
+ if found_subdirs:
+ library_name, _, _ = line.partition(" ")
+
+ self.include_directories.append(library_name)
- if library_name.startswith("lib"):
- self.library_names.append(library_name)
+ if library_name.startswith("lib"):
+ self.library_names.append(library_name)
- if library_name == self.library_name:
- break
-
- elif line.startswith(b"SUBDIRS"):
- found_subdirs = True
+ if library_name == self.library_name:
+ break
- file_object.close()
+ elif line.startswith("SUBDIRS"):
+ found_subdirs = True
if not self.include_directories or not self.library_names:
raise RuntimeError(
@@ -306,12 +242,8 @@
CMDCLASS = {
"build_ext": custom_build_ext,
- "bdist_rpm": custom_bdist_rpm,
"sdist": custom_sdist}
-if custom_bdist_msi:
- CMDCLASS["bdist_msi"] = custom_bdist_msi
-
SOURCES = []
# TODO: replace by detection of MSC
@@ -344,18 +276,7 @@
# TODO: find a way to detect missing python.h
# e.g. on Ubuntu python-dev is not installed by python-pip
-# TODO: what about description and platform in egg file
-
-setup(
- name=project_information.package_name,
- url=project_information.project_url,
- version=project_information.library_version,
- description=project_information.package_description,
- long_description=project_information.package_description,
- long_description_content_type="text/plain",
- author="Joachim Metz",
- author_email="joachim.metz(a)gmail.com",
- license="GNU Lesser General Public License v3 or later (LGPLv3+)",
+setup_args = dict(
cmdclass=CMDCLASS,
ext_modules=[
Extension(
@@ -364,8 +285,9 @@
include_dirs=project_information.include_directories,
libraries=[],
library_dirs=[],
- sources=SOURCES,
- ),
- ],
+ sources=SOURCES
+ )
+ ]
)
+setup(**setup_args)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/tests/pylnk_test_file.py new/liblnk-20230928/tests/pylnk_test_file.py
--- old/liblnk-20230716/tests/pylnk_test_file.py 2023-07-16 07:58:36.000000000 +0200
+++ new/liblnk-20230928/tests/pylnk_test_file.py 2023-09-28 14:40:15.000000000 +0200
@@ -541,6 +541,23 @@
lnk_file.close()
+ def test_get_data_block(self):
+ """Tests the get_data_block function."""
+ test_source = unittest.source
+ if not test_source:
+ raise unittest.SkipTest("missing source")
+
+ lnk_file = pylnk.file()
+
+ lnk_file.open(test_source)
+
+ number_of_data_blocks = lnk_file.get_number_of_data_blocks()
+ if number_of_data_blocks:
+ data_block = lnk_file.get_data_block(0)
+ self.assertIsNotNone(data_block)
+
+ lnk_file.close()
+
if __name__ == "__main__":
argument_parser = argparse.ArgumentParser()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/liblnk-20230716/tests/test_python_module.sh new/liblnk-20230928/tests/test_python_module.sh
--- old/liblnk-20230716/tests/test_python_module.sh 2023-07-16 07:58:36.000000000 +0200
+++ new/liblnk-20230928/tests/test_python_module.sh 2023-09-28 14:40:15.000000000 +0200
@@ -8,7 +8,7 @@
EXIT_IGNORE=77;
TEST_FUNCTIONS="";
-TEST_FUNCTIONS_WITH_INPUT="file support";
+TEST_FUNCTIONS_WITH_INPUT="data_block file support";
OPTION_SETS="";
TEST_TOOL_DIRECTORY=".";
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fortio for openSUSE:Factory checked in at 2023-10-02 20:05:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fortio (Old)
and /work/SRC/openSUSE:Factory/.fortio.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fortio"
Mon Oct 2 20:05:06 2023 rev:51 rq:1114312 version:1.60.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/fortio/fortio.changes 2023-09-15 22:11:07.233246149 +0200
+++ /work/SRC/openSUSE:Factory/.fortio.new.28202/fortio.changes 2023-10-02 20:06:35.927090075 +0200
@@ -1,0 +2,9 @@
+Fri Sep 29 08:45:54 UTC 2023 - kastl(a)b1-systems.de
+
+- Update to version 1.60.2:
+ * add new -pprof on flag to explictly allow pprof, off by
+ default. (#845)
+ * Bump google.golang.org/grpc from 1.58.1 to 1.58.2 (#842)
+ * Bump actions/checkout from 4.0.0 to 4.1.0 (#843)
+
+-------------------------------------------------------------------
Old:
----
fortio-1.60.1.obscpio
New:
----
fortio-1.60.2.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fortio.spec ++++++
--- /var/tmp/diff_new_pack.I7Hmlc/_old 2023-10-02 20:06:37.315139993 +0200
+++ /var/tmp/diff_new_pack.I7Hmlc/_new 2023-10-02 20:06:37.315139993 +0200
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: fortio
-Version: 1.60.1
+Version: 1.60.2
Release: 0
Summary: Load testing library, command line tool, advanced echo server and web UI
License: Apache-2.0
@@ -42,8 +42,7 @@
Fortio also includes a set of server side features (similar to httpbin) to help debugging and testing: request echo back including headers, adding latency or error codes with a probability distribution, tcp echoing, tcp proxying, http fan out/scatter and gather proxy server, GRPC echo/health in addition to http, etc...
%prep
-%setup -q
-%setup -q -T -D -a 1
+%autosetup -p1 -a 1
%build
go build \
++++++ _service ++++++
--- /var/tmp/diff_new_pack.I7Hmlc/_old 2023-10-02 20:06:37.347141143 +0200
+++ /var/tmp/diff_new_pack.I7Hmlc/_new 2023-10-02 20:06:37.351141287 +0200
@@ -3,7 +3,7 @@
<param name="url">https://github.com/fortio/fortio</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v1.60.1</param>
+ <param name="revision">v1.60.2</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.I7Hmlc/_old 2023-10-02 20:06:37.367141863 +0200
+++ /var/tmp/diff_new_pack.I7Hmlc/_new 2023-10-02 20:06:37.371142007 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/fortio/fortio</param>
- <param name="changesrevision">dcad10f29dab524eeb5a94c3037a63d04f101310</param></service></servicedata>
+ <param name="changesrevision">058ac0fa4dcba33d908aed396104c3fdfae06a8e</param></service></servicedata>
(No newline at EOF)
++++++ fortio-1.60.1.obscpio -> fortio-1.60.2.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/.github/workflows/codecov.yml new/fortio-1.60.2/.github/workflows/codecov.yml
--- old/fortio-1.60.1/.github/workflows/codecov.yml 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/.github/workflows/codecov.yml 2023-09-29 02:40:21.000000000 +0200
@@ -11,7 +11,7 @@
build:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # pin@v3
+ - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # pin@v3
with:
fetch-depth: 2
- name: Set up Go
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/.github/workflows/codeql-analysis.yml new/fortio-1.60.2/.github/workflows/codeql-analysis.yml
--- old/fortio-1.60.1/.github/workflows/codeql-analysis.yml 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/.github/workflows/codeql-analysis.yml 2023-09-29 02:40:21.000000000 +0200
@@ -40,7 +40,7 @@
steps:
- name: Checkout repository
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # pin@v3
+ uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # pin@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/.github/workflows/main.yml new/fortio-1.60.2/.github/workflows/main.yml
--- old/fortio-1.60.1/.github/workflows/main.yml 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/.github/workflows/main.yml 2023-09-29 02:40:21.000000000 +0200
@@ -22,7 +22,7 @@
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # pin@v3
+ - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # pin@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@68827325e0b33c7199eb31dd4e31fbe9023e06e3 # pin@v2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/.github/workflows/manual-build.yml new/fortio-1.60.2/.github/workflows/manual-build.yml
--- old/fortio-1.60.1/.github/workflows/manual-build.yml 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/.github/workflows/manual-build.yml 2023-09-29 02:40:21.000000000 +0200
@@ -21,7 +21,7 @@
run: |
echo "tag is ${{ github.event.inputs.tag }}"
- - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # pin@v3
+ - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # pin@v3
with:
ref: ${{ github.event.inputs.tag }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/README.md new/fortio-1.60.2/README.md
--- old/fortio-1.60.1/README.md 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/README.md 2023-09-29 02:40:21.000000000 +0200
@@ -1,4 +1,4 @@
-<!-- 1.60.1 -->
+<!-- 1.60.2 -->
# Fortio
[![Awesome Go](https://fortio.org/mentioned-badge.svg)](https://github.com/avelino/awe…
@@ -60,13 +60,13 @@
The [releases](https://github.com/fortio/fortio/releases) page has binaries for many OS/architecture combinations (see assets):
```shell
-curl -L https://github.com/fortio/fortio/releases/download/v1.60.1/fortio-linux_amd… \
+curl -L https://github.com/fortio/fortio/releases/download/v1.60.2/fortio-linux_amd… \
| sudo tar -C / -xvzpf -
# or the debian package
-wget https://github.com/fortio/fortio/releases/download/v1.60.1/fortio_1.60.1_am…
-dpkg -i fortio_1.60.1_amd64.deb
+wget https://github.com/fortio/fortio/releases/download/v1.60.2/fortio_1.60.2_am…
+dpkg -i fortio_1.60.2_amd64.deb
# or the rpm
-rpm -i https://github.com/fortio/fortio/releases/download/v1.60.1/fortio-1.60.1-1.…
+rpm -i https://github.com/fortio/fortio/releases/download/v1.60.2/fortio-1.60.2-1.…
# and more, see assets in release page
```
@@ -76,7 +76,7 @@
brew install fortio
```
-On Windows, download https://github.com/fortio/fortio/releases/download/v1.60.1/fortio_win_1.60.… and extract `fortio.exe` to any location, then using the Windows Command Prompt:
+On Windows, download https://github.com/fortio/fortio/releases/download/v1.60.2/fortio_win_1.60.… and extract `fortio.exe` to any location, then using the Windows Command Prompt:
```
fortio.exe server
```
@@ -128,7 +128,7 @@
<!-- use release/updateFlags.sh to update this section -->
<pre>
<!-- USAGE_START -->
-Φορτίο 1.60.1 usage:
+Φορτίο 1.60.2 usage:
fortio command [flags] target
where command is one of: load (load testing), server (starts ui, rest api,
http-echo, redirect, proxies, tcp-echo, udp-echo and grpc ping servers),
@@ -305,6 +305,8 @@
than -maxpayloadsizekb. Setting this switches http to POST.
-ping
grpc load test: use ping instead of health
+ -pprof
+ Enable pprof http endpoint in the Web UI handler server
-profile file
write .cpu and .mem profiles to file
-proxy-all-headers
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/Webtest.sh new/fortio-1.60.2/Webtest.sh
--- old/fortio-1.60.1/Webtest.sh 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/Webtest.sh 2023-09-29 02:40:21.000000000 +0200
@@ -44,7 +44,7 @@
exit 1
fi
-DOCKERID=$(docker run -d --ulimit nofile=$FILE_LIMIT --net host --name $DOCKERNAME fortio/fortio:webtest server -ui-path $FORTIO_UI_PREFIX -loglevel $LOGLEVEL -maxpayloadsizekb $MAXPAYLOAD -timeout=$TIMEOUT)
+DOCKERID=$(docker run -d --ulimit nofile=$FILE_LIMIT --net host --name $DOCKERNAME fortio/fortio:webtest server -ui-path $FORTIO_UI_PREFIX -loglevel $LOGLEVEL -maxpayloadsizekb $MAXPAYLOAD -timeout=$TIMEOUT -pprof)
function cleanup {
set +e # errors are ok during cleanup
# docker logs "$DOCKERID" # uncomment to debug
@@ -157,7 +157,8 @@
docker stop "$DOCKERID"
docker rm $DOCKERNAME
DOCKERNAME=fortio_report
-DOCKERID=$(docker run -d --ulimit nofile=$FILE_LIMIT --name $DOCKERNAME fortio/fortio:webtest report -loglevel $LOGLEVEL)
+# Even with pprof the report mode won't have pprof endpoint
+DOCKERID=$(docker run -d --ulimit nofile=$FILE_LIMIT --name $DOCKERNAME fortio/fortio:webtest report -loglevel $LOGLEVEL -pprof)
docker ps
CURL="docker exec $DOCKERNAME $FORTIO_BIN_PATH curl -loglevel $LOGLEVEL"
if $CURL "$PPROF_URL" ; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/cli/fortio_main.go new/fortio-1.60.2/cli/fortio_main.go
--- old/fortio-1.60.1/cli/fortio_main.go 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/cli/fortio_main.go 2023-09-29 02:40:21.000000000 +0200
@@ -179,6 +179,7 @@
accessLogFileFormat = flag.String("access-log-format", "json",
"`format` for access log. Supported values: [json, influx]")
calcQPS = flag.Bool("calc-qps", false, "Calculate the qps based on number of requests (-n) and duration (-t)")
+ pprofOn = flag.Bool("pprof", false, "Enable pprof http endpoint in the Web UI handler server")
)
// serverArgCheck always returns true after checking arguments length.
@@ -251,6 +252,7 @@
}
case "server":
isServer = serverArgCheck()
+ tlsOptions := &bincommon.SharedHTTPOptions().TLSOptions
if *tcpPortFlag != disabled {
fnet.TCPEchoServer("tcp-echo", *tcpPortFlag)
}
@@ -258,13 +260,23 @@
fnet.UDPEchoServer("udp-echo", *udpPortFlag, *udpAsyncFlag)
}
if *grpcPortFlag != disabled {
- fgrpc.PingServer(*grpcPortFlag, *healthSvcFlag, uint32(*maxStreamsFlag), &bincommon.SharedHTTPOptions().TLSOptions)
+ fgrpc.PingServer(*grpcPortFlag, *healthSvcFlag, uint32(*maxStreamsFlag), tlsOptions)
}
if *redirectFlag != disabled {
fhttp.RedirectToHTTPS(*redirectFlag)
}
if *echoPortFlag != disabled {
- if !ui.Serve(hook, baseURL, *echoPortFlag, *echoDbgPathFlag, *uiPathFlag, *dataDirFlag, percList()) {
+ uiCfg := ui.ServerConfig{
+ BaseURL: baseURL,
+ Port: *echoPortFlag,
+ DebugPath: *echoDbgPathFlag,
+ UIPath: *uiPathFlag,
+ DataDir: *dataDirFlag,
+ PProfOn: *pprofOn,
+ PercentileList: percList(),
+ TLSOptions: tlsOptions,
+ }
+ if !ui.Serve(hook, &uiCfg) {
os.Exit(1) // error already logged
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/fhttp/http_server.go new/fortio-1.60.2/fhttp/http_server.go
--- old/fortio-1.60.1/fhttp/http_server.go 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/fhttp/http_server.go 2023-09-29 02:40:21.000000000 +0200
@@ -486,6 +486,7 @@
// SetupPPROF add pprof to the mux (mirror the init() of http pprof).
func SetupPPROF(mux *http.ServeMux) {
+ log.Warnf("pprof endpoints enabled on /debug/pprof/*")
mux.HandleFunc("/debug/pprof/", LogAndCall("pprof:index", pprof.Index))
mux.HandleFunc("/debug/pprof/cmdline", LogAndCall("pprof:cmdline", pprof.Cmdline))
mux.HandleFunc("/debug/pprof/profile", LogAndCall("pprof:profile", pprof.Profile))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/go.mod new/fortio-1.60.2/go.mod
--- old/fortio-1.60.1/go.mod 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/go.mod 2023-09-29 02:40:21.000000000 +0200
@@ -14,7 +14,7 @@
github.com/golang/protobuf v1.5.3
github.com/google/uuid v1.3.1
golang.org/x/net v0.15.0
- google.golang.org/grpc v1.58.1
+ google.golang.org/grpc v1.58.2
)
// Local dev of dependencies changes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/go.sum new/fortio-1.60.2/go.sum
--- old/fortio-1.60.1/go.sum 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/go.sum 2023-09-29 02:40:21.000000000 +0200
@@ -37,8 +37,8 @@
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230913181813-007df8e322eb h1:Isk1sSH7bovx8Rti2wZK0UZF6oraBDK74uoyLEEVFN0=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230913181813-007df8e322eb/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M=
-google.golang.org/grpc v1.58.1 h1:OL+Vz23DTtrrldqHK49FUOPHyY75rvFqJfXC84NYW58=
-google.golang.org/grpc v1.58.1/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0=
+google.golang.org/grpc v1.58.2 h1:SXUpjxeVF3FKrTYQI4f4KvbGD5u2xccdYdurwowix5I=
+google.golang.org/grpc v1.58.2/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0=
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.60.1/ui/uihandler.go new/fortio-1.60.2/ui/uihandler.go
--- old/fortio-1.60.1/ui/uihandler.go 2023-09-14 22:05:42.000000000 +0200
+++ new/fortio-1.60.2/ui/uihandler.go 2023-09-29 02:40:21.000000000 +0200
@@ -644,29 +644,38 @@
return strings.TrimSuffix(debugPath, "/") + "/metrics"
}
+type ServerConfig struct {
+ BaseURL, Port, DebugPath, UIPath, DataDir string
+ PProfOn bool
+ PercentileList []float64
+ TLSOptions *fhttp.TLSOptions
+}
+
// Serve starts the fhttp.Serve() plus the UI server on the given port
// and paths (empty disables the feature). uiPath should end with /
// (be a 'directory' path). Returns true if server is started successfully.
-func Serve(hook bincommon.FortioHook, baseurl, port, debugpath, uipath, datadir string, percentileList []float64) bool {
+func Serve(hook bincommon.FortioHook, cfg *ServerConfig) bool {
startTime = time.Now()
- // Kinda ugly that we get most params past in but we get the tls stuff from flags directly,
- // it avoids making an already too long list of string params longer. probably should make a FortioConfig struct.
- mux, addr := fhttp.ServeTLS(port, debugpath, &bincommon.SharedHTTPOptions().TLSOptions)
+ mux, addr := fhttp.ServeTLS(cfg.Port, cfg.DebugPath, cfg.TLSOptions)
if addr == nil {
return false // Error already logged
}
- if uipath == "" {
+ if cfg.UIPath == "" {
return true
}
- fhttp.SetupPPROF(mux)
- uiPath = uipath
+ if cfg.PProfOn {
+ fhttp.SetupPPROF(mux) // This now logs a warning as it's a potential risk
+ } else {
+ log.LogVf("Not serving pprof endpoint.")
+ }
+ uiPath = cfg.UIPath
if uiPath[len(uiPath)-1] != '/' {
log.Warnf("Adding missing trailing / to UI path '%s'", uiPath)
uiPath += "/"
}
- debugPath = debugpath
- echoPath = fhttp.EchoDebugPath(debugpath)
- metricsPath = getMetricsPath(debugpath)
+ debugPath = cfg.DebugPath
+ echoPath = fhttp.EchoDebugPath(debugPath)
+ metricsPath = getMetricsPath(debugPath)
mux.HandleFunc(uiPath, Handler)
fetchPath = uiPath + fetchURI
// For backward compatibility with http:// only fetcher
@@ -676,8 +685,8 @@
fhttp.CheckConnectionClosedHeader = true // needed for proxy to avoid errors
// New REST apis (includes the data/ handler)
- rapi.AddHandlers(hook, mux, baseurl, uiPath, datadir)
- rapi.DefaultPercentileList = percentileList
+ rapi.AddHandlers(hook, mux, cfg.BaseURL, uiPath, cfg.DataDir)
+ rapi.DefaultPercentileList = cfg.PercentileList
logoPath = version.Short() + "/static/img/fortio-logo-gradient-no-bg.svg"
chartJSPath = version.Short() + "/static/js/Chart.min.js"
@@ -719,7 +728,7 @@
debugPath, echoPath, dflagsPath, metricsPath)
mux.HandleFunc(metricsPath, metrics.Exporter)
- urlHostPort = fnet.NormalizeHostPort(port, addr)
+ urlHostPort = fnet.NormalizeHostPort(cfg.Port, addr)
uiMsg := "\t UI started - visit:\n\t\t"
if strings.Contains(urlHostPort, "-unix-socket=") {
uiMsg += fmt.Sprintf("fortio curl %s http://localhost%s", urlHostPort, uiPath)
++++++ fortio.obsinfo ++++++
--- /var/tmp/diff_new_pack.I7Hmlc/_old 2023-10-02 20:06:37.535147905 +0200
+++ /var/tmp/diff_new_pack.I7Hmlc/_new 2023-10-02 20:06:37.535147905 +0200
@@ -1,5 +1,5 @@
name: fortio
-version: 1.60.1
-mtime: 1694721942
-commit: dcad10f29dab524eeb5a94c3037a63d04f101310
+version: 1.60.2
+mtime: 1695948021
+commit: 058ac0fa4dcba33d908aed396104c3fdfae06a8e
++++++ vendor.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/version.go new/vendor/google.golang.org/grpc/version.go
--- old/vendor/google.golang.org/grpc/version.go 2023-09-15 11:29:33.000000000 +0200
+++ new/vendor/google.golang.org/grpc/version.go 2023-09-29 10:45:59.000000000 +0200
@@ -19,4 +19,4 @@
package grpc
// Version is the current grpc version.
-const Version = "1.58.1"
+const Version = "1.58.2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/modules.txt new/vendor/modules.txt
--- old/vendor/modules.txt 2023-09-15 11:29:33.000000000 +0200
+++ new/vendor/modules.txt 2023-09-29 10:45:59.000000000 +0200
@@ -76,7 +76,7 @@
# google.golang.org/genproto/googleapis/rpc v0.0.0-20230913181813-007df8e322eb
## explicit; go 1.19
google.golang.org/genproto/googleapis/rpc/status
-# google.golang.org/grpc v1.58.1
+# google.golang.org/grpc v1.58.2
## explicit; go 1.19
google.golang.org/grpc
google.golang.org/grpc/attributes
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package php-redis for openSUSE:Factory checked in at 2023-10-02 20:05:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/php-redis (Old)
and /work/SRC/openSUSE:Factory/.php-redis.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "php-redis"
Mon Oct 2 20:05:05 2023 rev:8 rq:1114294 version:6.0.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/php-redis/php-redis.changes 2023-09-13 20:45:24.699888603 +0200
+++ /work/SRC/openSUSE:Factory/.php-redis.new.28202/php-redis.changes 2023-10-02 20:06:33.979020016 +0200
@@ -1,0 +2,8 @@
+Thu Sep 28 18:58:43 UTC 2023 - Arjen de Korte <suse+build(a)de-korte.org>
+
+- Updated to 6.0.1
+ * Fix memory leak and segfault in Redis::exec
+ * Fix unknown expiration modifier
+ * Update documentation
+
+-------------------------------------------------------------------
Old:
----
redis-6.0.0.tgz
New:
----
redis-6.0.1.tgz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ php-redis.spec ++++++
--- /var/tmp/diff_new_pack.Q2vaxX/_old 2023-10-02 20:06:35.507074969 +0200
+++ /var/tmp/diff_new_pack.Q2vaxX/_new 2023-10-02 20:06:35.511075113 +0200
@@ -29,7 +29,7 @@
%define php_cfgdir %{_sysconfdir}/%{php_name}/conf.d
%endif
Name: %{php_name}-%{pkg_name}
-Version: 6.0.0
+Version: 6.0.1
Release: 0
Summary: API for communicating with Redis servers
License: PHP-3.01
++++++ redis-6.0.0.tgz -> redis-6.0.1.tgz ++++++
++++ 113191 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fcitx-rime for openSUSE:Factory checked in at 2023-10-02 20:05:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fcitx-rime (Old)
and /work/SRC/openSUSE:Factory/.fcitx-rime.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fcitx-rime"
Mon Oct 2 20:05:04 2023 rev:16 rq:1114277 version:0.3.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/fcitx-rime/fcitx-rime.changes 2021-01-20 18:27:54.103543983 +0100
+++ /work/SRC/openSUSE:Factory/.fcitx-rime.new.28202/fcitx-rime.changes 2023-10-02 20:06:32.834978873 +0200
@@ -1,0 +2,6 @@
+Fri Sep 29 07:51:11 UTC 2023 - Marguerite Su <i(a)marguerite.su>
+
+- add fcitx-rime-0.3.2-rime-sync-user-data.patch
+ * rime sync_user_data can't accept argument
+
+-------------------------------------------------------------------
New:
----
fcitx-rime-0.3.2-rime-sync-user-data.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fcitx-rime.spec ++++++
--- /var/tmp/diff_new_pack.C1OFqk/_old 2023-10-02 20:06:33.867015989 +0200
+++ /var/tmp/diff_new_pack.C1OFqk/_new 2023-10-02 20:06:33.867015989 +0200
@@ -1,7 +1,7 @@
#
# spec file for package fcitx-rime
#
-# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@@ -20,10 +20,11 @@
Version: 0.3.2
Release: 0
Summary: Rime input engine support for Fcitx
-License: GPL-2.0+
+License: GPL-2.0-or-later
Group: System/I18n/Chinese
-Url: https://github.com/fcitx/fcitx-rime
+URL: https://github.com/fcitx/fcitx-rime
Source: http://download.fcitx-im.org/fcitx-rime/%{name}-%{version}.tar.xz
+Patch: fcitx-rime-0.3.2-rime-sync-user-data.patch
BuildRequires: brise
BuildRequires: cmake
BuildRequires: fcitx-devel
@@ -51,6 +52,7 @@
%prep
%setup -q
+%patch -p1
%build
mkdir -p build
++++++ fcitx-rime-0.3.2-rime-sync-user-data.patch ++++++
Index: fcitx-rime-0.3.2/src/fcitx-rime.c
===================================================================
--- fcitx-rime-0.3.2.orig/src/fcitx-rime.c
+++ fcitx-rime-0.3.2/src/fcitx-rime.c
@@ -603,7 +603,7 @@ void FcitxRimeToggleDeploy(void* arg)
{
FcitxRime* rime = (FcitxRime*) arg;
if (rime->session_id) {
- rime->api->sync_user_data(rime->session_id);
+ rime->api->sync_user_data();
rime->session_id = 0;
}
rime->api->finalize();
1
0