Brad Fuller wrote:
On Saturday 27 August 2005 01:25 pm, Ross Boylan wrote:
Having development at the head seems like pretty standard practice to me.
In my experience, it is common for the trunk to be the released/stable version and branches to be work in progress. Individuals or groups can work on a branch independently, do their own testing, etc. and then merge back to trunk when testing is complete and everyone agrees that the particular branch (or portions) is now the stable version. The squeak group is informal, so I don't believe more formal mgmt is needed.
What I would suggest is that the known, agreed, stable source for 3.7 (maybe that's the tarball at Ian's) is placed in a new trunk. Then a branch or branches can be created that contain the current work of others.
This may or may not go down well with others, but it guarantees that someone can grab the current trunk, build and they get the same result as what has been released.
Different groups have different styles of work and we (the VM maintainers) have long adopted a style which does not assume that HEAD is always the latest stable version but rather provide explicit file releases. The main reasons being that there is no conceptual difference between checking out HEAD or using a stable file release and to allow us to move forward so that we know the order in which pending changes get integrated. This is in particular important since the main ports have maintainers with very different schedules and requiring everyone to get in sync before allowing to make a change to the trunk would probably deadlock the entire group.
I would suggest that we need agreement from those who know that file: Squeak-3.7-7.src.tar.gz (I assume) is "the" last known good stable source.
I would suggest that you take the discussion to VM-dev if you want any resolution.
Then, we need to find the other platform vm sources to create the stable trunk (I need these eventually, too)
Win32: http://squeak.hpl.hp.com/win32/release/Squeak-Win32-3.7.1-src.zip
It might be that the current trunk is pretty close already. I don't know.
For Windows, no. I still haven't gotten around to update the VM sources to 3.8 - in other words if we would follow your proposed model the trunk would be stuck at 3.7 which I would find an extremely unpleasant situation.
But, IMO, the trunk should build and work, period. People shouldn't have to be hunting down this or that to get it to build. And, the build should be identical to the currently released version of squeak.
The only reliable form to get a guarantueed version of the VM is (and has always been, back to '96) to get a file release (tar ball) containing everything that has been used to build the VM you are using. The versions change, mind you and having HEAD apply to whatever-the-latest doesn't help you one bit if you don't use whatever-the-latest. With file releases you get *exactly* everything the maintainer has been using for the VM you are using and you even know when a maintainer hasn't done whatever-the-latest; such as the absence of a 3.8 Windows VM. Put differently, if you ever have a problem with the 3.2.1 Windows VM you go grab http://squeak.hpl.hp.com/win32/release/Squeak-Win32-3.2.1-src.zip and get *exactly* the sources that have been used for the VM you are running, period. AFAIK, Ian has generally been following the same policy.
Also, the set of maintainers has been working together in some form or other for almost ten years now and you should at least consider the possibility that there are reasons for why things are the way they are. They work for us. And If you think we're all morons who don't know Jack you are of course free to set up an alternative repository and show the superiority of your ways. We'll discuss the results in 2015 ;-)
Cheers, - Andreas