Coming Soon: Stable D Releases!
Adam Wilson
flyboynw at gmail.com
Mon Jul 16 12:37:53 PDT 2012
On Mon, 16 Jul 2012 09:41:30 -0700, Andrei Alexandrescu
<SeeWebsiteForEmail at erdani.org> wrote:
> On 7/16/12 3:51 AM, Adam Wilson wrote:
>> As a result of the D Versioning thread, we have decided to create a new
>> organization on Github called dlang-stable. This organization will be
>> responsible for maintaining stable releases of DMD, DRuntime, and
>> Phobos.
> [snip]
>> Thank you for reading and I hope you enjoy D's new Stable releases!
>
> This is a wonderful initiative that I hope will catch on.
>
> Walter and I are fully behind this experiment. We will make/accept
> changes to the download pages to take into account this new branch.
>
> The main threat I see is bugfixes that depend on code previously
> introduced with now features. I'm not sure how frequent that situation
> is.
>
> Finally, one suggestion: I suggest you relentlessly work to automate the
> process to the point where you issue e.g. the command
>
> ./merge 534d44c979 70dcb958ea
>
> and the script merges in the two specified commits, builds everything,
> runs the test suite, runs the Phobos unittests, and if all worked,
> builds packages and uploads them making them available right away.
The only problem I can see with this is that the build would only for
whichever OS the merger happens to be running on. A two step process is
about the best we can do.
./merge does the following
git fetch upstream
git cherry-pick 534d44c979
git cherry-pick 70dcb958ea
If the cherry pick is successful, push to master, which will need to be
done manually in case any merge conflicts arise.
./build does the following for all projects
git fetch origin
git merge origin/master
make clean -f <system>.mak
make -f <system>.mak
make unittests -f <system>.mak
As for actually putting together the script, my Bash-fu, is not as strong
as my PowerShell-fu, but with some effort it could be achieved. Both are
not terribly difficult (expect for the uploading part).
> That way the team members (busy professionals with many other
> responsibilities) know that once the collective decision to merge a
> commit has been taken, there's virtually no overhead to deploying the
> decision.
>
> I'm a huge fan of automation and I believe we've made progress
> introducing it in dmd's process, but not as much as we could and should.
>
>
> Good luck!
>
> Andrei
>
--
Adam Wilson
IRC: LightBender
Project Coordinator
The Horizon Project
http://www.thehorizonproject.org/
More information about the Digitalmars-d-announce
mailing list