[Bug 2147343] [NEW] _uuid C extension module missing from libpython3.12-stdlib on Ubuntu 24.04 (Noble)
Christiaan Rademan
2147343 at bugs.launchpad.net
Mon Apr 6 14:16:21 UTC 2026
Public bug reported:
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.
** Affects: python3.12 (Ubuntu)
Importance: Undecided
Status: New
--
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
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