Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package picard for openSUSE:Factory checked 
in at 2026-10-20 12:40:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/picard (Old)
 and      /work/SRC/openSUSE:Factory/.picard.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "picard"

Tue Oct 20 12:40:40 2026 rev:75 rq:1386283 version:3.0.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/picard/picard.changes    2025-02-24 
15:49:57.586246192 +0100
+++ /work/SRC/openSUSE:Factory/.picard.new.3698736/picard.changes       
2026-10-20 12:42:03.539872726 +0200
@@ -1,0 +2,40 @@
+Mon Oct 19 13:03:53 UTC 2026 - Antonio Larrosa <[email protected]>
+
+- Add patch to actually fix the test_article_insensitive_adapter
+  test. The problem was that Qt 6.12 changed the way texts are
+  collated:
+  * fix-test_article_insensitive_adapter.patch
+
+-------------------------------------------------------------------
+Mon Oct 19 11:41:56 UTC 2026 - Antonio Larrosa <[email protected]>
+
+- After talking with upstream, disable the
+  test_article_insensitive_adapter test in ppc64le where for some
+  reason the article insensitive sort sorts words without a
+  preceding article before words with an article.
+
+-------------------------------------------------------------------
+Sat Oct 17 16:49:14 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to version 3.0.2, the Qt6 major release:
+  * Ported from PyQt5 to PyQt6, requires Python 3.10 or newer.
+  * New features: ISRC lookup and submission from CD, ListenBrainz
+    listens submission, TOML-based exportable profiles, albumartists
+    tag, new tagger script functions, regex testing playground and
+    shell completion generation for picard-cli.
+  * Fixes upgrade from Picard 2: config migration no longer crashes
+    on launch and the metadata panel works with legacy naming
+    scripts; large-collection memory use and save performance
+    improved.
+  * Drop picard-requirements.patch, obsolete with the move of
+    dependencies to pyproject.toml.
+- Packaging changes:
+  * Switch build and runtime dependencies from PyQt5 to PyQt6.
+  * Add python3-pygit2 and python3-tomlkit requirements, raise
+    mutagen to >= 1.45 and drop fasteners and python-dateutil,
+    no longer used upstream.
+  * Drop the picard-lang subpackage: translations now ship inside
+    the main package (upstream no longer installs to
+    /usr/share/locale).
+
+-------------------------------------------------------------------

Old:
----
  picard-2.13.3.tar.gz
  picard-requirements.patch

New:
----
  fix-test_article_insensitive_adapter.patch
  picard-3.0.2.tar.gz

----------(Old B)----------
  Old:    improved.
  * Drop picard-requirements.patch, obsolete with the move of
    dependencies to pyproject.toml.
----------(Old E)----------

----------(New B)----------
  New:  collated:
  * fix-test_article_insensitive_adapter.patch
----------(New E)----------

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

Other differences:
------------------
++++++ picard.spec ++++++
--- /var/tmp/diff_new_pack.Xr8p6D/_old  2026-10-20 12:42:05.132939399 +0200
+++ /var/tmp/diff_new_pack.Xr8p6D/_new  2026-10-20 12:42:05.139939692 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package picard
 #
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,48 +17,49 @@
 
 
 Name:           picard
-Version:        2.13.3
+Version:        3.0.2
 Release:        0
 Summary:        The Next Generation MusicBrainz Tagger
 License:        GPL-2.0-or-later
-Group:          Productivity/Multimedia/Sound/Utilities
 URL:            https://picard.musicbrainz.org
 Source0:        
https://codeload.github.com/metabrainz/picard/tar.gz/release-%{version}#/%{name}-%{version}.tar.gz
-# PATCH-FIX-SUSE picard-requirements.patch, [email protected] -- clean python 
requirements metadata
-Patch0:         picard-requirements.patch
+Patch0:         fix-test_article_insensitive_adapter.patch
 BuildRequires:  desktop-file-utils
 BuildRequires:  fdupes
 BuildRequires:  gcc-c++
 BuildRequires:  hicolor-icon-theme
 BuildRequires:  libofa-devel
 BuildRequires:  python-rpm-macros
-BuildRequires:  python3-devel >= 3.8
+BuildRequires:  python3-devel >= 3.10
 BuildRequires:  python3-pip
 BuildRequires:  python3-setuptools
 BuildRequires:  python3-wheel
 BuildRequires:  update-desktop-files
 Requires:       python3-Markdown >= 3.2
 Requires:       python3-PyJWT >= 2.0
-Requires:       python3-PyQt5 >= 5.11
+Requires:       python3-PyQt6 >= 6.6.1
 Requires:       python3-PyYAML >= 5.1
 Requires:       python3-charset-normalizer >= 3.3
 Requires:       python3-discid >= 1.0
-Requires:       python3-fasteners >= 0.14
-Requires:       python3-mutagen >= 1.37
-Requires:       python3-python-dateutil >= 2.7
+Requires:       python3-mutagen >= 1.45
+Requires:       python3-pygit2 >= 1.19
+Requires:       python3-tomlkit >= 0.12.4
 Recommends:     chromaprint-fpcalc
 # SECTION test
+# pygit2 initializes TLS cert locations at import (via picard.tagger);
+# the build root ships no CA bundle, so provide one for %check
+BuildRequires:  ca-certificates-mozilla
 BuildRequires:  python3-Markdown >= 3.2
 BuildRequires:  python3-PyJWT >= 2.0
