Yesterday it occurred to me that independent counter is superfluous, since it doesn't provide more meaningful information over plain time. Best features are those which don't have to be implemented, and so I decided to give a try without the bugger, JSON, the lot.
Have to admit, took me quite a bit more (effort, not time) than I originally anticipated, especially considering how simple whole idea is; grab current time, format to your hearts desire, shove it into all files where it's needed, that's it.
One reason why I was so edgy came when doing first few test runs; a few bugs ruined config and source files, had to fish last good copies from repository, then merge comments back, which are used to mark lines to be updated with new version info.
I'm quite pleased how it turned out; ./push.py script after updating versions all over the place, also calls git commit in a separate process with supplied arguments, and after that git push also with its own arguments. Each argument group is separated by -*- separator, so e.g. path list for git commit can safely be placed after --. The whole contraption now looks like so:
./push.py [<script-args>] [-*- <git-commit-args> [-*- <git-push-args>]]
I won't update book since I didn't do anything related to user content in the book, all of this is just an administrative change. Version of the book was updated more as a test, then a real progress.
Current version in the book reads:
Version: 20210307204437
and in the application:
Application: 0.1.1+20210307205923
Library: 0.1.1+20210307205923
Application and library version currently are synchronized, while book version contains only date-time portion, converted to UTC, for easier comparison. It's a bit of an annoyance to have to compare those relatively large numbers, but that's worthwhile compromise. I certainly can live with that :D
No comments:
Post a Comment