openSUSE Commits
Threads by month
- ----- 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
June 2024
- 2 participants
- 1220 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package freecell-solver for openSUSE:Factory checked in at 2024-06-28 15:47:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/freecell-solver (Old)
and /work/SRC/openSUSE:Factory/.freecell-solver.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "freecell-solver"
Fri Jun 28 15:47:46 2024 rev:10 rq:1183831 version:6.10.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/freecell-solver/freecell-solver.changes 2024-02-26 19:46:53.597167629 +0100
+++ /work/SRC/openSUSE:Factory/.freecell-solver.new.18349/freecell-solver.changes 2024-06-28 15:51:28.815686424 +0200
@@ -1,0 +2,8 @@
+Fri Jun 28 07:25:41 UTC 2024 - Christophe Marin <christophe(a)krop.fr>
+
+- Update to 6.10.0
+ * Add experimental functions in FC_SOLVE_INSTANCE_PARAMS_QUERYING
+ * Fewer compile-time / lint-time warnings
+ * Convert some regular expressions from \d to [0-9]
+
+-------------------------------------------------------------------
Old:
----
freecell-solver-6.8.0.tar.xz
New:
----
freecell-solver-6.10.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ freecell-solver.spec ++++++
--- /var/tmp/diff_new_pack.i98NWL/_old 2024-06-28 15:51:31.455783001 +0200
+++ /var/tmp/diff_new_pack.i98NWL/_new 2024-06-28 15:51:31.459783148 +0200
@@ -20,7 +20,7 @@
%define libname libfreecell-solver
%bcond_with tests
Name: freecell-solver
-Version: 6.8.0
+Version: 6.10.0
Release: 0
Summary: A Freecell Solver
License: MIT
@@ -78,6 +78,12 @@
%prep
%autosetup -p1
+# https://github.com/shlomif/fc-solve/issues/99
+rm -r .tidyall.d
+
+# Unneeded 3rdparty module
+rm -r rinutils
+
%build
%cmake -DBUILD_STATIC_LIBRARY:BOOL=FALSE \
-DCMAKE_INSTALL_DOCDIR:STRING=%{_datadir}/doc/freecell-solver \
++++++ freecell-solver-6.8.0.tar.xz -> freecell-solver-6.10.0.tar.xz ++++++
++++ 6343 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-osc-tiny for openSUSE:Factory checked in at 2024-06-28 15:47:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-osc-tiny (Old)
and /work/SRC/openSUSE:Factory/.python-osc-tiny.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-osc-tiny"
Fri Jun 28 15:47:44 2024 rev:34 rq:1183801 version:0.10.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-osc-tiny/python-osc-tiny.changes 2024-05-22 21:32:44.714567797 +0200
+++ /work/SRC/openSUSE:Factory/.python-osc-tiny.new.18349/python-osc-tiny.changes 2024-06-28 15:51:23.487491514 +0200
@@ -1,0 +2,7 @@
+Thu Jun 27 15:45:09 UTC 2024 - Chen Huang <chhuang(a)suse.com>
+
+- Release 0.10.0
+ * Added capability to create requests (#165)
+ * Install the theme for the docs (#163)
+
+-------------------------------------------------------------------
Old:
----
osc-tiny-0.9.1.tar.gz
New:
----
osc-tiny-0.10.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-osc-tiny.spec ++++++
--- /var/tmp/diff_new_pack.Iu2a4S/_old 2024-06-28 15:51:28.563677205 +0200
+++ /var/tmp/diff_new_pack.Iu2a4S/_new 2024-06-28 15:51:28.567677352 +0200
@@ -19,7 +19,7 @@
%define skip_python2 1
%{?sle15allpythons}
Name: python-osc-tiny
-Version: 0.9.1
+Version: 0.10.0
Release: 0
Summary: Client API for openSUSE BuildService
License: MIT
++++++ osc-tiny-0.9.1.tar.gz -> osc-tiny-0.10.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/PKG-INFO new/osc-tiny-0.10.0/PKG-INFO
--- old/osc-tiny-0.9.1/PKG-INFO 2024-05-22 10:58:11.398337600 +0200
+++ new/osc-tiny-0.10.0/PKG-INFO 2024-06-27 13:00:45.511684400 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: osc-tiny
-Version: 0.9.1
+Version: 0.10.0
Summary: Client API for openSUSE BuildService
Home-page: https://github.com/SUSE/osc-tiny
Author: Andreas Hasenkopf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osc_tiny.egg-info/PKG-INFO new/osc-tiny-0.10.0/osc_tiny.egg-info/PKG-INFO
--- old/osc-tiny-0.9.1/osc_tiny.egg-info/PKG-INFO 2024-05-22 10:58:11.000000000 +0200
+++ new/osc-tiny-0.10.0/osc_tiny.egg-info/PKG-INFO 2024-06-27 13:00:45.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: osc-tiny
-Version: 0.9.1
+Version: 0.10.0
Summary: Client API for openSUSE BuildService
Home-page: https://github.com/SUSE/osc-tiny
Author: Andreas Hasenkopf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osc_tiny.egg-info/SOURCES.txt new/osc-tiny-0.10.0/osc_tiny.egg-info/SOURCES.txt
--- old/osc-tiny-0.9.1/osc_tiny.egg-info/SOURCES.txt 2024-05-22 10:58:11.000000000 +0200
+++ new/osc-tiny-0.10.0/osc_tiny.egg-info/SOURCES.txt 2024-06-27 13:00:45.000000000 +0200
@@ -26,6 +26,7 @@
osctiny/extensions/staging.py
osctiny/extensions/users.py
osctiny/models/__init__.py
+osctiny/models/request.py
osctiny/models/staging.py
osctiny/tests/__init__.py
osctiny/tests/base.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osctiny/__init__.py new/osc-tiny-0.10.0/osctiny/__init__.py
--- old/osc-tiny-0.9.1/osctiny/__init__.py 2024-05-22 10:58:07.000000000 +0200
+++ new/osc-tiny-0.10.0/osctiny/__init__.py 2024-06-27 13:00:41.000000000 +0200
@@ -6,4 +6,4 @@
__all__ = ['Osc', 'bs_requests', 'buildresults', 'comments', 'packages',
'projects', 'search', 'users']
-__version__ = "0.9.1"
+__version__ = "0.10.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osctiny/extensions/bs_requests.py new/osc-tiny-0.10.0/osctiny/extensions/bs_requests.py
--- old/osc-tiny-0.9.1/osctiny/extensions/bs_requests.py 2024-05-22 10:58:07.000000000 +0200
+++ new/osc-tiny-0.10.0/osctiny/extensions/bs_requests.py 2024-06-27 13:00:41.000000000 +0200
@@ -8,7 +8,8 @@
from lxml.etree import XMLSyntaxError
from lxml.objectify import ObjectifiedElement
-from ..models import IntOrString, ParamsType
+from ..models import E, IntOrString, ParamsType
+from ..models.request import Action, Review
from ..utils.base import ExtensionBase
@@ -27,6 +28,41 @@
)
return request_id
+ # pylint: disable=too-many-arguments
+ def create(self, actions: typing.Iterable[Action],
+ reviewers: typing.Optional[typing.Iterable[Review]] = None,
+ addrevision: bool = False, ignore_delegate: bool = False,
+ ignore_build_state: bool = False) -> int:
+ """
+ Create a request
+
+ :param actions: Actions to be included in request
+ :param reviewers: Reviewers to be assigned
+ :param addrevision: Ask the server to add revisions of the current sources to the request.
+ :param ignore_delegate: Enforce a new package instance in a project which has
+ ``OBS:DelegateRequestTarget`` set
+ :param ignore_build_state: Skip the build state check
+ :return: Request ID
+
+ .. versionadded:: 0.10.0
+ """
+ request = E.request(*(action.asxml() for action in actions),
+ *(review.asxml() for review in reviewers or []))
+
+ response = self.osc.request(
+ url=urljoin(self.osc.url, self.base_path),
+ method="POST",
+ data=request,
+ params={
+ "cmd": "create",
+ "addrevision": addrevision,
+ "ignore_delegate": ignore_delegate,
+ "ignore_build_state": ignore_build_state
+ },
+ )
+ data = self.osc.get_objectified_xml(response)
+ return int(data.get("id"))
+
def get_list(self, **params: ParamsType) -> ObjectifiedElement:
"""
Get a list or request objects
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osctiny/models/__init__.py new/osc-tiny-0.10.0/osctiny/models/__init__.py
--- old/osc-tiny-0.9.1/osctiny/models/__init__.py 2024-05-22 10:58:07.000000000 +0200
+++ new/osc-tiny-0.10.0/osctiny/models/__init__.py 2024-06-27 13:00:41.000000000 +0200
@@ -5,8 +5,13 @@
from io import BufferedReader, BytesIO, StringIO
import typing
-from lxml.objectify import ObjectifiedElement
+from lxml.objectify import ElementMaker, ObjectifiedElement
+#: XML maker without python type annotations
+E = ElementMaker(annotate=False)
+#: Acceptable types for HTTP parameters
ParamsType = typing.Union[bytes, str, StringIO, BytesIO, BufferedReader, dict, ObjectifiedElement]
+
+#: Int or string with only numbers
IntOrString = typing.Union[int, str]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osctiny/models/request.py new/osc-tiny-0.10.0/osctiny/models/request.py
--- old/osc-tiny-0.9.1/osctiny/models/request.py 1970-01-01 01:00:00.000000000 +0100
+++ new/osc-tiny-0.10.0/osctiny/models/request.py 2024-06-27 13:00:41.000000000 +0200
@@ -0,0 +1,105 @@
+"""
+Models for requests
+^^^^^^^^^^^^^^^^^^^
+
+.. versionadded:: 0.10.0
+"""
+# pylint: disable=missing-function-docstring,no-member
+# Note: The `no-member` rule needs to be disabled due to this bug:
+# https://github.com/pylint-dev/pylint/issues/7891
+import enum
+import typing
+
+from lxml.objectify import ObjectifiedElement
+
+from . import E
+
+
+class ActionType(enum.Enum):
+ """
+ Request action types as defined in OpenBuildService
+ """
+ ADD_ROLE = "add_role"
+ CHANGE_DEVEL = "change_devel"
+ DELETE = "delete"
+ MAINTENANCE_INCIDENT = "maintenance_incident"
+ MAINTENANCE_RELEASE = "maintenance_release"
+ RELEASE = "release"
+ SET_BUGOWNER = "set_bugowner"
+ SUBMIT = "submit"
+
+
+class Person(typing.NamedTuple):
+ """
+ Person model for use in actions
+ """
+ name: str
+
+ def asxml(self) -> ObjectifiedElement:
+ return E.person(name=self.name)
+
+
+class Source(typing.NamedTuple):
+ """
+ Source for an action
+ """
+ project: str
+ package: str
+ rev: typing.Optional[str] = None
+
+ def asxml(self) -> ObjectifiedElement:
+ return E.source(**{field: getattr(self, field)
+ for field in self._fields
+ if getattr(self, field, None) is not None})
+
+
+class Target(typing.NamedTuple):
+ """
+ Target for an action
+ """
+ project: str
+ package: str
+ releaseproject: typing.Optional[str] = None
+
+ def asxml(self) -> ObjectifiedElement:
+ return E.target(**{field: getattr(self, field)
+ for field in self._fields
+ if getattr(self, field, None) is not None})
+
+
+class Action(typing.NamedTuple):
+ """
+ Request action
+ """
+ type: ActionType
+ target: Target
+ person: typing.Optional[Person] = None
+ source: typing.Optional[Source] = None
+
+ def asxml(self) -> ObjectifiedElement:
+ sub_elems = [self.target.asxml()]
+ for field in (self.person, self.source):
+ if field is not None:
+ sub_elems.append(field.asxml())
+ return E.action(*sub_elems, type=self.type.value)
+
+
+class By(enum.Enum):
+ """
+ Types by which reviews can be assigned
+ """
+ USER = "by_user"
+ GROUP = "by_group"
+ PROJECT = "by_project"
+ PACKAGE = "by_package"
+
+
+class Review(typing.NamedTuple):
+ """
+ Assign a review
+ """
+ by: By
+ name: str
+
+ def asxml(self) -> ObjectifiedElement:
+ return E.review(**{self.by.value: self.name})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osctiny/models/staging.py new/osc-tiny-0.10.0/osctiny/models/staging.py
--- old/osc-tiny-0.9.1/osctiny/models/staging.py 2024-05-22 10:58:07.000000000 +0200
+++ new/osc-tiny-0.10.0/osctiny/models/staging.py 2024-06-27 13:00:41.000000000 +0200
@@ -1,15 +1,16 @@
"""
Models for Staging
^^^^^^^^^^^^^^^^^^
+
+.. versionadded:: 0.9.0
"""
# pylint: disable=missing-class-docstring,missing-function-docstring
import enum
import typing
-from lxml.objectify import ObjectifiedElement, ElementMaker
-
+from lxml.objectify import ObjectifiedElement
-E = ElementMaker(annotate=False)
+from ..models import E
class ExcludedRequest(typing.NamedTuple):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/osctiny/tests/test_requests.py new/osc-tiny-0.10.0/osctiny/tests/test_requests.py
--- old/osc-tiny-0.9.1/osctiny/tests/test_requests.py 2024-05-22 10:58:07.000000000 +0200
+++ new/osc-tiny-0.10.0/osctiny/tests/test_requests.py 2024-06-27 13:00:41.000000000 +0200
@@ -1,10 +1,13 @@
# -*- coding: utf-8 -*-
import re
+from unittest import mock
from urllib.parse import urlparse, parse_qs
from lxml.objectify import ObjectifiedElement
+from requests.models import Response
import responses
+from ..models.request import Action, ActionType, Person, Review, Source, Target, By
from .base import OscTest, CallbackFactory
@@ -304,6 +307,9 @@
and "changereviewstate" in params.get("cmd", [])):
status = 403
body = "Forbidden for url: http://api.example.com/request/30902"
+ elif request.method == "POST" and re.search("/request/?\?", request.url):
+ status = 200
+ body = """<request id="42"/>"""
else:
status = 404
body = """
@@ -343,6 +349,91 @@
)
@responses.activate
+ def test_create(self):
+ target = Target(project="Foo:Bar:Factory", package="hello-world")
+ actions = [
+ Action(
+ type=ActionType.SUBMIT,
+ source=Source(project="Foo:Bar", package="hello-world"),
+ target=target
+ ),
+ Action(
+ type=ActionType.DELETE,
+ target=target
+ )
+ ]
+ reviewers = [
+ Review(by=By.USER, name="nemo"),
+ Review(by=By.GROUP, name="superusers")
+ ]
+
+ with self.subTest("HTTP Request, only Actions"):
+ self.assertEqual(42, self.osc.requests.create(actions=actions))
+
+ with self.subTest("HTTP Request, with Reviewers"):
+ self.assertEqual(42, self.osc.requests.create(actions=actions,
+ reviewers=reviewers))
+
+ mock_response = Response()
+ mock_response.status_code = 200
+ mock_response._content = b"""<request id="42"/>"""
+
+ with self.subTest("XML content, only Actions"), \
+ mock.patch.object(self.osc.session, "send",
+ return_value=mock_response) as mock_session:
+ self.osc.requests.create(actions=actions)
+ self.assertEqual(
+ mock_session.call_args[0][0].body,
+ b"<?xml version='1.0' encoding='utf-8'?>\n"
+ b'<request>'
+ b'<action type="submit">'
+ b'<target project="Foo:Bar:Factory" package="hello-world"/>'
+ b'<source project="Foo:Bar" package="hello-world"/>'
+ b'</action>'
+ b'<action type="delete">'
+ b'<target project="Foo:Bar:Factory" package="hello-world"/>'
+ b'</action>'
+ b'</request>'
+ )
+
+ with self.subTest("XML content, with Reviewers"), \
+ mock.patch.object(self.osc.session, "send",
+ return_value=mock_response) as mock_session:
+ self.osc.requests.create(actions=actions, reviewers=reviewers)
+ self.assertEqual(
+ mock_session.call_args[0][0].body,
+ b"<?xml version='1.0' encoding='utf-8'?>\n"
+ b'<request>'
+ b'<action type="submit">'
+ b'<target project="Foo:Bar:Factory" package="hello-world"/>'
+ b'<source project="Foo:Bar" package="hello-world"/>'
+ b'</action>'
+ b'<action type="delete">'
+ b'<target project="Foo:Bar:Factory" package="hello-world"/>'
+ b'</action>'
+ b'<review by_user="nemo"/>'
+ b'<review by_group="superusers"/>'
+ b'</request>'
+ )
+
+ with self.subTest("XML content, set bugowner"), \
+ mock.patch.object(self.osc.session, "send",
+ return_value=mock_response) as mock_session:
+ self.osc.requests.create(actions=[Action(type=ActionType.SET_BUGOWNER,
+ target=Target(project="Foo:Bar", package="p"),
+ person=Person(name="nemo"))])
+ self.assertEqual(
+ mock_session.call_args[0][0].body,
+ b"<?xml version='1.0' encoding='utf-8'?>\n"
+ b'<request>'
+ b'<action type="set_bugowner">'
+ b'<target project="Foo:Bar" package="p"/>'
+ b'<person name="nemo"/>'
+ b'</action>'
+ b'</request>'
+ )
+
+ @responses.activate
def test_get_list(self):
response = self.osc.requests.get_list()
self.assertEqual(response.tag, "directory")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/osc-tiny-0.9.1/setup.py new/osc-tiny-0.10.0/setup.py
--- old/osc-tiny-0.9.1/setup.py 2024-05-22 10:58:07.000000000 +0200
+++ new/osc-tiny-0.10.0/setup.py 2024-06-27 13:00:41.000000000 +0200
@@ -26,7 +26,7 @@
setup(
name='osc-tiny',
- version='0.9.1',
+ version='0.10.0',
description='Client API for openSUSE BuildService',
long_description=long_description,
long_description_content_type="text/markdown",
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package valkey for openSUSE:Factory checked in at 2024-06-28 15:47:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/valkey (Old)
and /work/SRC/openSUSE:Factory/.valkey.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "valkey"
Fri Jun 28 15:47:42 2024 rev:3 rq:1183786 version:7.2.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/valkey/valkey.changes 2024-06-24 20:53:08.847989165 +0200
+++ /work/SRC/openSUSE:Factory/.valkey.new.18349/valkey.changes 2024-06-28 15:51:12.551091450 +0200
@@ -1,0 +2,5 @@
+Wed Jun 26 06:25:23 UTC 2024 - Georg Pfuetzenreuter <georg.pfuetzenreuter(a)suse.com>
+
+- Repair Redis instance detection (boo#1226986)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ valkey.spec ++++++
--- /var/tmp/diff_new_pack.2B3WSc/_old 2024-06-28 15:51:19.487345185 +0200
+++ /var/tmp/diff_new_pack.2B3WSc/_new 2024-06-28 15:51:19.491345331 +0200
@@ -1,7 +1,7 @@
#
# spec file for package valkey
#
-# Copyright (c) SUSE LLC
+# Copyright (c) 2024 SUSE LLC
# Copyright (c) Jonathan Wright
# Copyright (c) Neal Gompa
#
@@ -94,7 +94,6 @@
%prep
%autosetup -p1
-
# Module API version safety check
api=`sed -n -e 's/#define VALKEYMODULE_APIVER_[0-9][0-9]* //p' src/valkeymodule.h`
if test "$api" != "%{valkey_modules_abi}"; then
@@ -212,4 +211,3 @@
%{_libexecdir}/migrate_redis_to_valkey.bash
%{_bindir}/redis-*
-
++++++ migrate_redis_to_valkey.bash ++++++
--- /var/tmp/diff_new_pack.2B3WSc/_old 2024-06-28 15:51:19.543347233 +0200
+++ /var/tmp/diff_new_pack.2B3WSc/_new 2024-06-28 15:51:19.547347380 +0200
@@ -2,8 +2,8 @@
# Identify whether any config files exist
configfiles=($(find /etc/redis -maxdepth 1 -name "*.conf"))
-redisunits=(basename $(find /etc/systemd/system -maxdepth 1 -name "redis(a)*.service"))
-sentinelunits=(basename $(find /etc/systemd/system -maxdepth 1 -name "redis-sentinel(a)*.service"))
+redisunits=($(find /etc/systemd/system -maxdepth 1 -name "redis(a)*.service" -execdir basename {} \;))
+sentinelunits=($(find /etc/systemd/system -maxdepth 1 -name "redis-sentinel(a)*.service" -execdir basename {} \;))
if [ ${#configfiles[@]} -gt 0 ]; then
for configfile in ${configfiles[@]}
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package tiled for openSUSE:Factory checked in at 2024-06-28 15:47:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tiled (Old)
and /work/SRC/openSUSE:Factory/.tiled.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tiled"
Fri Jun 28 15:47:38 2024 rev:41 rq:1183721 version:1.11.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/tiled/tiled.changes 2023-08-05 12:55:32.264821172 +0200
+++ /work/SRC/openSUSE:Factory/.tiled.new.18349/tiled.changes 2024-06-28 15:50:59.194604795 +0200
@@ -1,0 +2,53 @@
+Fri Jun 28 05:29:20 UTC 2024 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 1.11.0:
+ * Added --project command-line parameter for use when exporting (#3797)
+ * Added group layer names in "Move Object to Layer" menu (#3454)
+ * Added lock icon to open tabs for which the file is read-only
+ * Added Shift modifier to cut when capturing a tile stamp (by kdx2a, #3961)
+ * Made adding "Copy" when duplicating optional and disabled by default (#3917)
+ * Changed default shortcut for "Save As" to Ctrl+Shift+S and removed shortcut from "Save All" (#3933)
+ * Layer names are now trimmed when edited in the UI, to avoid accidental whitespace
+ * Scripting: Added API for working with worlds (#3539)
+ * Scripting: Added Object.setProperty overload for setting nested values
+ * Scripting: Added Tile.image for accessing a tile's image data
+ * Scripting: Added Image.copy overload that takes a rectangle
+ * Scripting: Added Tileset.imageFileName and ImageLayer.imageFileName
+ * Scripting: Added FilePath.localFile and FileEdit.fileName (string alternatives to Qt.QUrl properties)
+ * Scripting: Added tiled.color to create color values
+ * Scripting: Made Tileset.margin and Tileset.tileSpacing writable
+ * Scripting: Restored compatibility for MapObject.polygon (#3845)
+ * Scripting: Fixed issues with editing properties after setting class values from script
+ * Scripting: Fixed setting/getting object reference values when nested as a class member
+ * TMX format: Embedded images are now also supported on tilesets and image layers
+ * JSON format: Fixed tile order when loading a tileset using the old format
+ * Godot 4 plugin: Added support for exporting objects (by Rick Yorgason, #3615)
+ * Godot 4 plugin: Use Godot 4.2 tile transformation flags (by Rick Yorgason, #3895)
+ * Godot 4 plugin: Fixed positioning of tile collision shapes (by Ryan Petrie, #3862)
+ * GameMaker 2 plugin: Fixed positioning of objects on isometric maps
+ * Python plugin: Added support for implementing tileset formats (with Pablo Duboue, #3857)
+ * Python plugin: Raised minimum Python version to 3.8
+ * Python plugin: Now built against Python 3.12 for Windows 10+
+ * tmxrasterizer: Added --hide-object and --show-object arguments (by Lars Luz, #3819)
+ * tmxrasterizer: Added --frames and --frame-duration arguments to export animated maps as multiple images (#3868)
+ * tmxrasterizer: Fixed --hide/show-layer to work on group layers (#3899)
+ * tmxviewer: Added support for viewing JSON maps (#3866)
+ * tmxrasterizer/viewer: Fixed loading of XML object templates (with Christian Schaadt, #3977)
+ * AutoMapping: Ignore empty outputs per-rule (#3523)
+ * Automapping: Added per-input-layer properties for ignoring flip flags (#3803)
+ * AutoMapping: Always apply output sets with empty index
+ * AutoMapping: Fixed adding of new tilesets used by applied changes
+ * Windows: Fixed the support for WebP images (updated to Qt 6.6.1, #3661)
+ * Fixed issues related to map and tileset reloading
+ * Fixed possible crash after assigning to tiled.activeAsset
+ * Fixed the option to resolve properties on export to also resolve class members (#3411, #3315)
+ * Fixed terrain tool behavior and terrain overlays after changing terrain set type (#3204, #3260)
+ * Fixed mouse handling issue when zooming while painting (#3863)
+ * Fixed possible crash after a scripted tool disappears while active
+ * Fixed updating of used tilesets after resizing map (#3884)
+ * Fixed alignment of shortcuts in action search
+ * Fixed object assignment buttons in tile collision editor (#3399)
+ * AppImage: Fixed ability to open paths with spaces from the CLI (#3914)
+ * AppImage: Updated to Sentry 0.7.6
+
+-------------------------------------------------------------------
Old:
----
v1.10.2.tar.gz
New:
----
v1.11.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ tiled.spec ++++++
--- /var/tmp/diff_new_pack.2ECLao/_old 2024-06-28 15:51:02.266715955 +0200
+++ /var/tmp/diff_new_pack.2ECLao/_new 2024-06-28 15:51:02.270716099 +0200
@@ -1,7 +1,7 @@
#
# spec file for package tiled
#
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: tiled
-Version: 1.10.2
+Version: 1.11.0
Release: 0
Summary: A tilemap editor
License: GPL-2.0-or-later
++++++ v1.10.2.tar.gz -> v1.11.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/tiled/v1.10.2.tar.gz /work/SRC/openSUSE:Factory/.tiled.new.18349/v1.11.0.tar.gz differ: char 12, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-dunamai for openSUSE:Factory checked in at 2024-06-28 15:47:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-dunamai (Old)
and /work/SRC/openSUSE:Factory/.python-dunamai.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-dunamai"
Fri Jun 28 15:47:33 2024 rev:6 rq:1183716 version:1.21.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-dunamai/python-dunamai.changes 2024-06-06 12:34:56.709561246 +0200
+++ /work/SRC/openSUSE:Factory/.python-dunamai.new.18349/python-dunamai.changes 2024-06-28 15:50:33.605678899 +0200
@@ -1,0 +2,7 @@
+Fri Jun 28 01:52:24 UTC 2024 - Richard Rahl <rrahl0(a)disroot.org>
+
+- update to 1.21.2:
+ * Fixed: Some timestamps could fail to parse on Python 3.5 and 3.6.
+
+
+-------------------------------------------------------------------
Old:
----
python-dunamai-1.21.1.tar.gz
New:
----
python-dunamai-1.21.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-dunamai.spec ++++++
--- /var/tmp/diff_new_pack.NiH4em/_old 2024-06-28 15:50:39.301885008 +0200
+++ /var/tmp/diff_new_pack.NiH4em/_new 2024-06-28 15:50:39.317885586 +0200
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-dunamai
-Version: 1.21.1
+Version: 1.21.2
Release: 0
Summary: Dynamic version generation
License: MIT
++++++ python-dunamai-1.21.1.tar.gz -> python-dunamai-1.21.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/CHANGELOG.md new/dunamai-1.21.2/CHANGELOG.md
--- old/dunamai-1.21.1/CHANGELOG.md 2024-05-04 04:31:55.686449300 +0200
+++ new/dunamai-1.21.2/CHANGELOG.md 2024-06-27 05:58:28.811013500 +0200
@@ -1,3 +1,7 @@
+## v1.21.2 (2024-06-26)
+
+* Fixed: Some timestamps could fail to parse on Python 3.5 and 3.6.
+
## v1.21.1 (2024-05-03)
* Fixed: Distance was calculated inconsistently for Git
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/PKG-INFO new/dunamai-1.21.2/PKG-INFO
--- old/dunamai-1.21.1/PKG-INFO 1970-01-01 01:00:00.000000000 +0100
+++ new/dunamai-1.21.2/PKG-INFO 1970-01-01 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: dunamai
-Version: 1.21.1
+Version: 1.21.2
Summary: Dynamic version generation
Home-page: https://github.com/mtkennerly/dunamai
License: MIT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/dunamai/__init__.py new/dunamai-1.21.2/dunamai/__init__.py
--- old/dunamai-1.21.1/dunamai/__init__.py 2024-05-03 17:00:19.560035000 +0200
+++ new/dunamai-1.21.2/dunamai/__init__.py 2024-06-27 05:28:41.888780600 +0200
@@ -64,6 +64,11 @@
""".strip()
_VALID_PVP = r"^\d+(\.\d+)*(-[a-zA-Z0-9]+)*$"
+_TIMESTAMP_GENERIC = "%Y-%m-%dT%H:%M:%S.%f%z"
+_TIMESTAMP_GENERIC_SPACE = "%Y-%m-%d %H:%M:%S.%f%z"
+_TIMESTAMP_GIT_ISO_STRICT = "%Y-%m-%dT%H:%M:%S%z"
+_TIMESTAMP_GIT_ISO = "%Y-%m-%d %H:%M:%S %z"
+
_T = TypeVar("_T")
@@ -186,9 +191,7 @@
return ""
-def _pattern_error(
- primary: str, pattern: Union[str, Pattern], tags: Optional[Sequence[str]] = None
-) -> str:
+def _pattern_error(primary: str, pattern: Union[str, Pattern], tags: Optional[Sequence[str]] = None) -> str:
parts = [primary, "Pattern:\n{}".format(pattern)]
if tags is not None:
@@ -214,11 +217,7 @@
)
output = result.stdout.decode().strip()
if codes and result.returncode not in codes:
- raise RuntimeError(
- "The command '{}' returned code {}. Output:\n{}".format(
- command, result.returncode, output
- )
- )
+ raise RuntimeError("The command '{}' returned code {}. Output:\n{}".format(command, result.returncode, output))
return (result.returncode, output)
@@ -267,9 +266,7 @@
except re.error as e:
raise re.error(
_pattern_error(
- "The pattern is an invalid regular expression: {}".format(
- e.msg # type: ignore
- ),
+ "The pattern is an invalid regular expression: {}".format(e.msg), # type: ignore
pattern,
),
e.pattern, # type: ignore
@@ -283,9 +280,7 @@
if base is not None:
break
except IndexError:
- raise ValueError(
- _pattern_error("The pattern did not include required capture group 'base'", pattern)
- )
+ raise ValueError(_pattern_error("The pattern did not include required capture group 'base'", pattern))
if pattern_match is None or base is None:
if latest_source:
raise ValueError(
@@ -315,9 +310,7 @@
except ValueError:
raise ValueError("Epoch '{}' is not a valid number".format(epoch))
- return _MatchedVersionPattern(
- source, base, stage_revision, newer_unmatched_tags, tagged_metadata, epoch
- )
+ return _MatchedVersionPattern(source, base, stage_revision, newer_unmatched_tags, tagged_metadata, epoch)
def _blank(value: Optional[_T], default: _T) -> _T:
@@ -375,9 +368,7 @@
if code != 0:
if expected_vcs == Vcs.Git and dubious_ownership_flag in msg:
raise RuntimeError(dubious_ownership_error)
- raise RuntimeError(
- "This does not appear to be a {} project".format(expected_vcs.value.title())
- )
+ raise RuntimeError("This does not appear to be a {} project".format(expected_vcs.value.title()))
return expected_vcs
else:
disproven = []
@@ -415,9 +406,7 @@
return None
-def _find_higher_file(
- name: str, start: Optional[Path], limit: Optional[str] = None
-) -> Optional[Path]:
+def _find_higher_file(name: str, start: Optional[Path], limit: Optional[str] = None) -> Optional[Path]:
"""
:param name: Bare name of a file we'd like to find.
:param limit: Give up if we find a file/folder with this name.
@@ -435,9 +424,7 @@
class _GitRefInfo:
- def __init__(
- self, ref: str, commit: str, creatordate: str, committerdate: str, taggerdate: str
- ):
+ def __init__(self, ref: str, commit: str, creatordate: str, committerdate: str, taggerdate: str):
self.fullref = ref
self.commit = commit
self.creatordate = self.normalize_git_dt(creatordate)
@@ -457,10 +444,7 @@
return _parse_git_timestamp_iso_strict(timestamp)
def __repr__(self):
- return (
- "_GitRefInfo(ref={!r}, commit={!r}, creatordate={!r},"
- " committerdate={!r}, taggerdate={!r})"
- ).format(
+ return ("_GitRefInfo(ref={!r}, commit={!r}, creatordate={!r}," " committerdate={!r}, taggerdate={!r})").format(
self.fullref, self.commit_offset, self.creatordate, self.committerdate, self.taggerdate
)
@@ -478,9 +462,7 @@
return self.tag_topo_lookup[self.fullref]
except KeyError:
raise RuntimeError(
- "Unable to determine commit offset for ref {} in data: {}".format(
- self.fullref, self.tag_topo_lookup
- )
+ "Unable to determine commit offset for ref {} in data: {}".format(self.fullref, self.tag_topo_lookup)
)
@property
@@ -499,19 +481,15 @@
return "refs/tags/{}".format(ref)
@staticmethod
- def from_git_tag_topo_order(
- tag_branch: str, git_version: List[int], path: Optional[Path]
- ) -> Mapping[str, int]:
- cmd = (
- '{} --simplify-by-decoration --topo-order --decorate=full {} "--format=%H%d"'
- ).format(_git_log(git_version), tag_branch)
+ def from_git_tag_topo_order(tag_branch: str, git_version: List[int], path: Optional[Path]) -> Mapping[str, int]:
+ cmd = ('{} --simplify-by-decoration --topo-order --decorate=full {} "--format=%H%d"').format(
+ _git_log(git_version), tag_branch
+ )
if git_version >= [2, 16]:
cmd += " --decorate-refs=refs/tags/"
code, logmsg = _run_cmd(cmd, path)
- filtered_lines = [
- x for x in logmsg.strip().splitlines(keepends=False) if " (" not in x or "tag: " in x
- ]
+ filtered_lines = [x for x in logmsg.strip().splitlines(keepends=False) if " (" not in x or "tag: " in x]
tag_lookup = {}
for tag_offset, line in enumerate(filtered_lines):
@@ -522,9 +500,7 @@
if tags:
# remove trailing ')'
tags = tags[:-1]
- taglist = [
- tag.strip() for tag in tags.split(", ") if tag.strip().startswith("tag: ")
- ]
+ taglist = [tag.strip() for tag in tags.split(", ") if tag.strip().startswith("tag: ")]
taglist = [tag.split()[-1] for tag in taglist]
taglist = [_GitRefInfo.normalize_tag_ref(tag) for tag in taglist]
for tag in taglist:
@@ -637,9 +613,7 @@
def __eq__(self, other: Any) -> bool:
if not isinstance(other, Version):
- raise TypeError(
- "Cannot compare Version with type {}".format(other.__class__.__qualname__)
- )
+ raise TypeError("Cannot compare Version with type {}".format(other.__class__.__qualname__))
return (
self.base == other.base
and self.stage == other.stage
@@ -676,9 +650,7 @@
def __lt__(self, other: Any) -> bool:
if not isinstance(other, Version):
- raise TypeError(
- "Cannot compare Version with type {}".format(other.__class__.__qualname__)
- )
+ raise TypeError("Cannot compare Version with type {}".format(other.__class__.__qualname__))
import packaging.version as pv
@@ -863,9 +835,7 @@
failed = False
try:
- matched_pattern = _match_version_pattern(
- pattern, [normalized], True, strict=True, pattern_prefix=None
- )
+ matched_pattern = _match_version_pattern(pattern, [normalized], True, strict=True, pattern_prefix=None)
except ValueError:
failed = True
@@ -1087,9 +1057,7 @@
vcs=vcs,
)
- matched_pattern = _match_version_pattern(
- pattern, [tag], latest_tag, strict, pattern_prefix
- )
+ matched_pattern = _match_version_pattern(pattern, [tag], latest_tag, strict, pattern_prefix)
if matched_pattern is None:
return cls._fallback(
strict,
@@ -1144,28 +1112,20 @@
branch = msg
code, msg = _run_cmd(
- '{} -n 1 --format="format:{}"'.format(
- _git_log(git_version), "%H" if full_commit else "%h"
- ),
+ '{} -n 1 --format="format:{}"'.format(_git_log(git_version), "%H" if full_commit else "%h"),
path,
codes=[0, 128],
)
if code == 128:
- return cls._fallback(
- strict, distance=0, dirty=True, branch=branch, concerns=concerns, vcs=vcs
- )
+ return cls._fallback(strict, distance=0, dirty=True, branch=branch, concerns=concerns, vcs=vcs)
commit = msg
timestamp = None
if git_version < [2, 2]:
- code, msg = _run_cmd(
- '{} -n 1 --pretty=format:"%ci"'.format(_git_log(git_version)), path
- )
+ code, msg = _run_cmd('{} -n 1 --pretty=format:"%ci"'.format(_git_log(git_version)), path)
timestamp = _parse_git_timestamp_iso(msg)
else:
- code, msg = _run_cmd(
- '{} -n 1 --pretty=format:"%cI"'.format(_git_log(git_version)), path
- )
+ code, msg = _run_cmd('{} -n 1 --pretty=format:"%cI"'.format(_git_log(git_version)), path)
timestamp = _parse_git_timestamp_iso_strict(msg)
code, msg = _run_cmd("git describe --always --dirty", path)
@@ -1177,9 +1137,7 @@
dirty = True
if git_version < [2, 7]:
- code, msg = _run_cmd(
- 'git for-each-ref "refs/tags/**" --format "%(refname)" --sort -creatordate', path
- )
+ code, msg = _run_cmd('git for-each-ref "refs/tags/**" --format "%(refname)" --sort -creatordate', path)
if not msg:
try:
code, msg = _run_cmd("git rev-list --count HEAD", path)
@@ -1197,13 +1155,10 @@
vcs=vcs,
)
tags = [line.replace("refs/tags/", "") for line in msg.splitlines()]
- matched_pattern = _match_version_pattern(
- pattern, tags, latest_tag, strict, pattern_prefix
- )
+ matched_pattern = _match_version_pattern(pattern, tags, latest_tag, strict, pattern_prefix)
else:
code, msg = _run_cmd(
- 'git for-each-ref "refs/tags/**" --merged {}'.format(tag_branch)
- + ' --format "%(refname)'
+ 'git for-each-ref "refs/tags/**" --merged {}'.format(tag_branch) + ' --format "%(refname)'
"@{%(objectname)"
"@{%(creatordate:iso-strict)"
"@{%(*committerdate:iso-strict)"
@@ -1238,9 +1193,7 @@
detailed_tags.append(_GitRefInfo(*parts).with_tag_topo_lookup(tag_topo_lookup))
tags = [t.ref for t in sorted(detailed_tags, key=lambda x: x.sort_key, reverse=True)]
- matched_pattern = _match_version_pattern(
- pattern, tags, latest_tag, strict, pattern_prefix
- )
+ matched_pattern = _match_version_pattern(pattern, tags, latest_tag, strict, pattern_prefix)
if matched_pattern is None:
try:
@@ -1325,9 +1278,7 @@
branch = data.get("branch")
if tag is None or tag == "null":
- return cls._fallback(
- strict, distance=distance, commit=commit, branch=branch, vcs=vcs
- )
+ return cls._fallback(strict, distance=distance, commit=commit, branch=branch, vcs=vcs)
all_tags_file = _find_higher_file(".hgtags", path, ".hg")
if all_tags_file is None:
@@ -1341,9 +1292,7 @@
continue
all_tags.append(parts[1])
- matched_pattern = _match_version_pattern(
- pattern, all_tags, latest_tag, strict, pattern_prefix
- )
+ matched_pattern = _match_version_pattern(pattern, all_tags, latest_tag, strict, pattern_prefix)
if matched_pattern is None:
return cls._fallback(
strict,
@@ -1376,9 +1325,7 @@
code, msg = _run_cmd("hg branch", path)
branch = msg
- code, msg = _run_cmd(
- 'hg id --template "{}"'.format("{id}" if full_commit else "{id|short}"), path
- )
+ code, msg = _run_cmd('hg id --template "{}"'.format("{id}" if full_commit else "{id|short}"), path)
commit = msg if set(msg) != {"0"} else None
code, msg = _run_cmd('hg log --limit 1 --template "{date|rfc3339date}"', path)
@@ -1485,9 +1432,7 @@
distance = int(msg)
except Exception:
distance = 0
- return cls._fallback(
- strict, distance=distance, commit=commit, dirty=dirty, timestamp=timestamp, vcs=vcs
- )
+ return cls._fallback(strict, distance=distance, commit=commit, dirty=dirty, timestamp=timestamp, vcs=vcs)
tags = msg.splitlines()
matched_pattern = _match_version_pattern(pattern, tags, latest_tag, strict, pattern_prefix)
@@ -1569,9 +1514,7 @@
timestamp = _parse_timestamp(msg)
if not commit:
- return cls._fallback(
- strict, distance=0, commit=commit, dirty=dirty, timestamp=timestamp, vcs=vcs
- )
+ return cls._fallback(strict, distance=0, commit=commit, dirty=dirty, timestamp=timestamp, vcs=vcs)
code, msg = _run_cmd('svn ls -v -r {} "{}/{}"'.format(commit, url, tag_dir), path)
lines = [line.split(maxsplit=5) for line in msg.splitlines()[1:]]
tags_to_revs = {line[-1].strip("/"): int(line[0]) for line in lines}
@@ -1580,14 +1523,10 @@
distance = int(commit)
except Exception:
distance = 0
- return cls._fallback(
- strict, distance=distance, commit=commit, dirty=dirty, timestamp=timestamp, vcs=vcs
- )
+ return cls._fallback(strict, distance=distance, commit=commit, dirty=dirty, timestamp=timestamp, vcs=vcs)
tags_to_sources_revs = {}
for tag, rev in tags_to_revs.items():
- code, msg = _run_cmd(
- 'svn log -v "{}/{}/{}" --stop-on-copy'.format(url, tag_dir, tag), path
- )
+ code, msg = _run_cmd('svn log -v "{}/{}/{}" --stop-on-copy'.format(url, tag_dir, tag), path)
for line in msg.splitlines():
match = re.search(r"A /{}/{} \(from .+?:(\d+)\)".format(tag_dir, tag), line)
if match:
@@ -1687,11 +1626,7 @@
timestamp=timestamp,
vcs=vcs,
)
- tags_to_revs = {
- line.split()[0]: int(line.split()[1])
- for line in msg.splitlines()
- if line.split()[1] != "?"
- }
+ tags_to_revs = {line.split()[0]: int(line.split()[1]) for line in msg.splitlines() if line.split()[1] != "?"}
tags = [x[1] for x in sorted([(v, k) for k, v in tags_to_revs.items()], reverse=True)]
matched_pattern = _match_version_pattern(pattern, tags, latest_tag, strict, pattern_prefix)
@@ -1756,9 +1691,7 @@
code, msg = _run_cmd("fossil branch current", path)
branch = msg
- code, msg = _run_cmd(
- "fossil sql \"SELECT value FROM vvar WHERE name = 'checkout-hash' LIMIT 1\"", path
- )
+ code, msg = _run_cmd("fossil sql \"SELECT value FROM vvar WHERE name = 'checkout-hash' LIMIT 1\"", path)
commit = msg.strip("'")
code, msg = _run_cmd(
@@ -1825,8 +1758,7 @@
)
tags_to_distance = [
- (line.rsplit(",", 1)[0][5:-1], int(line.rsplit(",", 1)[1]) - 1)
- for line in msg.splitlines()
+ (line.rsplit(",", 1)[0][5:-1], int(line.rsplit(",", 1)[1]) - 1) for line in msg.splitlines()
]
matched_pattern = _match_version_pattern(
@@ -1934,7 +1866,7 @@
tag_state = line.split("State ", 1)[1]
elif line.startswith("Date:"):
tag_timestamp = _parse_timestamp(
- line.split("Date: ", 1)[1].replace(" UTC", "Z"), space=True
+ line.split("Date: ", 1)[1].replace(" UTC", "Z"), format=_TIMESTAMP_GENERIC_SPACE
)
elif line.startswith(" "):
tag_message += line[4:]
@@ -1956,9 +1888,7 @@
else:
tag_message += line
if tag_after_header:
- tag_meta.append(
- {"state": tag_state, "timestamp": tag_timestamp, "message": tag_message.strip()}
- )
+ tag_meta.append({"state": tag_state, "timestamp": tag_timestamp, "message": tag_message.strip()})
tag_meta_by_msg = {} # type: dict
for meta in tag_meta:
@@ -1968,10 +1898,7 @@
):
tag_meta_by_msg[meta["message"]] = meta
- tags = [
- t["message"]
- for t in sorted(tag_meta_by_msg.values(), key=lambda x: x["timestamp"], reverse=True)
- ]
+ tags = [t["message"] for t in sorted(tag_meta_by_msg.values(), key=lambda x: x["timestamp"], reverse=True)]
matched_pattern = _match_version_pattern(pattern, tags, latest_tag, strict, pattern_prefix)
if matched_pattern is None:
@@ -2377,21 +2304,16 @@
def _parse_git_timestamp_iso_strict(raw: str) -> dt.datetime:
# Remove colon from timezone offset for pre-3.7 Python:
compat = re.sub(r"(.*T.*[-+]\d+):(\d+)", r"\1\2", raw)
- return dt.datetime.strptime(compat, "%Y-%m-%dT%H:%M:%S%z")
+ return _parse_timestamp(compat, _TIMESTAMP_GIT_ISO_STRICT)
def _parse_git_timestamp_iso(raw: str) -> dt.datetime:
# Remove colon from timezone offset for pre-3.7 Python:
compat = re.sub(r"(.* .* [-+]\d+):(\d+)", r"\1\2", raw)
- return dt.datetime.strptime(compat, "%Y-%m-%d %H:%M:%S %z")
-
+ return _parse_timestamp(compat, _TIMESTAMP_GIT_ISO)
-def _parse_timestamp(raw: str, space: bool = False) -> dt.datetime:
- if space:
- format = "%Y-%m-%d %H:%M:%S.%f%z"
- else:
- format = "%Y-%m-%dT%H:%M:%S.%f%z"
+def _parse_timestamp(raw: str, format: str = _TIMESTAMP_GENERIC) -> dt.datetime:
# Normalize "Z" for pre-3.7 compatibility:
normalized = re.sub(r"Z$", "+0000", raw)
# Truncate %f to six digits:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/dunamai/__main__.py new/dunamai-1.21.2/dunamai/__main__.py
--- old/dunamai-1.21.1/dunamai/__main__.py 2024-04-29 19:49:58.040704500 +0200
+++ new/dunamai-1.21.2/dunamai/__main__.py 2024-06-27 04:59:56.764542800 +0200
@@ -91,10 +91,7 @@
"action": "store_true",
"dest": "strict",
"default": False,
- "help": (
- "Elevate warnings to errors."
- " When there are no tags, fail instead of falling back to 0.0.0"
- ),
+ "help": ("Elevate warnings to errors." " When there are no tags, fail instead of falling back to 0.0.0"),
},
{
"triggers": ["--path"],
@@ -269,9 +266,7 @@
path: Optional[Path],
pattern_prefix: Optional[str],
) -> None:
- version = Version.from_vcs(
- vcs, pattern, latest_tag, tag_dir, tag_branch, full_commit, strict, path, pattern_prefix
- )
+ version = Version.from_vcs(vcs, pattern, latest_tag, tag_dir, tag_branch, full_commit, strict, path, pattern_prefix)
for concern in version.concerns:
print("Warning: {}".format(concern.message()), file=sys.stderr)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/pyproject.toml new/dunamai-1.21.2/pyproject.toml
--- old/dunamai-1.21.1/pyproject.toml 2024-05-04 04:32:10.808475500 +0200
+++ new/dunamai-1.21.2/pyproject.toml 2024-06-27 05:57:05.618044400 +0200
@@ -1,6 +1,6 @@
[tool.poetry]
name = "dunamai"
-version = "1.21.1"
+version = "1.21.2"
description = "Dynamic version generation"
license = "MIT"
authors = ["Matthew T. Kennerly <mtkennerly(a)gmail.com>"]
@@ -43,10 +43,10 @@
dunamai = 'dunamai.__main__:main'
[tool.black]
-line-length = 100
+line-length = 120
[tool.ruff]
-line-length = 100
+line-length = 120
extend-select = ["W605", "N"]
[build-system]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/tests/integration/test_dunamai.py new/dunamai-1.21.2/tests/integration/test_dunamai.py
--- old/dunamai-1.21.1/tests/integration/test_dunamai.py 2024-05-03 16:48:34.291910600 +0200
+++ new/dunamai-1.21.2/tests/integration/test_dunamai.py 2024-06-27 04:59:57.113332700 +0200
@@ -59,9 +59,7 @@
return inner
-def make_from_callback(
- function: Callable, clear: bool = True, chronological: bool = True
-) -> Callable:
+def make_from_callback(function: Callable, clear: bool = True, chronological: bool = True) -> Callable:
def inner(*args, fresh: bool = False, **kwargs):
version = function(*args, **kwargs)
if fresh:
@@ -124,9 +122,7 @@
# Detect dirty if untracked files
(vcs / "bar.txt").write_text("bye")
assert from_vcs() == Version("0.0.0", distance=1, dirty=True, branch=b)
- assert from_vcs(ignore_untracked=True) == Version(
- "0.0.0", distance=1, dirty=False, branch=b
- )
+ assert from_vcs(ignore_untracked=True) == Version("0.0.0", distance=1, dirty=False, branch=b)
# Once the untracked file is removed we are no longer dirty
(vcs / "bar.txt").unlink()
@@ -159,12 +155,8 @@
assert from_explicit_vcs(Vcs.Any) == Version("0.1.0", dirty=False, branch=b)
assert from_explicit_vcs(Vcs.Git) == Version("0.1.0", dirty=False, branch=b)
assert run("dunamai from any --bump") == "0.1.0"
- assert run('dunamai from git --format "{commit}"') != run(
- 'dunamai from git --format "{commit}" --full-commit'
- )
- assert run('dunamai from any --format "{commit}"') != run(
- 'dunamai from any --format "{commit}" --full-commit'
- )
+ assert run('dunamai from git --format "{commit}"') != run('dunamai from git --format "{commit}" --full-commit')
+ assert run('dunamai from any --format "{commit}"') != run('dunamai from any --format "{commit}" --full-commit')
if not legacy:
# Verify tags with '/' work
@@ -425,9 +417,7 @@
assert Version.from_any_vcs() == detected
- assert (
- Version.from_git(full_commit=True).commit == "8fe614dbf9e767e70442ab8f56e99bd08d7e782d"
- )
+ assert Version.from_git(full_commit=True).commit == "8fe614dbf9e767e70442ab8f56e99bd08d7e782d"
with pytest.raises(RuntimeError):
Version.from_git(strict=True)
@@ -549,9 +539,7 @@
assert run('dunamai from mercurial --format "{commit}"') != run(
'dunamai from mercurial --format "{commit}" --full-commit'
)
- assert run('dunamai from any --format "{commit}"') != run(
- 'dunamai from any --format "{commit}" --full-commit'
- )
+ assert run('dunamai from any --format "{commit}"') != run('dunamai from any --format "{commit}" --full-commit')
run("hg tag v0.1.0")
assert from_vcs() == Version("0.1.0", dirty=False, branch=b)
@@ -662,9 +650,7 @@
assert from_vcs(path=vcs) == Version("0.1.0", dirty=False)
-(a)pytest.mark.skipif(
- None in [shutil.which("svn"), shutil.which("svnadmin")], reason="Requires Subversion"
-)
+(a)pytest.mark.skipif(None in [shutil.which("svn"), shutil.which("svnadmin")], reason="Requires Subversion")
def test__version__from_subversion(tmp_path) -> None:
vcs = tmp_path / "dunamai-svn"
vcs.mkdir()
@@ -706,9 +692,7 @@
# Two commits, but still no tag. Version should still be 0.0.0.
assert from_vcs() == Version("0.0.0", distance=2, commit="2", dirty=False)
- run(
- 'svn copy {0}/trunk {0}/tags/v0.1.0 -m "Tag 1"'.format(vcs_srv_uri)
- ) # commit 3 and first tag!
+ run('svn copy {0}/trunk {0}/tags/v0.1.0 -m "Tag 1"'.format(vcs_srv_uri)) # commit 3 and first tag!
run("svn update")
# 3 commits, one tag (v.0.1.0), version should be 0.1.0.
@@ -753,9 +737,7 @@
# #3), so version should be 0.1.0.
run("svn update -r 3")
assert from_vcs() == Version("0.1.0", distance=0, commit="3", dirty=False)
- assert from_vcs(latest_tag=True) == Version(
- "0.1.0", distance=0, commit="3", dirty=False
- )
+ assert from_vcs(latest_tag=True) == Version("0.1.0", distance=0, commit="3", dirty=False)
assert from_vcs(path=vcs) == Version("0.1.0", distance=0, commit="3", dirty=False)
@@ -792,9 +774,7 @@
run("bzr add .")
run('bzr commit -m "Second"')
assert from_vcs() == Version("0.1.0", distance=1, commit="2", dirty=False, branch=b)
- assert from_any_vcs_unmocked() == Version(
- "0.1.0", distance=1, commit="2", dirty=False, branch=b
- )
+ assert from_any_vcs_unmocked() == Version("0.1.0", distance=1, commit="2", dirty=False, branch=b)
run("bzr tag unmatched")
assert from_vcs() == Version("0.1.0", distance=1, commit="2", dirty=False, branch=b)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/tests/unit/test_dunamai.py new/dunamai-1.21.2/tests/unit/test_dunamai.py
--- old/dunamai-1.21.1/tests/unit/test_dunamai.py 2024-04-29 18:40:44.492175000 +0200
+++ new/dunamai-1.21.2/tests/unit/test_dunamai.py 2024-06-27 04:59:57.105827800 +0200
@@ -81,9 +81,7 @@
def test__version__init() -> None:
- v = Version(
- "1", stage=("a", 2), distance=3, commit="abc", dirty=True, tagged_metadata="def", epoch=4
- )
+ v = Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True, tagged_metadata="def", epoch=4)
assert v.base == "1"
assert v.stage == "a"
assert v.revision == 2
@@ -136,34 +134,22 @@
def test__version__serialize__pep440() -> None:
assert Version("0.1.0").serialize() == "0.1.0"
- assert (
- Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True).serialize()
- == "1a2.post3.dev0+abc"
- )
+ assert Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True).serialize() == "1a2.post3.dev0+abc"
assert (
Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True).serialize(dirty=True)
== "1a2.post3.dev0+abc.dirty"
)
assert (
- Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True).serialize(metadata=False)
- == "1a2.post3.dev0"
+ Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True).serialize(metadata=False) == "1a2.post3.dev0"
)
assert (
- Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True).serialize(
- metadata=False, dirty=True
- )
+ Version("1", stage=("a", 2), distance=3, commit="abc", dirty=True).serialize(metadata=False, dirty=True)
== "1a2.post3.dev0"
)
- assert (
- Version("1", stage=("a", 0), distance=3, commit="abc", dirty=False).serialize()
- == "1a0.post3.dev0+abc"
- )
+ assert Version("1", stage=("a", 0), distance=3, commit="abc", dirty=False).serialize() == "1a0.post3.dev0+abc"
assert Version("1", stage=("a", 2), distance=0, commit="abc", dirty=False).serialize() == "1a2"
- assert (
- Version("1", stage=("a", 2), distance=3, commit="000", dirty=False).serialize()
- == "1a2.post3.dev0+000"
- )
+ assert Version("1", stage=("a", 2), distance=3, commit="000", dirty=False).serialize() == "1a2.post3.dev0+000"
assert Version("1", stage=("a", None)).serialize() == "1a0"
assert Version("1", stage=("b", 2)).serialize() == "1b2"
@@ -179,9 +165,7 @@
assert Version("0.1.0", stage=("post", 1)).serialize() == "0.1.0.post1"
assert Version("0.1.0", stage=("post", 1), distance=3).serialize() == "0.1.0.post1.dev3"
- assert (
- Version("0.1.0", stage=("post", 1), distance=3).serialize(bump=True) == "0.1.0.post2.dev3"
- )
+ assert Version("0.1.0", stage=("post", 1), distance=3).serialize(bump=True) == "0.1.0.post2.dev3"
assert Version("0.1.0", stage=("dev", 1)).serialize() == "0.1.0.dev1"
assert Version("0.1.0", stage=("dev", 1), distance=3).serialize() == "0.1.0.dev4"
assert Version("0.1.0", stage=("dev", 1), distance=3).serialize(bump=True) == "0.1.0.dev5"
@@ -192,15 +176,11 @@
assert Version("0.1.0").serialize(style=style) == "0.1.0"
assert (
- Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(style=style)
== "0.1.0-alpha.2.post.3+abc"
)
assert (
- Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(
- dirty=True, style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(dirty=True, style=style)
== "0.1.0-alpha.2.post.3+abc.dirty"
)
assert (
@@ -217,21 +197,15 @@
)
assert (
- Version("0.1.0", stage=("alpha", 0), distance=3, commit="abc", dirty=False).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 0), distance=3, commit="abc", dirty=False).serialize(style=style)
== "0.1.0-alpha.0.post.3+abc"
)
assert (
- Version("0.1.0", stage=("alpha", 2), distance=0, commit="abc", dirty=False).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=0, commit="abc", dirty=False).serialize(style=style)
== "0.1.0-alpha.2"
)
assert (
- Version("0.1.0", stage=("alpha", 2), distance=3, commit="000", dirty=False).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=3, commit="000", dirty=False).serialize(style=style)
== "0.1.0-alpha.2.post.3+000"
)
@@ -242,13 +216,9 @@
assert Version("0.1.0").serialize(style=style, bump=True) == "0.1.0"
assert Version("0.1.0", distance=3).serialize(style=style, bump=True) == "0.1.1-pre.3"
assert (
- Version("0.1.0", stage=("alpha", None), distance=3).serialize(style=style, bump=True)
- == "0.1.0-alpha.2.pre.3"
- )
- assert (
- Version("0.1.0", stage=("beta", 2), distance=4).serialize(style=style, bump=True)
- == "0.1.0-beta.3.pre.4"
+ Version("0.1.0", stage=("alpha", None), distance=3).serialize(style=style, bump=True) == "0.1.0-alpha.2.pre.3"
)
+ assert Version("0.1.0", stage=("beta", 2), distance=4).serialize(style=style, bump=True) == "0.1.0-beta.3.pre.4"
assert Version("0.1.0", epoch=2).serialize(style=style) == "0.1.0"
@@ -258,15 +228,11 @@
assert Version("0.1.0").serialize(style=style) == "0.1.0"
assert (
- Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(style=style)
== "0.1.0-alpha-2-post-3-abc"
)
assert (
- Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(
- dirty=True, style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=3, commit="abc", dirty=True).serialize(dirty=True, style=style)
== "0.1.0-alpha-2-post-3-abc-dirty"
)
assert (
@@ -283,21 +249,15 @@
)
assert (
- Version("0.1.0", stage=("alpha", 0), distance=3, commit="abc", dirty=False).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 0), distance=3, commit="abc", dirty=False).serialize(style=style)
== "0.1.0-alpha-0-post-3-abc"
)
assert (
- Version("0.1.0", stage=("alpha", 2), distance=0, commit="abc", dirty=False).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=0, commit="abc", dirty=False).serialize(style=style)
== "0.1.0-alpha-2"
)
assert (
- Version("0.1.0", stage=("alpha", 2), distance=3, commit="000", dirty=False).serialize(
- style=style
- )
+ Version("0.1.0", stage=("alpha", 2), distance=3, commit="000", dirty=False).serialize(style=style)
== "0.1.0-alpha-2-post-3-000"
)
@@ -308,13 +268,9 @@
assert Version("0.1.0").serialize(style=style, bump=True) == "0.1.0"
assert Version("0.1.0", distance=3).serialize(style=style, bump=True) == "0.1.1-pre-3"
assert (
- Version("0.1.0", stage=("alpha", None), distance=3).serialize(style=style, bump=True)
- == "0.1.0-alpha-2-pre-3"
- )
- assert (
- Version("0.1.0", stage=("beta", 2), distance=4).serialize(style=style, bump=True)
- == "0.1.0-beta-3-pre-4"
+ Version("0.1.0", stage=("alpha", None), distance=3).serialize(style=style, bump=True) == "0.1.0-alpha-2-pre-3"
)
+ assert Version("0.1.0", stage=("beta", 2), distance=4).serialize(style=style, bump=True) == "0.1.0-beta-3-pre-4"
assert Version("0.1.0", epoch=2).serialize(style=style) == "0.1.0"
@@ -329,18 +285,11 @@
assert Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=False) == "0.1.0a1"
assert Version("0.1.0", distance=1, commit="abc").serialize() == "0.1.0.post1.dev0+abc"
- assert (
- Version("0.1.0", distance=1, commit="abc").serialize(metadata=True)
- == "0.1.0.post1.dev0+abc"
- )
- assert (
- Version("0.1.0", distance=1, commit="abc").serialize(metadata=False) == "0.1.0.post1.dev0"
- )
+ assert Version("0.1.0", distance=1, commit="abc").serialize(metadata=True) == "0.1.0.post1.dev0+abc"
+ assert Version("0.1.0", distance=1, commit="abc").serialize(metadata=False) == "0.1.0.post1.dev0"
assert (
- Version("0.1.0", distance=1, commit="abc", tagged_metadata="def").serialize(
- tagged_metadata=True
- )
+ Version("0.1.0", distance=1, commit="abc", tagged_metadata="def").serialize(tagged_metadata=True)
== "0.1.0.post1.dev0+def.abc"
)
@@ -352,29 +301,15 @@
assert Version("0.1.0").serialize(metadata=False, style=style) == "0.1.0"
assert Version("0.1.0", stage=("a", 1), commit="abc").serialize(style=style) == "0.1.0-a.1"
- assert (
- Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=True, style=style)
- == "0.1.0-a.1+abc"
- )
- assert (
- Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=False, style=style)
- == "0.1.0-a.1"
- )
+ assert Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=True, style=style) == "0.1.0-a.1+abc"
+ assert Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=False, style=style) == "0.1.0-a.1"
assert Version("0.1.0", distance=1, commit="abc").serialize(style=style) == "0.1.0-post.1+abc"
- assert (
- Version("0.1.0", distance=1, commit="abc").serialize(metadata=True, style=style)
- == "0.1.0-post.1+abc"
- )
- assert (
- Version("0.1.0", distance=1, commit="abc").serialize(metadata=False, style=style)
- == "0.1.0-post.1"
- )
+ assert Version("0.1.0", distance=1, commit="abc").serialize(metadata=True, style=style) == "0.1.0-post.1+abc"
+ assert Version("0.1.0", distance=1, commit="abc").serialize(metadata=False, style=style) == "0.1.0-post.1"
assert (
- Version("0.1.0", distance=1, commit="abc", tagged_metadata="def").serialize(
- style=style, tagged_metadata=True
- )
+ Version("0.1.0", distance=1, commit="abc", tagged_metadata="def").serialize(style=style, tagged_metadata=True)
== "0.1.0-post.1+def.abc"
)
@@ -386,29 +321,15 @@
assert Version("0.1.0").serialize(metadata=False, style=style) == "0.1.0"
assert Version("0.1.0", stage=("a", 1), commit="abc").serialize(style=style) == "0.1.0-a-1"
- assert (
- Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=True, style=style)
- == "0.1.0-a-1-abc"
- )
- assert (
- Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=False, style=style)
- == "0.1.0-a-1"
- )
+ assert Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=True, style=style) == "0.1.0-a-1-abc"
+ assert Version("0.1.0", stage=("a", 1), commit="abc").serialize(metadata=False, style=style) == "0.1.0-a-1"
assert Version("0.1.0", distance=1, commit="abc").serialize(style=style) == "0.1.0-post-1-abc"
- assert (
- Version("0.1.0", distance=1, commit="abc").serialize(metadata=True, style=style)
- == "0.1.0-post-1-abc"
- )
- assert (
- Version("0.1.0", distance=1, commit="abc").serialize(metadata=False, style=style)
- == "0.1.0-post-1"
- )
+ assert Version("0.1.0", distance=1, commit="abc").serialize(metadata=True, style=style) == "0.1.0-post-1-abc"
+ assert Version("0.1.0", distance=1, commit="abc").serialize(metadata=False, style=style) == "0.1.0-post-1"
assert (
- Version("0.1.0", distance=1, commit="abc", tagged_metadata="def").serialize(
- style=style, tagged_metadata=True
- )
+ Version("0.1.0", distance=1, commit="abc", tagged_metadata="def").serialize(style=style, tagged_metadata=True)
== "0.1.0-post-1-def-abc"
)
@@ -436,15 +357,10 @@
assert Version("0.1.0", dirty=False).serialize(dirty=True, style=style) == "0.1.0"
assert Version("0.1.0", dirty=True).serialize(metadata=True, style=style) == "0.1.0"
- assert (
- Version("0.1.0", dirty=True).serialize(metadata=True, dirty=True, style=style)
- == "0.1.0+dirty"
- )
+ assert Version("0.1.0", dirty=True).serialize(metadata=True, dirty=True, style=style) == "0.1.0+dirty"
assert Version("0.1.0", dirty=True).serialize(metadata=False, style=style) == "0.1.0"
- assert (
- Version("0.1.0", dirty=True).serialize(metadata=False, dirty=True, style=style) == "0.1.0"
- )
+ assert Version("0.1.0", dirty=True).serialize(metadata=False, dirty=True, style=style) == "0.1.0"
def test__version__serialize__pvp_with_dirty() -> None:
@@ -456,22 +372,14 @@
assert Version("0.1.0", dirty=False).serialize(dirty=True, style=style) == "0.1.0"
assert Version("0.1.0", dirty=True).serialize(metadata=True, style=style) == "0.1.0"
- assert (
- Version("0.1.0", dirty=True).serialize(metadata=True, dirty=True, style=style)
- == "0.1.0-dirty"
- )
+ assert Version("0.1.0", dirty=True).serialize(metadata=True, dirty=True, style=style) == "0.1.0-dirty"
assert Version("0.1.0", dirty=True).serialize(metadata=False, style=style) == "0.1.0"
- assert (
- Version("0.1.0", dirty=True).serialize(metadata=False, dirty=True, style=style) == "0.1.0"
- )
+ assert Version("0.1.0", dirty=True).serialize(metadata=False, dirty=True, style=style) == "0.1.0"
def test__version__serialize__format_as_str() -> None:
- format = (
- "{base},{stage},{revision},{distance},{commit},{dirty}"
- ",{branch},{branch_escaped},{timestamp}"
- )
+ format = "{base},{stage},{revision},{distance},{commit},{dirty}" ",{branch},{branch_escaped},{timestamp}"
assert Version("0.1.0").serialize(format=format) == "0.1.0,,,0,,clean,,,"
assert (
Version(
@@ -569,9 +477,7 @@
def test__get_version__third_choice() -> None:
- assert get_version("dunamai_nonexistent_test", third_choice=lambda: Version("3")) == Version(
- "3"
- )
+ assert get_version("dunamai_nonexistent_test", third_choice=lambda: Version("3")) == Version("3")
def test__get_version__fallback() -> None:
@@ -793,9 +699,7 @@
assert serialize_pep440("1.2.3", metadata=[4]) == "1.2.3+4"
assert (
- serialize_pep440(
- "1.2.3", epoch=0, stage="a", revision=4, post=5, dev=6, metadata=["foo", "bar"]
- )
+ serialize_pep440("1.2.3", epoch=0, stage="a", revision=4, post=5, dev=6, metadata=["foo", "bar"])
== "0!1.2.3a4.post5.dev6+foo.bar"
)
@@ -818,10 +722,7 @@
assert serialize_semver("1.2.3", metadata=["foo", "bar"]) == "1.2.3+foo.bar"
assert serialize_semver("1.2.3", metadata=[4]) == "1.2.3+4"
- assert (
- serialize_semver("1.2.3", pre=["alpha", 4], metadata=["foo", "bar"])
- == "1.2.3-alpha.4+foo.bar"
- )
+ assert serialize_semver("1.2.3", pre=["alpha", 4], metadata=["foo", "bar"]) == "1.2.3-alpha.4+foo.bar"
with pytest.raises(ValueError):
serialize_semver("foo")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dunamai-1.21.1/tests/unit/test_main.py new/dunamai-1.21.2/tests/unit/test_main.py
--- old/dunamai-1.21.1/tests/unit/test_main.py 2024-04-29 19:48:05.295097400 +0200
+++ new/dunamai-1.21.2/tests/unit/test_main.py 2024-06-27 04:59:56.723363400 +0200
@@ -62,9 +62,7 @@
def test__parse_args__check():
- assert parse_args(["check", "0.1.0"]) == Namespace(
- command="check", version="0.1.0", style="pep440"
- )
+ assert parse_args(["check", "0.1.0"]) == Namespace(command="check", version="0.1.0", style="pep440")
assert parse_args(["check", "0.1.0", "--style", "semver"]).style == "semver"
assert parse_args(["check", "0.1.0", "--style", "pvp"]).style == "pvp"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xpra for openSUSE:Factory checked in at 2024-06-28 15:47:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xpra (Old)
and /work/SRC/openSUSE:Factory/.xpra.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xpra"
Fri Jun 28 15:47:27 2024 rev:63 rq:1183698 version:6.1+git20240620.b8d2c4b5
Changes:
--------
--- /work/SRC/openSUSE:Factory/xpra/xpra.changes 2024-05-31 22:16:55.576259913 +0200
+++ /work/SRC/openSUSE:Factory/.xpra.new.18349/xpra.changes 2024-06-28 15:50:16.657065639 +0200
@@ -1,0 +2,229 @@
+Thu Jun 20 19:17:35 UTC 2024 - scott.bradnick(a)suse.com
+
+- Update to version 6.1+git20240620.b8d2c4b5:
+ * openssh details belong in the openssh paragraph
+ * cosmetic
+ * remove "no test suite" from man page
+ * remove Python 2 compat code
+ * cosmetic and type hints
+ * speed up save-to-file feature with Pillow > 10
+ * can avoid copying memoryview with Pillow 10
+ * cosmetic and type hints
+ * Revert "webp does not use 'studio' range unless we compress with Pillow"
+ * webp does not use 'studio' range unless we compress with Pillow
+ * simplify
+ * add 'Buffer' type hint
+ * prettier connect retry output
+ * #3837 don't use Pillow for webp
+ * we can handle all YUV formats here
+ * faster?
+ * strict interface for authentication 'get_challenge' function
+ * add type hints
+ * fix RPM builds on non-Fedora systems
+ * minor linter warnings and type hints
+ * only import OpenGL[_accelerate] from check_PyOpenGL_support context
+ * use a more generic approach for access the 'last-error'
+ * fix subprocess file descriptors going MIA on MS Windows
+ * type hints and linter warnings
+ * match new interface: use typedict
+ * remove unused argument
+ * lose reference before calling terminate(), which could error?
+ * remove rendundant wording
+ * show xdg bug warning just once
+ * also ignore kwargs in dummy method
+ * don't spam the logs
+ * doh: the client method name is different
+ * MS Windows triggers 'control_refresh' via workspace detection
+ * more type hints
+ * type hints
+ * silence some annoying gtk deprecation warnings
+ * remove debug logging
+ * restore compatibility with Python < 3.12
+ * get_packet_cb cannot be unset now
+ * forgot to update base client with new get_packet callback signature
+ * remove debug logging
+ * narrower exception types
+ * Pillow 10 supports memoryview
+ * cosmetic
+ * stronger type hints
+ * #4257 missing import
+ * Use nvidia-smi to check for GPU in a container environment
+ * derp
+ * #4205 hook the Gtk scale factor
+ * simplify: remove unused glTexParameteri
+ * stronger type hints
+ * no need to set the viewport if we're not clearing the offsets
+ * report actual rectangle count
+ * only log the screen info once
+ * don't log message about missing 'numpy_formathandler' at info level
+ * don't try 'ssh-upgrades' or 'sd-listen' with client sockets
+ * type hints
+ * #4252 use whitelist for vfb env
+ * tell users that we have a tool for that
+ * missed from 60b13d7ac1e08165034d34a6ad8b2c9de78f9aef
+ * pycharm doesn't like relative './' links
+ * #4256 these pages had gone MIA
+ * log the encoding with congestion event
+ * wait for the write queue to be empty before closing
+ * default instructions should prevent setuptools from messing up
+ * #3483 split gtk opengl backend so we can delay 'OpenGL' import
+ * #3483 ensure we import 'OpenGL' module when expected
+ * #3582 only include interface info with XPRA_FULL_INFO > 1
+ * lower 'numpy' to a suggestion, because xpra doesn't use numpy with pyopengl
+ * numpy build error on Fedora 40
+ * downgrade to a warning
+ * openh264 decoder throws a RuntimeError here
+ * cosmetic, remove debug logging
+ * update the tests for 98eb9ae2b45113ecb7832909d0978b048c26b141 and de5af5f4992d38780585e389e139357c4b6eade1
+ * also set and increase the frame no for skipped frames
+ * remove mostly unused net start / end callbacks
+ * remove unused fail callback, not supported by quic
+ * fixes 'intra-refresh is not compatible with open-gop'
+ * zero is the new (and old) one
+ * make the first frame number 1
+ * log frame number
+ * the x264 encoder sends the first frame using number 0
+ * derp: forgot to update these callers
+ * forgot to update test with new interface
+ * derp: forgot to update callers via ui_paint_rgb
+ * move rgb functions to cairo backend where they are used
+ * #3837 simplify: add functions to paint ImageWrapper
+ * cosmetic and type hints
+ * #3837 simplify: 'full-range' is now a boolean
+ * also test decompress_to_yuv
+ * fix self test: don't expect alpha in 'BGRX'
+ * some distros don't need the workaround
+ * the image size matches the decoder context size
+ * stop the commit hooks from messing up markdown formatting
+ * Revert "broken links and cosmetic formatting"
+ * Revert "cosmetic: pycharm doesn't like './foo' links"
+ * #3837 vpx decoder is always full range?
+ * #3837 simplify decompress_to_yuv|rgb interface, webp is studio range
+ * no harm in handling BGRX here
+ * #3837 select the shader based on the image's color range
+ * using a typedict with cythonize-more triggers errors
+ * client_options is a plain dict, for now
+ * clearer interface for gl_expose_rect
+ * unused var
+ * an exception should trigger the 'unchanged position' handler
+ * simplify
+ * cosmetic linter warnings
+ * try harder to detect opengl properties
+ * the numpy format handler doesn't build
+ * use proper exit codes with 'opengl-probe' and 'opengl-test'
+ * show Python interpreter version
+ * cosmetic: pycharm doesn't like './foo' links
+ * preserve coverage wrapper when executing test scripts
+ * better type hints
+ * broken links and cosmetic formatting
+ * oops: missed from c704f1962b4b66e2e9a5995d42abd391d1f6a9ac
+ * better workarounds for Ubuntu
+ * simplify
+ * the Cython distro package is new enough, for once
+ * make github happy
+ * Ubuntu 24.04 dropped python-all-dev
+ * always send a 'ConfigureNotify'
+ * move to ubuntu 24.04 test runner
+ * we don't support yaml packet encoder any more
+ * #3376 aioquic and pylsqpack cannot be zipped
+ * missing import for type hint
+ * use more correct datatypes for default arguments
+ * use stronger typedict for encoder options
+ * add type hints
+ * lower tolerance
+ * #3837 normalized webp quality values were too aggressive
+ * #4251 move HTTP_UNSUPORTED to net.common
+ * compare all the pixels
+ * #4111 we can't use memoryview type hint with Cython
+ * more tests needed updating to use typedict
+ * oops: also update pillow test to use typedict
+ * show what was tested
+ * also test avif and webp YUV decoding
+ * #3837 test full roundtrip for jpeg
+ * oops: tests must use typedict as arg
+ * don't use temporary files
+ * add rountrip rgb test with picture encoders
+ * simplify
+ * require a typedict in (de)compress interface
+ * add type hints
+ * derp: color label was wrong
+ * add required attributes for generating the tray menu
+ * make it possible to run toolbox examples more easily
+ * avoid warnings with X11 display source not initialized
+ * some csc modules may not be available
+ * fixup a6338c17747868b49aed27ebd52dafc35aba6947: must ignore this keyword for stdlib call
+ * fix rendering of some gtk test apps
+ * add colorspace range attribute: full vs studio
+ * #4250 terminate vfb on any fatal startup errors
+ * cosmetic + type hints
+ * add keyword to disable remote-logging for specific log messages
+ * raise driver version requirements
+ * oops: this part hasn't been added to ImageWrapper yet
+ * include more detailed error messages
+ * #3837 add plane range dump utility function
+ * first frame should be number 1
+ * video encoders are expected to set the frame no
+ * add PySocks
+ * pynvml 12.555.43
+ * more helpful default invocation
+ * plane buffers should not be modified, use a tuple
+ * full self tests both decoding functions
+ * make it clearer that 'full_range' adds the '_FULL' suffix
+ * oops: paint_nvdec was not updated to use new 'gl_paint_planar' function
+ * no need for decimals with modern hardware
+ * use stronger type: boolean
+ * use stronger types
+ * only reparent to the parking window if needed
+ * #4247 bump minimum level
+ * failing to show or hide a window should not propagate
+ * add type hints
+ * this function must return a string
+ * don't clear damage when the window is not managed
+ * unused variable
+ * move sub-packages to build documentation
+ * #4243 map 'Visual Studio Code' to text content-type
+ * #4243 generic patterns should run last
+ * remove EOLed distros
+ * #4245 add 'install-repo' and 'install-beta-repo' subcommands
+ * #4244 refer to 'dev-env' in the documentation
+ * match switch name exactly
+ * #4244 add 'dev-env' subcommand
+ * simplify and move zlib-devel where it is needed
+ * newer releases don't have 'python-all-dev'
+ * need a Sequence to support indices
+ * let 'set_x11_property' handle scalars automagically
+ * ignore Cythong generated files
+ * another pam error needs decoding
+ * do use the legacy password-file option if that's all we have
+ * better debug logging
+ * threaded init callbacks failure for client connections
+ * stricter type hints
+ * always log full details when init thread callbacks hit issues
+ * skip more deprecated APIs
+ * #4231 blacklist 'llvmpipe' software renderer
+ * fix type hint
+ * Sequence supports indices
+ * do reaper cleanup as late as possible
+ * simplify
+ * add type hints
+ * allow printing with more socket authentication modules
+ * type hints find bugs
+ * alias info is not particularly useful
+ * derp: missing line continuation
+ * don't log 'Disconnecting' message for closed sockets
+ * log failing authenticator if we know it
+ * expose closed socket attribute
+ * decode pam authentication failure message as a string
+ * use strings for all key names
+ * avoid deprecated APIs
+ * type hints
+ * #4017 need another symlink to locate the 'Resources' dir..
+ * add more transitive dependencies
+ * remove speex library and constants
+ * add some changelog entries
+ * add security warning about out of date downstream packages
+ * #4222 can't close() a native file chooser..
+ * #4208 preserve previous behaviour: group all when not matching
+ * #4208 make window grouping customizable via env var
+
+-------------------------------------------------------------------
Old:
----
xpra-6.1+git20240523.91f77fa9.tar.gz
New:
----
xpra-6.1+git20240620.b8d2c4b5.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xpra.spec ++++++
--- /var/tmp/diff_new_pack.6RfFwD/_old 2024-06-28 15:50:17.237086626 +0200
+++ /var/tmp/diff_new_pack.6RfFwD/_new 2024-06-28 15:50:17.241086771 +0200
@@ -37,7 +37,7 @@
# ----
%global __requires_exclude ^typelib\\(GtkosxApplication\\)|typelib\\(GdkGLExt\\)|typelib\\(GtkGLExt\\).*$
Name: xpra
-Version: 6.1+git20240523.91f77fa9
+Version: 6.1+git20240620.b8d2c4b5
Release: 0
Summary: Remote display server for applications and desktops
License: BSD-3-Clause AND GPL-2.0-or-later AND LGPL-3.0-or-later AND MIT
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.6RfFwD/_old 2024-06-28 15:50:17.277088073 +0200
+++ /var/tmp/diff_new_pack.6RfFwD/_new 2024-06-28 15:50:17.281088218 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/Xpra-org/xpra</param>
- <param name="changesrevision">91f77fa98e2692c47658c80c2c3d2a0472f1e7d1</param></service></servicedata>
+ <param name="changesrevision">b8d2c4b56833850d21ad6f1fa5c62119efcc4a01</param></service></servicedata>
(No newline at EOF)
++++++ xpra-6.1+git20240523.91f77fa9.tar.gz -> xpra-6.1+git20240620.b8d2c4b5.tar.gz ++++++
/work/SRC/openSUSE:Factory/xpra/xpra-6.1+git20240523.91f77fa9.tar.gz /work/SRC/openSUSE:Factory/.xpra.new.18349/xpra-6.1+git20240620.b8d2c4b5.tar.gz differ: char 12, line 1
++++++ xpra.obsinfo ++++++
--- /var/tmp/diff_new_pack.6RfFwD/_old 2024-06-28 15:50:17.329089955 +0200
+++ /var/tmp/diff_new_pack.6RfFwD/_new 2024-06-28 15:50:17.333090100 +0200
@@ -1,5 +1,5 @@
name: xpra
-version: 6.1+git20240523.91f77fa9
-mtime: 1716472102
-commit: 91f77fa98e2692c47658c80c2c3d2a0472f1e7d1
+version: 6.1+git20240620.b8d2c4b5
+mtime: 1718893597
+commit: b8d2c4b56833850d21ad6f1fa5c62119efcc4a01
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-PDF-API2 for openSUSE:Factory checked in at 2024-06-28 15:47:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-PDF-API2 (Old)
and /work/SRC/openSUSE:Factory/.perl-PDF-API2.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-PDF-API2"
Fri Jun 28 15:47:23 2024 rev:29 rq:1183693 version:2.47.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-PDF-API2/perl-PDF-API2.changes 2024-03-09 20:56:05.089664282 +0100
+++ /work/SRC/openSUSE:Factory/.perl-PDF-API2.new.18349/perl-PDF-API2.changes 2024-06-28 15:50:14.412984441 +0200
@@ -1,0 +2,18 @@
+Sun Jun 23 16:46:26 UTC 2024 - Tina Müller <tina.mueller(a)suse.com>
+
+- updated to 2.47.0 (2.047)
+ see /usr/share/doc/packages/perl-PDF-API2/Changes
+
+ 2.047 2024-05-18
+ - Fixed implementation of GH-77.
+ - Added $pdf->standard_fonts() and $pdf->is_standard_font($name) (initial
+ patch by Johan Vromans).
+ 2.046 2024-05-14
+ - [GH-74] Fixed documentation error saying that stroke_color and fill_color
+ can be chained.
+ - Crash instead of freezing if a PDF trailer's Prev keys result in a loop or
+ if multiple trailers use the same object ID and generation number.
+ - [GH-70] Fix off-by-one error when adding a page at the beginning of a PDF.
+ - [GH-77] Significantly improve performance when adding many pages to a PDF.
+
+-------------------------------------------------------------------
Old:
----
PDF-API2-2.045.tar.gz
New:
----
PDF-API2-2.047.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-PDF-API2.spec ++++++
--- /var/tmp/diff_new_pack.v2zJIO/_old 2024-06-28 15:50:14.945003691 +0200
+++ /var/tmp/diff_new_pack.v2zJIO/_new 2024-06-28 15:50:14.945003691 +0200
@@ -18,9 +18,10 @@
%define cpan_name PDF-API2
Name: perl-PDF-API2
-Version: 2.45.0
+Version: 2.47.0
Release: 0
-%define cpan_version 2.045
+# 2.047 -> normalize -> 2.47.0
+%define cpan_version 2.047
License: LGPL-2.1-or-later
Summary: Create, modify, and examine PDF files
URL: https://metacpan.org/release/%{cpan_name}
@@ -36,110 +37,110 @@
Requires: perl(Compress::Zlib) >= 1.0
Requires: perl(Font::TTF)
Provides: perl(PDF::API2)
-Provides: perl(PDF::API2::Annotation) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Array) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Bool) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Dict) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::File) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Filter) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Filter::ASCII85Decode) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Filter::ASCIIHexDecode) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Filter::FlateDecode) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Filter::LZWDecode) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Filter::RunLengthDecode) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Literal) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Name) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Null) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Number) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Objind) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Page) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Pages) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::String) = 2.45.0
-Provides: perl(PDF::API2::Basic::PDF::Utils) = 2.45.0
-Provides: perl(PDF::API2::Content) = 2.45.0
-Provides: perl(PDF::API2::Content::Text) = 2.45.0
-Provides: perl(PDF::API2::Lite) = 2.45.0
-Provides: perl(PDF::API2::Matrix) = 2.45.0
-Provides: perl(PDF::API2::NamedDestination) = 2.45.0
-Provides: perl(PDF::API2::Outline) = 2.45.0
-Provides: perl(PDF::API2::Outlines) = 2.45.0
-Provides: perl(PDF::API2::Page) = 2.45.0
-Provides: perl(PDF::API2::Resource) = 2.45.0
-Provides: perl(PDF::API2::Resource::BaseFont) = 2.45.0
-Provides: perl(PDF::API2::Resource::CIDFont) = 2.45.0
-Provides: perl(PDF::API2::Resource::CIDFont::CJKFont) = 2.45.0
-Provides: perl(PDF::API2::Resource::CIDFont::TrueType) = 2.45.0
-Provides: perl(PDF::API2::Resource::CIDFont::TrueType::FontFile) = 2.45.0
-Provides: perl(PDF::API2::Resource::ColorSpace) = 2.45.0
-Provides: perl(PDF::API2::Resource::ColorSpace::DeviceN) = 2.45.0
-Provides: perl(PDF::API2::Resource::ColorSpace::Indexed) = 2.45.0
-Provides: perl(PDF::API2::Resource::ColorSpace::Indexed::ACTFile) = 2.45.0
-Provides: perl(PDF::API2::Resource::ColorSpace::Indexed::Hue) = 2.45.0
-Provides: perl(PDF::API2::Resource::ColorSpace::Indexed::WebColor) = 2.45.0
-Provides: perl(PDF::API2::Resource::ColorSpace::Separation) = 2.45.0
-Provides: perl(PDF::API2::Resource::Colors) = 2.45.0
-Provides: perl(PDF::API2::Resource::ExtGState) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::BdFont) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::bankgothic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::courier) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::courierbold) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::courierboldoblique) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::courieroblique) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::georgia) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::georgiabold) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::georgiabolditalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::georgiaitalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::helvetica) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::helveticabold) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::helveticaboldoblique) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::helveticaoblique) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::symbol) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::timesbold) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::timesbolditalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::timesitalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::timesroman) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchet) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchetbold) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchetbolditalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchetitalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::verdana) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::verdanabold) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::verdanabolditalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::verdanaitalic) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::webdings) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::wingdings) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::CoreFont::zapfdingbats) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::Postscript) = 2.45.0
-Provides: perl(PDF::API2::Resource::Font::SynFont) = 2.45.0
-Provides: perl(PDF::API2::Resource::Glyphs) = 2.45.0
-Provides: perl(PDF::API2::Resource::PaperSizes) = 2.45.0
-Provides: perl(PDF::API2::Resource::Pattern) = 2.45.0
-Provides: perl(PDF::API2::Resource::Shading) = 2.45.0
-Provides: perl(PDF::API2::Resource::UniFont) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::BarCode) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::codabar) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::code128) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::code3of9) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::ean13) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::int2of5) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::qrcode) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Form::Hybrid) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image::GD) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image::GIF) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image::JPEG) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image::PNG) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image::PNM) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image::TIFF) = 2.45.0
-Provides: perl(PDF::API2::Resource::XObject::Image::TIFF::File) = 2.45.0
-Provides: perl(PDF::API2::UniWrap) = 2.45.0
-Provides: perl(PDF::API2::Util) = 2.45.0
-Provides: perl(PDF::API2::ViewerPreferences) = 2.45.0
-Provides: perl(PDF::API2::Win32) = 2.45.0
+Provides: perl(PDF::API2::Annotation) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Array) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Bool) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Dict) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::File) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Filter) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Filter::ASCII85Decode) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Filter::ASCIIHexDecode) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Filter::FlateDecode) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Filter::LZWDecode) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Filter::RunLengthDecode) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Literal) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Name) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Null) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Number) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Objind) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Page) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Pages) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::String) = %{version}
+Provides: perl(PDF::API2::Basic::PDF::Utils) = %{version}
+Provides: perl(PDF::API2::Content) = %{version}
+Provides: perl(PDF::API2::Content::Text) = %{version}
+Provides: perl(PDF::API2::Lite) = %{version}
+Provides: perl(PDF::API2::Matrix) = %{version}
+Provides: perl(PDF::API2::NamedDestination) = %{version}
+Provides: perl(PDF::API2::Outline) = %{version}
+Provides: perl(PDF::API2::Outlines) = %{version}
+Provides: perl(PDF::API2::Page) = %{version}
+Provides: perl(PDF::API2::Resource) = %{version}
+Provides: perl(PDF::API2::Resource::BaseFont) = %{version}
+Provides: perl(PDF::API2::Resource::CIDFont) = %{version}
+Provides: perl(PDF::API2::Resource::CIDFont::CJKFont) = %{version}
+Provides: perl(PDF::API2::Resource::CIDFont::TrueType) = %{version}
+Provides: perl(PDF::API2::Resource::CIDFont::TrueType::FontFile) = %{version}
+Provides: perl(PDF::API2::Resource::ColorSpace) = %{version}
+Provides: perl(PDF::API2::Resource::ColorSpace::DeviceN) = %{version}
+Provides: perl(PDF::API2::Resource::ColorSpace::Indexed) = %{version}
+Provides: perl(PDF::API2::Resource::ColorSpace::Indexed::ACTFile) = %{version}
+Provides: perl(PDF::API2::Resource::ColorSpace::Indexed::Hue) = %{version}
+Provides: perl(PDF::API2::Resource::ColorSpace::Indexed::WebColor) = %{version}
+Provides: perl(PDF::API2::Resource::ColorSpace::Separation) = %{version}
+Provides: perl(PDF::API2::Resource::Colors) = %{version}
+Provides: perl(PDF::API2::Resource::ExtGState) = %{version}
+Provides: perl(PDF::API2::Resource::Font) = %{version}
+Provides: perl(PDF::API2::Resource::Font::BdFont) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::bankgothic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::courier) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::courierbold) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::courierboldoblique) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::courieroblique) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::georgia) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::georgiabold) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::georgiabolditalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::georgiaitalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::helvetica) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::helveticabold) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::helveticaboldoblique) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::helveticaoblique) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::symbol) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::timesbold) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::timesbolditalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::timesitalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::timesroman) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchet) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchetbold) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchetbolditalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::trebuchetitalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::verdana) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::verdanabold) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::verdanabolditalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::verdanaitalic) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::webdings) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::wingdings) = %{version}
+Provides: perl(PDF::API2::Resource::Font::CoreFont::zapfdingbats) = %{version}
+Provides: perl(PDF::API2::Resource::Font::Postscript) = %{version}
+Provides: perl(PDF::API2::Resource::Font::SynFont) = %{version}
+Provides: perl(PDF::API2::Resource::Glyphs) = %{version}
+Provides: perl(PDF::API2::Resource::PaperSizes) = %{version}
+Provides: perl(PDF::API2::Resource::Pattern) = %{version}
+Provides: perl(PDF::API2::Resource::Shading) = %{version}
+Provides: perl(PDF::API2::Resource::UniFont) = %{version}
+Provides: perl(PDF::API2::Resource::XObject) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::BarCode) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::codabar) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::code128) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::code3of9) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::ean13) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::int2of5) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::BarCode::qrcode) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Form::Hybrid) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image::GD) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image::GIF) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image::JPEG) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image::PNG) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image::PNM) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image::TIFF) = %{version}
+Provides: perl(PDF::API2::Resource::XObject::Image::TIFF::File) = %{version}
+Provides: perl(PDF::API2::UniWrap) = %{version}
+Provides: perl(PDF::API2::Util) = %{version}
+Provides: perl(PDF::API2::ViewerPreferences) = %{version}
+Provides: perl(PDF::API2::Win32) = %{version}
%undefine __perllib_provides
%{perl_requires}
++++++ PDF-API2-2.045.tar.gz -> PDF-API2-2.047.tar.gz ++++++
++++ 1621 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Locale-Codes for openSUSE:Factory checked in at 2024-06-28 15:47:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Locale-Codes (Old)
and /work/SRC/openSUSE:Factory/.perl-Locale-Codes.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Locale-Codes"
Fri Jun 28 15:47:17 2024 rev:13 rq:1183686 version:3.790.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Locale-Codes/perl-Locale-Codes.changes 2024-04-07 22:13:40.947470450 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Locale-Codes.new.18349/perl-Locale-Codes.changes 2024-06-28 15:49:53.652233244 +0200
@@ -1,0 +2,6 @@
+Sun Jun 23 16:28:04 UTC 2024 - Tina Müller <tina.mueller(a)suse.com>
+
+- updated to 3.790.0 (3.79)
+ see /usr/share/doc/packages/perl-Locale-Codes/Changes
+
+-------------------------------------------------------------------
Old:
----
Locale-Codes-3.78.tar.gz
New:
----
Locale-Codes-3.79.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Locale-Codes.spec ++++++
--- /var/tmp/diff_new_pack.64lulP/_old 2024-06-28 15:49:56.836348457 +0200
+++ /var/tmp/diff_new_pack.64lulP/_new 2024-06-28 15:49:56.836348457 +0200
@@ -18,10 +18,10 @@
%define cpan_name Locale-Codes
Name: perl-Locale-Codes
-Version: 3.780.0
+Version: 3.790.0
Release: 0
-# 3.78 -> normalize -> 3.780.0
-%define cpan_version 3.78
+# 3.79 -> normalize -> 3.790.0
+%define cpan_version 3.79
License: Artistic-1.0 OR GPL-1.0-or-later
Summary: Distribution of modules to handle locale codes
URL: https://metacpan.org/release/%{cpan_name}
++++++ Locale-Codes-3.78.tar.gz -> Locale-Codes-3.79.tar.gz ++++++
++++ 115688 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Cpanel-JSON-XS for openSUSE:Factory checked in at 2024-06-28 15:47:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Cpanel-JSON-XS (Old)
and /work/SRC/openSUSE:Factory/.perl-Cpanel-JSON-XS.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Cpanel-JSON-XS"
Fri Jun 28 15:47:09 2024 rev:39 rq:1183669 version:4.380.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Cpanel-JSON-XS/perl-Cpanel-JSON-XS.changes 2023-07-12 17:27:28.434553709 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Cpanel-JSON-XS.new.18349/perl-Cpanel-JSON-XS.changes 2024-06-28 15:49:20.235024094 +0200
@@ -1,0 +2,11 @@
+Sun Jun 23 16:13:17 UTC 2024 - Tina Müller <tina.mueller(a)suse.com>
+
+- updated to 4.380.0 (4.38)
+ see /usr/share/doc/packages/perl-Cpanel-JSON-XS/Changes
+
+ 4.38 2024-05-27 (rurban)
+ - Encode real core booleans as boolean notation (PR #224 leonerd)
+ - Minor test fixes by leonerd
+ - Fix docs typo (PR #225 karenetheridge)
+
+-------------------------------------------------------------------
Old:
----
Cpanel-JSON-XS-4.37.tar.gz
New:
----
Cpanel-JSON-XS-4.38.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Cpanel-JSON-XS.spec ++++++
--- /var/tmp/diff_new_pack.cKHi8S/_old 2024-06-28 15:49:22.895120345 +0200
+++ /var/tmp/diff_new_pack.cKHi8S/_new 2024-06-28 15:49:22.899120489 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Cpanel-JSON-XS
#
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,16 +18,20 @@
%define cpan_name Cpanel-JSON-XS
Name: perl-Cpanel-JSON-XS
-Version: 4.37
+Version: 4.380.0
Release: 0
+# 4.38 -> normalize -> 4.380.0
+%define cpan_version 4.38
License: Artistic-1.0 OR GPL-1.0-or-later
Summary: CPanel fork of JSON::XS, fast and correct serializing
URL: https://metacpan.org/release/%{cpan_name}
-Source0: https://cpan.metacpan.org/authors/id/R/RU/RURBAN/%{cpan_name}-%{version}.ta…
+Source0: https://cpan.metacpan.org/authors/id/R/RU/RURBAN/%{cpan_name}-%{cpan_versio…
Source1: cpanspec.yml
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(Time::Piece)
+Provides: perl(Cpanel::JSON::XS) = %{version}
+%undefine __perllib_provides
%{perl_requires}
%description
@@ -47,7 +51,7 @@
and vice versa.
%prep
-%autosetup -n %{cpan_name}-%{version}
+%autosetup -n %{cpan_name}-%{cpan_version}
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644
++++++ Cpanel-JSON-XS-4.37.tar.gz -> Cpanel-JSON-XS-4.38.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/.github/workflows/testsuite.yml new/Cpanel-JSON-XS-4.38/.github/workflows/testsuite.yml
--- old/Cpanel-JSON-XS-4.37/.github/workflows/testsuite.yml 2023-02-21 17:20:32.000000000 +0100
+++ new/Cpanel-JSON-XS-4.38/.github/workflows/testsuite.yml 2024-05-28 09:41:28.000000000 +0200
@@ -64,6 +64,8 @@
matrix:
perl-version:
[
+ #"5.40",
+ "5.38",
"5.36",
"5.34",
"5.32",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/Changes new/Cpanel-JSON-XS-4.38/Changes
--- old/Cpanel-JSON-XS-4.37/Changes 2023-07-04 12:31:38.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/Changes 2024-05-28 09:28:16.000000000 +0200
@@ -2,6 +2,11 @@
TODO: http://stevehanov.ca/blog/index.php?id=104 compression
+4.38 2024-05-27 (rurban)
+ - Encode real core booleans as boolean notation (PR #224 leonerd)
+ - Minor test fixes by leonerd
+ - Fix docs typo (PR #225 karenetheridge)
+
4.37 2023-07-04 (rurban)
- Fix NAN/INF for AIX (Tux: AIX-5.3, tested by XSven on AIX-7.3) GH #165
- Fix empty string result in object stringification (PR #221 jixam)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/META.json new/Cpanel-JSON-XS-4.38/META.json
--- old/Cpanel-JSON-XS-4.37/META.json 2023-07-04 12:35:22.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/META.json 2024-05-28 09:42:05.000000000 +0200
@@ -100,7 +100,7 @@
"url" : "https://github.com/rurban/Cpanel-JSON-XS"
}
},
- "version" : "4.37",
+ "version" : "4.38",
"x_contributors" : [
"Ashley Willis <ashleyw(a)cpan.org>",
"Chip Salzenberg <chip(a)pobox.com>",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/META.yml new/Cpanel-JSON-XS-4.38/META.yml
--- old/Cpanel-JSON-XS-4.37/META.yml 2023-07-04 12:35:21.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/META.yml 2024-05-28 09:42:05.000000000 +0200
@@ -48,7 +48,7 @@
bugtracker: https://github.com/rurban/Cpanel-JSON-XS/issues
license: http://dev.perl.org/licenses/
repository: https://github.com/rurban/Cpanel-JSON-XS
-version: '4.37'
+version: '4.38'
x_contributors:
- 'Ashley Willis <ashleyw(a)cpan.org>'
- 'Chip Salzenberg <chip(a)pobox.com>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/README new/Cpanel-JSON-XS-4.38/README
--- old/Cpanel-JSON-XS-4.37/README 2023-07-04 12:35:22.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/README 2024-05-28 09:42:06.000000000 +0200
@@ -633,9 +633,10 @@
$json = $json->unblessed_bool([$enable])
If $enable is true (or missing), then "decode" will return Perl
- non-object boolean variables (1 and 0) for JSON booleans ("true" and
- "false"). If $enable is false, then "decode" will return
- "JSON::PP::Boolean" objects for JSON booleans.
+ non-object boolean variables (1 and 0 as numbers or "1" and "" as
+ strings) for JSON booleans ("true" and "false"). If $enable is
+ false, then "decode" will return "JSON::PP::Boolean" objects for
+ JSON booleans.
$json = $json->allow_singlequote ([$enable])
$enabled = $json->get_allow_singlequote
@@ -1066,7 +1067,7 @@
parentheses. The only thing it guarantees is that it starts decoding as
soon as a syntactically valid JSON text has been seen. This means you
need to set resource limits (e.g. "max_size") to ensure the parser will
- stop parsing in the presence if syntax errors.
+ stop parsing in the presence of syntax errors.
The following methods implement this incremental parser.
@@ -2134,9 +2135,9 @@
SEE ALSO
The cpanel_json_xs command line utility for quick experiments.
- JSON, JSON::XS, JSON::MaybeXS, Mojo::JSON, Mojo::JSON::MaybeXS,
- JSON::SL, JSON::DWIW, JSON::YAJL, JSON::Any, Test::JSON,
- Locale::Wolowitz, <https://metacpan.org/search?q=JSON>
+ JSON::PP, JSON, JSON::XS, JSON::MaybeXS, Mojo::JSON,
+ Mojo::JSON::MaybeXS, JSON::SL, JSON::DWIW, JSON::YAJL, JSON::Any,
+ Test::JSON, Locale::Wolowitz, <https://metacpan.org/search?q=JSON>
<https://tools.ietf.org/html/rfc7159>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/SIGNATURE new/Cpanel-JSON-XS-4.38/SIGNATURE
--- old/Cpanel-JSON-XS-4.37/SIGNATURE 2023-07-04 12:35:22.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/SIGNATURE 2024-05-28 09:42:06.000000000 +0200
@@ -16,18 +16,18 @@
SHA256 aac2b4bbaa7b93eaf72300f60e167a17e05adcd721087f735ba55d2900f31490 .appveyor.yml
SHA256 082201a3cbd62a55f2e58ffbb991c4b2bb806de0009bc9497ffcc07202f60855 .github/FUNDING.yml
-SHA256 136c5a00ee7c7425150f18013743e7b0d30339eca0f08901d4cf6b8731a6b017 .github/workflows/testsuite.yml
+SHA256 724cc9e03083bc4d51ec2659118a9bb7ca66ca5f640a1d249ae3732d68511380 .github/workflows/testsuite.yml
SHA256 a3c34aba52e269e6cec558ecf9cff393138574189fdff26b183bee9cc2e0434f .travis.yml
SHA256 c3f2a1a4f66382f796f71a571946722edba53cf3238152b26fd325f4c2f1a20f .whitesource
SHA256 8de3540a3cd7ecc9a9dcb48975fe852c082fe17d4462f87bb72aa7cc47f083ad COPYING
-SHA256 a0c1df3ac89bec04046fe55c39cd20773a4d6f104e76508ef2c688dfc3db6dfa Changes
+SHA256 b71855f20be1a971331ac839669343879f5060566f7b6d99eb1b3e780016ba95 Changes
SHA256 a5378ebe65273d49047a21e94af087f70a303793ffed2a695c800ed965ac185d MANIFEST
-SHA256 ec3a3db51c59096cc14f7712986e3ab2e4027a40f3cc1faf9be69553c172e32c META.json
-SHA256 c76fb8cf23082da8da4f9ffff46a25501af0c2769a6dbf9fbeeaf0f32d536b0a META.yml
+SHA256 54b5e4bb0941990541d28feb3bef935550223d01d72ce0fea6ef5b055e7fa4cf META.json
+SHA256 4e077751414fae1237385450b8552236fc6b9238c8a5b6df80358f305a38f1cb META.yml
SHA256 31d74c68c91639bc34e18541091616d226713c6c49168d42eefab58535f5cd4a Makefile.PL
-SHA256 2eb1d8124526462c3afb4089a09a36d2e22da1b931a859f1ec06bec81d8a4245 README
-SHA256 cf86fbae8a2abeadbd634c40b126f390077dd4a97bd54e2a8ec7311e9e9d71ae XS.pm
-SHA256 21e00e79d18a7320df51dbc7a053052602d30659475a95bbbd366cb1d61a3f21 XS.xs
+SHA256 98e8b94a1144b556c9158578d196aacbcd607403708b46be407c1d646f89725d README
+SHA256 19f04b9e274d822cca292642ecb758f2745b13d8589ac3cf8bbbdb951fc69740 XS.pm
+SHA256 993872004c4d1dafd67cd2aaacbda4065cf418ec5a4b9b25a7c236ff94720003 XS.xs
SHA256 c95e4b970183cbd6d1ec9c88c37a80f12bd2b66ed6be3c008ffd578d2f622c01 XS/Boolean.pm
SHA256 20596259e7e399ed1984a469a9a907be878499406d5285a11f1ab98f93aff44f XS/Type.pm
SHA256 2f34a530b7ce981b0df9aacd2b6944ccf74c4a7f8bb49fde57b342663e7feb26 bin/cpanel_json_xs
@@ -73,12 +73,12 @@
SHA256 1585a6aecec5c73b7a6f70982b3bcc1edc1d63ca55467223ab0d6f0956254bc4 t/18_json_checker.t
SHA256 9f9006c1f925d9ace7d1621e1479c21f9b50459ab57aa0046209fed2b3e66530 t/19_incr.t
SHA256 dde73ed3cfc0e28d064f61fc08871accf88b780aee06a3cb0040f59f04c1ff36 t/20_faihu.t
-SHA256 fcac4365f8d9ba099ea90b6442eb205433d8419ffda5be82d66f5d69c3cdefe3 t/20_unknown.t
+SHA256 56e11977ce3d544f8c8e62a38cbcc4f58f7f1d53b71918f803536acd62122713 t/20_unknown.t
SHA256 388f8e0f0e41c9921aedc67313f8b89bdd08b95ced0dba242986d3b76d9a1688 t/21_evans.t
SHA256 3da823eab55abb6dca05e8bc6111d3b59ea18c4ee270baf6413d9a45042ff48c t/22_comment_at_eof.t
SHA256 2a6506fb07b27b1fef52b251d3876d23bd572596ff487d37c2f6597be554836c t/23_array_ctx.t
SHA256 a8dfccba0b60b0fc91812fcfd96656e993abb74970509926d738c67a58641f01 t/24_freeze_recursion.t
-SHA256 3d81e94b5d3407ba3df47ccace0aaf8f16bad9da3016e74f653e150629ce5b36 t/25_boolean.t
+SHA256 d6e46428bf221ea9bca6f8c0a9d14ee76305d91e01d9946b570aac125d392ba8 t/25_boolean.t
SHA256 e7297f97fe3fea65c865658675b72e667b37b201e7fec8b8128f2006f8999d86 t/26_duplicate.t
SHA256 03a2061b4742ea591961a4ce7403feac91998c0909dbde982c465ce3d2c39706 t/30_jsonspec.t
SHA256 cf2181a691d5e1862d71e4e902928a0d899b9671e3633584efa8ae3f5cc0d174 t/31_bom.t
@@ -88,7 +88,7 @@
SHA256 f542b8cfd2bee5ab9ae92dd042e3bbf68a968ae959d0eeada43cd5cd53c8337a t/55_modifiable.t
SHA256 7e825a17dc348ddee2b61e686a670115c31d80f372a7614e27811b9f3d795c79 t/96_interop.t
SHA256 f720857c5fb03c62aab4765610ab05326e5139505f823400605abaebedffeb32 t/96_interop_pp.t
-SHA256 ddf64cc8fddcf0d2b32c34b2969730a955869edf51b4157a3d3591334dd6b8de t/96_mojo.t
+SHA256 40683e1922b62e46053ee60bf4c94e2ca9dbbe0da9d3131c16b4ef49045feb0a t/96_mojo.t
SHA256 f847d17e014f19232281a3f44184da5f6dc0d1efb2d817d03156d1ff3d152afa t/97_unshare_hek.t
SHA256 6b6c59c5f260f28afca3ccfe0785fb8da328ee3aa259079ef5dd982822862726 t/98_56only.t
SHA256 fc880ee039642bcb1517cdb4afaa8060471785b521df45d295b50041137211e5 t/99_binary.t
@@ -446,12 +446,15 @@
SHA256 aca6f846869ab2e4881e807739086e1535b1438bd0e23d7a021360742736a6a9 xt/pod.t
-----BEGIN PGP SIGNATURE-----
-iQEzBAEBAwAdFiEEKJWogdNCcPq/6PdHtPYzOeZdZBQFAmSj9eoACgkQtPYzOeZd
-ZBTP2wf8DlABhDoQ9mJCIILTVANIlJzE4HcTDwVczvLVSo9q7nBkuRC0HQoh8tfg
-vl6zPgFLNEpjES2kYUQsjNxdrOJ06lB1n2Bm5G3BrSxCHg5oEQ5RPukDcTbWF1Mx
-6uZvtUWCoP5lsUdJ5QqM4fhNDf9iXkY+14EZGMwPj2ia07gkbo7vf2v6vpSIvmze
-dKRP7finLl+mPpBTXZtJ6REva/Ip5BFfxKdCpbVqOSmcCJ3bBkw1MT4UDalhmr9n
-3bOliBpZa2Wx12jWk6Iewqw68p+jCjT6dNmA1Q3Ct+ii9ihYkVuCV6vGY1WCHpCl
-C4xy/13TfjfQ5ZjfhVOeXF8OAHiIrA==
-=bfLU
+iQGzBAEBAwAdFiEEOKQWew22nknF9yFsuMKIZqsnp6IFAmZVis0ACgkQuMKIZqsn
+p6L0fQv/fxqsl/qUJlP7VF+cB3aoYxREZb5zO0o8EgtUh/0WJqIRh1HCtIFvqS6A
+H+C38UI74jVF/HW9m2MHrdG2+uhfQtIPA1AYSY5/HhiDXPY5/yLzOghXeDOtFCIV
+57AUvwcatdDbZdBHHAjdFjmId44ytw+CegIc7DS0iX3x5xfUq83RDASFvQ0KBnaM
+e+0zwwn8WEAugRN4T1WLIDOVH+XpfpmeaPTXq0+k1F5EceemhLtSSgApLt5uwwnJ
+EI8GGMrmqDj7D4qVm8x8i0S321I91S8qunQ/8eZqmX4eXTHLs/xr06bQswBHVYXG
+ZSEBm/Igl2Uklg1+0I3mfPM91weFLGgziN8upSevyW43P1czOx5/w979yozLXzNw
+zRUHXbCuzFjXiHMLO0mKVJ2iD/Pi5qg7X3gLFhVKDOoS+sigoyMyKtkjERsTEnVb
+kO+TbbmydKag54VUsZt8XUaSO0CgchXbJ1Cc46wL0zaNEtFeUKVwG1Bqv/4HDiX7
+kALat5WQ
+=upNl
-----END PGP SIGNATURE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/XS.pm new/Cpanel-JSON-XS-4.38/XS.pm
--- old/Cpanel-JSON-XS-4.37/XS.pm 2023-07-04 12:31:38.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/XS.pm 2024-05-28 09:28:16.000000000 +0200
@@ -1,5 +1,5 @@
package Cpanel::JSON::XS;
-our $VERSION = '4.37';
+our $VERSION = '4.38';
our $XS_VERSION = $VERSION;
# $VERSION = eval $VERSION;
@@ -731,10 +731,11 @@
$json = $json->unblessed_bool([$enable])
-If C<$enable> is true (or missing), then C<decode> will return
-Perl non-object boolean variables (1 and 0) for JSON booleans
-(C<true> and C<false>). If C<$enable> is false, then C<decode>
-will return C<JSON::PP::Boolean> objects for JSON booleans.
+If C<$enable> is true (or missing), then C<decode> will return Perl
+non-object boolean variables (1 and 0 as numbers or "1" and "" as
+strings) for JSON booleans (C<true> and C<false>). If C<$enable> is
+false, then C<decode> will return C<JSON::PP::Boolean> objects for
+JSON booleans.
=item $json = $json->allow_singlequote ([$enable])
@@ -1205,7 +1206,7 @@
parentheses. The only thing it guarantees is that it starts decoding
as soon as a syntactically valid JSON text has been seen. This means
you need to set resource limits (e.g. C<max_size>) to ensure the
-parser will stop parsing in the presence if syntax errors.
+parser will stop parsing in the presence of syntax errors.
The following methods implement this incremental parser.
@@ -2414,9 +2415,9 @@
The F<cpanel_json_xs> command line utility for quick experiments.
-L<JSON>, L<JSON::XS>, L<JSON::MaybeXS>, L<Mojo::JSON>, L<Mojo::JSON::MaybeXS>,
-L<JSON::SL>, L<JSON::DWIW>, L<JSON::YAJL>, L<JSON::Any>, L<Test::JSON>,
-L<Locale::Wolowitz>,
+L<JSON::PP>, L<JSON>, L<JSON::XS>, L<JSON::MaybeXS>, L<Mojo::JSON>,
+L<Mojo::JSON::MaybeXS>, L<JSON::SL>, L<JSON::DWIW>, L<JSON::YAJL>,
+L<JSON::Any>, L<Test::JSON>, L<Locale::Wolowitz>,
L<https://metacpan.org/search?q=JSON>
L<https://tools.ietf.org/html/rfc7159>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/XS.xs new/Cpanel-JSON-XS-4.38/XS.xs
--- old/Cpanel-JSON-XS-4.37/XS.xs 2023-07-04 12:27:51.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/XS.xs 2024-05-28 09:05:05.000000000 +0200
@@ -303,6 +303,10 @@
# endif
#endif
+#if (PERL_REVISION > 5) || (PERL_REVISION == 5 && PERL_VERSION >= 36)
+# define PERL_HAVE_BOOLEANS
+#endif
+
// i.e. "JSON" in big-endian
#define JSON_MAGIC 0x4A534F4E
@@ -1852,9 +1856,17 @@
if (!SvROK (sv))
{
- if (UNLIKELY (sv == &PL_sv_yes))
+ if (UNLIKELY (sv == &PL_sv_yes)
+#ifdef PERL_HAVE_BOOLEANS
+ || (SvIsBOOL(sv) && SvTRUE(sv))
+#endif
+ )
encode_const_str (aTHX_ enc, "true", 4, 0);
- else if (UNLIKELY (sv == &PL_sv_no))
+ else if (UNLIKELY (sv == &PL_sv_no)
+#ifdef PERL_HAVE_BOOLEANS
+ || (SvIsBOOL(sv) && !SvTRUE(sv))
+#endif
+ )
encode_const_str (aTHX_ enc, "false", 5, 0);
else if (!SvOK (sv))
encode_const_str (aTHX_ enc, "false", 5, 0);
@@ -1979,7 +1991,11 @@
}
else
{
- if (UNLIKELY (sv == &PL_sv_yes || sv == &PL_sv_no)) type = JSON_TYPE_BOOL;
+ if (UNLIKELY (sv == &PL_sv_yes || sv == &PL_sv_no
+#ifdef PERL_HAVE_BOOLEANS
+ || SvIsBOOL(sv)
+#endif
+ )) type = JSON_TYPE_BOOL;
else if (SvNOKp (sv)) type = JSON_TYPE_FLOAT;
else if (SvIOKp (sv)) type = JSON_TYPE_INT;
else if (SvPOKp (sv)) type = JSON_TYPE_STRING;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/t/20_unknown.t new/Cpanel-JSON-XS-4.38/t/20_unknown.t
--- old/Cpanel-JSON-XS-4.37/t/20_unknown.t 2022-08-10 16:22:51.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/t/20_unknown.t 2024-05-28 09:05:05.000000000 +0200
@@ -7,6 +7,7 @@
or plan skip_all => 'JSON::PP 2.09 required for cross testing';
$ENV{PERL_JSON_BACKEND} = 'JSON::PP';
}
+use constant HAVE_BOOLEANS => ($^V ge v5.36);
plan tests => 32;
use JSON::PP ();
use Cpanel::JSON::XS ();
@@ -64,9 +65,16 @@
is( $json->encode( {null => \"some"} ), '{"null":null}', 'js unknown' );
is( $json->encode( {null => \""} ), '{"null":null}', 'js unknown' );
-is( $json->encode( {true => !!1} ), '{"true":1}', 'js sv_yes' );
-is( $json->encode( {false => !!0} ), '{"false":""}', 'js sv_no' );
-is( $json->encode( {false => !!""} ), '{"false":""}', 'js sv_no' );
+if(HAVE_BOOLEANS) {
+ is( $json->encode( {true => !!1} ), '{"true":true}', 'js sv_yes' );
+ is( $json->encode( {false => !!0} ), '{"false":false}', 'js sv_no' );
+ is( $json->encode( {false => !!""} ), '{"false":false}', 'js sv_no' );
+}
+else {
+ is( $json->encode( {true => !!1} ), '{"true":1}', 'js sv_yes' );
+ is( $json->encode( {false => !!0} ), '{"false":""}', 'js sv_no' );
+ is( $json->encode( {false => !!""} ), '{"false":""}', 'js sv_no' );
+}
is( $json->encode( {true => \!!1} ), '{"true":true}', 'js \sv_yes' );
is( $json->encode( {false => \!!0} ), '{"false":null}', 'js \sv_no' );
is( $json->encode( {false => \!!""} ), '{"false":null}', 'js \sv_no' );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/t/25_boolean.t new/Cpanel-JSON-XS-4.38/t/25_boolean.t
--- old/Cpanel-JSON-XS-4.37/t/25_boolean.t 2023-07-04 12:27:51.000000000 +0200
+++ new/Cpanel-JSON-XS-4.38/t/25_boolean.t 2024-05-28 09:05:05.000000000 +0200
@@ -1,5 +1,6 @@
use strict;
-use Test::More tests => 42;
+use constant HAVE_BOOLEANS => ($^V ge v5.36);
+use Test::More tests => 42 + (HAVE_BOOLEANS ? 2 : 0);
use Cpanel::JSON::XS ();
use Config;
@@ -125,3 +126,11 @@
$js = $unblessed_bool_cjson->decode($truefalse);
ok eval { $js->[0] = "new value 0" }, "decoded 'true' is modifiable" or diag($@);
ok eval { $js->[1] = "new value 1" }, "decoded 'false' is modifiable" or diag($@);
+
+if(HAVE_BOOLEANS) {
+ no if HAVE_BOOLEANS, warnings => "experimental::builtin";
+ is($cjson->encode({t => builtin::true}), q({"t":true}),
+ 'true core booleans encode as boolean');
+ is($cjson->encode({f => builtin::false}), q({"f":false}),
+ 'false core booleans encode as boolean');
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Cpanel-JSON-XS-4.37/t/96_mojo.t new/Cpanel-JSON-XS-4.38/t/96_mojo.t
--- old/Cpanel-JSON-XS-4.37/t/96_mojo.t 2020-10-27 18:39:10.000000000 +0100
+++ new/Cpanel-JSON-XS-4.38/t/96_mojo.t 2024-05-28 09:05:05.000000000 +0200
@@ -9,7 +9,7 @@
plan skip_all => "Mojo::JSON::decode_json required for testing interop";
exit 0;
}
- plan tests => 9;
+ plan tests => 12;
}
use Mojo::JSON ();
@@ -35,18 +35,10 @@
my $mj = Mojo::JSON::encode_json( $yesno );
$js = $cjson->decode( $mj );
-# fragile
-ok( $js->[0] eq '' or $js->[0] == 0 or !$js->[0], 'can decode Mojo false' );
-is( $js->[1], 1, 'can decode Mojo true' );
-# Note this is fragile. it depends on the internal representation of booleans.
-# It can also be ['0', '1']
-if ($js->[0] eq '') {
- is_deeply( $js, ['', 1], 'can decode Mojo booleans' )
- or diag( $mj, $js );
-} else {
- TODO: {
- local $TODO = 'fragile false => "0"';
- is_deeply( $js, ['', 1], 'can decode Mojo booleans' )
- or diag( $mj, $js );
- }
-}
+ok( !$js->[0], 'decoded Mojo false is false' );
+ok( $js->[0] == 0, 'decoded Mojo false is zero' );
+ok( $js->[0] eq "", 'decoded Mojo false is empty string' );
+
+ok( $js->[1], 'decoded Mojo true is true' );
+ok( $js->[1] == 1, 'decoded Mojo true is one' );
+ok( $js->[1] eq "1", 'decoded Mojo true is "1" string' );
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package lxqt-panel for openSUSE:Factory checked in at 2024-06-28 15:47:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/lxqt-panel (Old)
and /work/SRC/openSUSE:Factory/.lxqt-panel.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lxqt-panel"
Fri Jun 28 15:47:04 2024 rev:31 rq:1183641 version:2.0.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/lxqt-panel/lxqt-panel.changes 2024-06-05 17:38:53.274434015 +0200
+++ /work/SRC/openSUSE:Factory/.lxqt-panel.new.18349/lxqt-panel.changes 2024-06-28 15:49:06.502527205 +0200
@@ -1,0 +2,7 @@
+Tue May 21 18:09:05 UTC 2024 - Андрей Алыпов <and.november(a)opensuse.org>
+
+- Настройка Fancy Application Menu
+- Added:
+ * 002-panel-conf-branding.patch
+
+-------------------------------------------------------------------
New:
----
002-panel-conf-branding.patch
BETA DEBUG BEGIN:
New:- Added:
* 002-panel-conf-branding.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ lxqt-panel.spec ++++++
--- /var/tmp/diff_new_pack.vjlof2/_old 2024-06-28 15:49:11.974725207 +0200
+++ /var/tmp/diff_new_pack.vjlof2/_new 2024-06-28 15:49:11.986725641 +0200
@@ -27,6 +27,7 @@
Source1: %{url}/releases/download/%{version}/%{name}-%{version}.tar.xz.asc
Source2: %{name}.keyring
Patch1: 001-fix-plugin-loader.patch
+Patch2: 002-panel-conf-branding.patch
BuildRequires: cmake >= 3.27.0
BuildRequires: fdupes
BuildRequires: gcc-c++
++++++ 002-panel-conf-branding.patch ++++++
--- lxqt-panel-2.0.1/panel/resources/panel.conf 2024-05-08 19:37:39.000000000 +0300
+++ lxqt-panel-2.0.1.new/panel/resources/panel.conf 2024-05-21 20:28:13.029086928 +0300
@@ -8,6 +8,12 @@
[fancymenu]
type=fancymenu
alignment=Left
+buttonsAtTop=false
+categoriesAtRight=false
+icon=/usr/share/lxqt/graphics/opensuse-green.svg
+ownIcon=true
+showText=true
+text=" openSUSE"
filterClear=true
autoSel=true
autoSelDelay=150
1
0