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
from

Conversation

Projects
None yet
3 participants
@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

This comment has been minimized.

Show comment
Hide comment
@JuliaLawall

JuliaLawall Nov 15, 2017

Contributor
Contributor

JuliaLawall 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.

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

This comment has been minimized.

Show comment
Hide comment
@bmwiedemann

bmwiedemann Nov 15, 2017

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.

bmwiedemann commented Nov 15, 2017

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

This comment has been minimized.

Show comment
Hide comment
@elfring
Contributor

elfring commented Nov 17, 2017

@bmwiedemann

This comment has been minimized.

Show comment
Hide comment
@bmwiedemann

bmwiedemann 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 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

This comment has been minimized.

Show comment
Hide comment
@bmwiedemann

bmwiedemann Dec 19, 2017

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

bmwiedemann commented Dec 19, 2017

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

@JuliaLawall

This comment has been minimized.

Show comment
Hide comment
@JuliaLawall

JuliaLawall Dec 19, 2017

Contributor
Contributor

JuliaLawall commented Dec 19, 2017

@elfring

This comment has been minimized.

Show comment
Hide comment
@elfring

elfring Dec 19, 2017

Contributor

Could you send it by email?

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

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

This comment has been minimized.

Show comment
Hide comment
@bmwiedemann

bmwiedemann Dec 20, 2017

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.

bmwiedemann commented Dec 20, 2017

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

This comment has been minimized.

Show comment
Hide comment
@JuliaLawall

JuliaLawall Dec 20, 2017

Contributor
Contributor

JuliaLawall commented Dec 20, 2017

@JuliaLawall

This comment has been minimized.

Show comment
Hide comment
@JuliaLawall

JuliaLawall Dec 20, 2017

Contributor
Contributor

JuliaLawall commented Dec 20, 2017

@elfring

This comment has been minimized.

Show comment
Hide comment
@elfring

elfring Dec 20, 2017

Contributor

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?

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

This comment has been minimized.

Show comment
Hide comment
@JuliaLawall

JuliaLawall Dec 20, 2017

Contributor
Contributor

JuliaLawall commented Dec 20, 2017

@elfring

This comment has been minimized.

Show comment
Hide comment
@elfring

elfring Dec 20, 2017

Contributor

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

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

This comment has been minimized.

Show comment
Hide comment
@JuliaLawall

JuliaLawall Dec 20, 2017

Contributor
Contributor

JuliaLawall commented Dec 20, 2017

@elfring

This comment has been minimized.

Show comment
Hide comment
@elfring

elfring Dec 21, 2017

Contributor

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?

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

This comment has been minimized.

Show comment
Hide comment
@bmwiedemann

bmwiedemann Aug 10, 2018

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

bmwiedemann commented Aug 10, 2018

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