[Coldstuff] First version of waif-patch

xmath xmath@nubz.org
Thu, 3 Jan 2002 18:39:52 +0100


--============_-1202042902==_============
Content-Type: text/plain; charset="us-ascii" ; format="flowed"

Here's a first version of the waif patch

it's not totally done yet, but you can already play with it an see 
how I implemented the overall structure. Now would be the time for 
feedback :-)

Note that I'm not completely sure where to send this to.. if there's 
a more appropriate place than this list feel free to correct me on 
that..

Getting it to work:

it's a diff from the Genesis-1.1.9-STABLE source tree to my patched 
version thereof (Genesis-1.1.9-WAIF). I've never done this before so 
if I didn't make the diff right, tell me how I *should* do it :-)

you'll then need to fiddle a bit with the core.. to create a waif: 
the function new_waif() creates a new waif, with the sender object as 
class.

text dump of the db won't work if it contains waifs, since that's not 
implemented yet (and I wouldn't trust any text dump made by this 
development version anyway). I also haven't done garbage collection 
yet, so if you create circularly-referenced waifs, you need to clean 
'em up manually or they'll stay in the db for ever. You can destroy a 
waif by calling .destroy(). A waif will also be destroyed when its 
refcount goes to zero, currently without notification.. that's 
another thing I still have to do. Note also I didn't really debug it 
very well, so there may still be numerous problems.

Oh, and it'll generate a LOT of debug log output, you might want to 
log to stdout instead of a file :-)

  - xmath
--============_-1202042902==_============
Content-Id: <v0422080fb85a4558ab92@[194.134.44.75].0.0>
Content-Type: multipart/appledouble; boundary="============_-1202042902==_D============"

--============_-1202042902==_D============
Content-Transfer-Encoding: base64
Content-Type: application/applefile; name="%waif.patch.gz"
Content-Disposition: attachment; filename="%waif.patch.gz"
 ; modification-date="Thu, 3 Jan 2002 18:28:37 +0100"

AAUWBwACAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAPgAAAA0AAAAJAAAASwAAACAA
AAAIAAAAawAAABB3YWlmLnBhdGNoLmd6R3ppcEVaZ3oBAAA1AJcAAAAAAAAAAAAAAAAA
AAAAAAADx19VA8dfVUttDAADx2H6
--============_-1202042902==_D============
Content-Type: application/octet-stream; name="waif.patch.gz"
 ; x-mac-type="477A6970"
 ; x-mac-creator="455A677A"
Content-Disposition: attachment; filename="waif.patch.gz"
Content-Transfer-Encoding: base64

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
Hv18ev2D1KGv3JpfZUGcrhTX5f8BYgafDBY8AQA=
--============_-1202042902==_D============--
--============_-1202042902==_============--