-BuildRequires:  python3-PyQt5 >= 5.11
+BuildRequires:  python3-PyQt6 >= 6.6.1
 BuildRequires:  python3-PyYAML >= 5.1
 BuildRequires:  python3-charset-normalizer >= 3.3
 BuildRequires:  python3-discid >= 1.0
-BuildRequires:  python3-fasteners >= 0.14
-BuildRequires:  python3-mutagen >= 1.37
+BuildRequires:  python3-mutagen >= 1.45
+BuildRequires:  python3-pygit2 >= 1.19
 BuildRequires:  python3-pytest
 BuildRequires:  python3-pytest-xvfb
-BuildRequires:  python3-python-dateutil >= 2.7
+BuildRequires:  python3-tomlkit >= 0.12.4
 # /SECTION
 
 %description
@@ -66,8 +67,6 @@
 Picard Tagger focuses on album-oriented tagging as opposed to
 track-based tagging.
 
-%lang_package
-
 %prep
 %autosetup -p1 -n %{name}-release-%{version}
 
@@ -81,20 +80,17 @@
 
 %suse_update_desktop_file -G "Music Tagger" -N "picard" org.musicbrainz.Picard
 
-rm -rfv %{buildroot}%{_datadir}/locale/sco
-
-%find_lang %{name} %{name}.lang
-%find_lang %{name}-countries %{name}.lang
-%find_lang %{name}-attributes %{name}.lang
 %fdupes %{buildroot}%{python3_sitearch}
 
 %check
+export LANG=en_US.UTF-8
 pytest -v
 
 %files
 %doc AUTHORS.txt NEWS.md
 %license COPYING.txt
 %{_bindir}/picard
+%{_bindir}/picard-cli
 %{_datadir}/applications/org.musicbrainz.Picard.desktop
 %{python3_sitearch}/picard
 %{python3_sitearch}/picard-%{version}.dist-info
@@ -102,6 +98,3 @@
 %{_datadir}/icons/hicolor/*/apps/org.musicbrainz.Picard.svg
 %{_datadir}/metainfo/org.musicbrainz.Picard.appdata.xml
 
-%files lang -f %{name}.lang
-%{_datadir}/locale/*/LC_MESSAGES/picard-constants.mo
-

++++++ fix-test_article_insensitive_adapter.patch ++++++
From: Antonio Larrosa <[email protected]>
Subject: Fix test_article_insensitive_adapter with Qt 6.12

When building with Qt 6.12, test_article_insensitive_adapter fails with:

```
    @pytest.mark.skipif(IS_WIN, reason="QCollator not used on Windows")
    def test_article_insensitive_adapter() -> None:
        setup_i18n(None, 'en')
        values = ["The Beatles", "Beatles", "An Artist", "Artist"]
        expected = ["An Artist", "Artist", "The Beatles", "Beatles"]
        result = _sorted_values(ArticleInsensitiveAdapter, values)
>       assert result == expected
E       AssertionError: assert ['Artist', 'An Artist', 'Beatles', 'The 
Beatles'] == ['An Artist', 'Artist', 'The Beatles', 'Beatles']
E         
E         At index 0 diff: 'Artist' != 'An Artist'
E         
E         Full diff:
E           [
E         +     'Artist',
E               'An Artist',
E         -     'Artist',
E         +     'Beatles',
E               'The Beatles',
E         -     'Beatles',
E           ]

test/ui/test_custom_columns_sorting_adapters.py:161: AssertionError
```

This fixes it by changing the expected ordered list depending on the Qt version

Index: picard-release-3.0.2/test/ui/test_custom_columns_sorting_adapters.py
===================================================================
--- picard-release-3.0.2.orig/test/ui/test_custom_columns_sorting_adapters.py
+++ picard-release-3.0.2/test/ui/test_custom_columns_sorting_adapters.py
@@ -25,6 +25,8 @@ from unittest.mock import MagicMock
 from picard.const.sys import IS_WIN
 from picard.i18n import setup_i18n
 
+from PyQt6.QtCore import QT_VERSION
+
 import pytest
 
 from picard.ui.columns import (
@@ -156,7 +158,11 @@ def test_length_sort_adapter() -> None:
 def test_article_insensitive_adapter() -> None:
     setup_i18n(None, 'en')
     values = ["The Beatles", "Beatles", "An Artist", "Artist"]
-    expected = ["An Artist", "Artist", "The Beatles", "Beatles"]
+    # Qt 6.12 changed the way texts are collated so the sort order is different
+    if QT_VERSION >= ((6 << 16) | (12 << 8)):
+        expected = ["Artist", "An Artist", "Beatles", "The Beatles"]
+    else:
+        expected = ["An Artist", "Artist", "The Beatles", "Beatles"]
     result = _sorted_values(ArticleInsensitiveAdapter, values)
     assert result == expected
 

++++++ picard-2.13.3.tar.gz -> picard-3.0.2.tar.gz ++++++
/work/SRC/openSUSE:Factory/picard/picard-2.13.3.tar.gz 
/work/SRC/openSUSE:Factory/.picard.new.3698736/picard-3.0.2.tar.gz differ: char 
13, line 1

Reply via email to