IRC log of #schooltool for Thursday, 2005-08-11

*** bskahan has quit IRC00:06
*** gintas has quit IRC00:24
*** jonesieboy has joined #schooltool00:37
*** bskahan has joined #schooltool00:46
*** jonesieboy has quit IRC01:06
povbot/svn/commits: * jinty committed revision 4671:01:55
povbot/svn/commits: merge 4655:4670 from debian-packaging branch.01:55
*** SteveA has quit IRC03:36
*** SteveA has joined #schooltool03:38
*** jinty has left #schooltool03:56
povbot/svn/commits: * jinty committed revision 4672:04:04
povbot/svn/commits: Some packaging changes from testing with the rc3 tarballs. Seems to work.04:04
povbot/svn/commits: * jinty committed revision 4673:04:06
povbot/svn/commits: Whoops! This is a good candidate for porting to the RC.04:06
povbot/svn/commits: * jinty committed revision 4674:04:07
povbot/svn/commits: Whoops! This is also a good candidate for porting to the RC.04:07
*** pcardune has joined #schooltool04:42
pcarduneanyone there?04:44
bskahanhi paul04:47
pcarduneany idea on how i set up mechtest using the zope testing branch?04:48
pcardunelike, how do i checkout the branch?04:49
bskahansorry, I haven't used mechtest yet04:52
bskahanthe module is called testbrowser now04:52
pcarduneoh, isee04:52
srichterpcardune: testbrowser is part of ST/SB now05:19
srichtersee my schooltool.level tests05:19
pcarduneawesome, i'll take a look05:20
*** bskahan has quit IRC05:41
*** tvon has quit IRC06:38
pcarduneit took me a long time to install everything (i'm on a mac and had to upgrade my python), but *wow* this is  looking incredible06:40
*** tvon has joined #schooltool07:04
*** srichter has quit IRC08:25
*** auxesis_ has joined #schooltool09:28
*** auxesis has quit IRC09:29
*** pcardune has quit IRC09:45
*** th1a has joined #schooltool10:38
*** Aiste has joined #schooltool10:47
*** mgedmin has joined #schooltool10:57
*** ignas has joined #schooltool11:05
*** gintas has joined #schooltool11:07
*** th1a has quit IRC11:15
*** thisfred has joined #schooltool11:26
*** th1a has joined #schooltool11:40
*** alga has joined #SchoolTool12:14
*** ignas has quit IRC12:55
*** th1a has quit IRC12:58
*** ignas has joined #schooltool12:59
*** th1a has joined #schooltool13:09
*** bskahan has joined #schooltool13:28
*** gintas has quit IRC13:48
* mgedmin is hungry14:29
*** jinty has joined #schooltool14:49
*** bskahan has quit IRC14:53
*** bskahan has joined #schooltool15:00
*** th1a has quit IRC15:33
*** ignas has quit IRC15:52
bskahanis there a way to ftest for a page _not_ containing a particular string?16:57
tvonthere are a few tests that do it17:23
tvonsave the http output, then it's something like `'some string' not in result.getBody()`17:24
tvonor str(result) as someone did17:25
*** th1a has joined #schooltool17:27
tvonstr(result) seems to be the norm17:27
*** ignas has joined #schooltool17:27
*** srichter has joined #schooltool17:28
*** strichter has joined #schooltool17:28
mgedminstr(result) gives you HTTP headers as well as the body17:28
*** strichter has left #schooltool17:28
*** strichter has quit IRC17:28
srichterhi there17:28
mgedminyou can use either17:28
mgedminhi, srichter17:28
srichtersorry I did not notice I was discuopnnected17:28
mgedminI've a question for you17:28
mgedmintom said you said something about portlets/pagelets in zope 3 being not a good implementation or some such17:29
srichterI actually said I was not sure and it looked complicated17:29
srichterbut I looked at it the other day and I think it is not complex at all17:29
srichterjust the demos are17:29
th1aSo we should use that unless we come up with a reason not to.17:30
mgedminI guess all we need for schooltool are things that would let us do a tal:repeat="viewlet some_expression" tal:replace="structure view"17:30
mgedminwhere some_expression is the equivalent of "give me all views that want to be put in a 'left sidebar' slot on IPerson objects"17:31
srichterbtw, I dunno what you decided today in the meeting, but I could complete the ST refactorings17:34
th1aWe need to finish the very rough draft proposal I wrote.17:35
srichterI think this would not be a bad idea anyways, since I then know the code better and documentation will be better too17:35
th1aBut we essentially endorse your work :-)17:35
srichterI just read Marius' comments17:35
mgedminwe came up with a plan how to go ahead17:36
mgedminsort of17:36
srichtercan you briefly outline it?17:36
mgedminfirst step was to apply all your refactorings to the trunk17:36
mgedminwell, maybe not all of them17:37
mgedminI'm not sure about import style refactorings, as you've probably noticed17:37
srichteryeah, but you told me you follow Zope 3 styles17:37
srichterwe are slowly switching to that style as we work on packages17:37
mgedminit might be that Zope 3 changed the style a bit, since we started following it17:37
mgedminnowadays I see things like class Foo: zope.interface.implements(IBar)17:38
srichterI really like that style now; it is so much clearer17:38
mgedminok, which style is it -- the old Z3 style or the new Z3 style17:38
mgedmin(the one that you like, I mean)17:38
srichterthe new one17:38
srichterotherwise I would not have applied it to the refactorings ;-)17:38
srichterit's one of those cases where Jim hada vision and I noticed only much later how nice it is17:39
tvonShould a single 'ยป' in a span have i18n:translate ?17:47
srichterprobably not17:47
srichterthough you could imagine that for right-to-left languages it wnats to be "<<"17:48
mgedminsrichter, it appears that we (pov) might not be able to do much schooltool work before september 117:49
mgedminwe came up a list of things we thought is worth doing:17:49
mgedmin1. merge your current refactorings17:49
srichterok, and I am more free till that time17:50
mgedmin2. merge schooltools & schoolbells skins17:50
mgedmin3. split timetabling into a package so that you do not have to override calendaring views to hook up timetables to them17:50
mgedmin4. split the implementation of person details into a pluggalbe package (store data in annotations, etc.)17:50
mgedmin5. split notes into a package17:50
mgedmin6. split courses & sections into a package17:51
srichter(I started 5 already)17:51
mgedmin7. create a sample data generator (with subscribers that allow plugin packages contribute to the sample data)17:51
mgedmin8. work on making the UI more pluggable (slots/pagelets/portlets/whatever)17:51
mgedmin9. work on other things if there's time left17:51
srichterlooks good17:52
mgedminoops, forgot the most important one17:52
mgedminN. work on database backwards compatibility17:52
mgedminthat's it17:52
srichterbtw, do you guys agree with the directory structure I proposed?17:52
mgedminbut since we're busy now and you're free, and also since you've already started on something, and also since you probably have a more clear idea of what needs to be done17:52
mgedminperhaps it would be better if you continued working in that branch17:53
srichterN.: I am the chpampion in this; after the CA work :-)17:53
* mgedmin nods17:53
*** bskahan has quit IRC17:53
srichterth1a: do you send me a proposed contract?17:54
mgedminmore aggressive directory structure refactorings, merge of schooltool/schoolbell top-level package namespaces, merge of svn branches are things that fall under step 9, I guess17:54
mgedminwe did not explicitly discuss them17:54
srichtermgedmin: did you have a chance to look at them?17:54
mgedminI came up with one more risk for a complete ST/SB merge17:54
srichtermgedmin: did you have a chance to look at it?17:54
mgedminfunctional tests: how do you make sure a person's view works correctly both when schooltool's extra packages are enabled in ZCML, and when they're disabled?17:55
th1asrichter:  Sent.17:55
srichterth1a: thanks17:55
mgedminsrichter, I'd be happiest if we could merge items 1-8 on our list to trunk, and then try out your proposed aggressive refactorimergings in another branch17:56
srichtermgedmin: good point; I think I will come up with something when I go along; I do not have an answer out of the top of my head now17:56
srichtermgedmin: ok17:56
srichterI just want to merge with the trunk often, otherwise merging will become hell17:57
srichterhow is going to do the pagelet conversion? Do you want me to work on it too; this way I could check out Roger's work and make suggestions for improvements17:59
srichterI am pretty sure he will value my input and agree to most changes I would propose17:59
srichterok, Brian does the pagelet stuff; great18:00
srichterI just read your document :-)18:00
srichterNEVERMIND! :-)18:01
srichterI misread18:01
srichterth1a: how do you want to work on this document? Do you want me to fill in some details and timeestiamtes and send it back to you or do you want to work on it?18:02
th1aWell, I'd like to get some details/comments back from you.18:03
srichterok, so I'll work on the document18:03
mgedminsrichter, merges: yeah, good point.  Although trunk will be mostly unchanged before September, I think.  OTOH I'd like to review changes before committing them to the trunk.18:05
mgedminI'll try to schedule some time during next two weeks for the review and maybe some merging18:05
mgedminI'm happy with you using pagelets18:06
srichterI'll start a new refactoring style as well18:06
mgedminI think that will be a requirement when you split, e.g., person details into a subpackage18:06
srichtersince the goals shift18:06
srichterthis way incremental checkins will be easier18:06
* mgedmin loves incremental checkins18:06
srichterme too18:07
srichterbut I worked differently on the branch; I basically deleted a code duplication and fixed the broken code18:07
mgedminthe checkins were pretty incremental18:08
mgedminexcept maybe the 77KB ITimetabled refactoring18:08
srichteryeah, but not as much as they could have been, as you pointed out in your response (I agreed with that criticism; could have been mine ;-)18:08
srichterth1a: ok, I'll spend today working on the proposal; will you be here tomorrow give your okay?18:09
srichteror can I just keep going under the assumption it is okay? :-)18:10
* srichter is in a really good mood today for some reason18:10
th1aI will be here.18:10
th1aWell, right now it is a proposal to pay POV for some work.18:10
th1aSo your relationship to the proposal is a bit ambguous.18:11
srichterI see18:11
srichterI'll still fill it out18:11
th1aAlthough having you do the work for free and giving them something else to do is fine with me.18:11
th1aThis paid/open source thing can get confusing.18:12
th1aIf not self-defeating.18:12
* mgedmin wishes he could just work and not worry about payments and stuff...18:12
th1aBut then you'd find something sexier than SchoolTool, right?18:13
mgedminmaybe, maybe not18:14
mgedminsome of the stuff we do is exciting18:15
mgedminunfortunately, that's mostly framework work rather than domain work18:15
srichterrelationship is cool18:16
srichterREST is cool18:16
tvonis there a decent way to test a set of macros?  Specifically I'd like to test the batching macros outside of schoolbell18:16
srichterthe Introspector was also a lot of fun!18:16
mgedmintvon, yes18:16
mgedminwrite a small sample package that uses them18:16
mgedminthen write unit tests18:16
tvonI'm missing a step somewhere, how does that let me test the macro rendering?18:18
SteveAsurely it goes: first write unit tests (doctests!) and then write a small package that uses them.18:18
mgedmintvon, you write a page template in your sample package, and that page template uses your macros18:20
mgedminyou also write a view in the same sample package, that uses this page template, then you render the view in your test18:20
tvonah, gotcha18:20
mgedminit is even better if you write it not as a test, but as documentation18:21
mgedminhere's how you would use our batching macros18:21
mgedminsuppose, you have an application that bla bla, and you have a view that bla bla18:21
mgedminthen you add this method to this view18:21
mgedminand use this macro in the page template18:21
mgedminand voila:18:21
mgedmin   >>> print view()18:21
mgedmin    <BLANKLINE>18:22
mgedmin   ...18:22
mgedmin   Page 3 of 42:18:22
mgedmin   ...18:22
tvonmgedmin: thanks18:22
mgedmin>>> from schooltool.batching.tests.sample import SampleApp, SampleView, SampleWhatever18:23
th1atvon:  What does "Search" search in the index views?18:23
tvonth1a: title18:24
tvoncould add username for users, description for groups/resources/etc18:24
tvonis zcatalog on the roadmap anywhere?18:25
th1aGood question, actually.18:25
th1aThere doesn't seem to be a strong sentiment here for using it;  I don't quite understand the pros and cons.18:29
srichterif we have a lot of objects it will make searchinf much faster18:30
tvonWhen previously discussed the thought was that we'd worry about optimization later... but now we are talking about 1,500 items in a container so maybe it's appropriate18:30
srichterbut I think this will not matter unless we talk about a huge university (I think)18:30
th1a1500 items in a container should be considered within our general requirements.18:31
th1aWe need to handle that well.18:31
th1a15,000, not so much.18:31
tvonmaybe thats not enough to warrent a catalog18:31
mgedminI want a benchmark18:39
srichterth1a: the documentme too :-)18:39
mgedmina unit/functional test that creates a container with many items, and measures search/rendering time18:40
srichteroops: mgedmin: me too :-)18:40
mgedminplus a definitions of what rendering time is acceptable (in seconds)18:40
mgedminand on what baseline hardware18:41
*** alga has quit IRC18:41
mgedminlet's just say 2000 items, 1 GHz CPU, < 1 second18:42
*** th1a has quit IRC18:49
srichtermgedmin: are you going to merge the refactor branch?18:52
srichtermgedmin: Aiste: ignas: are guys still there?18:57
* mgedmin and ignas are here, th1a and alga aren't, gintas is but he's not on irc for some reason18:59
srichtermgedmin: I mainly wanted to get to you :-)19:00
mgedminsrichter, yes, but I also have other things scheduled before that19:00
mgedminI've only two big checkins left to review19:00
srichtermgedmin: ok, so I keep working on the refactor branch, till you have time to merge19:00
srichterah, I see19:00
mgedminI've also noticed some minor things such as typos in docstrings in some other checkins19:00
mgedminthat I thought not worth mentioning, but worth fixing when I merge19:01
srichterI see19:02
mgedminby the way, I should probably mention that I intended to do the merge incrementally19:05
mgedminmerge one checkin (or maybe a couple of related ones), fix up minor things, commit, repeat19:05
srichteryep, good idea19:05
srichterI think it is very difficult to put very specific tasks into the contract, since I see things as I go along19:06
*** alga has joined #SchoolTool19:13
srichtermgedmin: it might be better to say: I work on it this long and guarantee to get those pints done19:22
SteveAthe code review drinking game?19:22
SteveA  >  I work on it this long and guarantee to get those pints done19:23
SteveAin the UK, a pint is the general unit of consumption of beer19:23
srichterLOL :-)19:24
srichterright, I did not even notice :-)19:24
srichterluckily for Tom, I don't drink19:24
srichtermgedmin: are you okay, if I use the new Z3 way of importing?19:43
* mgedmin hums19:50
mgedminI'd prefer not to mix two different coding styles19:50
srichterright, I understand this sentiment completely19:51
srichterthough I gave up on it, since it prohibits improvements19:51
srichterit's like saying: I prefer one way to do ftests19:51
srichterso we could never switch to testbrowser19:51
ignassrichter, and the import lookup automation :)19:52
mgedminimportgeddon anyone?19:52
srichterI put it on the list19:52
mgedminbut do we want it?19:52
srichtersame for using testbrowser, or do you have objections?19:52
srichtermgedmin: you tell me :-)19:53
srichterI am definitely +119:53
mgedminsrichter, can you please briefly describe "the new Z3 way of importing" on schooltool-dev@ ?19:53
mgedminif we decide to go ahead with it, I want everyone to know it19:54
srichterso we noticed that the import statements in our python code became huge and intimidating19:54
srichteralso, the imported objects never revealed anything about their location19:54
mgedminand I'd probably want everyone to commit an import refactoring on a module before committing any other changes mixed with some import changes to it19:54
srichterso you have to go up to the beginning to see where they come from19:54
mgedminsrichter, tags ;)19:55
srichteranyways, so Jim decided it would be good to always just import part of the path to an object19:55
srichterhow much you import is up to you and pacticalibity19:56
srichterso we started to simply import packages; especially the ones not in app are usually just imported19:56
srichterimprot zope.interface19:56
srichterimport persistent19:56
srichterimport persistent.list19:57
srichterimport zope.component19:57
srichterwith it depends on you, so I usually do something like this:19:57
srichterfrom import container19:57
srichterfrom import preference19:57
srichterbut sometiumes also19:57
srichterfrom import constraint19:57
srichterfor the interfaces of a pckage, I commonly use (as Jim):19:58
srichterfrom import interfaces19:58
srichtersometimes situations are tricky, becuase you want:19:59
srichterfrom import mypackage19:59
srichterthis will not work, if was not imported before19:59
srichterso I commonly do:19:59
srichterfrom import mypackage20:00
srichter(these cases appear frequently, but not often)20:00
srichterand they are not a problem int he running system20:00
srichterit is usually just a problem when running unittests20:00
srichterof course there is an argument that I probably should just use:20:01
mgedminI don't like it :-/20:01
srichter(Jim tends to do this, though I think it's a bit lengthy)20:02
srichterI know it takes some getting used to20:02
ignasnot that it has that many downsides20:02
srichterI really, really hated it the first time Jim did this, and changed it back to the old style :-)20:02
mgedminwhat are the advantages of this schema?20:02
SteveAdoes that mean you can get rid of zapi ?20:02
ignasyet i can't see any benefits :/20:02
* SteveA thinks that zapi sucks20:02
srichterSteveA: I think this is one of Jim's motivations20:03
SteveAthe zope.component stuff should definitely not be in zapi20:03
ignasTAGS + (emacs | vi) + sane project structure are the way i would go ...20:03
srichterignas: as a new comer it is much eaier to look at the file, since you are not overwhelmed with imports20:03
srichterand it is easier to work with unfamilaiar code20:03
mgedminit's trivial to skip imports20:03
ignassrichter, but you are overwhelmed by code itself ...20:04
mgedminyou don't object to the huge GPL notice at the top of every source file, do you20:04
srichterno, but that's different20:04
srichteranyways, Jim was reacting to experiences of newcomers during sprints20:04
ignaswell from my experience with Z3 or schooltool - there aren't many duplicate classes or functions that are in use as to justify this ...20:05
ignasim very ho20:05
srichteroh, another advantage20:05
mgedminduplicate names hurt grepability, so we avoid those20:05
ignasi mean you can get to the source file by using TAGS 95% of the time20:05
srichterin the new way you are much less likely to keep unused imports around20:06
ignasand you don't have to go to imports if you are using tags ... never ...20:06
mgedmintrue, but we have a few different import checkers around ;)20:06
srichterI found at least 4-5 occurences of needless imports during the 2 days of refactoring20:06
mgedminI used to run mine all the time on schooltool -- until it started breaking doctests20:06
srichteranyways, this was my case for the new import system20:07
ignasas I said - "-0.7"20:08
mgedminlet me summarize20:08
mgedmin+ fewer imports at the top20:08
ignasyou should multiply it by my credibility coefficient of course ;)20:08
mgedminlet me summarize20:08
mgedmin+ fewer imports at the top20:08
mgedmin+ easier to see where each name comes from (if the programmer is careful)20:08
mgedmin+ fewer stale unused imports20:08
mgedminis that all?20:09
srichteryeah, I think this summarizes all my points20:09
mgedminok, my points now20:11
mgedmin- code becomes uglier (personal preference maybe)20:11
srichter(code becomes *longer*)20:11
mgedmin- it is hard to figure out what the prefix should be -- how many names to import and how many to keep repeating20:12
mgedmin- 'import' followed by 'from foo import bar' is really unobvious20:13
mgedmin- we're not used to it20:13
mgedminyou see, I am running out of objective objections ;)20:13
SteveAclear dependencies are important20:13
SteveAthe relationship of dependency is the foundation of software design20:14
SteveAi don't know which variant is clearer.20:14
mgedminI know which one is clearer to me20:14
mgedminI don't know which one is clearer to a random guy20:14
srichterthe new style gives you quicker overview of the imported packages20:16
srichterbut it is not much of an advantage20:16
mgedminold style, when sorted alphabetically, gives a better overview of imported packages20:18
mgedminand also the breadth of our dependency on them20:18
ignas+1 for alphabetic sort on all import groups20:18
srichterwell, this is a given either way (alphabetical sorting)20:18
ignasi can make my emacs magic do *all* the importing instead of some of the importing ;)20:19
* mgedmin really wants to stop reading the discussion here and go back to reading checkins20:19
ignasi am waiting for tests on muskatas/fridge anyway :(20:19
srichtermgedmin: do this; sleep over it and let me know tomorrow20:20
mgedminlet's just move this discussion to the mailing list20:21
mgedmindevelopers who are not here now also deserve to participate20:21
SteveAin launchpad we use the style20:22
SteveAfrom import (20:23
SteveA    BarBar, BazBaz, FooFoo,20:23
SteveA    FishFish)20:23
SteveAthis is good for line-by-line diffs20:23
srichterrequires Py 2.420:23
SteveAand visually distinguishes the 'from whatever' from what is imported20:23
SteveAhow long as python 2.4 been out?20:23
srichterwhich is another issue we need to discuss20:23
srichterI am for usign 2.420:23
mgedminI am not against20:24
* mgedmin wonders if anyone noticed that some of his objections to certain changes in other people's checkins are actually a case of a pot calling a kettle black...20:39
srichterhe he20:39
*** thisfred has quit IRC20:43
srichtermgedmin: btw, what do you think about switching ftests to testbrowser?20:44
mgedminI've postponed thinking about it20:46
mgedminI think I'll like that idea once I've time to consider it ;)20:47
mgedminsee you tomorrow, then21:06
*** mgedmin has quit IRC21:18
*** tvon has quit IRC21:31
*** tvon has joined #schooltool21:47
*** FarcePest has quit IRC22:01
*** ignas has quit IRC22:27
*** pcardune has joined #schooltool22:29
*** jelkner has joined #schooltool22:31
jelknerquestion: we are setting up a cando (schooltool) instance for use by our school, and we want to have nice unix system v initialization.  Is there a schooltoolctl file or something evailable?22:32
jintyjelkner: you mean you want it to start up every time you boot?22:36
jintythere is a debian init script in the debian dir which does that (schooltool.init). Its not in the current release tarballs, but is in the last. Perhaps it's usefull on unix.22:42
*** admp has joined #schooltool22:42
jelknerthis is a fedora core 3 box22:43
jelknerand we are checking schooltool from svn22:43
jintyThe init script does not need anything unusual, you could probably do with just modifying one of the fedora ones then. There was also a schooltool rpm floating around, maybe it contains one...22:47
jelknerjinty: i tried just adding this line to /etc/inittab:22:54
jelknerbut it schooltool didn't start when we restarted the machine22:55
jelknerthough /opt/schooltool-fork/ will start it from the command line22:55
tvoninittab isn't a good place for that22:56
jelknerok, where then?22:56
tvonrh/fedora uses different init.d setup than debian, but the debian one should probably have schooltool installed in /opt/schooltool-fork ?22:56
tvonone sec,let me look at the deb script22:56
jintyneither is it pedantically secure to run the server as root22:56
jintyuses start-stop-daemon. dunno if that exists on fedora22:57
jintythe deb script i mean...22:57
tvonit's been a bit since I used fedora22:58
jelknerzopectl works on any distro22:58
jelknerall you need to do is sym link from /etc/init.d22:58
jelknerbut schooltool-fork doesn't come with a zopectl type script and i don't know how to write one22:59
tvonthats the debian init script, you'll need to alter some paths thogh22:59
jelknerdoes that do the change user thing?23:00
tvoner, you want schooltool...23:00
jintytvon: does fedora have start-stop-daemon?23:00
*** eldafar has joined #schooltool23:00
jelknerwe need to start as root, so it can run on port 8023:00
jelknerand then change users23:00
tvonjinty: IIRC yes23:00
tvonoh, wait23:01
tvonno, it does not23:01
tvonapologies jelkner, that script won't help you23:01
* jinty goes to look for the schooltool rpm23:02
* tvon looks at sourceforge init scripts23:03
jelknerit would be very helpful is schooltool could come with a schooltoolctl script23:11
jintyjelkner: do you have an e-mail address?23:14
tvonjinty: find it?23:14
jintyyep, had to figure out how to rip apart an rpm on debian though23:15
jintystart-stop-daemon >> daemon23:16
* tvon shrugs23:16
eldafarhis email is jelkner@divmod.com23:16
*** alga has quit IRC23:19
povbot/svn/commits: * srichter committed revision 4675:23:22
povbot/svn/commits: I must have forgotten to run this test after the last change. This fixes the ftest/23:22
povbot/svn/commits: * srichter committed revision 4676:23:30
povbot/svn/commits: I forgot to check this in before. It goes hand-in-hand with the view_macros merge checkins.23:30
povbot/svn/commits: * srichter committed revision 4677:23:31
povbot/svn/commits: Put notes implementation into separate package.23:32
eldafari'm trying to check out the testbrowser branch from Zope323:39
eldafarsvn co Zope323:39
eldafaris there something wrong with that command, because it's not working23:39
srichternote that this version of testbrowser requires Python 2.423:43
srichteryou also need some additional packages: mechanize, ClientForm, ClientCookie, pullparser23:44
srichterthey are in the schooltool trunk23:45
*** FarcePest has joined #schooltool23:50

Generated by 2.15.1 by Marius Gedminas - find it at!