conan-io / conan

Conan - The open-source C and C++ package manager
https://conan.io
MIT License
7.95k stars 951 forks source link

[question] Revision timestamps in lockfiles change depending on different settings #16523

Open fschoenm opened 1 week ago

fschoenm commented 1 week ago

What is your question?

When we introduced lockfiles, I noticed that e.g. when creating/updating the lockfile for different OS or different build types, it sometimes (?) updates the timestamps of the revisions. For example, I created a lockfile on Windows first and had this in my lockfile:

"double-conversion/3.3.0#33321c201741cc32b51169c6d2d05e60%1684478632.238",

After updating the lockfile to also support Linux builds, it changed to

"double-conversion/3.3.0#33321c201741cc32b51169c6d2d05e60%1710153244.734",

which has the same revision but a different timestamp.

I found in the design document, that adding timestamps was necessary to "have ordered lists of versions and revisions" but I'm not really sure what that means.

Now my question is just to clarify, if this can lead to any problems or has any side effect we should be aware of? Our CI builds work on Windows and Linux with the timestamp changes in the lockfile, so it doesn't seem to have an apparent effect. Would everything run as expected, no matter which of the two timestamps above we'd have in the lockfile or is there a situation in which it'd accidentally break?

Have you read the CONTRIBUTING guide?