IRC log of #schooltool for Wednesday, 2012-01-11

*** replaceafill has quit IRC02:22
*** jorgevazquez87 has joined #schooltool03:21
jorgevazquez87Hi everyone!03:21
jorgevazquez87Anyone here?03:22
*** jorgevazquez87 has quit IRC03:24
*** aks has joined #schooltool05:05
*** aks has joined #schooltool05:05
*** replaceafill has joined #schooltool08:40
*** replaceafill has quit IRC09:37
*** menesis has joined #schooltool11:08
*** aks has quit IRC11:20
*** aks has joined #schooltool12:03
*** aks has joined #schooltool12:03
*** aks has quit IRC13:23
*** aelkner has quit IRC13:43
*** aelkner has joined #schooltool13:47
*** menesis has quit IRC13:51
*** ignas has joined #schooltool14:12
*** povbot has joined #schooltool15:09
*** th1a has joined #schooltool16:15
*** menesis has joined #schooltool16:30
th1ahi aelkner, menesis...16:30
aelknermorning16:30
th1aWell, we don't have to worry about what we're going to do if there is a Pittsburgh v. Philly Super Bowl during the sprint.16:32
aelknerneither, nor16:33
th1aIndeed.16:33
aelknerthough your team had the best chance this year16:33
aelkneri think a broken ankle is too much for any star quarterback16:34
th1aWell, just a high ankle sprain.16:34
th1aIt only LOOKED like he broke it.16:34
aelknerlooked like number 24's ankle got broken a couple times there :)16:35
aelknerbut seriously, tebow did make some good throws16:35
th1aYeah.16:35
th1aThey challenged him to beat them with his arm and he did.16:36
th1aOK, on to business.16:36
aelknerwe have the right three here16:36
aelkneri have a list of 5 items to discuss16:36
th1aOK.16:36
aelknerregarding the bug, https://bugs.launchpad.net/schooltool.gradebook/+bug/91305516:36
aelknerfirst menesis took this to start16:37
aelknerhe wrote some fail-safe code that hides any time the IWorksheet adapter16:37
aelknerlookup fails, would like to try to recreate bug and fix adapter instead16:37
aelknerhaven't been able to yet, menesis, does your comment about deployment mean you could?16:38
aelknercomment #1, that is16:38
th1amenesis has not actually responded to anything yet.16:38
aelknerhe posted coment #116:39
aelknerending with Will fix this buf, of course16:39
aelknerbug16:39
aelknerthen i noticed a bug fix in the trunk16:39
th1aI mean, he doesn't seem to be here now.16:40
aelknerhttp://bazaar.launchpad.net/~schooltool-owners/schooltool.gradebook/flourish/revision/41716:40
aelknerok, we can discuss for now16:40
aelkner2) simply hiding Sheet1 causes problems because of bug in ensureAtLeastOneWorksheet16:40
th1aDid you try writing a test?16:40
aelknerbug didn't test right len function, written pre-hide feature16:40
aelknerno, test writing is another issue, not ready to tackle that yet16:41
th1aWell, we should at least be writing tests as we fix bugs.16:42
aelknerwas just trying to recreate manually16:42
th1aI don't think we're going to be stopping for a month and writing tests for everything, but we should be writing more tests as we go.16:42
aelknertests, as they are designed curretly, are super expensive to write16:43
aelknerfirst, there is the length of time to run16:43
aelknerthat comes from always setting up data and tearing it down16:43
aelknerwe'd be better of if we could start any tests with one function call that sets up sample_data.xls16:44
aelkneror something even smaller16:44
aelknerwithout taking so long to run16:44
aelknerover time, we have always been writing long tests that manually click around16:44
th1aOK, well, there is no point in talking to me about it.16:44
aelknerand this is very expensive in another way, developer time16:45
*** replaceafill has joined #schooltool16:45
replaceafillgood morning/afternoon16:45
th1aah, here's someone.16:45
th1ahi replaceafill.16:45
replaceafillsorry i'm late16:45
th1aYou're not the only one.16:46
replaceafilli didn't hear the alarm for some reason :(16:46
* replaceafill reads the logs16:47
th1aWe make replaceafill get up early.16:47
replaceafillis aelkner done with his report?16:48
aelkneronly got started16:48
replaceafillah, ok16:48
aelknerth1a opened up a discussion about testing, but i think that can wait16:48
aelkneri have lots of other issues to discuss16:48
th1aGo ahead aelkner.16:49
aelknerback to 2)16:49
aelkneralthough the original report had to due with report sheets, as menesis pointed out in the bug comment16:49
aelknerproblems occur even if you just hide Sheet1, not report sheets involved16:50
aelkneri wrote ensureAtLeastOneWorksheet before we had hiding feature16:50
aelknerso it didn't create a new Sheet1 when the user hid Sheet116:50
aelknerfirst decision involves saying, if user hides Sheet1, we need to create another one, right?16:51
aelknerthat is, if there isn't any others16:51
th1aWell, we could just have a "There are no worksheets, please create one." message.16:52
th1aThat's probably better.16:52
aelknerwhen16:52
th1a(where "create one" is a link to create one.16:52
aelknerwould that message show up?16:52
th1aI'm not sure we literally need to ensure there is a worksheet so much as ensure there is one by default.16:52
th1aI'm only concerned that new users have a worksheet the first time.16:53
th1aAfter that, it is probably more confusing than helpful to create a new "Sheet1" each time they hide the original.16:54
aelknerthe scenarios are numerous, for instance, if the manager deploys a report sheet before any teacher visits a gradebook16:54
aelknerthen no Sheet1 is created with current logic16:54
aelkneralso, if user is in a report sheet only gradebook16:54
aelknerand manager hides it16:55
aelknerthen refreshing shows a gradebook view with no tabs or activities16:55
aelknerin a way, this is good16:55
th1aProbably the whole thing should be changed so that you get a default sheet when the section is created (or whatever makes sense) and then we just display a "There are no worksheets." if it ends up there aren't any.16:55
th1aIt is simpler.16:55
aelkneri don't know it it was replaceafill who made that work at one point16:55
aelknerbut it seems self-explanatory for the user16:55
aelknerto see nothing, and be able to hit the Worksheets button16:56
aelknerthey can find out that threy didn't want to hide Sheet 1, and unhide it16:56
th1aIf there is no (unhidden) sheet, they should just be prompted to make a new one.16:57
aelknerthe weird part about it is that the worksheet is hidden, yet the gradebook is visiable16:57
aelkneralbiet, empty16:57
aelkneroh16:57
aelkneryou're suggesting that we merely add a popup to the empty gradebook16:58
aelknerif the user refuses, ok, show the empty gradbook16:58
aelknerif they choose to, a new sheet wil be added, right?16:58
th1aIt doesn't even need to be a popup.16:58
th1aJust a message with a link.16:58
aelknereven better16:59
aelknera red message with a link, like GMail16:59
aelknerso, can we remove the whole idea of ensureAtLeastOneWorksheet16:59
th1aI'd say pretty much.17:00
aelknerand just have the red message for empty gradebooks17:00
th1aIt doesn't even need to be red.17:00
aelknerblue maybe?17:00
aelkneri can start with black and we could look at it then17:00
aelkneryour executive decision to get rid of ensureAtLeastOneWorksheet logic makes many of my issues go away17:01
th1aYes.17:02
aelkneralthough i can see a lot of tests getting broken, just a warning, it will take some time17:02
aelknerbut i like getting rid of it because of the many side-effects17:03
th1aYes.17:03
th1aOK, next?17:03
aelknerthe funny thing is, that the gradebook is based on a worksheet17:03
aelknerif the worksheet is hidden, and there are no other non-hidden, we have an empty gradebook17:03
aelknerthough it's parent context is a worksheet17:04
aelknerjust a bit strange conceptually17:04
aelknerjust realized, i could render the message/link in the place of the tabs17:04
menesisaelkner: I don't think it is a problem with ensureAtLeastOneWorksheet. leave it. but the views need to handle better the case not thought before, that all sheets are hidden.17:05
th1aIt would be better to put it in the content area.17:05
aelknermenesis, i could see that getting rid of it would make you nervous17:05
aelknertesting issues, release issues and all17:05
menesisdo not display  the table, only a message There are no worksheets. _Add worksheet_17:06
th1aGetting rid of it is a cleaner implementation.17:06
aelkneri agree with th1a that such a refactoring for more simplicity would be a good thing17:06
menesisaelkner. no, you are looking too deep17:06
menesisjust have to fix a corner case17:06
th1aOr... I mean, if it would save two days of work to leave it hanging around but largely irrelevant, that might be a good idea.17:06
menesisis it bad that one sheet is created by default? don't think so17:07
menesisso why remove it17:07
aelknerit is obviously less work to leave the code with side-effects17:07
aelknerand to just add a few patches17:07
aelknerbut that means i need to return to my intended discussion points of the scenarios17:08
aelknerwhat i mean is,17:08
aelknerwe have two markedly different discussions possible17:09
aelknerdepending on the decision to keep or remove ensureAtLeastOneWorksheet17:09
aelknerone is where the magic of creating a sheet is well defined17:09
th1aI don't want the system to be continually automatically making new worksheets if one is hidden.17:09
aelknerthat needs to happen if we keep ensureAtLeastOneWorksheet17:10
aelknerbecause it already is called from a number of places17:10
th1aI don't want the user to have one default worksheet, hide it, and then there is ANOTHER ONE by magic.17:10
aelknerand may need to be called from some new places17:10
aelknerhere's a case, the manager creates a report sheet, no Sheet1 is created n teacher visit17:11
menesisensureAtLeastOneWorksheet creates one only if there are no sheets17:11
aelknerthen manager hides17:11
menesisdoes not care if they are hidden or not17:11
aelknermenesis, i know that, that's the first thing i would change17:11
menesisso no, another one is not magically added17:11
th1aAnd I would prefer if each gradebook had the same default worksheet in the beginning, even if there is also a report sheet deployed before the users sees it.17:11
th1aSo we just need a "There is no visible worksheet." message?17:12
aelknerthat was waht i was thinking about in the other scenario17:12
aelknerwhat if the auto-creation of Sheet1 depended on personal sheets17:12
aelknerso even if a report sheet is deployed, a new one is created17:12
aelknerbut17:12
menesisth1a: yes17:12
aelknerif the user hides Sheet1, none is created17:13
aelknerand if that means an empty gradebook, so be it17:13
menesisand fix SectionGradebookLinkViewlet so that there is a link to Gradebook from Section in that case17:13
aelknerwe would just have the message and creation link therin17:13
aelknermenesis, to the hidden one, right?17:13
aelknerwhich would have the message with link17:14
aelknerth1a, let me confirm one thing first17:15
aelknercan ensureAtLeastOneWorksheet logic be as follows:17:15
menesisthe link to gradebook, not a sheet17:15
aelknermenesis, wait17:15
aelknerif there are no personal sheets (hidden or otherwise)17:16
aelknercreate Sheet117:16
aelknerif there are any, even if all are hidden, don't create one ay more17:16
aelknerignore report sheets for this logic17:16
th1aYes.17:16
aelknerok, good, then, if all sheets are hidden17:16
aelknerregardless of type17:16
aelknerthen any of the hidden worksheets (the base of the gradebook adapter)17:17
aelknerwould display an empty gradebook with message and create link17:17
th1ay17:17
aelknerso back to menesis' point from before17:17
aelknerin the section, even if all worksheets are hidden17:18
aelknerwe need a gradebook link17:18
aelknerand we can base it off the first hidden worksheet in the section17:18
aelknersince all are hidden, it doesn't matter which17:18
th1aok17:18
aelknerand the view is empty anyway, with create link17:18
aelknermenesis, does that sound ok?17:18
menesisyes17:19
aelknernice17:19
aelknerlooks like a clear path to fix many problems17:19
th1aOK.  Good.17:20
th1aNext?17:20
aelknerso i'm done17:20
th1aOK.17:21
th1aThanks aelkner.17:21
th1areplaceafill?17:21
replaceafillok17:21
replaceafilli made good progress on cambodia's flourishing17:21
replaceafillwhich allowed me to find some issues17:21
replaceafill1. dates17:22
replaceafillcambodia was very explicit about needing this format in all places: DD-MM-YYYY17:22
replaceafillunfortunately, that's not part of the standard preferences17:22
th1aIt isn't a choice?17:23
replaceafilland in the old skin was kind of easier to "override"17:23
th1aOr just isn't followed everywhere?17:23
replaceafillth1a, both17:23
replaceafillit's not in the choices17:23
replaceafilland flourish doesn't follow it everywhere17:23
th1aWhat does the widget use?17:23
replaceafillfixing the first one is simple, you just override the application preferences17:23
replaceafillbut for example the datepicker17:24
th1aI'd say we should be adding this to core, btw.17:24
replaceafillits format is hardcoded in the flourish.js resource17:24
th1aWhat does it use?17:24
replaceafillyyyy-mm-dd17:24
replaceafillwell, just 2 yy :)17:24
replaceafillyy-mm-dd17:24
replaceafillbut that produces 2010-11-2317:25
replaceafillit's kind of the standard across the whole app17:25
replaceafillthat's another issue17:25
menesisdate format preferences are not followed,  and that needs to be fixed in core.17:25
replaceafillin the old skin it was easier to override the date field behaviour17:25
th1aI wonder if we could leave it in that format in the widget but display the preferred format as a hint.17:25
menesisI see date display widgets show 2011.12.23, and not sure where that comes from. maybe locale17:26
replaceafillmenesis, in some places like the year index view17:26
replaceafillwe just use unicode(some_date)17:27
replaceafillin some places we use the medium date view17:27
replaceafillwhich uses the locale instead of the preference17:27
replaceafillso, basically i wanted cambodia to use the preference everywhere17:27
replaceafilland the last wall i hit was the zc.datetimewidget!17:28
replaceafilli thought we had gotten rid of it17:28
menesisno.17:28
replaceafillbut its logic remains in some field validators used in year/term forms17:28
menesisthe underlying widget is still zc.datetimewidget17:28
menesisonly the display is different to use jQuery datepicker17:29
menesisthat's because z3c.form does not have a DateWidget17:29
menesisat all17:29
replaceafillmenesis, i think we could get rid of it if we used z3c.form converters in the validators17:29
replaceafilli mean, data converters17:29
replaceafillthat's all what we use the zc.datetimewidget for afaict17:30
th1aMy instinct is that getting the formats right in the forms that use the datepicker is likely to be a giant pain in the ass.17:30
menesisthere are some dateformat adapters, but not sure when they are used17:30
menesisbut I see different formats in different places17:30
replaceafillat the end, i was able to make cambodia to work the way i wanted :)17:31
replaceafillbut i had to jump a lot of hoops17:31
th1aWhat if the actual text box that the date goes into was hidden and the date was rendered as text?17:31
th1aWould that be easier?17:32
replaceafillth1a, what would be the advantage of that?17:32
menesisit is probably more irritating to you americans because you are used to a mm/dd/yy format. we are ok with yyyy-mm-dd, it is standard. although the same format with dots or spaces is also used.17:32
th1aBasically what I'm trying to say is that because people usually use the calendar widget it isn't so important that they be able to input in their preferred format as much as read in it.17:32
menesisno, please, let the user enter date17:32
menesiswithout using the datepicker17:32
replaceafillmenesis, +117:32
menesisespecially when you enter birthdays17:33
th1aReading yyyy-mm--dd doesn't bother me at all.17:33
menesisand have to click previous year many times17:33
th1aJust the Cambodians, apparently.17:33
replaceafillth1a, correct17:33
th1aSo... is fixing this *correctly* even plausible?17:34
replaceafillmy conclusion about all these issue was: we should use the preference more17:34
replaceafilli mean, maybe not everywhere, just more17:34
replaceafillnot replacing the yyyy-mm-dd, which i think we only use to satisfy zc.datetimewidget17:34
menesisif all the views used date widget17:34
menesisthen only the widget needed to be fixed17:35
menesis(two widgets, for display and input)17:35
th1aI think my conclusion is do whatever you can do in less than two days.17:35
replaceafillth1a, ok, just won't do it now17:36
replaceafilli can go back to it later17:36
replaceafillok, continuing my report17:36
replaceafillcambodia also uses a lot of custom demographics17:36
* th1a hates dates.17:36
replaceafillso i've been working on that too17:36
replaceafill:D17:36
replaceafilli fixed this one: https://bugs.launchpad.net/schooltool/+bug/89821917:37
replaceafillyou can see it here: http://69.164.203.135:6603/persons/add.html17:37
replaceafillsee the Demographics fieldset17:37
replaceafillProgramming Language is a required selection list17:37
replaceafilland shows "select a value..."17:37
replaceafillIncome is an optional selection list17:37
replaceafilldisplays "no value" like the rest17:38
replaceafillin this regard i also found this: https://bugs.launchpad.net/schooltool/+bug/91460917:38
replaceafillit's not possible to edit limited custom fields17:38
replaceafilllimited as in only for a group17:38
menesisthat was strange17:38
replaceafillmenesis, it used to be possible?17:39
menesisI think so..17:39
replaceafillah17:39
replaceafillwell, i need to fix that for cambodia17:40
replaceafillmenesis, i requested: https://code.launchpad.net/~replaceafill/schooltool/flourish/+merge/8798717:40
menesisthere was a bug that empty fieldsets were displayed. maybe this was broken when fixing that one17:40
replaceafillif you could take a look at it, i'd appreciate it17:40
menesishaven't seen the merge request17:41
replaceafillmenesis, i'll investigate17:41
menesisstrange..17:41
menesisbut its ok17:41
replaceafillthat's also needed in cambodia btw, integer custom fields17:41
menesisthe feature17:41
replaceafilland i had one question for yvl about an appropriate way to disable viewlets in flourish17:42
replaceafillbut that can wait17:42
replaceafilli hacked a disabled viewlet class to render ''17:42
replaceafilland that works for now17:42
th1aWe could add integer custom fields.17:43
th1aNot exactly an oddball case.17:43
replaceafillth1a +117:43
replaceafillif menesis says  that the diff is ok, i'll merge that change17:44
menesisI haven't looked at the diff17:44
menesisonly at your demo17:44
replaceafillmenesis :)17:44
replaceafillnp, i can wait, i'm working with a merged trunk meanwhile17:44
menesisthere is a disabled viewlet class17:44
replaceafillmenesis, yes, but that's not used in flourish17:45
replaceafilli mean the viewletmanagers in flourish dont use it as in the old skin17:45
menesisin schooltool.skin.flourish.page.DisabledViewlet17:45
replaceafillmenesis, ah1?!?!?17:45
menesisbut it does the asme as you said17:45
menesis:)17:45
replaceafilldoh!17:45
replaceafill:D17:45
replaceafillgreat, then that's the way ;)17:45
replaceafilli'll use that, thanks menesis!17:46
replaceafilli found the old one :P17:46
replaceafillbut didnt find the flourish one17:46
replaceafillth1a, i'll work on these "issues" and keep working in cambodia, next i'll adjust the change to global levels17:46
replaceafillinstead of year contained ones17:47
th1aOK.17:47
* replaceafill done17:47
th1aThanks replaceafill.17:47
th1amenesis:  Any news?17:47
menesisI uploaded the newer zope packages17:48
menesisand am done with them17:48
aelknermenesis, please check with me bofore you finish your report17:48
menesisalthough today I see that cando tests have been broken :(17:48
menesisother news..17:49
menesisI will be working on another project for pov the next two weeks17:49
menesisso little news coming from me17:50
th1aOK.17:50
menesisof course, I will be available and read mail & launchpad17:50
menesisjust don't think will do much for schooltool17:50
aelknercan i ask my question related to that17:51
menesisaelkner: yes17:51
aelknerright before vacation, i made a change to gradebook trunk which you needed to revert17:51
aelknerproblem there was too many new feature, broken tests17:52
th1amenesis:  Understood.17:52
aelkneri take the blame for not seeing the broken tests17:52
aelknerthis is my question:17:52
aelkneris there a way for us to keep doing what we did coming out of the summer sprint17:52
th1areplaceafill:  I just gave you https://bugs.launchpad.net/schooltool/+bug/913581.  Can you fix that and also try to come up with a workaround for the user?17:52
aelknerthat is, allowing us to merge our fixes to trunk17:52
aelknerbut keeping in mind17:52
aelknerthat some merges are two big and need to be put in a special branch with merge request17:53
replaceafillth1a, ah ok, i'll investigate17:53
aelknerfirstly, i'd like us to agree on a criterion for that17:53
th1areplaceafill:  Yes, look at it today.17:53
replaceafillth1a, kk17:53
menesisaelkner: yes, you can merge to trunk (the flourish branch)17:54
aelknerand secondly, what do i do with the create worksheets branch while menesis is gone for two weeks17:54
menesisreplaceafill does that17:54
aelkneri just should have had better CHANGES.txt messages?17:54
aelknerand working tests?17:54
menesisI only reverted deploy course sheets because it was not ready17:55
menesisyes, tests have to work17:55
aelknerthe broken tests had to do with me changeing the appearance of total/ave17:55
menesisit was also a big and obscure feature17:55
aelknerwhich i did because of the consequenses of the new course worksheet logic17:55
aelknerthe thing that threw me was that you said the words, 'merge request'17:56
menesisby obscure I mean we did not understand what you are working on, so wanted to see what it is17:56
aelknerbut we don't need merge requests if we merge ourselves17:56
replaceafillth1a, i assume you're more interested in a workaround for the user, since he's using debs from the ppa17:56
replaceafillth1a, not that you don't care of that being fixed :D17:56
th1areplaceafill: I want it fixed but I guess we won't be pushing a release for a few weeks.17:57
aelknermenesis, so i'll continue to assume there is no need for merge requests, right17:57
replaceafilli request merges when i want another pair of eyes checking what i've done17:57
replaceafillto get feedback, etc17:57
aelknerand i'll be more desciptive in CHANGES.txt when the change is so big17:57
replaceafillth1a, understood17:57
menesisaelkner: you have to judge yourself. if changes are simple you may merge without asking17:57
menesisor even commit to trunk17:58
menesisbut if it is big you may want to have the code reviewed17:58
aelknerwhat about course worksheets branch?17:58
aelkneryou are not going to be around17:58
menesisI will be on vacation only for two work days17:59
menesisother times I will be available17:59
aelkneroh, thought you said two weeks, my bad17:59
menesisjust don't think I will develop anything myself17:59
aelknercan you turn around my course worksheets merge request quickly, don't want the code to diverge18:00
aelkneri would be making that request at the end of the week or early next week18:01
menesisyes, will review18:01
aelknerok, thanks18:02
th1abtw, menesis, is yvl still sick?18:03
menesisth1a: yes18:03
menesisthis week18:03
th1aOK.18:03
th1aGuess that's it then.18:03
th1aI sent in your invoices yesterday.18:03
th1aHave a good week and weekend!18:04
* th1a drops the bag of gravel.18:04
menesisand yvl will be on vacation Jan 13-2018:04
th1amenesis:  Yes.18:07
*** ignas has quit IRC18:23
replaceafillth1a, got it, it's a "obscure" issue, at least for me :)18:42
replaceafillrelated to proxy objects18:42
replaceafillshould i advise the user to modify the code? send a patch to him?18:42
replaceafillwell, it's less obscure when you read the docs :)18:53
*** menesis has quit IRC19:25
replaceafillth1a, don't know if you got this, but could you take this one: https://answers.launchpad.net/cando/+question/184401?20:55
replaceafillhhmm, i can't install schooltool in oneiric from the ppa...21:54
replaceafill"Requires installation of unstrusted packages"21:55
*** menesis has joined #schooltool21:58
*** aelkner has quit IRC22:11
*** aelkner has joined #schooltool22:24
*** menesis has quit IRC23:43
*** replaceafill has quit IRC23:53

Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!