IRC log of #schooltool for Monday, 2011-12-12

*** Lumiere has quit IRC00:18
*** mgedmin has quit IRC00:18
*** ignas_ has quit IRC00:18
*** aelkner has quit IRC00:18
*** th1a has quit IRC00:18
*** mgedmin has joined #schooltool00:18
*** aelkner has joined #schooltool00:18
*** th1a has joined #schooltool00:18
*** Lumiere has joined #schooltool00:18
*** ignas_ has joined #schooltool00:19
*** Lumiere has quit IRC00:19
*** Lumiere has joined #schooltool00:19
*** mgedmin has quit IRC00:24
*** mgedmin has joined #schooltool00:24
*** menesis has quit IRC00:38
*** ignas_ has quit IRC04:21
*** aks has joined #schooltool05:17
*** aks has quit IRC05:59
*** aks_ has joined #schooltool06:08
*** aks_ has joined #schooltool06:08
*** aks_ is now known as aks06:09
*** aks has quit IRC06:13
*** aks_ has joined #schooltool06:46
*** aks_ is now known as aks06:47
*** aks has quit IRC07:00
*** menesis has joined #schooltool09:23
*** yvl has joined #schooltool09:39
aelknerhey yvl09:51
yvlgood evening, Alan09:51
aelknerand good morning to you09:51
aelkneri have a problem with pluggable traversers that could use your eyes09:52
aelknercheck this out: in zope/zpp/publication/, line 197 in my version09:53
aelknerthere's an adapter lookup for IPublishTraverse09:53
aelknerand schooltool.gradebook relies on the section begin traversable though this adapter09:54
aelkneron ISection that is09:54
aelknerthat fact that that lookup returns a PluggableTraveser object09:55
aelknerallows the code after it, the call to traverse(), to find the plugin registered as follows:09:55
aelkner  <adapterTraverserPlugin09:55
aelkner      for="schooltool.course.interfaces.ISection"09:55
aelkner      layer="zope.publisher.interfaces.http.IHTTPRequest"09:55
aelkner      name="activities"09:55
aelkner      adapter="schooltool.gradebook.interfaces.IActivities"09:55
aelkner      />09:55
aelknerhowever, adding the same registration for ICourse (since I've created the IACtivities adapter already)09:56
aelknerdoesn't in fact work because the, line 197, code returns a SimpleTraverser09:57
aelknerrhater than the plugin that we define in schooltool09:57
aelkneri have print debug code that you can insert after line 197 (you don't need the adapterTraverserPlugin registration because09:58
aelknerit doesn't get that far)09:58
aelkneranyway, add this:09:58
aelknerfrom schooltool.course.interfaces import ISection, ICourse09:58
aelknerif nm == 'activities' and (ISection.providedBy(ob) or ICourse.providedBy(ob)):09:59
aelknerprint '%s %s' % (ob, adapter)09:59
yvlhmm, looking into this...09:59
aelknerand then compare going to the gradebook (as a teacher presumably)09:59
aelknerversus simply adding '/activities' after any course url10:00
aelkneryou'll notice that in the case of the course traversal, the adapter lookup doesn't return the pluggable traverser10:00
aelknerthere's something that is registered for ISection that is not for ICourse10:01
aelknerbut for the life of me, I can't find it10:01
aelkneri grep-ed every way from sunday for PluggableTraverser and all the classes that inherit from it10:02
aelknerand all the zcml factory registrations, i just can't find it10:02
* yvl too at the moment10:03
aelkneri sure hope it isn't too easy for you to find 'cause i busted a nut looking for it :)10:04
yvlit's not ;)10:06
yvlok, something's not right10:08
aelkneri'm thinking that ISection is pluggably-traversable by reason of some side-effect possibly10:10
aelknerbut i wouldn't know what side-effect to look for10:11
yvlwell, everything that implements Interface should be pluggably traversable10:11
aelknerah, yes, i was thinking that, too10:12
yvldo you get this behaviour in func tests, or live?10:12
aelknerso someting is overriding ICourse to go to the SimpleTraverser?10:12
aelkneri don't remember this behaviour in this case because it it brand new10:12
aelknertwo or three years ago is the last time i had to deal with pluggable traversing10:13
aelknerand i do remember that in addition to the plugin, the context had to be made pluggable10:13
aelkneroh, just to be on the same page, did you insert my debug code to see the two different adapters10:14
aelknerISection vrs ICourse?10:14
aelknerone is defined in schooltool, the other in zope10:20
aelknerthe real bugaboo is that one can't know (or even pdb for that matter) how these adapters get registered10:22
aelknerit's a real flaw of the zope architecture, and one that i bet could be helped with some easy to whip up inspector10:22
aelknernot the apudocs thing stephan did many years ago, but something more straightforward10:23
aelkneri mean, at any point, it would be trivial to use (if such a thing existed)10:24
aelknera dictionary whose keys where the lookup10:24
aelknerand whose values were not only a class or a hard object like a utility sitting in memory10:24
aelknerbut also some info on where the thing was registered10:25
aelknersomething the meta code could easily inform the registry while registering10:25
aelknerwouldn't that be nice?10:25
yvlwell, there is such thing10:31
yvlbut it is quite mangled10:31
* yvl gets lost10:31
aelknerwell, that makes two of us10:39
yvlok, I have a clue what's causing it and no intention to dig deeper10:42
yvlI'll just fix it, if it't ok ;)10:42
aelknerhow would you fix it?10:42
yvlin flourish10:42
yvlmake everything pluggably traversable10:43
yvlit was supposed to be like this10:43
aelkneri agree with that kinf od practical solution10:43
yvlbut for some reason on some objects one registration is winning on another10:43
yvlmaybe because of the order the registrations fall into component registry10:44
aelknerwe don't have to slve the zope magic problem right away if we can fix it in flourish as you suggest10:44
aelknerit would just be nice to some day have a tool like i described that would explain these things, but not now10:44
yvlhmm, maybe there is one in the wild10:46
aelknerso i just need to merge with trunk now?10:47
aelknerhow's that?10:47
aelknerone in the wild, how do you mean?10:47
yvlsomewhere in pypi10:48
yvlor in some repository on the internets10:48
aelknerah, i see, somewhere in the internets :)10:48
yvlyes :)10:48
aelkneryvl, dude, that really did the trick!  thanks for the assist10:54
yvlyou're welcome11:12
*** ignas_ has joined #schooltool13:36
*** ignas_ has quit IRC15:44
*** ignas has joined #schooltool15:44
*** menesis has quit IRC16:00
*** replaceafill has joined #schooltool16:18
th1ahi replaceafill, yvl, aelkner.16:29
yvlgood morning16:30
replaceafillgood morning/afternoon16:30
th1aAre you guys seeing the new Launchpad interface updates?16:30
* yvl is in Launchpad Beta Testers group, so gets UI changes earlier16:32
th1aI should be too.16:32
th1aajax sorts...16:34
yvlquite nice, though a bit heavy on the eyes16:34
th1aI haven't used it enough to have a strong opinion.16:35
* yvl also has some ajax sorts in his SchoolTool sandbox :P16:35
th1aThat's partly why I brought it up.  ;-)16:35
th1aMakes a good segue to...16:35
* replaceafill tested yvl's branch and it's really cool :)16:36
yvlthank you :D16:36
yvlI finally ported few of the table views to AJAX16:36
yvlbut no relationship views yet16:36
yvlsomething is fishy with virtualenv or something on our ST test server16:37
yvlso I didn't make it available16:37
yvldone only courses and persons views, these are examples of simple and cataloged table formatters16:37
yvloh, and table formatters got refactored into a somewhat friendlier form16:38
yvlold ones still work, but I prefer using new ones, that are viewlets16:38
yvloh, and they are also viewlet managers, so you can replace parts like "search", insert done links and whatnot16:38
yvllike everywhere else in flourish16:39
yvlconsistency FTW16:39
yvlso, pretty much still work in progress16:39
yvlthey'll need a little bit of FX16:40
yvllike graying out on sort, search, etc.16:40
th1aOne thing that could use some inspiration is replacing the old "invert selection" functionality.16:41
yvlumm.. where?16:41
th1aWell, just when you're selecting, say, students.16:41
th1a(this is not a simple question)16:42
th1aJust something to think about.16:42
yvlhmm, ok16:42
yvlbtw, replaceafill if you manage to run an instance with my branche to show to Tom, I'd be grateful16:42
replaceafillah ok16:43
replaceafillwhat problem did you have?16:43
* replaceafill tries to set up yvl's branch in the vps16:43
yvlif only I could recall16:43
replaceafillok, will do16:43
yvlsomething with download timeout when running make rnu16:43
* yvl is ashamed that he didn't take more effort :|16:44
yvlso, th1a, a bit of planning16:44
yvlI'd really like to keep working on this for a week16:44
th1aThat's fine.  It is a big feature from the user's perspective.16:45
yvland if we can bring some *decent* looking special effects, I'd like to spend extra effort there too16:45
yvlI think we're on the same page :)16:45
* yvl done16:45
th1aNo point in pushing out unpolished chrome.16:46
th1aThanks yvl.16:46
th1aNo menesis today?16:46
*** menesis has joined #schooltool16:46
yvlthere you go :)16:46
th1ahi menesis.16:46
th1aSo I guess the Shuttleworth Foundation is going to maintain ownership of our domain because there is nobody to transfer it to.16:47
th1aShould PoV become the technical contact (not that it really matters).16:48
th1aOK.  Can you send me that info?16:48
th1aAlso, I16:48
th1aam thinking that we can actually run from just a web host account if we want.16:49
th1aSo we don't have to sys admin the whole thing.16:49
menesisthe biggest problem is that the disk of server is dying16:49
replaceafillyou can see yvl's ajax branch + sample data here:
menesisand I fear to upgrade or reboot it16:50
th1aOh... I know we want to get off that thing.16:50
menesisalso, in case when is down, as happened just a few days ago, there is nothing I can do16:50
th1aThe question is do we just need a web host acct. or do we need to sys admin a server?16:50
menesisnot even redirect to or something16:51
menesiswe now have much less on the server than before16:51
menesisno mailing lists, zope instances, bug trackers..16:51
menesiswhat is there..16:51
menesiswebsite, book, and downloads16:51
menesiseven the buildbot is now at pov.lt16:52
menesisexcept the "release" builders16:52
menesisbut this is rather an outcome of the reliability problems of schooltool.org16:53
menesisthan the reason why we don't need the server16:53
yvlthanks a million, replaceafill16:54
menesisbut it is possible to split public things on a web host16:54
menesisand run some others like buildbots on pov servers16:55
th1aThat's what I'm thinking.16:55
menesise.g. point to schooltool.pov.lt16:56
th1aOK.  I'll think about that.  I might wait until the beginning of January to charge it to next year.16:56
th1aBut probably we'll do this to cut down on the headaches.16:57
menesisthere is little I do to the server16:58
th1aAny other news menesis?16:58
menesisbut it still runs Hardy (8.04)16:59
menesisno python 2.616:59
menesisth1a: no news from16:59
th1aIt is more the falling over periodically that bothers me.17:00
th1aThanks menesis.17:00
th1a(and I know the problem is the server is fucked, not menesis's sys admin-ing)17:01
replaceafilli kept working on the spanish version of the book17:01
replaceafilli already published the work in progress here:17:01
replaceafillset an upload rule in the Makefile to upload to that directory17:02
replaceafilland updated the Spanish website navbar to point to it17:02
replaceafilland the Spanish website searchbox to search on it17:02
replaceafillalso, this has helped me to find some bugs in the book17:03
th1aThis is going to be a book week for me.17:03
replaceafill"This link in the sidebar gives you access to... maybe we’ll change this."17:04
th1aOh yeah.17:04
th1aWe did change it!17:04
th1aI'll do that first.17:04
replaceafilli think we need to explain the new Pack Database action here17:04
replaceafilli think the explanation is out of date after the first screenshot?17:05
replaceafillthe screenshots are17:05
replaceafilland there was this paragraph that got my attention:17:06
th1aUh... it looks completely screwed up.  I'll take a look at it.17:06
replaceafill"Set up timetables through the web interface.  They can be exported and imported via spreadsheets, but we don't support users trying to type timetables directly into the spreadsheet."17:06
replaceafillthe last part17:06
replaceafillis that still valid?17:06
th1aI'm not trying to talk someone through that mess.17:07
th1aThat's all that means.17:07
replaceafilland this one?17:07
replaceafill"The homeroom functionality is not really implemented in SchoolTool yet, so you can just say **No** to this question:"17:07
replaceafilli always wondered about that question :D17:07
replaceafillin the wizard17:07
th1aWell, it will have some relevance... soonish.17:07
th1aBy the end of next year.17:08
replaceafilli set some warnings for the parts that i've not translated yet:17:08
replaceafillyou see the warning at the top17:08
replaceafilli've been also testing the instructions, like the ubuntu software center ones17:09
replaceafilland found some missing menus, etc17:09
replaceafillno big deal17:09
th1aYou can make those kind of changes yourself if you want.17:09
replaceafilli have been17:09
replaceafillon the ones that don't need grammar :)17:10
replaceafilland finally17:10
replaceafilli've been updating the spanish translation of the app itself, as i go trhough the screenshots17:10
replaceafillin securitypolicy/browser/ the string "User calendars" is not translatable:17:10
replaceafill    fieldset_titles = {17:11
replaceafill        'everyone_can_view_section_info': _('Section information'),17:11
replaceafill        'everyone_can_view_person_list': _('List of accounts'),17:11
replaceafill        'persons_can_set_their_preferences': ('User calendars'),17:11
replaceafillmy bad btw :(17:11
replaceafillforgot the _()17:11
replaceafillin /errors, datetimes are not translated/localized, this also happens in /showEntry.html when viewing an error17:11
th1aDid you wrestle with the spreadsheet i18n problem at all?17:11
replaceafillth1a, no not yet17:11
replaceafilli'll do when i completely finish this if that's ok17:11
replaceafilland work on the other i18n issues17:12
replaceafilllike default strings, etc17:12
* replaceafill done17:12
th1aThanks replaceafill.17:13
aelkneri'm making progress on the course worksheets front17:13
aelkneri created the adapters for course worksheet templates and deployed worksheets17:14
aelkneri then ran into a problem with pluggable traversal adapters which yvl solved for me last night17:14
yvlfixed a bug in trunk, rather ;)17:14
aelknersomething weird was going on there, but yvl found a nice workaround17:14
aelknerwell, yes, the fix in trunk helped my adapterTraversalPlugin to work17:15
aelknerso thanks, yvl, for that17:15
aelkneri was able to make progress on the deployment from in the meantime17:15
aelknerin that i got the same deployment view that we have for report sheets to work for course worksheets17:16
th1aSend me some screenshots later.17:16
aelkneri still need a couple days to finish this up in my estimation17:16
aelknerbut i'll look for you tomorrow to look at the screens on my demo instance17:17
aelknerso you can direct me to the right text changes, etc.17:17
aelknerso that's it for me17:17
th1aThanks guys,.17:18
th1aI think we're in good shape for everyone getting to a good holiday stopping point.17:19
yvllooks like it17:20
th1aSee you Wednesday!17:20
* th1a drops the bag of gravel.17:20
yvlthanks guys!17:20
aelknercya guys17:20
replaceafillthanks everybody17:20
yvlth1a, a short note on my vacation17:20
yvlI'm taking Jan 13-20 off17:21
yvlthat's Fri-Fri17:21
th1aOK.  Sounds good.17:21
yvloh, and please take a look at ajaxified persons list17:21
yvlI know it's simple and very work-in-progress17:21
yvlbut still... so good to see those finally in ST17:22
th1aYes... I guess replaceafill will tell me when it is up.17:23
replaceafilli did :D17:23
* yvl is amazed how much faster ST *seems* to be operating17:24
yvl(though it is working a little bit faster)17:24
th1aIt seems to be crashing my browser.17:24
th1aChromium hasn't worked right since I updated...17:25
yvlmy Chromium worked there17:25
replaceafillmine works17:26
th1aMIne works on my other computers.17:26
th1aActually chromium is crashing on the login screen, not the person page.17:27
th1aRuins my theory of blaming it on flash.17:28
th1aThe weird thing is NOBODY else seems to have this particular problem.17:28
th1aWell, seems pretty fast.17:29
th1aOh, we still have that orange in the sort widget in the table.17:31
th1aI've never liked the way that works anyhow.17:31
th1aSlipped through the flourish cracks.17:31
th1aI always click the arrows.17:31
th1ayvl:  Is there anything I should be doing other than searching?17:32
th1aFor people?17:32
yvlselect group17:32
yvland click on batching links17:32
yvlit's not much, I know.17:32
th1aOh, right.  Batching.  That's nice.17:33
* yvl is now doing a little bit of CSS tweaking17:33
th1aThis will be a big deal to users.17:34
th1aIt is faster than I would have thought.17:34
th1aIt is fetching the next batch with ajax?17:34
yvlactually, it's fetchin a big chunk of HTML17:35
yvland it's still faster17:35
yvl(along with search widget, btw)17:35
yvlsearch widget has that "now showing X of Y" that needs to be updated17:36
th1aJust wanted to make sure you weren't cheating.  ;-)17:36
yvlreplaceafill, can you please pull to that instance?17:36
replaceafillsure, hold on17:36
yvla small batchin CSS change I'd like th1a to comment17:36
replaceafilldone, reload17:37
yvlit looks much better on Chrome, in FFox there's a space between batch and table17:37
* replaceafill adds that to the css bug17:37
yvloh, wait17:38
yvlyou need to restart server17:38
replaceafillthere were only two css files17:38
yvla sec17:38
yvlforgot to commit the actual CSS classes in page templates :D17:39
replaceafillserver restarted17:39
yvlthanks, man17:39
replaceafillyvl, i don't like the hover bg + teal font17:40
yvl+1 replaceafill17:40
replaceafillmaybe white font on hover?17:40
* yvl is just wandering about the "tabby" thing17:40
yvland no underline maybe17:40
yvlmimic the tab behaviour like School, Server, ...17:41
replaceafilli know th1a wanted the "current" not to be a link17:41
replaceafilli remember he said it when we styled that part17:41
replaceafillbut that .pt was kind of confusing to me for a quick change17:42
yvlgreat, will do that17:42
yvlyes it is :)17:42
th1aWhite font on the hover.17:42
th1aThat looks good.17:42
th1aThanks yvl.  We just need to get rid of the gap on firefox.17:42
replaceafilladded to the css bug17:43
yvlI can style that one, if it's ok?17:43
replaceafillgo ahead17:44
*** ignas has quit IRC19:30
mgedmindear cando people, if your build job would please stop killing my server, I'd appreciate it19:48
th1aI'm not sure who is responsible for that.  menesis?19:52
menesistried to upgrade to buildout 1.519:56
menesisI knew that it happens that buildbot/distribute upgrade recursively19:57
menesisbut forgot to look at the buildbot and stop this19:58
* mgedmin is desperately running pkill -STOP -u buildbot on the buildslave20:04
mgedminpkill -9 -f cando helps20:06
mgedminand my resource limits in /etc/default/buildbot did not work :(20:07
mgedminmenesis, will you have time to look at this before it happens again in two days?20:11
mgedminhm, maybe it won't happen _again_20:12
mgedminlast time it was cando-coverage, wasn't it?20:12
mgedmintoday it was cando20:12
menesisonce you interrupt buildout doing that, does not happen next time20:13
mgedminyeah, I see the next build succeeded on that builder20:13
menesisbut other builders will do the same20:13
mgedminI saw three recursive forkbombs and killed them all20:13
mgedminone was cando20:13
mgedminthe other -- cando-release20:13
mgedminthird -- schooltool_trunk maybe?20:14
mgedminno, it was some other error20:14
menesisDid "rm .installed.cfg" in buildbots that may do that20:23
menesisschooltool_trunk and cando, yes, plus coverage and release for them20:24
*** menesis has quit IRC21:47
*** menesis has joined #schooltool22:31
th1areplaceafill:  Pushed a pack database part.22:35
replaceafillth1a, kk22:35
th1aI think I might have skipped terms because we were changing the calendars still or something.22:36
replaceafilli thought it was because you lost your screenshots22:36
th1aOr that.  ;-)22:37
th1aI don't remember.22:37
th1aDidn't you find them?22:37
replaceafilli recovered the term-*.png images, but most of them are for the old skin22:39
th1aAnyhow, I'll fix it.22:39
replaceafilli'll update the translation of the pack database action22:39
th1atbh it seems to take me an afternoon to get the whole writing environment set up.22:40
replaceafillwriting environment = book + sandbox?22:41
th1aJust the whole thing.22:42
th1aIt doesn't REALLY take me a whole afternoon.22:43
th1aGetting ready to write and actually writing are two different mindsets though.22:43
th1aOnce I get over the technical fiddling, I'm fine.22:44
replaceafilli like this:22:47
replaceafill"To pack the database, click **Pack Database** under **Actions** in the sidebar."22:47
replaceafillinstead of **Add: Person**22:47
th1aWell, yes.22:48
th1aThat gets a bit redundant eventually though.22:48
replaceafillalso, you called some of the links in the sidebar "buttons"22:48
th1aOh, fix that.22:49
replaceafill"Then, click the **Add: Course** button and fill out the form."22:50
replaceafilli translated it as link ;)22:50
th1aFeel free to change the originals on that kind of stuff.22:52
th1aYou're the official Proofreader.22:52
replaceafillwill do22:52
th1aThat is not a Vice-Presidential level position though.22:52
* replaceafill was preparing his new tag22:53

Generated by 2.15.1 by Marius Gedminas - find it at!