Update
Ok. I've got the SWIG headers importing in. So far I've got all of
user_ops, msgbase , and, um, something else , exposed to python. The
Swig headers *DO* generate alot of warnings however. Which is
irritating. Might be some sort of GCC options to supress them.
I'm trying to figure out how to invoke the python interactive
interpreter from *within* the server, for the purpose of exploring the
SWIG headers and documenting them, so I can then create higher level
classes
the idea being is we can then do operations like;-
import citadel
user = citadel.user("shayne")
user.password = "bongoxxx123rara"
user.save()
or
room = citadel.room("lobby")
room.defaultview = cit_calendar
room.save()
or heck for something randomly pragmatic...
def clone_user(templateuser,newuser):
user = citadel.user(templateuser)
user2 = user.copy() #or whatever the clone thing is. Pass by ref remember!
user2.name=newuser
user2.update()
return 1
citadel.addcommand ('CLUS','userfunctions.py','clone_user')
etc...
I actually almost got idle spawned from inside citadel (the tk gui
IDE)!!!!! Barfed on a threading issue. Was worth a try. Not going
to pursue it, as its more just a neat hack than anything useful.
Now.. onto other matter of threading. How does citadel's theading work.
I've noticed that (predictably), if I start a long running script from
one connection, then try and start python from another connection, the
server barfs on a threading gotchya. Aparently theres some "great big
lock" thingo in the interpreter that can be grabbed and/or inspected,
and I need to work out a strategy for making this thread safe.
....might just be a big monsterised lock.
- [Citadel Development] (no subject) IGnatius T Foobar
- [Citadel Development] (no subject) IO ERROR
- [Citadel Development] (no subject) IGnatius T Foobar
- [Citadel Development] (no subject) IO ERROR
- [Citadel Development] (no subject) thom
- [Citadel Development] (no subject) IO ERROR
- [Citadel Development] (no subject) Freakdog
- [Citadel Development] (no subject) IGnatius T Foobar
- [Citadel Development] (no subject) IGnatius T Foobar
- [Citadel Development] (no subject) IO ERROR
- [Citadel Development] (no subject) shayne
- [Citadel Development] (no subject) dothebart
- [Citadel Development] (no subject) IGnatius T Foobar
- [Citadel Development] (no subject) dothebart
- [Citadel Development] (no subject) fleeb
- [Citadel Development] (no subject) IGnatius T Foobar
- [Citadel Development] (no subject) fleeb
- [Citadel Development] (no subject) dothebart
- [Citadel Development] (no subject) fleeb
- [Citadel Development] (no subject) dothebart
- [Citadel Development] (no subject) dothebart
