Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mcomix for openSUSE:Leap:16.0 checked in at 2025-12-05 14:29:43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:16.0/mcomix (Old) and /work/SRC/openSUSE:Leap:16.0/.mcomix.new.1939 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mcomix" Fri Dec 5 14:29:43 2025 rev:4 rq: version:3.1.1 Changes: -------- --- /work/SRC/openSUSE:Leap:16.0/mcomix/mcomix.changes 2025-04-29 09:03:49.400491926 +0200 +++ /work/SRC/openSUSE:Leap:16.0/.mcomix.new.1939/mcomix.changes 2025-12-05 14:29:44.855775244 +0100 @@ -1,0 +2,23 @@ +Mon Oct 13 16:30:21 UTC 2025 - Hunter Wardlaw <[email protected]> + +- Update to 3.1.1: + * Fix "context has already been set" error + +------------------------------------------------------------------- +Tue Aug 19 18:00:02 UTC 2025 - Giacomo Comes <[email protected]> + +- replace Requires: /usr/bin/chardetect with %{pythons}-chardet + * let chardetect use the same python version as mcomix + +------------------------------------------------------------------- +Wed Jan 29 13:29:04 UTC 2025 - Giacomo Comes <[email protected]> + +- for Leap 16.0 requires python3 instead of python311 + +------------------------------------------------------------------- +Tue Jan 28 15:19:10 UTC 2025 - Giacomo Comes <[email protected]> + +- fix Requires +- adjust spec file for Leap 16.0 + +------------------------------------------------------------------- Old: ---- mcomix-3.1.0.tar.gz New: ---- mcomix-3.1.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mcomix.spec ++++++ --- /var/tmp/diff_new_pack.B6D5Mv/_old 2025-12-05 14:29:45.219790504 +0100 +++ /var/tmp/diff_new_pack.B6D5Mv/_new 2025-12-05 14:29:45.219790504 +0100 @@ -1,7 +1,7 @@ # # spec file for package mcomix # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2025 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 @@ -16,14 +16,14 @@ # -%{?sle15_python_module_pythons} - -%if 0%{?suse_version} > 1500 +%if 0%{?suse_version} >= 1600 %define pythons python3 +%else +%define pythons python311 %endif Name: mcomix -Version: 3.1.0 +Version: 3.1.1 Release: 0 Summary: Comics Viewer License: GPL-2.0-only @@ -34,17 +34,17 @@ BuildRequires: %{python_module setuptools} BuildRequires: %{python_module wheel} BuildRequires: gobject-introspection -%if 0%{?suse_version} > 1500 +%if 0%{?suse_version} > 1600 Requires: python3-PyMuPDF -%endif -%if 0%{?sle_version} >= 0150400 +%else Requires: mupdf %endif +Requires: %{pythons} Requires: %{pythons}-Pillow +Requires: %{pythons}-chardet Requires: %{pythons}-gobject-Gdk Requires: %{pythons}-pycairo Requires: /usr/bin/7z -Requires: /usr/bin/chardetect Requires: typelib-1_0-Gtk-3_0 Recommends: /usr/bin/lha Recommends: unrar ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.B6D5Mv/_old 2025-12-05 14:29:45.275792852 +0100 +++ /var/tmp/diff_new_pack.B6D5Mv/_new 2025-12-05 14:29:45.279793020 +0100 @@ -1,7 +1,7 @@ -mtime: 1716406408 -commit: 7b09964bc5cd26256afea6883246f26d29011c3eeba749c144a3c384dfb43df2 +mtime: 1760458090 +commit: e64c713e1fc670cc120f6cae775e63cf49939695097fd7498e73b0c1069c2bd5 url: https://src.opensuse.org/pool/mcomix -revision: 7b09964bc5cd26256afea6883246f26d29011c3eeba749c144a3c384dfb43df2 +revision: e64c713e1fc670cc120f6cae775e63cf49939695097fd7498e73b0c1069c2bd5 trackingbranch: Leap-16.0 projectscmsync: https://src.opensuse.org/openSUSE/Leap ++++++ build.specials.obscpio ++++++ ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2025-12-05 14:29:41.000000000 +0100 @@ -0,0 +1 @@ +.osc ++++++ mcomix-3.1.0.tar.gz -> mcomix-3.1.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/ChangeLog.md new/mcomix-3.1.1/ChangeLog.md --- old/mcomix-3.1.0/ChangeLog.md 2024-01-21 20:02:13.000000000 +0100 +++ new/mcomix-3.1.1/ChangeLog.md 2025-09-06 13:03:50.000000000 +0200 @@ -1,3 +1,13 @@ +# MComix 3.1.1 +## Release date: 2025-09-06 + +### Bug fixes + +- Added official mime types for CBZ/CBR comic books to desktop + metadata file. + +- Fix "context has already been set" error in Python 3.13. + # MComix 3.1.0 ## Release date: 2024-01-21 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/PKG-INFO new/mcomix-3.1.1/PKG-INFO --- old/mcomix-3.1.0/PKG-INFO 2024-01-21 20:03:58.997476800 +0100 +++ new/mcomix-3.1.1/PKG-INFO 2025-09-06 13:06:32.493598000 +0200 @@ -1,6 +1,6 @@ -Metadata-Version: 2.1 +Metadata-Version: 2.4 Name: mcomix -Version: 3.1.0 +Version: 3.1.1 Summary: GTK comic book viewer Author: Pontus Ekberg Maintainer: The MComix Team @@ -382,6 +382,7 @@ Requires-Dist: python-lsp-black; extra == "dev" Requires-Dist: types-Pillow; extra == "dev" Requires-Dist: pygobject-stubs; extra == "dev" +Dynamic: license-file # MComix README diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/__main__.py new/mcomix-3.1.1/mcomix/__main__.py --- old/mcomix-3.1.0/mcomix/__main__.py 2023-09-12 13:43:55.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/__main__.py 2025-09-06 13:03:16.000000000 +0200 @@ -21,10 +21,10 @@ def main() -> None: - mp.freeze_support() - mp.set_start_method('spawn') run() if __name__ == '__main__': + mp.freeze_support() + mp.set_start_method('spawn') main() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/archive/native_pdf/child.py new/mcomix-3.1.1/mcomix/archive/native_pdf/child.py --- old/mcomix-3.1.0/mcomix/archive/native_pdf/child.py 2023-09-15 15:40:14.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/archive/native_pdf/child.py 2025-06-25 06:09:37.000000000 +0200 @@ -6,7 +6,10 @@ from PIL import Image from typing import Generator, Optional -import fitz +try: + import fitz +except ImportError: + import fitz_old as fitz from mcomix.constants import PDF_RENDER_DPI_DEF from mcomix.preferences import prefs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/archive/pdf_multi.py new/mcomix-3.1.1/mcomix/archive/pdf_multi.py --- old/mcomix-3.1.0/mcomix/archive/pdf_multi.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/archive/pdf_multi.py 2025-06-25 06:09:37.000000000 +0200 @@ -45,7 +45,10 @@ try: if os.environ.get("MCOMIX_DISABLE_PDF_MULTI") is not None: raise DisabledError("MCOMIX_DISABLE_PDF_MULTI set in environment") - import fitz + try: + import fitz + except ImportError: + import fitz_old as fitz fitz_version = LegacyVersion(fitz.VersionFitz) required_version = LegacyVersion(FITZ_VERSION_REQUIRED) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/comment_dialog.py new/mcomix-3.1.1/mcomix/comment_dialog.py --- old/mcomix-3.1.0/mcomix/comment_dialog.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/comment_dialog.py 2024-08-19 06:40:13.000000000 +0200 @@ -6,6 +6,7 @@ from mcomix import i18n from mcomix.i18n import _ + class _CommentsDialog(Gtk.Dialog): def __init__(self, window): @@ -74,7 +75,7 @@ name = os.path.basename(path) - page = Gtk.VBox(False) + page = Gtk.Box.new(Gtk.Orientation.VERTICAL, 0) page.set_border_width(8) scrolled = Gtk.ScrolledWindow() @@ -82,7 +83,7 @@ page.pack_start(scrolled, True, True, 0) outbox = Gtk.EventBox() - scrolled.add_with_viewport(outbox) + scrolled.add(outbox) inbox = Gtk.EventBox() inbox.set_border_width(6) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/constants.py new/mcomix-3.1.1/mcomix/constants.py --- old/mcomix-3.1.0/mcomix/constants.py 2024-01-21 20:02:25.000000000 +0100 +++ new/mcomix-3.1.1/mcomix/constants.py 2025-09-06 13:03:50.000000000 +0200 @@ -8,7 +8,7 @@ from mcomix import tools APPNAME = 'MComix' -VERSION = '3.1.0' +VERSION = '3.1.1' HOME_DIR = tools.get_home_directory() CONFIG_DIR = tools.get_config_directory() @@ -100,8 +100,8 @@ ('application/x-lzh', 'application/x-lha', 'application/x-lzh-compressed'), ('lha', 'lzh')) PDF_FORMATS = ( - ('application/pdf',), - ('pdf',)) + ('application/pdf', 'application/x-cbp'), + ('pdf', 'cbp')) MOBI_FORMATS = ( ('application/vnd.amazon.mobi8-ebook',), ('azw3',)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/edit_comment_area.py new/mcomix-3.1.1/mcomix/edit_comment_area.py --- old/mcomix-3.1.0/mcomix/edit_comment_area.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/edit_comment_area.py 2024-08-19 06:40:13.000000000 +0200 @@ -5,12 +5,13 @@ from mcomix import tools from mcomix.i18n import _ -class _CommentArea(Gtk.VBox): + +class _CommentArea(Gtk.Box): """The area used for displaying and handling non-image files.""" def __init__(self, edit_dialog): - super(_CommentArea, self).__init__() + super().__init__(orientation=Gtk.Orientation.VERTICAL, spacing=0) self._edit_dialog = edit_dialog scrolled = Gtk.ScrolledWindow() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/enhance_dialog.py new/mcomix-3.1.1/mcomix/enhance_dialog.py --- old/mcomix-3.1.0/mcomix/enhance_dialog.py 2024-01-01 14:16:22.000000000 +0100 +++ new/mcomix-3.1.1/mcomix/enhance_dialog.py 2024-08-19 06:40:13.000000000 +0200 @@ -35,7 +35,7 @@ self._enhancer = window.enhancer self._block = False - vbox = Gtk.VBox(False, 10) + vbox = Gtk.Box.new(Gtk.Orientation.VERTICAL, 10) self.set_border_width(4) vbox.set_border_width(6) self.vbox.add(vbox) @@ -45,10 +45,10 @@ vbox.pack_start(self._hist_image, True, True, 0) vbox.pack_start(Gtk.Separator.new(Gtk.Orientation.HORIZONTAL), True, True, 0) - hbox = Gtk.HBox(False, 4) + hbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 4) vbox.pack_start(hbox, False, False, 2) - vbox_left = Gtk.VBox(False, 4) - vbox_right = Gtk.VBox(False, 4) + vbox_left = Gtk.Box.new(Gtk.Orientation.VERTICAL, 4) + vbox_right = Gtk.Box.new(Gtk.Orientation.VERTICAL, 4) hbox.pack_start(vbox_left, False, False, 2) hbox.pack_start(vbox_right, True, True, 2) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/file_chooser_base_dialog.py new/mcomix-3.1.1/mcomix/file_chooser_base_dialog.py --- old/mcomix-3.1.0/mcomix/file_chooser_base_dialog.py 2023-09-19 16:19:59.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/file_chooser_base_dialog.py 2024-08-19 06:40:13.000000000 +0200 @@ -62,7 +62,7 @@ self.filechooser.connect('file_activated', self._response, Gtk.ResponseType.OK) - preview_box = Gtk.VBox(False, 10) + preview_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 10) preview_box.set_size_request(130, 0) self._preview_image = Gtk.Image() self._preview_image.set_size_request(130, 130) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/image_tools.py new/mcomix-3.1.1/mcomix/image_tools.py --- old/mcomix-3.1.0/mcomix/image_tools.py 2024-01-21 19:52:15.000000000 +0100 +++ new/mcomix-3.1.1/mcomix/image_tools.py 2025-06-25 06:09:37.000000000 +0200 @@ -691,7 +691,10 @@ supported_formats_gdk = {} for format in GdkPixbuf.Pixbuf.get_formats(): name = format.get_name().upper() - assert name not in supported_formats_gdk + if name in supported_formats_gdk: + # The list of supported formats can sometimes contain duplicated entries + continue + supported_formats_gdk[name] = ( format.get_mime_types(), format.get_extensions(), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/library/add_progress_dialog.py new/mcomix-3.1.1/mcomix/library/add_progress_dialog.py --- old/mcomix-3.1.0/mcomix/library/add_progress_dialog.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/library/add_progress_dialog.py 2024-08-19 06:40:13.000000000 +0200 @@ -30,13 +30,15 @@ self.connect('response', self._response) self.set_default_response(Gtk.ResponseType.CLOSE) - main_box = Gtk.VBox(False, 5) + main_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 5) main_box.set_border_width(6) self.vbox.pack_start(main_box, False, False, 0) - hbox = Gtk.HBox(False, 10) + hbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 10) main_box.pack_start(hbox, False, False, 5) - left_box = Gtk.VBox(True, 5) - right_box = Gtk.VBox(True, 5) + left_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 5) + left_box.set_homogeneous(True) + right_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 5) + right_box.set_homogeneous(True) hbox.pack_start(left_box, False, False, 0) hbox.pack_start(right_box, False, False, 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/library/collection_area.py new/mcomix-3.1.1/mcomix/library/collection_area.py --- old/mcomix-3.1.0/mcomix/library/collection_area.py 2023-09-18 19:11:05.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/library/collection_area.py 2024-08-19 06:40:13.000000000 +0200 @@ -150,7 +150,8 @@ def add_collection(self, *args): """Add a new collection to the library, through a dialog.""" - add_dialog = message_dialog.MessageDialog(self._library, 0, Gtk.MessageType.INFO, + add_dialog = message_dialog.MessageDialog( + self._library, 0, Gtk.MessageType.INFO, Gtk.ButtonsType.OK_CANCEL) add_dialog.set_auto_destroy(False) add_dialog.set_default_response(Gtk.ResponseType.OK) @@ -159,8 +160,10 @@ _('Please enter a name for the new collection.') ) - box = Gtk.HBox() # To get nice line-ups with the padding. + # To get nice line-ups with the padding. + box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) add_dialog.vbox.pack_start(box, True, True, 0) + entry = Gtk.Entry() entry.set_activates_default(True) box.pack_start(entry, True, True, 6) @@ -245,7 +248,8 @@ old_name = self._library.backend.get_collection_name(collection) except Exception: return - rename_dialog = message_dialog.MessageDialog(self._library, 0, + rename_dialog = message_dialog.MessageDialog( + self._library, 0, Gtk.MessageType.INFO, Gtk.ButtonsType.OK_CANCEL) rename_dialog.set_auto_destroy(False) rename_dialog.set_text( @@ -254,8 +258,10 @@ ) rename_dialog.set_default_response(Gtk.ResponseType.OK) - box = Gtk.HBox() # To get nice line-ups with the padding. + # To get nice line-ups with the padding. + box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) rename_dialog.vbox.pack_start(box, True, True, 0) + entry = Gtk.Entry() entry.set_text(old_name) entry.set_activates_default(True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/library/control_area.py new/mcomix-3.1.1/mcomix/library/control_area.py --- old/mcomix-3.1.0/mcomix/library/control_area.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/library/control_area.py 2024-08-19 06:40:13.000000000 +0200 @@ -16,17 +16,17 @@ _COLLECTION_ALL = -1 -class _ControlArea(Gtk.HBox): +class _ControlArea(Gtk.Box): """The _ControlArea is the bottom area of the library window where information is displayed and controls such as buttons reside. """ def __init__(self, library): - super(_ControlArea, self).__init__(False, 12) + super().__init__(orientation=Gtk.Orientation.VERTICAL, spacing=12) + self.set_border_width(10) self._library = library - self.set_border_width(10) borderbox = Gtk.Frame() borderbox.set_shadow_type(Gtk.ShadowType.ETCHED_IN) @@ -36,7 +36,7 @@ insidebox.set_border_width(1) insidebox.set_state(Gtk.StateType.ACTIVE) - infobox = Gtk.VBox(False, 5) + infobox = Gtk.Box.new(Gtk.Orientation.VERTICAL, 5) infobox.set_border_width(10) self.pack_start(borderbox, True, True, 0) borderbox.add(insidebox) @@ -59,12 +59,12 @@ self._dirlabel.set_selectable(True) infobox.pack_start(self._dirlabel, False, False, 0) - vbox = Gtk.VBox(False, 10) + vbox = Gtk.Box.new(Gtk.Orientation.VERTICAL, 10) vbox.set_size_request(350, -1) self.pack_start(vbox, False, False, 0) # First line of controls, containing the search box - hbox = Gtk.HBox(False) + hbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) vbox.pack_start(hbox, True, True, 0) label = Gtk.Label(label=_('_Search:')) @@ -79,7 +79,7 @@ label.set_mnemonic_widget(search_entry) # Last line of controls, containing buttons like 'Open' - hbox = Gtk.HBox(False, 10) + hbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 10) vbox.pack_end(hbox, True, True, 0) watchlist_button = Gtk.Button(label=_("_Watch list"), use_underline=True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/library/watchlist.py new/mcomix-3.1.1/mcomix/library/watchlist.py --- old/mcomix-3.1.0/mcomix/library/watchlist.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/library/watchlist.py 2024-08-19 06:40:13.000000000 +0200 @@ -72,16 +72,16 @@ remove_button.set_sensitive(False) remove_button.connect('clicked', self._remove_cb) - button_box = Gtk.VBox() - button_box.pack_start(add_button, False, True, 0) - button_box.pack_start(remove_button, False, True, 2) + button_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 0) + button_box.pack_start(add_button, False, False, 0) + button_box.pack_start(remove_button, False, False, 2) - main_box = Gtk.HBox() + main_box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) scroll_window = Gtk.ScrolledWindow() scroll_window.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) scroll_window.add(self._treeview) main_box.pack_start(scroll_window, True, True, 2) - main_box.pack_end(button_box, False, True, 0) + main_box.pack_end(button_box, False, False, 0) self.vbox.pack_start(main_box, True, True, 0) auto_checkbox = Gtk.CheckButton( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/main.py new/mcomix-3.1.1/mcomix/main.py --- old/mcomix-3.1.0/mcomix/main.py 2024-01-01 14:07:23.000000000 +0100 +++ new/mcomix-3.1.1/mcomix/main.py 2024-08-19 06:40:13.000000000 +0200 @@ -72,7 +72,9 @@ self._spacing = prefs['space between two pages'] self._waiting_for_redraw = False - self._image_box = Gtk.HBox(False, 2) # XXX transitional(kept for osd.py) + # XXX transitional(kept for osd.py) + self._image_box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 2) + self._main_layout = Gtk.Layout() # Wrap main layout into an event box so # we can change its background color. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/openwith.py new/mcomix-3.1.1/mcomix/openwith.py --- old/mcomix-3.1.0/mcomix/openwith.py 2023-10-29 09:02:39.000000000 +0100 +++ new/mcomix-3.1.1/mcomix/openwith.py 2024-08-19 06:40:13.000000000 +0200 @@ -447,9 +447,9 @@ """ Create and lay out UI components. """ # All these boxes basically are just for adding a 4px border vbox = self.get_content_area() - hbox = Gtk.HBox() + hbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) vbox.pack_start(hbox, True, True, 4) - content = Gtk.VBox() + content = Gtk.Box.new(Gtk.Orientation.VERTICAL, 0) content.set_spacing(6) hbox.pack_start(content, True, True, 4) @@ -458,7 +458,7 @@ scroll_window.add(self._command_tree) content.pack_start(scroll_window, True, True, 0) - buttonbox = Gtk.HBox() + buttonbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) buttonbox.pack_start(self._add_button, False, False, 0) buttonbox.pack_start(self._add_sep_button, False, False, 0) buttonbox.pack_start(self._remove_button, False, False, 0) @@ -466,7 +466,7 @@ buttonbox.pack_start(self._down_button, False, False, 0) content.pack_start(buttonbox, False, False, 0) - preview_box = Gtk.HBox() + preview_box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) preview_box.pack_start(Gtk.Label(_('Preview:')), False, False, 0) preview_box.pack_start(self._test_field, True, True, 4) preview_box.pack_start(self._run_button, False, False, 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/pageselect.py new/mcomix-3.1.1/mcomix/pageselect.py --- old/mcomix-3.1.0/mcomix/pageselect.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/pageselect.py 2024-08-19 06:40:13.000000000 +0200 @@ -49,19 +49,19 @@ prefs['pageselector height']) # Group preview image and page selector next to each other - preview_box = Gtk.HBox() + preview_box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) preview_box.set_border_width(5) preview_box.set_spacing(5) preview_box.pack_start(self._image_preview, True, True, 0) - preview_box.pack_end(self._page_selector, False, True, 0) + preview_box.pack_end(self._page_selector, False, False, 0) # Below them, group selection spinner and current page label - selection_box = Gtk.HBox() + selection_box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) selection_box.set_border_width(5) selection_box.pack_start(self._page_spinner, True, True, 0) - selection_box.pack_end(self._pages_label, False, True, 0) + selection_box.pack_end(self._pages_label, False, False, 0) self.get_content_area().pack_start(preview_box, True, True, 0) - self.get_content_area().pack_end(selection_box, False, True, 0) + self.get_content_area().pack_end(selection_box, False, False, 0) self.show_all() self._selector_adjustment.connect('value-changed', self._cb_value_changed) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/preferences_dialog.py new/mcomix-3.1.1/mcomix/preferences_dialog.py --- old/mcomix-3.1.0/mcomix/preferences_dialog.py 2024-01-21 19:52:15.000000000 +0100 +++ new/mcomix-3.1.1/mcomix/preferences_dialog.py 2024-08-19 06:40:13.000000000 +0200 @@ -503,7 +503,7 @@ prefs['sort order'], self._sort_order_changed_cb) - box = Gtk.HBox() + box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) box.pack_start(sortkey_box, True, True, 0) box.pack_start(sortorder_box, True, True, 0) @@ -550,7 +550,7 @@ prefs['sort archive order'], self._sort_archive_order_changed_cb) - box = Gtk.HBox() + box = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0) box.pack_start(sortkey_box, True, True, 0) box.pack_start(sortorder_box, True, True, 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/preferences_page.py new/mcomix-3.1.1/mcomix/preferences_page.py --- old/mcomix-3.1.0/mcomix/preferences_page.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/preferences_page.py 2024-08-19 06:40:13.000000000 +0200 @@ -4,7 +4,8 @@ from mcomix import preferences_section -class _PreferencePage(Gtk.VBox): + +class _PreferencePage(Gtk.Box): """The _PreferencePage is a conveniece class for making one "page" in a preferences-style dialog that contains one or more @@ -15,7 +16,7 @@ """Create a new page where any possible right columns have the width request <right_column_width>. """ - super(_PreferencePage, self).__init__(False, 12) + super().__init__(orientation=Gtk.Orientation.VERTICAL, spacing=12) self.set_border_width(12) self._right_column_width = right_column_width self._section = None diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/preferences_section.py new/mcomix-3.1.1/mcomix/preferences_section.py --- old/mcomix-3.1.0/mcomix/preferences_section.py 2023-09-08 06:45:47.000000000 +0200 +++ new/mcomix-3.1.1/mcomix/preferences_section.py 2024-08-19 06:40:13.000000000 +0200 @@ -4,7 +4,7 @@ from mcomix import labels -class _PreferenceSection(Gtk.VBox): +class _PreferenceSection(Gtk.Box): """The _PreferenceSection is a convenience class for making one "section" of a preference-style dialog, e.g. it has a bold header @@ -16,16 +16,14 @@ <header>, and the width request of the (possible) right columns set to that of <right_column_width>. """ - super(_PreferenceSection, self).__init__(False, 0) + super().__init__(orientation=Gtk.Orientation.VERTICAL, spacing=0) self._right_column_width = right_column_width - self.contentbox = Gtk.VBox(False, 6) + self.contentbox = Gtk.Box.new(Gtk.Orientation.VERTICAL, 6) + self.contentbox.set_margin_start(9) label = labels.BoldLabel(header) label.set_alignment(0, 0.5) - hbox = Gtk.HBox(False, 0) - hbox.pack_start(Gtk.HBox(True, True, 0), False, False, 6) - hbox.pack_start(self.contentbox, True, True, 0) self.pack_start(label, False, False, 0) - self.pack_start(hbox, False, False, 6) + self.pack_start(self.contentbox, True, True, 0) def new_split_vboxes(self): """Return two new VBoxes that are automatically put in the section @@ -34,13 +32,13 @@ in order to make it easy for all "right column items" in a page to line up nicely. """ - left_box = Gtk.VBox(False, 6) - right_box = Gtk.VBox(False, 6) + left_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 6) + right_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 6) - if self._right_column_width != None: + if self._right_column_width is not None: right_box.set_size_request(self._right_column_width, -1) - hbox = Gtk.HBox(False, 12) + hbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 12) hbox.pack_start(left_box, True, True, 0) hbox.pack_start(right_box, False, False, 0) self.contentbox.pack_start(hbox, True, True, 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix/properties_page.py new/mcomix-3.1.1/mcomix/properties_page.py --- old/mcomix-3.1.0/mcomix/properties_page.py 2023-10-29 09:02:39.000000000 +0100 +++ new/mcomix-3.1.1/mcomix/properties_page.py 2024-08-19 06:40:13.000000000 +0200 @@ -15,11 +15,12 @@ def __init__(self): super(_Page, self).__init__() self.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) - self._vbox = Gtk.VBox(False, 12) - self.add_with_viewport(self._vbox) - self.set_border_width(12) - topbox = Gtk.HBox(False, 12) + + self._vbox = Gtk.Box.new(Gtk.Orientation.VERTICAL, 12) + self.add(self._vbox) + + topbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 12) self._vbox.pack_start(topbox, True, True, 0) self._thumb = Gtk.Image() self._thumb.set_size_request(128, 128) @@ -41,12 +42,12 @@ self._thumb.clear() if self._mainbox is not None: self._mainbox.destroy() - self._mainbox = Gtk.VBox(False, 5) + self._mainbox = Gtk.Box.new(Gtk.Orientation.VERTICAL, 5) self._mainbox.set_border_width(10) self._insidebox.add(self._mainbox) if self._extrabox is not None: self._extrabox.destroy() - self._extrabox = Gtk.HBox(False, 10) + self._extrabox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 10) self._vbox.pack_start(self._extrabox, False, False, 0) def set_thumbnail(self, pixbuf): @@ -61,7 +62,6 @@ label.set_alignment(0, 0.5) label.set_selectable(True) self._mainbox.pack_start(label, False, False, 0) - self._mainbox.pack_start(Gtk.VBox(True, True, 0), True, True, 0) # Just to add space (better way?) def set_main_info(self, info): """Set the information in the main info box (below the filename) to @@ -71,14 +71,16 @@ label = Gtk.Label(label=text) label.set_alignment(0, 0.5) label.set_selectable(True) - self._mainbox.pack_start(label, False, False, 0) + self._mainbox.pack_end(label, False, False, 0) def set_secondary_info(self, info): """Set the information below the main info box to the values in the sequence <info>. Each entry in info should be a tuple (desc, value). """ - left_box = Gtk.VBox(True, 8) - right_box = Gtk.VBox(True, 8) + left_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 8) + left_box.set_homogeneous(True) + right_box = Gtk.Box.new(Gtk.Orientation.VERTICAL, 8) + right_box.set_homogeneous(True) self._extrabox.pack_start(left_box, False, False, 0) self._extrabox.pack_start(right_box, False, False, 0) for desc, value in info: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/mcomix.egg-info/PKG-INFO new/mcomix-3.1.1/mcomix.egg-info/PKG-INFO --- old/mcomix-3.1.0/mcomix.egg-info/PKG-INFO 2024-01-21 20:03:58.000000000 +0100 +++ new/mcomix-3.1.1/mcomix.egg-info/PKG-INFO 2025-09-06 13:06:32.000000000 +0200 @@ -1,6 +1,6 @@ -Metadata-Version: 2.1 +Metadata-Version: 2.4 Name: mcomix -Version: 3.1.0 +Version: 3.1.1 Summary: GTK comic book viewer Author: Pontus Ekberg Maintainer: The MComix Team @@ -382,6 +382,7 @@ Requires-Dist: python-lsp-black; extra == "dev" Requires-Dist: types-Pillow; extra == "dev" Requires-Dist: pygobject-stubs; extra == "dev" +Dynamic: license-file # MComix README diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/share/applications/mcomix.desktop new/mcomix-3.1.1/share/applications/mcomix.desktop --- old/mcomix-3.1.0/share/applications/mcomix.desktop 2023-09-16 09:09:20.000000000 +0200 +++ new/mcomix-3.1.1/share/applications/mcomix.desktop 2025-06-25 06:09:37.000000000 +0200 @@ -6,6 +6,7 @@ GenericName[sv]=Serieboksläsare GenericName[fr]=Visionneur de bandes dessinées GenericName[de]=Comic-Betrachter +GenericName[zh_CN]=漫画阅读器 Comment=A viewer for comic book archives Comment[it]=Un visualizzatore di fumetti Comment[es]=Un visor de comics @@ -13,10 +14,11 @@ Comment[fr]=Visionneur d'images spécialisé dans la lecture des bandes dessinées Comment[pl]=Przeglądarka komiksów Comment[de]=Betrachter für Comic-Archive +Comment[zh_CN]=漫画书档案阅读器 Exec=mcomix %f Icon=mcomix Terminal=false Type=Application StartupNotify=true Categories=Graphics;Viewer; -MimeType=application/x-cb7;application/x-ext-cb7;application/x-cbr;application/x-ext-cbr;application/x-cbt;application/x-ext-cbt;application/x-cbz;application/x-ext-cbz;application/pdf;application/x-pdf;application/x-ext-pdf;image/bmp;image/x-MS-bmp;image/x-bmp;image/gif;image/jpeg;image/png;image/tiff;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap; +MimeType=application/vnd.comicbook-rar;application/vnd.comicbook+zip;application/vnd.comicbook+pdf;application/x-cb7;application/x-ext-cb7;application/x-cbr;application/x-ext-cbr;application/x-cbt;application/x-ext-cbt;application/x-cbz;application/x-ext-cbz;application/pdf;application/x-pdf;application/x-ext-pdf;application/x-cbp;application/x-ext-cbp;image/bmp;image/x-MS-bmp;image/x-bmp;image/gif;image/jpeg;image/png;image/tiff;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/share/metainfo/mcomix.metainfo.xml new/mcomix-3.1.1/share/metainfo/mcomix.metainfo.xml --- old/mcomix-3.1.0/share/metainfo/mcomix.metainfo.xml 2023-10-29 09:03:09.000000000 +0100 +++ new/mcomix-3.1.1/share/metainfo/mcomix.metainfo.xml 2024-08-19 06:40:13.000000000 +0200 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2023 Moritz Brunner --> <component type="desktop-application"> - <id>mcomix.desktop</id> + <id>net.sourceforge.mcomix</id> <metadata_license>CC0-1.0</metadata_license> <project_license>GPL-2.0+</project_license> <name>MComix</name> @@ -22,16 +22,29 @@ <launchable type="desktop-id">mcomix.desktop</launchable> <screenshots> - <screenshot type="default">http://sourceforge.net/p/mcomix/screenshot/273797.jpg</screenshot> + <screenshot type="default"> + <image>https://sourceforge.net/p/mcomix/screenshot/273797.jpg</image> + <caption>Main window</caption> + </screenshot> </screenshots> - <url type="homepage">http://mcomix.sourceforge.net/</url> - <project_group /> + <url type="homepage">https://mcomix.sourceforge.net/</url> - <developer_name>The MComix Team</developer_name> + <developer id="net.sourceforge.mcomix"> + <name>The MComix Team</name> + </developer> <update_contact>https://sourceforge.net/p/mcomix/bugs/</update_contact> <provides> <binary>mcomix</binary> </provides> + + <releases> + <release version="3.1.0" date="2024-01-21"/> + <release version="3.0.0" date="2023-12-22"/> + <release version="2.1.1" date="2023-05-16"/> + <release version="2.1.0" date="2022-12-17"/> + <release version="2.0.2" date="2022-05-20"/> + </releases> + <content_rating type="oars-1.1"/> </component> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mcomix-3.1.0/share/mime/packages/mcomix.xml new/mcomix-3.1.1/share/mime/packages/mcomix.xml --- old/mcomix-3.1.0/share/mime/packages/mcomix.xml 2023-09-09 17:48:26.000000000 +0200 +++ new/mcomix-3.1.1/share/mime/packages/mcomix.xml 2025-06-25 06:09:37.000000000 +0200 @@ -22,5 +22,10 @@ <comment xml:lang="en">Comic Book Archive (7zip compressed)</comment> <glob pattern="*.cb7"/> </mime-type> + <mime-type type="application/x-cbp"> + <sub-class-of type="application/pdf"/> + <comment xml:lang="en">Comic Book (PDF format)</comment> + <glob pattern="*.cbp"/> + </mime-type> </mime-info>
