*** replaceafill has quit IRC | 00:47 | |
*** paulproteus has quit IRC | 01:09 | |
*** paulproteus has joined #schooltool | 01:15 | |
*** magespawn_ has joined #schooltool | 04:20 | |
*** magespawn has quit IRC | 04:20 | |
*** magespawn_ is now known as magespawn | 07:37 | |
*** menesis has joined #schooltool | 08:52 | |
*** ignas has joined #schooltool | 11:56 | |
*** replaceafill has joined #schooltool | 14:01 | |
*** menesis has quit IRC | 15:22 | |
th1a | hi replaceafill, aelkner, yvl. | 16:30 |
---|---|---|
yvl | good morning | 16:30 |
replaceafill | good morning/afternoon | 16:30 |
aelkner | morning | 16:31 |
th1a | I'm afraid the fall cold has caught up to me now... I'm running at about 60%. | 16:33 |
th1a | Would you like to start aelkner? | 16:33 |
aelkner | yeah, i'm not all the way better, either, but i did get to write some tests | 16:34 |
aelkner | i added to the add_skills.txt file where i created skills with different scoresystems | 16:34 |
aelkner | to add those skills to a teacher's project gradebook | 16:35 |
aelkner | i put some pdb traces in the gradebook code to figure out what was going on | 16:35 |
th1a | (aelkner is updating the cando gradebook to handle multiple score systems) | 16:35 |
aelkner | and the skills that appear in the project don't get the scoresystem that is stored in the skills themselves | 16:36 |
aelkner | but rather the default scoresystem, so i need to see what happens while adding skills to projects | 16:36 |
replaceafill | maybe you need to add the scoresystem property to .copy() | 16:37 |
replaceafill | ? | 16:37 |
replaceafill | projects "copy" skills | 16:37 |
aelkner | thanks, that will probably save me time looking | 16:37 |
replaceafill | :) | 16:37 |
*** menesis has joined #schooltool | 16:37 | |
aelkner | anyway, replaceafill, i'll let you know if i get stuck, but i think it will be np | 16:37 |
aelkner | only other thing is the verso_skills.xls situation | 16:38 |
aelkner | we still have the script to update once they get their live xls file into that directory | 16:39 |
aelkner | replaceafill, want to meet this afternoon to discuss? | 16:39 |
replaceafill | aelkner, ok... | 16:39 |
replaceafill | but you're in better position for that task (i think) | 16:40 |
replaceafill | i haven't followed all those emails between you, lee and glenda | 16:40 |
replaceafill | about the script | 16:40 |
aelkner | i definitely will handle updating the code to use the external ids for matching | 16:40 |
th1a | OK, we don't need that immediately, just before Lee can do another update, right? | 16:41 |
aelkner | true | 16:41 |
aelkner | ok, that can wait until they tell us they have put the file into place | 16:41 |
replaceafill | aelkner, what file are you referring to? | 16:42 |
replaceafill | the new_verso_skills.xls file glenda mentioned? | 16:42 |
aelkner | you know, in the live directory that they publish in their instructions | 16:42 |
aelkner | the script takes verso_skills.xls and the contents of the cte api and creates new_verso_skills.xls | 16:42 |
replaceafill | glenda sent me that file | 16:43 |
replaceafill | that's the one i've been using for testing what i'm doing | 16:43 |
replaceafill | (updating course skills) | 16:43 |
aelkner | when they have put the new_verso_skills.xls file that they like into the directory as verso_skills.xls | 16:43 |
aelkner | then the script can be changed to run against that file and create a new new_verso_skills.xls file | 16:43 |
replaceafill | :| | 16:43 |
replaceafill | new_new_verso_skills.xls :D | 16:44 |
aelkner | but using the external id matching logic i refer to rather than the current logic | 16:44 |
replaceafill | ah ok | 16:44 |
aelkner | i.e., someone needs to: | 16:44 |
th1a | We have a one time hack script, then a maintenance script. | 16:44 |
aelkner | cp new_verso_skills.xls (wherever they keep that) path/to/live/dir/verso_skills.xls | 16:45 |
aelkner | then the new file becomes the current one | 16:45 |
aelkner | after which we need to change the script to do the external id matching | 16:45 |
* replaceafill 's head is spinning :D | 16:45 | |
aelkner | ok, that's why i suggested meeting to explain all this to you | 16:46 |
th1a | Also, aelkner could just write the new script and tell Lee to use it in the future. | 16:46 |
replaceafill | aelkner, i can meet anytime, sure | 16:46 |
aelkner | but i can't tell him to use it until he puts the new file into place as the current one | 16:47 |
aelkner | but yes, then we can deliver the new script to them | 16:47 |
th1a | In the future we need to take the current xls as input as well as the verso data because we have to remember the labels we've made up for ordering purposes. | 16:47 |
th1a | Correct, aelkner? | 16:47 |
replaceafill | ah | 16:48 |
replaceafill | now i understand better :) | 16:48 |
aelkner | yes, the process will always be to run the script to create new_verso_skills.xls | 16:48 |
replaceafill | the labels are ours! | 16:48 |
aelkner | then when it looks right, copy it to verso_skills.xls | 16:48 |
aelkner | rinse and repeat :) | 16:49 |
aelkner | but seriously, they have to know that the script takes current file and creates new | 16:49 |
th1a | Yes, ofc. | 16:49 |
aelkner | and that they have to make new file current one | 16:50 |
aelkner | ok, restated a million times | 16:50 |
aelkner | enough said | 16:50 |
th1a | So you should do that sometime this week. | 16:50 |
th1a | Thanks aelkner. | 16:50 |
aelkner | yes, i'll update the script | 16:50 |
aelkner | ok, that's it for me | 16:51 |
th1a | replaceafill? | 16:52 |
replaceafill | ok | 16:52 |
replaceafill | as you know, i've been handling the "sort by label and title" story | 16:53 |
replaceafill | yesterday i found i had missed two views | 16:53 |
replaceafill | the score student view and the scr report | 16:53 |
replaceafill | i updated both | 16:53 |
replaceafill | so now they sort like the rest | 16:53 |
replaceafill | also, on monday i worked on something for jelkner (related to schooltool quiz) | 16:54 |
replaceafill | and i realized | 16:54 |
replaceafill | that we could use a table formatter for the mygrades view | 16:54 |
replaceafill | yes, i know, maybe i'm abusing table formatters :D | 16:54 |
replaceafill | but they're so cool! | 16:54 |
replaceafill | so, i changed the mygrades view to use a table formatter | 16:55 |
replaceafill | which gives us a lot of flexibility | 16:55 |
replaceafill | that work ^ made me realize the mygrades and myskillsgrades view needed to be updated too | 16:55 |
replaceafill | so i did that | 16:55 |
replaceafill | then yesterday, i also realized that updating the skills list is not enough for updating section skills | 16:56 |
replaceafill | so, you need to go to the course and reassign the skills there | 16:56 |
replaceafill | which fires the subscriber for sections skills | 16:57 |
replaceafill | and updates them | 16:57 |
replaceafill | in my head, this is the scenario for CTE: | 16:57 |
replaceafill | 1. they run aelkner's script and they get a new skills xls file | 16:57 |
replaceafill | 2. they import the file into their instance | 16:57 |
yvl | could we write evolution that dumbly fires modified events for all course skills? | 16:58 |
th1a | 1 should be already done, right? | 16:58 |
replaceafill | yvl, i thought about that | 16:58 |
replaceafill | but they'd need to shutdown their server after the re-import? | 16:58 |
replaceafill | that part is not clear in my head | 16:58 |
replaceafill | it's clearer to me to write a subscriber for watching changes in the course nodes | 16:59 |
replaceafill | to update course skillls | 16:59 |
replaceafill | but that sounds messy | 16:59 |
aelkner | 1 has been done, but they are still keeping the file around somewhere as new_Verso_skills.xls | 16:59 |
replaceafill | so, after 2. | 16:59 |
replaceafill | they have their tree updated | 16:59 |
replaceafill | but courses and section skills are not | 17:00 |
replaceafill | so, i was thinking of: | 17:00 |
replaceafill | 3. they reassign skills to all the courses using the batch assign view | 17:00 |
replaceafill | this would update section skills | 17:00 |
replaceafill | but then i checked | 17:01 |
replaceafill | and dwelsh asked for a specific feature in the batch assign view | 17:01 |
replaceafill | if a course has skills already assigned, it's skipped | 17:01 |
replaceafill | and you get: | 17:01 |
replaceafill | "Course has skills assigned already" | 17:01 |
replaceafill | http://bazaar.launchpad.net/~schooltool-owners/schooltool.cando/trunk/view/head:/src/schooltool/cando/browser/course.py#L829 | 17:01 |
replaceafill | there's ^ the condition | 17:01 |
th1a | Why don't we just do it with evolution? | 17:02 |
replaceafill | i don't see evolution because this needs to be done *after* an action the user has to do (reimport skills) | 17:02 |
th1a | Hm... I guess users can't restart the server through the web at this point. | 17:02 |
replaceafill | right | 17:03 |
yvl | right | 17:03 |
replaceafill | so, i was thinking, maybe we could add an option to the batch assign view like "allow overriding" | 17:03 |
replaceafill | but i'm open to any suggestion :D | 17:03 |
replaceafill | i checked all these dumb ideas with dwelsh current data.fs | 17:04 |
replaceafill | and it works | 17:04 |
replaceafill | scores seem safe | 17:04 |
menesis | why reimport does not update courses? | 17:04 |
th1a | Ah. | 17:05 |
replaceafill | i think users would expect that if they change the tree, that would propagate to the gradebook | 17:06 |
replaceafill | this user says so: https://bugs.launchpad.net/schooltool.cando/+bug/1066940 | 17:07 |
replaceafill | :D | 17:07 |
replaceafill | ah, i also found a bug in the third-nav styles for the skills gradebook | 17:08 |
th1a | Yes, let's do that. | 17:08 |
replaceafill | when the dropdown list gets too long (like 25 skillsets) | 17:08 |
replaceafill | some of them disappear from the visible list :( | 17:08 |
replaceafill | i'll check what's going on there | 17:08 |
replaceafill | so we need a subscriber that watches course nodes for changes? | 17:09 |
replaceafill | and updates schooltool courses accordingly | 17:09 |
replaceafill | oh, skill sets... | 17:10 |
replaceafill | it would need to watch skillsets? | 17:10 |
yvl | yes | 17:10 |
yvl | I think | 17:10 |
yvl | we'd need to catch Modified events for | 17:11 |
yvl | global skillsets | 17:11 |
yvl | then look at courses | 17:11 |
yvl | probably in the active year only | 17:11 |
yvl | or active and future years | 17:11 |
replaceafill | ah, good point | 17:11 |
yvl | and fire Modified events for course skillsets | 17:11 |
replaceafill | so the section subscriber gets into actin | 17:12 |
replaceafill | action* | 17:12 |
yvl | yes | 17:12 |
yvl | the CourseSkillSetModified subscriber | 17:13 |
replaceafill | should i work on that? | 17:13 |
yvl | btw, th1a, what's your take on updating previous years? | 17:13 |
yvl | should we update the assigned section skillsets, or keep them frozen? | 17:14 |
th1a | You wouldn't want to update previous years. | 17:14 |
yvl | ok | 17:14 |
replaceafill | i think yvl would do it faster | 17:14 |
yvl | ok | 17:14 |
yvl | I can quickly hack it in and ask you to test maybe? | 17:15 |
replaceafill | sure | 17:15 |
replaceafill | i'd be glad to do that :D | 17:15 |
* replaceafill loves writing long weird tests ;) | 17:15 | |
* replaceafill done | 17:15 | |
th1a | OK, so this will actually be at least another day. | 17:16 |
yvl | I can do that today | 17:17 |
yvl | as in now | 17:17 |
yvl | well, I should anyway :) | 17:17 |
replaceafill | yvl is waay faster! :D | 17:17 |
yvl | :D | 17:17 |
yvl | (well, after the meeting actually ;) ) | 17:18 |
th1a | OK, so replaceafill should try to review this ASAP and ping menesis when we can release this. | 17:18 |
replaceafill | ok | 17:18 |
replaceafill | yvl writes the subscribers, i write the tests, we release | 17:19 |
th1a | From VA's point of view this is just a sorting fix that is taking a very long time. | 17:19 |
th1a | They don't know or care about all our crazy plumbing bullshit. | 17:19 |
replaceafill | but they'll need 1. finished, right? | 17:19 |
th1a | Well, I think if we had a hangout it would take 90 seconds to confirm that it is done. | 17:19 |
replaceafill | ah ok | 17:19 |
th1a | But via email it is perpetually hazy. | 17:20 |
th1a | Or we could just send them the damn file and say "Use this one." | 17:20 |
th1a | That wouldn't be that hard. | 17:20 |
th1a | But I don't THINK it is necessary. | 17:20 |
th1a | OK, thanks replaceafill. | 17:21 |
th1a | menesis? | 17:21 |
menesis | hi | 17:21 |
menesis | I have released schooltool and cando | 17:22 |
menesis | then updated my versionator tool to compare versions in raring | 17:23 |
menesis | noticed someone I never seen before has updated some of zope packages | 17:23 |
menesis | I have to update more | 17:24 |
menesis | to catch up to ZTK 1.1+ | 17:24 |
menesis | updated versions.cfg, ran tests, got some test failures | 17:24 |
menesis | almost have a set that works again | 17:25 |
th1a | Incidentally, feel free to run up as many hours as you like until the end of the year, menesis. | 17:26 |
th1a | As long as you're actually working, ofc. ;-) | 17:26 |
menesis | only 9 zope packages need updating | 17:27 |
menesis | will do that in next few days | 17:28 |
menesis | then | 17:28 |
menesis | there is an ubuntu release goal to have automatic tests run during package build | 17:28 |
menesis | luckily, I have been maintaining debian/tests directory all along | 17:29 |
menesis | even if they weren't run automatically | 17:29 |
menesis | now they have improved autopkgtest | 17:29 |
menesis | and documented it http://developer.ubuntu.com/packaging/html/auto-pkg-test.html | 17:30 |
th1a | yvl & menesis: You guys might want to start moving the celery plumbing into raring soon. | 17:30 |
menesis | from now on when I update any package I will try to turn on the automatic testing | 17:31 |
menesis | should be add one line, and run one command to check | 17:32 |
menesis | other than that | 17:32 |
menesis | I tried turning on schooltool.note | 17:33 |
menesis | and it works :) | 17:33 |
menesis | in old skin of course | 17:33 |
menesis | but suprised by that | 17:33 |
menesis | on the other hand, schooltool.dashboard has almost nothing | 17:34 |
menesis | so I think I can remove it | 17:34 |
menesis | that's some cleanup work I'm doing in parallel | 17:35 |
menesis | rather, would like to do. | 17:35 |
menesis | to refactor out the old skin... | 17:36 |
th1a | Well, I'd get the celery plumbing done first since that could potentially fuck up the whole raring release. | 17:36 |
menesis | of course | 17:36 |
menesis | cleanup is low priority | 17:37 |
menesis | so | 17:38 |
menesis | I should look at the plumbing branch | 17:38 |
menesis | yvl: where is the celery work? | 17:38 |
th1a | Yes... I'd say we do need to split off 2.3 maintenance and raring development. | 17:38 |
th1a | Then aelkner can relax. | 17:39 |
yvl | menesis > https://code.launchpad.net/~justas-pov/schooltool/flourish | 17:39 |
menesis | yes, splitting off 2.3 is little of a problem | 17:40 |
menesis | I can branch 2.3 when I see something on trunk that's not suitable for maintenance release | 17:41 |
replaceafill | ah menesis | 17:42 |
menesis | for example, in last cycle intervention did not have any changes that are not bugfixes | 17:42 |
replaceafill | there's a change i'd like to make to cando | 17:42 |
replaceafill | and maybe virginia | 17:42 |
replaceafill | i asked th1a about it and he's ok with it | 17:42 |
th1a | Right, but if we pull in the celery stuff, that's a clear raring piece. | 17:42 |
replaceafill | we use "Skill Set" and "SkillSet" in the UI | 17:43 |
replaceafill | i was thinking we could clean it up and use only "Skill Set" everywhere | 17:43 |
menesis | of course | 17:43 |
yvl | celery stuff touches all plugins | 17:43 |
yvl | just FYI | 17:44 |
menesis | replaceafill: why would that be a problem | 17:44 |
replaceafill | menesis, i'm just not sure how hard is for you to update strings :) | 17:44 |
menesis | make extract-translations | 17:44 |
menesis | :) | 17:44 |
replaceafill | menesis, kk will clean it then, thanks | 17:44 |
menesis | there are no (complete) translations for cando yet | 17:44 |
yvl | replaceafill, if you have a small skill XLS to test, I would appreciate it | 17:45 |
yvl | (large one also good) | 17:45 |
replaceafill | yvl, hhmm | 17:45 |
yvl | (have some somewhere, can't find any) | 17:45 |
replaceafill | only the cte ones | 17:45 |
yvl | good enough ;) | 17:45 |
replaceafill | kk, you want old and new? | 17:45 |
replaceafill | or just one? | 17:45 |
yvl | any ;) | 17:46 |
replaceafill | kk | 17:46 |
replaceafill | sending | 17:46 |
yvl | thanks man | 17:46 |
* yvl just wrote the subscriber ;) | 17:46 | |
menesis | replaceafill: you fixed skills sorting in more places. want me to release that? | 17:47 |
replaceafill | yvl, sent | 17:47 |
replaceafill | menesis, yes please | 17:47 |
replaceafill | but we should include this subscriber stuff too | 17:47 |
replaceafill | (after we test it) :D | 17:47 |
th1a | Yes. | 17:47 |
menesis | subscriber? | 17:48 |
menesis | to update courses after skills reimport? | 17:48 |
replaceafill | to update courses based on skillsets changes | 17:48 |
replaceafill | yes | 17:48 |
th1a | I think that was your suggestion menesis. ;-) | 17:48 |
menesis | MyGradesTable... | 17:49 |
menesis | so I need to make a new release of gradebook first | 17:49 |
replaceafill | yes | 17:49 |
menesis | ok | 17:49 |
menesis | so you have time to test while I do that :) | 17:49 |
replaceafill | :) | 17:50 |
menesis | anything else? | 17:50 |
* menesis done | 17:50 | |
th1a | Thanks menesis. yvl? | 17:51 |
yvl | one second | 17:51 |
yvl | started the import ;) | 17:51 |
yvl | ok, so I'm working on more report plumbing | 17:51 |
yvl | and we will have nearly-automagic table formatter -> rml table conversion | 17:52 |
replaceafill | !!! | 17:52 |
yvl | is a bit ugly, because we already have automagic conversion of nonindexed columns for cataloged tables | 17:53 |
yvl | but will pay of in dev time | 17:53 |
yvl | also, we get a fun feature for cheap | 17:53 |
replaceafill | i can't wait to test that :) | 17:54 |
th1a | Yes, I'm in favor. | 17:54 |
yvl | we'll likely be able to cheaply add print button to tables in web, and... | 17:54 |
yvl | for example print search results into pdf ;) | 17:54 |
yvl | what else... | 17:55 |
replaceafill | yvl, will table_formatter logic work? | 17:55 |
replaceafill | i mean, like the one we use for grouping stuff | 17:55 |
yvl | yes | 17:55 |
replaceafill | <th>s inside the <tbody> | 17:55 |
replaceafill | nice! | 17:55 |
yvl | well, mostly yes | 17:55 |
yvl | should be enough | 17:55 |
yvl | we don't get th's inside RML | 17:56 |
replaceafill | right | 17:56 |
yvl | we have to render separate block styles | 17:56 |
yvl | so there is a difference | 17:56 |
replaceafill | btw, one comment i have about table formatters | 17:56 |
yvl | but it will most likely work seamlessly ;) | 17:56 |
replaceafill | if i may | 17:56 |
yvl | sure | 17:56 |
replaceafill | is, we're using updateFormatter, *a lot* | 17:57 |
replaceafill | to bypass the default one | 17:57 |
replaceafill | that uses url cell formatters | 17:57 |
yvl | and that is just stupid, right :/ | 17:57 |
replaceafill | why don't we remove the url cell formatter from the default one? | 17:57 |
yvl | historical reasons, not valid anymore | 17:58 |
replaceafill | and add the css table formatter :D | 17:58 |
replaceafill | right | 17:58 |
replaceafill | i was thinking i could write a table printer helper | 17:58 |
yvl | basically because I'd have to look at all tables and see if they look ok | 17:58 |
replaceafill | i could do that! | 17:58 |
* yvl would be grateful! | 17:58 | |
replaceafill | i mean, it's tedious work | 17:58 |
yvl | yes :/ | 17:59 |
replaceafill | and i'd like to tell the printer helper, print these columns | 17:59 |
yvl | and I didn't want to do that back then | 17:59 |
yvl | needed stuff working ;) | 17:59 |
replaceafill | based on css names | 17:59 |
replaceafill | i've been spitting: | 17:59 |
replaceafill | 01, skill1 | 17:59 |
replaceafill | 02, skill2 | 17:59 |
replaceafill | when a nice helper could be useful | 17:59 |
yvl | hmm | 18:00 |
yvl | if it helps, there's something in... | 18:00 |
replaceafill | i know | 18:00 |
replaceafill | utils | 18:00 |
replaceafill | right? | 18:00 |
yvl | cando/browser/stests/import_skills.txt | 18:00 |
yvl | stupid helper | 18:01 |
* replaceafill goes to see | 18:01 | |
replaceafill | that could work | 18:02 |
replaceafill | i could just add filtering | 18:02 |
replaceafill | (since that's what i was interested in) | 18:02 |
replaceafill | but the helper is less a priority than the url cell formatter removal :) | 18:03 |
replaceafill | and i could add the visible_column_names property too | 18:03 |
replaceafill | that has proved so useful in sorting | 18:03 |
yvl | sure | 18:03 |
* replaceafill stops interrupting yvl now :) | 18:04 | |
yvl | is ok ;) | 18:04 |
yvl | so, I also took a small step back to write a TODO | 18:04 |
yvl | so I don't step on my own toes | 18:05 |
th1a | Now it the time for report plumbing. | 18:05 |
th1a | is the time | 18:05 |
yvl | right | 18:05 |
yvl | I'm mostly content with stuff for report writing | 18:06 |
yvl | when tables and gradebook grids are done, ofc. | 18:06 |
yvl | looked at what could be done with custom letterheads | 18:06 |
yvl | I think we can add awesome stuff and not very expensively | 18:07 |
menesis | :) | 18:07 |
th1a | OK... lets wrap this up. | 18:07 |
yvl | like scan a goverment report (on paper), upload that to SchoolTool, fill it in and download a PDF | 18:07 |
yvl | ok | 18:07 |
yvl | I'll update you more on Monday | 18:08 |
th1a | I'm actually meeting with a friend who has done some editing for O'Reilly & is going to give the book a once over. | 18:08 |
yvl | awesome! | 18:08 |
th1a | So I have to take a shower. | 18:08 |
th1a | Have a great week/weekend guys! | 18:08 |
* th1a drops the bag of gravel. | 18:08 | |
replaceafill | thanks everybody | 18:09 |
yvl | good luck, th1a | 18:10 |
*** ignas has quit IRC | 19:26 | |
yvl | replaceafill, https://code.launchpad.net/~justas-pov/schooltool.cando/skill_events | 19:38 |
yvl | there were more things that needed updating it turns out ;) | 19:39 |
replaceafill | yvl, ah ok | 19:39 |
yvl | please test vigorously :) | 19:39 |
replaceafill | why didn't you land it in trunk? | 19:39 |
replaceafill | any particular reason? | 19:39 |
yvl | not 100% sure it works right :) | 19:39 |
replaceafill | :| | 19:39 |
replaceafill | :D | 19:39 |
replaceafill | kk | 19:39 |
replaceafill | will add test and merge then | 19:39 |
yvl | it should, but it's a bit late... you know how bugs get introduced ;) | 19:39 |
replaceafill | indeed ;) | 19:40 |
replaceafill | thanks yvl, i'll test it | 19:40 |
yvl | thanks man | 19:40 |
* replaceafill writes in his TODO: hack a way to run stests in parallel :D | 19:56 | |
*** menesis has quit IRC | 20:12 | |
*** menesis has joined #schooltool | 21:10 | |
*** mobert has joined #schooltool | 21:55 | |
* mobert lurks ... | 21:55 | |
th1a | hi mobert. | 22:57 |
mobert | hi thla. | 22:58 |
mobert | i just signed on to help revise and edit the schooltool-book | 22:59 |
*** mobert has quit IRC | 23:33 | |
*** mobert has joined #schooltool | 23:39 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!