[squeak-dev] Contributing to 4.0+
Keith Hodges
keith_hodges at yahoo.co.uk
Sun Feb 15 15:44:29 UTC 2009
Dear All,
Andreas asked me to post some details of how people can contribute to
3.11, 4.0, 4.1+.
What version are we doing again?
========================
I don't know about you but I am a bit confused about what the plans are
for the next version of squeak. Essentially, the re-licensing effort has
been deemed by the board to have version 4.0. With a new "clean" v4
sources file. This version of squeak will be essentially the same,
feature-wise, as 3.10.2, it may have LPF, it may not. (LPF packages are
licence clean)
Following this 3.11 will be re-targeted to this 4.0 image and will
probably be released as 4.1 soon after.
How can I be involved in the re-licensing effort?
==================================
Start by joining the folks on irc #squeak and read matthews emails.
Matthew, Ken and others are thrashing out the details there.
The deliverable of the re-licence effort will be a series of changesets,
uploaded and discussed on mantis. So here is the clever thing:
*****
Installer squeaksource project: 'Installer'; installQuietly:
'Installer-Core'.
(Installer mantis bugsAll select: [ :bug | ((bug status = 'testing' or:
[ bug status = 'resolved']) and: [ bug fixedIn = '4.0' ] ]) do: #ensureFix.
*****
[ken - please could you add the 4.0 version to the available selection list]
The code above will (soon) load the current set of published re-licensed
code into your 3.10+ image, for you to test.
How do I contribute code to the re-licensing effort?
====================================
1) Pick/find something to work on in discussion with Matthew.
2) Post a mantis entry, describing your sub-task, soliciting discussion
there.
3) Make that entry a child of http://bugs.squeak.org/view.php?id=6989
so that the list of relicencing tasks is managed together.
4) When you have a changeset to deliver, upload it to the mantis entry.
note: please use files in the following naming convention:
M1234-SomeChangeSetName.1.cs
having the bug number as a prefix is tidier. If you dont, dont
worry, Installer will name changesets according to this convention anyway.
5) Add a script in a note, as in this example
http://bugs.squeak.org/view.php?id=6988
4) Set the status to "testing" and the fixed in field to "4.0"
How do we test?
============
Using a 3.10.2 image, open a Transcript window and run the code snippet
marked ***** above. If you are blessed, this will give you a result we
shall call 4.0-test-alpha.
[an alternative version of ***** is provided for you, in Installer]
To update Installer.
Installer squeaksource project: 'Installer'; installQuietly:
'Installer-Core'.
To view list:
mantis := Installer mantis.
(mantis bugsTesting: '4.0') explore. "issues in status testing"
(mantis bugsRelease: '4.0') explore. "issues in status resolved i.e.
signed off having passed testing"
To install:
(mantis bugsTesting: '4.0') do: #ensureFix. "issues in testing"
(mantis bugsRelease: '4.0') do: #ensureFix. "issues in status resolved
i.e. signed off having passed testing"
The next step - Signing off?
====================
When a consensus is reached as to the effectiveness and validity of your
proposed changesets. Matthew will switch the status to "resolved", and
the issues marked as resolved may be loaded via:
(Installer mantis bugsRelease: '4.0') do: #ensureFix.
The release 4.0
===========
The release will be generated by loading the above fixes, and performing
a short script + SmalltalkImage current cleanUpAllExcept: #(ChangeSet)
=====
I hope you find these instructions clear, if not feel free to ask
questions, and join us in irc #squeak
best regards
Keith
More information about the Squeak-dev
mailing list
|