[From nobody Wed Aug 19 18:35:05 2026
Received: (at submit) by bugs.debian.org; 15 Aug 2026 19:41:10 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-18.9 required=4.0 tests=BAYES_00,
 BODY_INCLUDES_PACKAGE,FOURLA,HAS_PACKAGE,NO_RELAYS,XMAILER_REPORTBUG
 autolearn=ham autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 21; hammy, 150; neutral, 216; spammy,
 0. spammytokens: hammytokens:0.000-+--XDebbugsCc,
 0.000-+--X-Debbugs-Cc, 0.000-+--python3, 0.000-+--H*Ad:N*Bug,
 0.000-+--HTo:N*Debian
Return-path: &lt;contact@h4fnp.blog&gt;
Received: via submission by buxtehude.debian.org with esmtp (Exim 4.96)
 (envelope-from &lt;contact@h4fnp.blog&gt;) id 1wvKFf-007aJk-0k
 for submit@bugs.debian.org; Sat, 15 Aug 2026 19:41:10 +0000
Content-Type: text/plain; charset=&quot;us-ascii&quot;
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: H4F&amp;P &lt;contact@h4fnp.blog&gt;
To: Debian Bug Tracking System &lt;submit@bugs.debian.org&gt;
Subject: apostrophe: fails to start with Python 3.14: cannot pickle
 'ApostropheTextView' object
Message-ID: &lt;178682285520.1446242.17153441568379380689.reportbug@workstation.internal&gt;
X-Mailer: reportbug 13.2.0+nmu1
Date: Sat, 15 Aug 2026 21:40:55 +0200
Delivered-To: submit@bugs.debian.org

Package: apostrophe
Version: 3.4-2
Severity: grave
Tags: upstream
Justification: renders package unusable
X-Debbugs-Cc: contact@h4fnp.blog

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 &quot;/usr/lib/python3/dist-packages/apostrophe/text_view.py&quot;, line 139, in __init__
    self.markup = MarkupHandler(self)
  File &quot;/usr/lib/python3/dist-packages/apostrophe/text_view_markup_handler.py&quot;, line 142, in __init__
    Process(target=self.parse, args=(child_conn,), daemon=True).start()
  [...]
  File &quot;/usr/lib/python3.14/multiprocessing/popen_forkserver.py&quot;, line 47, in _launch
    reduction.dump(process_obj, buf)
  File &quot;/usr/lib/python3.14/multiprocessing/reduction.py&quot;, 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 &quot;/usr/lib/python3/dist-packages/apostrophe/application.py&quot;, 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
]