Mantis/Installer proposed new convention
Keith Hodges
keith_hodges at yahoo.co.uk
Thu Dec 21 18:49:42 UTC 2006
Dear Ralph,
there was a previous email message with more explanation, and Installer
will have an updated class comment pretty soon.
In summary:
Installer is aiming to be single class front-end to anything useful for
installing. It provides a command line interface for searching and
installing packages from Monticello and SqueakMap even without squeakmap
installed, so in theory it supports 3.7 and earlier. Installer can be
the second item loaded into the 3.9 KernelImage (it needs Network as a
prerequisite but this could be changed) From that point on Installer can
be used to load any remaining packages.
The idea is to begin with the minimal KernelImage, point installer at a
script (in a wiki, or monticello) which will load (and potentially test)
any configuration that you like. The script could begin with REPLServer
(a telnet service), some basic Logging, and a Text Based Test Runner.
(like the one in SSpec.)
Installer Services
1. Search and install from SqueakMap (tested .st .cs .mcz .sar )
2. Search and install from SqueakMap via http (doesnt need SMLoader etc)
3. Search and install from Monticello project (http only for now)
4. Install from file served by http
5. Execute a Script embedded in a web page according to user defined
markers (default markers := '<code st>...</code st>' ; html tags in the
between the markers are stipped out, entities substituted, and the
resulting script can then be executed. Tested in wiki.squeak.org)
6. List and Install from files uploaded to a given Mantis bug report.
6b. Alert user if mantis bug report has been updated (i.e. if it is more
recent that the given date).
7.. Execute the last one of any scripts embedded in a Mantis bug report
user-note field, according to user defined markers. (default := '"fix
begin"..."fix end" )
7b. Alert user if bug report has been updated (as 6b)
Embedded Scripts (more advanced)
As a feature useful for the KernelImage projects it would be nice to
load only the esssential code for any one bug fix/script run by
installer, ignoring the tests. In this case it becomes desirable to tag
the script with delimeters and a marker which marks the beginning of the
test code which can be safely ignored. The markers that I settled upon
were '"fix begin"..."fix test" ..."fix end". I originally chose these in
order to make the extraction of "load only the test code" easier however
having improved the implementation it is now possible to use any user
defined delimeters that make sense.
8. Mantis bug reports can embed scripts which can reference further bug
report files or scripts, and so on. The ability to ignore the test code
portion of a script is carried over to any embedded scripts that are
encountered.
does this help?
The main documentation page http://wiki.squeak.org/Installer (to be
updated soon with latest info)
best regards
Keith
> On 12/21/06, Keith Hodges <keith_hodges at yahoo.co.uk> wrote:
>>
>> > Ok after some thought I have changed the proposed syntax to be simpler
>> > and easier to parse/execute.
>> "fix begin"
>> Installer mantis bug: 9999 fix: 'Join.4.cs'.
>> Installer fixBug: 1234.
>> "fix test"
>> Installer mantis bug: 9999 fix: 'JoinTest.1.cs'.
>> "fix end"
>
> I don't understand this. "Simpler to parse execute" does not necessarily
> mean "simpler to understand".
>
> If this is going to become a standard, it needs more documentation than
> an e-mail message..
>
> -Ralph
>
>
Send instant messages to your online friends http://uk.messenger.yahoo.com
More information about the Squeak-dev
mailing list
|