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 input file list #931

Merged
merged 1 commit into from Feb 26, 2021
Merged

Sort input file list #931

merged 1 commit into from Feb 26, 2021

Conversation

bmwiedemann
Copy link
Contributor

Sort input file list
so that _jpype.cpython-36m-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.

so that _jpype.cpython-36m-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.
@codecov
Copy link

codecov bot commented Feb 1, 2021

Codecov Report

Merging #931 (980fa82) into master (505da82) will decrease coverage by 0.00%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #931      +/-   ##
==========================================
- Coverage   87.76%   87.75%   -0.01%     
==========================================
  Files         112      112              
  Lines       10011    10011              
  Branches     4045     4045              
==========================================
- Hits         8786     8785       -1     
  Misses        622      622              
- Partials      603      604       +1     
Impacted Files Coverage Δ
native/common/jp_methoddispatch.cpp 80.95% <0.00%> (-0.96%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 505da82...980fa82. Read the comment docs.

@Thrameos
Copy link
Contributor

Thrameos commented Feb 1, 2021

Though I am not aware of any issues with build reproducablity on this project, your request seems reasonable.

However in reviewing the supporting documentation I have some questions... why put in pull requests on individual projects rather than one in distutils? I can see why the request to update glob was rejected, but perhaps it would be best to patch in distutils/commands/build_ext.py rather than update individual projects. For example in build_ext where the extension sources is converted to a list it would be easy to add a source which would make for repeatable builds without the effort of addressing individual projects.

@bmwiedemann
Copy link
Contributor Author

It seems, I already did that 2 years ago in python/cpython#12341 - maybe backporting it to the older python branches would be good...

@Thrameos
Copy link
Contributor

Thrameos commented Feb 1, 2021

Okay so it is handled up stream. It seems though that the best place in jpype is in line 36 of setup_ext/platform.py or line 34 of setup_ext/utils.py rather than at the top level of the set up. We use a glob command there which handles all the sources and would hit any future directories added to the process.

@pelson
Copy link
Contributor

pelson commented Feb 3, 2021

maybe backporting it to the older python branches would be good...

Does it also exist in setuptools? It would be possible to set a minimum supported setuptools for building jpype using pyproject.toml I think.

@Thrameos
Copy link
Contributor

Thrameos commented Feb 3, 2021

@marscher So should we move it to the common point or accept as is?

@marscher
Copy link
Member

marscher commented Feb 3, 2021 via email

@marscher
Copy link
Member

marscher commented Feb 6, 2021

I guess it is totally safe to sort, until it will be dealt with upstream.

@marscher marscher merged commit 24a2b95 into jpype-project:master Feb 26, 2021
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.

None yet

4 participants