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

Make the manpages build reproducible via datalad.source.epoch (to be used in Debian packaging) #6997

Merged
merged 3 commits into from Sep 1, 2022

Conversation

yarikoptic
Copy link
Member

I think it is worth adding to our codebase to avoid posssible conflicts in the
patch and also to facilitate similar reproducibility in other distributions
where so would be desired.

Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010318

@yarikoptic yarikoptic added semver-internal Changes only affect the internal API CHANGELOG-missing When a PR's description does not contain a changelog item, yet. labels Aug 31, 2022
@github-actions github-actions bot removed the CHANGELOG-missing When a PR's description does not contain a changelog item, yet. label Aug 31, 2022
@yarikoptic
Copy link
Member Author

hm, where is all the CIs? I got notification that docs failed to build, so I pushed a fix 6a21dab directly to maint (I know -- evil but minor change, only docs, and reproduced/tested locally). I will rebase and force push now this PR to hopefully get CIs back

…es in manpages

I think it is worth adding to our codebase to avoid posssible conflicts in the
patch and also to facilitate similar reproducibility in other distributions
where so would be desired.

Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010318
@codecov
Copy link

codecov bot commented Aug 31, 2022

Codecov Report

Merging #6997 (130db43) into maint (6a21dab) will decrease coverage by 1.86%.
The diff coverage is n/a.

❗ Current head 130db43 differs from pull request most recent head ce8540c. Consider uploading reports for the commit ce8540c to get more accurate results

@@            Coverage Diff             @@
##            maint    #6997      +/-   ##
==========================================
- Coverage   90.14%   88.27%   -1.87%     
==========================================
  Files         354      354              
  Lines       46338    46338              
  Branches     6613        0    -6613     
==========================================
- Hits        41771    40907     -864     
- Misses       4551     5431     +880     
+ Partials       16        0      -16     
Impacted Files Coverage Δ
datalad/cmdline/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
datalad/interface/run_procedure.py 0.00% <0.00%> (-100.00%) ⬇️
datalad/cmdline/helpers.py 0.00% <0.00%> (-78.27%) ⬇️
datalad/support/nda_.py 0.00% <0.00%> (-54.55%) ⬇️
datalad/tests/utils.py 21.60% <0.00%> (-32.09%) ⬇️
datalad/__main__.py 39.65% <0.00%> (-29.32%) ⬇️
datalad/distribution/uninstall.py 63.26% <0.00%> (-28.58%) ⬇️
datalad/__init__.py 78.00% <0.00%> (-20.00%) ⬇️
datalad/ui/utils.py 50.00% <0.00%> (-19.45%) ⬇️
datalad/api.py 75.60% <0.00%> (-14.64%) ⬇️
... and 77 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@yarikoptic
Copy link
Member Author

ha ha -- with force-push I "killed" the generated changelog! will regen.

@yarikoptic yarikoptic added the CHANGELOG-missing When a PR's description does not contain a changelog item, yet. label Aug 31, 2022
@github-actions github-actions bot removed the CHANGELOG-missing When a PR's description does not contain a changelog item, yet. label Aug 31, 2022
@yarikoptic yarikoptic marked this pull request as draft September 1, 2022 14:22
@yarikoptic
Copy link
Member Author

following @bpoldrack feedback: we probably should introduce some dedicated DATALAD_ config var and just set it to the value of SOURCE_DATE_EPOCH in debian/rules... I will RF

@yarikoptic yarikoptic marked this pull request as ready for review September 1, 2022 15:58
@yarikoptic
Copy link
Member Author

ok, ready for review again! Testing added to building the docs worked and showed

Run # with custom date
running build_manpage
.TH "datalad" "1" "1973\-03\-03" "datalad 0.17.4+5.g393a702e8"
running build_manpage
.TH "datalad" "1" "2022\-09\-01" "datalad 0.17.4+5.g393a702e8"

I highly doubt that other failures (e.g. in test_datalad_credential_helper with "AssertionError: assert None == 'dl-user'") relate anyhow.

@yarikoptic yarikoptic changed the title Make the build reproducible (on Debian) via SOURCE_DATE_EPOCH for dates in manpages Make the manpages build reproducible via datalad.source.epoch (to be used in Debian packaging) Sep 1, 2022
- Introduce datalad.source.epoch configuration to make the build reproducible
(on Debian only ATM) by providing date to use in the manpages.
[PR #6997](https://github.com/datalad/datalad/pull/6997) (by
[@yarikoptic](https://github.com/yarikoptic))
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I even took time to tune up this ;)

@yarikoptic
Copy link
Member Author

oh, we are plagued by jaraco/keyring#593 ! I will submit a blacklisting PR as I did for dandi-cli dandi/dandi-cli#1112

@yarikoptic
Copy link
Member Author

ok, what could go wrong!? ;)

@yarikoptic yarikoptic merged commit 5767ee4 into datalad:maint Sep 1, 2022
@github-actions
Copy link

github-actions bot commented Sep 2, 2022

🚀 PR was released in 0.17.5 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
released semver-internal Changes only affect the internal API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants