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

Use ChangeLog date instead of build date #121

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bmwiedemann
Copy link

@bmwiedemann bmwiedemann commented Nov 15, 2017

Use ChangeLog date instead of build date
in order to make builds from release tarballs reproducible.
See https://reproducible-builds.org/ for why this is good.

Also use date -u to not depend on the packager's timezone.

Note: there is one remaining issue likely from pycaml embedding a /tmp/camlprimXXXXXX.c random string in spatch debug_str section but that can be solved independently of this one.

@JuliaLawall
Copy link
Contributor

JuliaLawall commented Nov 15, 2017 via email

in order to make builds from release tarballs reproducible.
See https://reproducible-builds.org/ for why this is good.

Also use date -u to not depend on the packager's timezone.

Signed-off-by: Bernhard M. Wiedemann <bwiedemann@suse.de>
@bmwiedemann
Copy link
Author

added Signed-off-by

Is this presupposing that every change is accompanied by an update in the changelog? Currently that is not the case. The changelog mostly only contains changes that are significant enough that users might notice.

This is mostly about builds from the release tarballs (because there is a separate code path if a .git dir exists) and it seems reasonable to assume that no release is done without relevant changes.

@elfring
Copy link
Contributor

elfring commented Nov 17, 2017

I became also curious on how the shown software development aspect will evolve further.

@bmwiedemann
Copy link
Author

bmwiedemann commented Nov 20, 2017

Thanks for that link. I did not know that you were interested in that topic for that long.
This patch fixes one aspect of unreproducibility of the build, but there is one more left in pycaml to be fixed by another change.

@bmwiedemann
Copy link
Author

Is there anything I can help to get this simple change merged?

@JuliaLawall
Copy link
Contributor

JuliaLawall commented Dec 19, 2017 via email

@elfring
Copy link
Contributor

elfring commented Dec 19, 2017

Could you send it by email?

How do you think about to use the interface “pull request” directly?

@bmwiedemann
Copy link
Author

This change is also available as a patch at https://github.com/coccinelle/coccinelle/pull/121.patch
to be applied via git am if you prefer that.

@JuliaLawall
Copy link
Contributor

JuliaLawall commented Dec 20, 2017 via email

@JuliaLawall
Copy link
Contributor

JuliaLawall commented Dec 20, 2017 via email

@elfring
Copy link
Contributor

elfring commented Dec 20, 2017

Why not the date of the most recent commit?

How would you identify the commit which should be the last one for a specific software release?

@JuliaLawall
Copy link
Contributor

JuliaLawall commented Dec 20, 2017 via email

@elfring
Copy link
Contributor

elfring commented Dec 20, 2017

Would you like to distinguish building of the software ever according to a commit sequence or an other release identifier?

@JuliaLawall
Copy link
Contributor

JuliaLawall commented Dec 20, 2017 via email

@elfring
Copy link
Contributor

elfring commented Dec 21, 2017

The appropriate git log command?

Such a command works only if you have got read access to a git repository. If you would like to support other software distribution formats, you will need to reconsider the situation a bit more.
Do you insist to display any dates in the discussed software products?

@bmwiedemann
Copy link
Author

I guess, you could also do both: first look for a .git dir and use the last commit date
and if that is not available (e.g. in a release tarball) fall back to the ChangeLog date

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

3 participants