Bug#1144487: apostrophe: fails to start with Python 3.14: cannot pickle 'ApostropheTextView' object
H4F&P <[email protected]>
| Newsgroups | gmane.linux.debian.devel.bugs.rc |
|---|---|
| Message-ID | <178682285520.1446242.17153441568379380689.reportbug__38416.1912415706$1786822999$gmane$org@workstation.internal> |
Package: apostrophe Version: 3.4-2 Severity: grave Tags: upstream Justification: renders package unusable X-Debbugs-Cc: [email protected] Dear Maintainer, Apostrophe fails to start on a system with Python 3.14 as the default python3. The window never appears. What I did: $ apostrophe What happened: Two tracebacks are printed. The first one: File "/usr/lib/python3/dist-packages/apostrophe/text_view.py", line 139, in __init__ self.markup = MarkupHandler(self) File "/usr/lib/python3/dist-packages/apostrophe/text_view_markup_handler.py", line 142, in __init__ Process(target=self.parse, args=(child_conn,), daemon=True).start() [...] File "/usr/lib/python3.14/multiprocessing/popen_forkserver.py", line 47, in _launch reduction.dump(process_obj, buf) File "/usr/lib/python3.14/multiprocessing/reduction.py", line 60, in dump ForkingPickler(file, protocol).dump(obj) TypeError: cannot pickle 'ApostropheTextView' object when serializing dict item 'textview' when serializing apostrophe.text_view_markup_handler.MarkupHandler state [...] Followed by a secondary failure caused by the first: File "/usr/lib/python3/dist-packages/apostrophe/application.py", line 261, in _set_color_scheme window.textview.markup.on_style_updated() AttributeError: 'ApostropheTextView' object has no attribute 'markup' What I expected: The editor window to open normally. Cause: Python 3.14 changed the default multiprocessing start method on POSIX platforms from 'fork' to 'forkserver': https://docs.python.org/3/library/multiprocessing.html#contexts-and-start-methods Upstream bug and patch: https://gitlab.gnome.org/World/apostrophe/-/issues/669 Alpine has already applied that patch: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/103093 Workaround: Forcing the 'fork' start method before Apostrophe creates its processes makes the application start normally. -- System Information: Debian Release: forky/sid APT prefers testing APT policy: (500, 'testing'), (50, 'unstable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 7.1.7+deb14-amd64 (SMP w/32 CPU threads; PREEMPT) Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages apostrophe depends on: qii dconf-gsettings-backend [gsettings-backend] 0.49.0-4+b1 ii gir1.2-adw-1 1.9.2-1 ii gir1.2-glib-2.0 2.88.3-2 ii gir1.2-gtk-4.0 4.22.4+ds-1 ii gir1.2-spelling-1 0.4.10-2 ii gir1.2-webkit-6.0 2.52.5-1 ii libjs-mathjax 2.7.9+dfsg-1 ii python3 3.14.6-1 ii python3-gi 3.56.3-2 ii python3-pypandoc 1.15+ds0-1 ii python3-regex 0.1.20250918-1+b1 apostrophe recommends no packages. apostrophe suggests no packages. -- no debconf information