Skip to content

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

Merged
yarikoptic merged 3 commits into
datalad:maintfrom
yarikoptic:enh-reprobuild
Sep 1, 2022
Merged

Make the manpages build reproducible via datalad.source.epoch (to be used in Debian packaging)#6997
yarikoptic merged 3 commits into
datalad:maintfrom
yarikoptic:enh-reprobuild

Conversation

@yarikoptic
Copy link
Copy Markdown
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
Copy Markdown
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
Copy Markdown

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
Copy Markdown
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
Copy Markdown
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
Copy Markdown
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
Comment thread changelog.d/pr-6997.md
- 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
Copy Markdown
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
Copy Markdown
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
Copy Markdown
Member Author

ok, what could go wrong!? ;)

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

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.

3 participants