
Dear Peter Tyser,
In message 1224600029.18428.339.camel@localhost.localdomain you wrote:
Actually the time stamp is completely useless in determining if the code is the same or different. I can compile the same code many times resulting in different time stamps and yet it's the very same code.
The code won't be the same - the version string will be different and the different binaries would have different md5sums.
The *code* will be exactly the same. The binary images may differ in some strings, but the code is still the same.
But actually you just confirmed my argumnt.
U-Boot 2008.10-rc2-00018-g8fd4166-dirty (Sep 30 2008 - 13:42:17)
This clearly tells you which version the code was based on (and that it contains local modifications that were not yet checked in).
Which local modifications though? Until I make another commit every version string will be the same.
Indeed. Which tells you that it is a bad idea to ship any binaries with uncommitted modifications in your tree.
Hey, we can only provide the best environment for a sane development process. If you don't play by the rules you are then not exactly in a good position to complain. Talk to your QA manager, if you doubt my words ;-)
Timestamps are not suitable to provide this type of information. If you care about which code you are running, than make sure to use git.
I do, but the minor annoyance of having the exact same version string/time stamp for different code still exists for uncommited changes.
You must be doing something awfully wrong when you have uncommited changes in any form of software you're releasing.
I use git, but its version strings only change when commits occur. I
Thisis intentional - commits are the only way to change the code. Anything between commits is work in progress which you never should release to anybody, not even your bst friends.
I know this patch isn't a big deal, but I think it would be a valuable change. If others don't agree I'll drop the issue.
We take great care to generate a useful version ID string that really gets updated as soon as one of the files changes. The fact that we apend the __DATE__ and __TIME__ output to the boot messages is just for informational purposes (and a relict from earlier times, when git did not exist yet).1s
Note that there are more than 40 places in the code where __DATE__ and/or __TIME__ get used, in different ways. If you want to put more meaning into these strings than we have now, you will have to address all these use cases.
Best regards,
Wolfgang Denk