Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sort .so input file list #2206

Merged
merged 1 commit into from
Mar 14, 2019
Merged

Sort .so input file list #2206

merged 1 commit into from
Mar 14, 2019

Conversation

bmwiedemann
Copy link
Contributor

Sort .so input file list
so that EnzoHop.cpython-37m-x86_64-linux-gnu.so builds in a reproducible way
in spite of indeterministic filesystem readdir order
and http://bugs.python.org/issue30461

See https://reproducible-builds.org/ for why this is good.

Without this patch, building the openSUSE python-yt package always had variations in /usr/lib64/python3.7/site-packages/yt/analysis_modules/halo_finding/hop/EnzoHop.cpython-37m-x86_64-linux-gnu.so machine code.

  • Code passes flake8 checker
  • New features are documented, with docstrings and narrative docs
  • Adds a test for any bugs fixed. Adds tests for new features.

This PR was done while working on reproducible builds for openSUSE.

so that EnzoHop.cpython-37m-x86_64-linux-gnu.so builds in a reproducible way
in spite of indeterministic filesystem readdir order
and http://bugs.python.org/issue30461

See https://reproducible-builds.org/ for why this is good.
@welcome
Copy link

welcome bot commented Mar 14, 2019

Hi! Welcome, and thanks for opening this pull request. We have some guidelines for new pull requests, and soon you'll hear back about the results of our tests and continuous integration checks. Thank you for your contribution!

@ngoldbaum
Copy link
Member

Fair enough. Thanks for the contribution and thank you for helping to package yt for downstream users.

@ngoldbaum ngoldbaum merged commit 48238c5 into yt-project:master Mar 14, 2019
@welcome
Copy link

welcome bot commented Mar 14, 2019

Hooray! Congratulations on your first merged pull request! We hope we keep seeing you around! 🎆

@bmwiedemann bmwiedemann deleted the sort branch March 14, 2019 13:39
bmwiedemann added a commit to bmwiedemann/cpython that referenced this pull request Aug 1, 2019
when building packages (e.g. for openSUSE Linux)
(random) filesystem order of input files
influences ordering of functions in the output .so files.
Thus without the patch, builds (in disposable VMs) would usually differ.

Without this patch, all callers have to be patched individually
ofalk/libdnet#42
sass/libsass-python#212
tahoe-lafs/pycryptopp#41
yt-project/yt#2206
pyproj4/pyproj#142
pytries/datrie#49
Roche/pyreadstat#37
but that is an infinite effort.

See https://reproducible-builds.org/ for why this matters.
lisroach pushed a commit to lisroach/cpython that referenced this pull request Sep 10, 2019
When building packages (e.g. for openSUSE Linux)
(random) filesystem order of input files
influences ordering of functions in the output .so files.
Thus without the patch, builds (in disposable VMs) would usually differ.

Without this patch, all callers have to be patched individually
ofalk/libdnet#42
sass/libsass-python#212
tahoe-lafs/pycryptopp#41
yt-project/yt#2206
pyproj4/pyproj#142
pytries/datrie#49
Roche/pyreadstat#37
but that is an infinite effort.

See https://reproducible-builds.org/ for why this matters.
DinoV pushed a commit to DinoV/cpython that referenced this pull request Jan 14, 2020
When building packages (e.g. for openSUSE Linux)
(random) filesystem order of input files
influences ordering of functions in the output .so files.
Thus without the patch, builds (in disposable VMs) would usually differ.

Without this patch, all callers have to be patched individually
ofalk/libdnet#42
sass/libsass-python#212
tahoe-lafs/pycryptopp#41
yt-project/yt#2206
pyproj4/pyproj#142
pytries/datrie#49
Roche/pyreadstat#37
but that is an infinite effort.

See https://reproducible-builds.org/ for why this matters.
jaraco pushed a commit to pypa/setuptools that referenced this pull request May 25, 2020
When building packages (e.g. for openSUSE Linux)
(random) filesystem order of input files
influences ordering of functions in the output .so files.
Thus without the patch, builds (in disposable VMs) would usually differ.

Without this patch, all callers have to be patched individually
ofalk/libdnet#42
sass/libsass-python#212
tahoe-lafs/pycryptopp#41
yt-project/yt#2206
pyproj4/pyproj#142
pytries/datrie#49
Roche/pyreadstat#37
but that is an infinite effort.

See https://reproducible-builds.org/ for why this matters.
websurfer5 pushed a commit to websurfer5/cpython that referenced this pull request Jul 20, 2020
When building packages (e.g. for openSUSE Linux)
(random) filesystem order of input files
influences ordering of functions in the output .so files.
Thus without the patch, builds (in disposable VMs) would usually differ.

Without this patch, all callers have to be patched individually
ofalk/libdnet#42
sass/libsass-python#212
tahoe-lafs/pycryptopp#41
yt-project/yt#2206
pyproj4/pyproj#142
pytries/datrie#49
Roche/pyreadstat#37
but that is an infinite effort.

See https://reproducible-builds.org/ for why this matters.
@bmwiedemann bmwiedemann mentioned this pull request Jul 28, 2023
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants