IRC log of #schooltool for Wednesday, 2011-04-27

*** menesis has joined #schooltool00:05
*** alga has quit IRC01:15
*** menesis has quit IRC02:15
*** menesis has joined #schooltool02:32
*** menesis has quit IRC03:04
*** aks has joined #schooltool06:14
*** th1a has quit IRC08:37
*** Aiste has joined #schooltool08:52
*** Aiste has left #schooltool08:52
*** alga has joined #schooltool09:28
*** menesis has joined #schooltool11:38
*** aks_ has joined #schooltool12:24
*** aks has quit IRC12:24
*** aks_ is now known as aks12:30
*** ignas has joined #schooltool13:02
*** aks has quit IRC14:18
*** yvl has joined #schooltool14:50
*** replaceafill has joined #schooltool16:09
*** th1a has joined #schooltool16:14
th1ahi menesis, yvl, aelkner, replaceafill.16:30
replaceafillgood morning/afternoon16:30
yvlggod morning guys :)16:33
yvl* good16:33
th1aWould you like to start us off yvl?16:35
yvlI was away for some coffee16:35
yvlI'm on semi-vacation this week16:36
th1aThat's fine.16:36
yvlwhich means working few hours a day :)16:36
yvlI begun researching UI remake16:36
yvlremake is a strong word16:36
yvlI don't intend to rewrite the whole codebase :)16:37
yvlthank you :)16:37
yvlso looking roughly at the Ubuntu web grid system, SchoolTool fits it surprisingly well16:37
th1aThat's what you should be thinking about first more than design design issues.16:37
yvlcalendars, journal and gradebook seem a bit cramped, but they fit in most scenarios16:39
yvlI ventured a little bit into design side16:39
yvlbasically combining ideas from Vitor, Ubuntu web guidelines and what we have16:39
yvlI'm not sure how we should proceed now16:40
yvlon one hand,16:40
yvlI can research for... roughly a week16:41
yvland come up with few skinned views16:41
yvland some of the new ZCML directives maybe16:41
yvlbasically, I'd like to get to the point were we could all work on separate parts at the same time16:41
th1aSeparate parts of?16:42
yvlwell, we'll have to change most of the views16:42
* menesis :16:42
yvllittle changes, but for most of them16:43
yvlregister links, buttons, sidepanes and stuff16:43
yvlit's a bit hard to explain on IRC for me16:43
yvlI think we should keep the old views at the beginning, then migrate them one-by-one16:44
th1aIt will be a manual process, but one we should be able to grind through pretty quickly if we focus.16:44
th1aOnce the areas are set up.16:45
yvlI'd like to get to the point were grinding can be done (not saying should be done) by multiple developers simultaneously16:45
th1aOK, yes, me too.16:46
yvlmy current plan is to meditate on that this week16:46
yvlthen experiment the next week16:46
yvlsee where it gets us16:46
th1aThe biggest thing is to define the various places things can go clearly.16:47
yvlI *think* I got them16:47
yvltheres a narrow left pane, 144px wide,16:48
yvlbasically, you put filters there16:48
yvllike terms for a linked section16:48
yvlmonths/years for a calendar16:48
yvlterms, maybe courses for a section "container"16:49
yvlthen theres the main content area16:49
yvlwhich is essentially a large div, composed of content blocks16:49
yvllike person "overview" view16:50
yvlor a section "overview"16:50
th1aWe don't have to talk through it now.16:50
th1aJust keep in mind:16:51
th1aa) where things go that are added by other components (actions);16:51
th1ab) control over the ordering of things in the various areas, esp. things that are externally added.16:52
yvlone of the things I'll definitely work on16:53
yvlis custom ZCML directives for this16:53
yvloh, and I dusted off my CSS during holidays :)16:54
th1aSomething that can let you force something to the left or right end would probably be good.16:54
yvlplease explain a bit16:55
yvlare you thinking about left/right panes,16:55
th1aNo, just when you have a sequence.16:55
yvloh, ok16:55
th1aLike, file is always first, help last, etc.16:55
yvlof course16:56
th1aOK cool.16:56
th1aSo, you'll need to do some writing and drawing for us, but we're not starting from scratch, so it shouldn't need to be too elaborate.16:57
th1aOK -- now, is there someplace I can check out the timetable code?16:57
yvlthis is core, journal is...16:57
yvlif you want to run journal, you'll need to check out both, then16:58
yvledit buildout.cfg16:58
*** alga has quit IRC16:58
yvlumm, say for core16:58
yvland add to develop= line16:59
th1aGood.  Keep us posted.17:01
th1amenesis around?17:01
yvlsure, th1a17:01
th1amenesis:  So we should be ready to announce a "release" tomorrow?17:01
th1aThe release notes are in the book?17:02
menesisNatty is closed, will be released tomorrow17:02
menesisyes, I have copied changelogs from all packages into the book17:03
th1aOK, so that should be all I need.17:03
menesisOf course you can expand a little what, e.g., "resource demographics" means17:04
th1aI'm going to have to start making aelkner use more comprehensible terminology.17:05
th1aHis jargon seeps into the application.17:05
menesisI see some strange formatting there.. but not finished yet17:05
menesisit is always the case with developers17:05
th1aYes, it is not just aelkner ;-)17:06
menesisI am editing the CHANGES.txt to shorten the changes and remove developer-specific changes17:06
th1aThe 1.6.1 release is going to have to include some jargon bugfixes.17:06
th1a"limit keys" in managing demographic fields.17:07
th1aSo, yes, that's bad for translations, too.17:08
menesisyes, as I have to merge translations and update strings17:08
th1aWe'll going to be more careful about catching those things earlier.17:08
menesisthere are sometimes too many texts17:08
menesissome translatable things that are not visible to users17:09
menesisvariations of the same thing, that have to be translated twice17:09
menesisbut I think the texts will change anyway when we redo the navigation17:10
menesisand layout17:10
th1aYou can file bugs on those kind of things.17:10
menesisso don't think it's worth changing much before that17:10
th1aOK.  Thanks menesis, good work on getting the release cleanly into Ubuntu.17:11
menesisbtw has many bugs assigned, some of them quite old, some are new features...17:11
th1aThat's a great weight off the project.17:12
menesisthe day before hard freeze..17:12
menesisbut I did it17:12
menesiscan I expand a little on what has been released?17:12
menesisOnly schooltool 1.6.0 and schooltool 0.9.0 are major new releases17:12
menesisjournal has not seen any development this winter17:13
menesisand I left intervention refactoring out, sorry :(17:13
menesisran out of time/too late before release17:13
menesishowever, I have merged the gradebook without journal branch17:13
menesisrewritten, in fact17:14
menesisbut journal is now optional, and the absences reports do not show up when it is not enabled17:15
menesisI have tried to move the two reports to journal17:15
menesisbut gave up17:15
menesisbecause it was too late17:15
menesiswhat else17:16
menesisthere are two new projects on launchpad17:16
menesis and
th1aJust make sure to merge the things that didn't make it in as soon as possible so we don't forget about it.17:16
th1aWe really could kill commendation.17:17
menesiswell. it is an example plugin with some documentation17:17
menesisnot sure how useful it is17:17
th1aProbably not at all.17:17
th1aIt is so old.17:17
th1aNo big deal either way.17:18
menesiswell, at least it is not in the core17:18
menesispeople were translating it and I had to deal with that, annoying17:18
menesisthe other thing, schooltool.release17:19
th1aOK, so that's good.17:19
menesisis what I have been using for a long time17:19
menesisit is an umbrella project like zopetoolkit or groktoolkit17:19
menesisuses mr.developer17:19
menesiscan run schooltool with all plugins as eggs, develop all or some of them17:20
menesisand the community packages that are not in zopetoolkit17:20
menesise.g. bin/develop co zope.ucol17:20
menesiswill checkout and use zope.ucol branch instead of egg17:21
menesishas a Makefile with most of the same targets, e.g. make run17:21
menesisand has been used in buildbot to test everything together, make coverage, and snapshots17:22
th1aDoes that affect how we should be making sandboxes in the future?17:22
menesischeck it out :)17:22
menesisno, you can do everything as before17:23
menesisit is more convenient for me17:23
th1aJust let aelkner know if he's going to have to change.17:23
menesisyou can use it, too.17:24
menesisit is not a new thing. I just made it more public17:24
menesisthat's it17:25
th1aThanks menesis.17:25
th1aOne forward looking question for yvl & menesis.17:25
th1aShould menesis start going through CL patches?17:25
yvlgood question17:26
menesisI don't remember what was in there. I have done the same as a few of the patches did17:26
yvlmenesis, are you up for it?17:26
yvlcreating a separate egg, and porting the patches, that is?17:27
th1aOr at least triaging them in some kind of useful way.17:28
th1aLet me put it this way -- I'd rather have a fairly quick and dirty analysis than all of us getting paralyzed by the mass and never looking at any of them.17:28
menesiswell.. I have not looked at the patches since Portugal :(17:29
menesisand yes, we better do something about them17:29
menesisdefinitely not this week, I have still things to finish or merge that were left till after release17:30
menesisbut then, I don't know what I will be doing17:30
th1aOK, that would be next on your list, then.  ;-)17:30
menesisI guess CL patches and a plugin for them is a high priority now17:30
menesisok, will look what we have there17:30
th1aYes.  I should check in with them and see if they've been working on updating their SchoolTool.17:31
th1aOK.  Thanks menesis.17:32
aelkneri submitted my branch for review and am waiting for feedback17:33
aelknerreplaceafill, thanks for the punycode comment17:33
aelkneri fixed the vocabularies to punycode encode17:33
aelkneralso, i manually tested moving a gradebook Data.fs into a non-gradebook schooltool instance17:34
aelknermy branch changes allowed the server to start now, but it can't handle transactions17:35
th1aI don't think that is really a requirement at this point.17:35
aelknerthat's what the bug is based on17:35
aelkneroriginally posted by replaceafill17:36
aelknerdid anyone have a chance to look at my latest comment?17:36
menesisaelkner: that's good that you eliminated one failure.17:37
menesishaven't looked at the code and what causes this new failur17:37
th1aWell, *I* didn't triage that bug.17:38
th1aaelkner's task was to move the scoresystems out of the site manager.17:38
th1aSo... good work!  And you can move on for now.17:39
aelknerth1a, i assumed you saw the bug17:39
yvlsorry guys, I'm a bit out-of-the-loop this week17:39
th1aI mean, it is fine, I'm just saying, for aelkner's immediate context, he's done.17:39
yvlseems that something is still stored ther17:39
th1aOr not.17:39
yvlaelkner, a short question - did you evolve the Data.fs?17:39
yvlas in - are the old registries wiped out?17:40
th1aPerhaps some evolution is needed.17:40
th1aOr less.17:40
aelkneryes, and the server started17:40
* th1a will shut up.17:40
aelknerbut i might need to do more evolution17:40
menesisthe structure of where scoresystems are stored still prevents schooltool from working after gradebook is disabled17:40
aelkneri just don't know what i need to evolve outside of moving scoresystems out of site manager like i did17:40
yvlI see, menesis17:41
aelknermenesis, how do you mean?17:41
menesisbut what this __iro__ is about, no idea17:41
menesisaelkner: i'm just sayin the bug not completely fixed17:41
aelkneryeah, no kidding17:41
menesisbut is better17:41
th1aWell, there are perhaps two ways of looking at this.17:42
yvlthe important part is zope/component/persistentregistry.py17:42
aelkneri could some help at this point17:42
th1aa) are we going forward storing score systems in the right way;17:42
aelkneryvl, how's that?17:42
yvlaelkner, I'll have to man up and actually look at your code17:42
th1ab) can we migrate an old database in such a way that you can take an old database AND remove gradebook.17:42
th1ab) is not actually a requirement in my book.17:43
th1aThis is just a forward-looking cleanup to me.17:43
yvlI agree, the important part is to store the scoresystem nicely17:43
th1ab) is not a requirement because clean removal of a component is not currently a requirement at all.17:43
yvland, of course, properly delete the old utilities17:44
th1a(not that clean removal wouldn't be nice)17:44
aelkneryvl, you'll let me know if i haven't done something properly17:44
yvlclean removal is important just because it will bite some developer in the future17:45
th1aEither way, I don't want a ton of time sunk into this little issue.17:45
yvlsure, aelkner17:45
yvlof course, th1a17:45
yvlah, there it is! :)17:45
yvlaelkner, see evolve35 from ST core17:46
menesisaelkner: why you had to move scoresystems from requirement to gradebook?17:46
yvlthe mystical part of:17:46
yvl        sm = app.getSiteManager()17:46
yvl        default = traverse(app, '++etc++site/default')17:46
yvl            sm.unregisterUtility(util, ICatalog, key)17:46
yvl            del default[name]17:46
th1aYes, I don't want scoresystems in gradebook.17:46
aelkneri tried to explain that in my email to the developers' list17:47
aelknerthe problem is that cando uses the requirement package without including gradebook zcml17:47
aelknerso if requirement package code calls into gradebook code (a reverse dependency)17:48
aelknerthen it may crash cando17:48
th1a" I did this because17:48
th1athey use the gradebook root now, and I didn't want to have the17:48
th1arequirement package depend on the gradebook package. "17:48
th1aWhy do they use the gradebook root now?17:48
aelknerwhere else would i store the scoresystems?17:49
th1aSomeplace that wouldn't make the dependent on gradebook?17:49
th1aTheir own container?17:49
aelknergradebook has a root container where templates and report card layouts are kept17:49
menesismaybe create a requirement root?17:50
aelknerrequirement has no container17:50
yvlyes! :)17:50
th1amenesis:  Exactly.17:50
yvladd the container17:50
yvlthe more the merrier ;)17:50
yvlbut seriously, it didn't need the container before, because it was polluting site manager17:50
yvlsincere apologies for not reading your email earlier aelkner17:51
aelkneryvl, np17:51
aelknerso, i'm creating a IRequirementRoot container17:52
aelknerand i'll put the scoresystems there17:52
aelknerand move the scoresystems views back to requirment package17:52
yvland add the traverse/delete thing to evolution please17:52
yvlsounds good :)17:53
aelkneryvl, i saw the traverse thing in evolve35 in core17:53
aelkneri tried doing the same, but there was nothing to delete when it got to:17:53
aelknerdel default[name]17:54
aelknerso i figured that step was not necessary17:54
yvlhmm, I think it is stored *somewhere*17:54
yvllet me check where17:55
replaceafillin the site manager?17:55
yvlprobably :)17:55
aelknerthere, of course, which is why i unregistered from there17:55
aelknerbut not in defauilt17:55
yvlI don't remember well, but from the error it seems that it's still stored somewhere17:56
aelkneri'll double check default, but if it's not there, i don't know17:57
aelkneranother thing17:57
aelknerif i'm to create a requirement root, i'll need a generations package in requirement17:58
aelknerisn't that true?17:58
yvlgood point17:59
yvleither that, or create it "on app startup"17:59
aelkneryes, the root container can be auto-vivified17:59
aelknerbut that doesn't address the evolution that need to move the scoressytems there18:00
th1aJust remember that this whole little task is just cleanup -- so there's no point in doing it if at the end what we've got has its own set of new dependency glitches.18:00
yvlagain, a good point aelkner18:01
aelknerthis is not turning out to be a 'little' task18:01
yvlmaybe you can add another schema manager to the requirement package18:01
yvland do evolve1/install scripts18:01
aelknermaybe i should do it, or yes, i should do it?18:03
*** ignas has quit IRC18:03
yvlyou know, let me get back to you later :)18:04
yvlif it's ok, in 24 hours18:05
aelkneranother thing18:05
aelknershould IRequirementRoot BE the container of score systems18:05
aelkneror whould it have a scoresystems attribute like i did in GradebookRoot>18:06
aelkneryvl, please include that in your email18:06
aelknerand please put those comments in a response email to my developer's list email18:07
aelknerso we all know what's going on18:07
* replaceafill wonders about what's better, attributes or containers...18:07
aelkneryeah, for instance, with schooltool.courseinfo i'm having filip do it differently18:08
aelknerschooltool.courseinfo does it like schooltool.intervention does it in IInterventionStudent18:08
aelknerwhere 'messages' and 'goals' are put in the folder18:09
aelknerwhich makes traversal more trivial18:09
aelknerin the case of GradebookRoot, i used attributes18:09
aelknerwhich makes it necessary to create traversal adapters18:10
aelknerand dynamic  containmet logic18:10
aelkneri find that stuff to be overly complex18:11
aelkneri had to waste time figuring out why i kept getting NotYet exceptions18:11
aelknerreally annoying!18:11
aelknernow i know what needs to be done, but i'm just saying i prefer the way intervention and courseinfo do it18:12
yvlI see your pain, aelkner18:12
aelknerzope sems built to take advantage of btree containers18:13
*** jelkner has joined #schooltool18:14
aelkneryvl, could you also include a comment in your email about whether RequiementRoot should have root['scoresstems']18:14
aelknerrather than root.scoresystems?18:14
yvlok, I'll look into it18:14
yvl(sidenote - found it!\n_LocalAdapterRegistry\nq\x01.}q\x02(U\t_providedq\x03}q\x04(cschooltool.requirement.interfaces\nICustomScoreSystem\)18:14
aelknerwhat does that mean?18:15
yvlthat it's still in the database :)18:17
yvljust that all other utilities got broken because of this entry18:17
* yvl hates persistent utilities :/18:17
yvlsorry, please continue with the meeting :)18:19
aelkneryvl, so i'll await with great anticipation your email when i check tomorrow morning18:20
replaceafillso will i :P18:20
aelknerplease make sure to check this log so you don't leave anything out18:20
yvlof course :)18:20
aelknerso that's it for me18:21
th1aOK.  Thanks aelkner.18:21
th1aMoving on then...18:21
replaceafilli worked on the last 2 reports for this iteration for cambodia18:21
replaceafillthe ones that needed an 'hours per week' attribute for section/courses18:22
replaceafilli sent some questions related to this to chandara18:22
replaceafilland he replied this morning18:22
replaceafilli have one request though18:23
replaceafilli checked what aelkner did for niepa, i mean the rotated text thing18:23
replaceafilland i guess it doesnt rotate the whole page, right aelkner?18:23
replaceafilli can only rotate cells18:23
th1aI was wondering if there was some confusion there...18:24
th1aDo you just need landscape page layout?18:24
replaceafillmy bad, i didnt explain well last week18:24
replaceafillyvl is it possible to do this with the current pdfview?18:24
yvlyes, but I don't remember how18:25
replaceafillah ok, that helps though i can look it up :)18:25
yvlsomething about marking page as rotated, and setting a rotated page size18:25
th1aIt's not exactly an edge case.18:26
replaceafillok, and one problem i noticed is this:18:26
replaceafillcould you please check that out18:26
replaceafillthere's a package (at least in debian) called ttf-khmeros 5.0-318:27
replaceafillwith the khmer fonts18:27
th1aThe problem is that you can't print Khmer script?18:27
th1aThat might be a problem.18:27
replaceafillwell, replace the fonts for the pdf18:27
replaceafilli also noticed there's a map for the font names to the actual font18:28
th1aRemember that we're working with the foremost experts on Khmer fonts in the world.18:28
replaceafilldef setUpLiberationFonts(directory): in
replaceafilloops sorry18:29
replaceafilland my debian has:18:29
replaceafillthose files18:29
replaceafillmaybe i could ask them which files match each of our fonts...18:30
menesisyes I understand there is a problem with fonts18:30
menesisit is very unlikely that one font has symbols for all languages.18:30
menesisso we will need to setup up more of them like is done with liberation fonts18:30
th1aAt some point we need to figure out how much of the Ubuntu font we can move to.18:31
menesisin cambodia case it is clear which font is needed and you can override it somehow18:31
menesisin the other product that pov develops, there are also reports generated. and eventually we had to add more fonts, not khmer but chinese, but anyway.18:33
replaceafillmenesis is it possible to override "def configureReportlab" in app.main18:33
menesisit's unfortunate that reportlab does not do any font management18:33
menesisreplaceafill: not as it is now.18:34
menesisit is just something that works with one font18:34
replaceafillwell, i could try to come up with a work around...18:35
replaceafillbut i definitely think this is a major issue18:36
replaceafilli mean, i want to show the reports in khmer too :)18:36
replaceafillat one point i thought of not using pdfs...18:36
menesisyes this is a major issue..18:37
replaceafillth1a what do you recommend? leave it for now?18:37
th1aPerhaps you can ask on a reportlab list?18:38
replaceafillok, look for a solution then18:38
replaceafillok, i'll look18:38
th1aSo they gave you reports in Khmer?18:38
th1aI mean, they do need them, right?18:38
th1aIt is definitely something that needs to be resolved.18:39
replaceafillth1a that's all from me, will work on the comments from chandara18:39
th1aOK. Thanks replaceafill.18:40
th1aI guess you guys have no comments on my text?18:41
yvlit looks good, apart from some typos18:42
yvllike year 2995 ;)18:42
yvlbtw, the broken score system thing looks like a bug in zope18:42
th1aOK.  I'll also be updating the installation instructions in the book and start plowing through the rest.18:43
th1aHave a great week, gentlemen!18:43
* th1a drops the bag of gravel.18:43
aelknergreat week everyone18:43
yvlgood week to you all!18:43
replaceafillthanks everybody18:43
yvlaelkner, I'll look into it18:44
yvlcurrently the situation looks pretty nasty18:44
yvldamn persistent utilities :/18:44
aelkneryvl, we learned our lesson18:44
aelknernever again!18:44
replaceafillorientation!!!! damn!18:47
replaceafillfor orientation in ('landscape', 'portrait'):18:47
* replaceafill has been hurt again by his limited english18:47
th1areplaceafill:  I knew it had to be right there.18:50
replaceafillthe funny thing is that if i do: rotation = 90, the page gets rotated but no content!18:50
th1ayvl: Is this bug still a bug if you don't try to remove the gradebook?18:51
yvlbut it's really odd18:52
yvland may be not a bug18:52
yvlin any case, I'd better look at that18:53
* yvl goes to lunch :)18:54
yvlsee you, guys :)18:54
th1aLate lunch!18:54
replaceafill    pageSize = pagesizes.landscape(pagesizes.LETTER)19:00
replaceafill    rotation = 9019:00
*** fsufitch has joined #schooltool19:23
fsufitchaelkner, jelkner: ping19:24
aelknerhey fsufitch19:24
fsufitchum, so i won't be able to work today, i have a final project for school that im trying to get done, and i have to meet with group members to do it19:25
fsufitchsince it's due on thursday, i couldn't do it another time19:25
fsufitchgood news is that my fridays and mondays are as free as my wednesdays are19:25
fsufitchso i will be working this friday and next monday to make up for these past couple of wednesdays19:25
fsufitchis that ok with you?19:26
jelknerwaz up, mr. fsufitch?19:31
jelkneri'll be seeing you soon, yes?19:32
jelknerat acc, i mean19:32
fsufitchread up ^^19:32
fsufitchim not able to come in today, i have a final project to finish for a class, but i *will* be coming in on friday and monday19:32
fsufitchsince *other* classes have already ended and my schedule has been freed up some19:32
jelkneri won't be in on friday19:32
jelknerwhy don't you come in next monday?19:33
jelkneryou can work from home on friday19:33
fsufitchcan do19:33
aelknerfsufitch, sorry, i was away19:34
aelkneri'm available friday if jelkner is19:34
jelknerwhy me?19:35
jelkneryou two can work without me, right?19:35
aelknersorry, missed you log post19:35
jelknerfsufitch will come in on monday19:35
aelknerfsufitch, if you can work from home friday, we could do the same 2-7PM thing19:35
jelknerbut on friday he will work with you from home19:35
fsufitchaelkner: roger, i can do the friday 2-7pm thing19:36
aelknerok, cool, see you then19:36
*** jelkner has quit IRC19:41
*** fsufitch has quit IRC20:51
*** fsufitch has joined #schooltool21:03
*** replaceafill has quit IRC21:05
*** fsufitch has quit IRC21:06
*** fsufitch has joined #schooltool21:07
*** fsufitch has quit IRC21:19
*** replaceafill has joined #schooltool21:32
*** menesis has quit IRC22:50

Generated by 2.15.1 by Marius Gedminas - find it at!