Re-create historical releases (0.1.0, 0.1.1, 0.1.2) on GitHub
mbrukman opened this issue · comments
We can see the past release history in the ChangeLog
:
Mon Sep 15 17:21:22 2008 Google Inc. <opensource@google.com>
* cmockery: version 0.12
* Made it possible to specify additional compiler, lib tool and link
flags on Windows.
* Added Windows makefile to the tar ball.
Fri Aug 29 10:50:46 2008 Google Inc. <opensource@google.com>
* cmockery: version 0.11
* Made it possible to specify executable, library and object output
directories.
Tue Aug 26 10:18:02 2008 Google Inc. <opensource@google.com>
* cmockery: initial release:
A lightweight library to simplify and generalize the process of
writing unit tests for C applications.
We just need to find the right commits that were the cut-offs for each of the release, and create an appropriate release tag for each of those points.
For v0.1.2, since that was the last release, we also have a pointer to the full tarball courtesy of Homebrew which is hosted on GCS which can be used to identify the right commit point.
Interestingly enough, git log
also shows the release tags added to the repo in SVN, but there are several such commits for every SVN tag. We can also look at the commit history of the ChangeLog
itself to identify the release points.
Turns out, we actually have a branch for each release:
- https://github.com/google/cmockery/tree/cmockery-0.1/trunk
- https://github.com/google/cmockery/tree/cmockery-0.11/trunk
- https://github.com/google/cmockery/tree/cmockery-0.12/trunk
and we can just use the last commit on each of these branches to create a release tag on GitHub.
However, all of the historical releases will have everything under the trunk
directory since the cleanup happened in 2015 while these releases happened much earlier in 2008.
What we can do to create clean historical releases is as follows:
- for each branch (
cmockery-0.1
,cmockery-0.11
,cmockery-0.12
), add another commit to move everything fromtrunk/*
to top-level - create a release for each of the historical versions
- resume future releases to be done from the relevant commit on
master
@stewartmiles, thoughts / concerns on this proposed plan?
By "restoring" I simply mean creating appropriate version tags, such that they show up on https://github.com/google/cmockery/releases and are easily downloadable; it also makes it trivial for users to diff two releases to see what changed, e.g., from 0.1.2 to the next release.
Also, for continuity, so that it's always easy to download a 0.1 or 0.1.2 release; right now, there's only the archive on GCS from the Google Code export that's referenced in Homebrew (see first comment), but the GCS archives may be theoretically removed in the future; this makes this repo self-contained from here on out.
The cleanup changes have been merged and historical releases have been created: