Skip to content

ftplib.cpython-312.pyc does not appear to be reproducible #124924

Closed
@raboof

Description

@raboof

Bug report

Bug description:

Previously, when buiding cpython 3.11 twice on independent infrastructure (for example when building the binary package for the NixOS linux distribution), with the right parameters this process produced a bit-by-bit deterministic result.

For cpython 3.12 (tested with various versions up to 3.12.6), the result is almost deterministic:

It seems specifically ftplib.cpython-312.pyc, ftplib.cpython-312.opt-1.pyc and ftplib.cpython-312.opt-2.pyc may differ between rebuilds. This is strange, as I don't see anything special about the contents of ftplib.py or about the way it is built. Looking at the bytecode with pydisasm from xdis only shows differences in 'code object' addresses, not in 'actual' bytecode.

Does anyone have any idea where this might be coming from?

CPython versions tested on:

3.12

Operating systems tested on:

Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.12only security fixesbuildThe build process and cross-buildtype-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions