2022.06.22 19:44 "[Tiff] Nostalgia--old releases imported into git history", by Roger
While going through the documentation and looking at the older releases on https://download.osgeo.org/libtiff/, I realised we could rebuild some of the old history predating the CVS history we imported into git. You might be interested in:
- Commits <https://gitlab.com/libtiff/libtiff/-/commits/tiff-3.4> . tiff-3.4 . libtiff / libtiff . GitLab
- Commits <https://gitlab.com/libtiff/libtiff/-/commits/tiff-3.4-iptc> . tiff-3.4-iptc . libtiff / libtiff . GitLab
- Commits <https://gitlab.com/libtiff/libtiff/-/commits/tiff-3.5-oldcvs> . tiff-3.5-oldcvs . libtiff / libtiff . GitLab
- Commits <https://gitlab.com/libtiff/libtiff/-/commits/tiff-3.5-newcvs> . tiff-3.5-newcvs . libtiff / libtiff . GitLab (this is just a branch of the existing 3.5.7 release tag)
I hope the authorship and dates are all OK. I pulled out the dates using:
git grep "\$Header:" | sed -e 's;.*,v ;;' -e 's; [^ ][^ ]* Exp.*$;;' | cut -d' ' -f2,3 | sort | uniq -c | tail
for the most part. Timezone unlikely to be accurate since I have no idea what they were originally, but the dates should be basically correct. Authorship is all Sam Leffler up to 3.5.1/3.4beta37-iptc, then it's Mike Welles. However, the email address used in these releases (changelog and hidden symlink) was "Michael L. Welles <firstname.lastname@example.org>" but the git history is using "Mike Welles <email@example.com>". I've used the former on the old branches when importing the releases, but could amend them to use the newer address at that time in the history if that's a better choice for consistency?
This takes the git history all the way back to July 1995. There is a disconnect where the old and new history overlaps in the early 3.5 era. There does appear to be a difference between the source releases and the version in git, some is expanded CVS $Header tokens but there are also content differences as well. I'm not sure which releases were first released from the maptools CVS (I assume 3.5.3 since it's tagged?). However, even the 3.5.3 release has major discrepancies-including missing ChangeLog entries, missing tiff.h (looks like old copy from CVS "Attic") and other Makefiles and such. The result of the disconnect is that the git history doesn't connect through to the imported release history. You can connect them up using "git graft" to link up the old history if you wish. The root commit in git looks like the 3.5.1 release? But you could also link up the 3.5.2 commit (untagged) to the 3.5.2 release.
This is, of course, a "best effort" import of what we have available and the original history is not there. But this does mean we have a git commit and git tag for every release all the way back to v3.4beta018.