[Bug 2147343] Re: _uuid C extension module missing from libpython3.12-stdlib on Ubuntu 24.04 (Noble)

Launchpad Bug Tracker 2147343 at bugs.launchpad.net
Sun Apr 12 00:08:46 UTC 2026


This bug was fixed in the package python3.14 - 3.14.4-1

---------------
python3.14 (3.14.4-1) unstable; urgency=medium

  * Python 3.14.4 release.
  * Also post-process the _sysconfig_vars_*.json files, like done for the
    _sysconfigdata_*.py files.
  * Fix the base_interpreter path in the build-details_*.json files.
  * Don't ship the build-details_*.json file for the debug interpreter,
    because it is installed under the same name as the one for the normal
    build. Still has different contents. PEP 739 deficiency ...
  * Explicitly build-depend on uuid-dev. LP: #2147343.
  * Update VCS attributes

 -- Matthias Klose <doko at debian.org>  Wed, 08 Apr 2026 06:02:31 +0200

** Changed in: python3.14 (Ubuntu)
       Status: New => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to python3.12 in Ubuntu.
https://bugs.launchpad.net/bugs/2147343

Title:
  _uuid C extension module missing from libpython3.12-stdlib on Ubuntu
  24.04 (Noble)

Status in python3.12 package in Ubuntu:
  New
Status in python3.14 package in Ubuntu:
  Fix Released

Bug description:
  The _uuid C extension module is not included in the libpython3.12-stdlib 
  package (3.12.3-1ubuntu0.12) on Ubuntu 24.04 amd64.

  Impact not on earlier versions using earlier versions of Ubuntu LTS,
  such as 22.04.

  This module is built by CPython's when uuid-dev (libuuid headers)  is
  available at compile time. It provides the generate_time_safe()
  function, which wraps libuuid's uuid_generate_time_safe(), enabling
  uuid.uuid1() to return SafeUUID.safe when the uuidd daemon is running.

  Without _uuid.cpython-312-x86_64-linux-gnu.so in lib-dynload/,
  Python's uuid module falls back to pure-Python UUID generation, which
  always returns  SafeUUID.unknown, even when uuidd is installed and
  running. This makes it impossible for applications to verify the UUID
  uniqueness safety.

  Steps to reproduce:
    1. Fresh Ubuntu 24.04 install with python3.12 (default)
    2. apt install uuid-runtime
    3. systemctl start uuidd
    4. python3 -c "import uuid; print(uuid.uuid1().is_safe)"

  Expected: SafeUUID.safe
  Actual: SafeUUID.unknown

  Cause: _uuid.cpython-312-x86_64-linux-gnu.so is not present in
  /usr/lib/python3.12/lib-dynload/. Confirmed by checking the official
  package file list at:
  https://packages.ubuntu.com/noble/amd64/libpython3.12-stdlib/filelist

  It is a critical feature for services that spawn multiple processes
  and need to create unique incremental UUIDs, such as UUID1 in this
  case. UUID4 does not solve the incremental part.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python3.12/+bug/2147343/+subscriptions





More information about the foundations-bugs mailing list