Tuesday, 2009-07-07

*** tpb has joined #melange00:00
*** tpb has joined #melange00:08
*** lh has joined #melange00:16
*** tansell-laptop has quit IRC00:23
*** tansell-laptop has joined #melange00:31
jamtodaysrabbelier: question....00:39
jamtodaygetForFields returns either a list of entities or a single entity. What is the most pythonic way of forcing the result to be a list so I can iterate through it?00:40
jamtodayI could just write out an if statement but yuck00:40
jamtoday*temporarily forcing the list, just so I can add new attributes in the subclasses. This way CSV export will include project info00:41
jamtodayactually nm. Not smart to think I should be monkey patching one of the most important/oft-used methods :)00:51
srabbelierjamtoday: still there?01:11
srabbelierjamtoday: if so, getForFielsd always returns a list01:11
srabbelierjamtoday: unless you pass it unique=True01:11
jamtodaysrabbelier: ah...that makes sense. I'm subclassing a much more specific method anyways, because specific > general, right?01:12
jamtodayI'll be ready to push the patch in a few minutes01:12
jamtodayI didn't understand some important parts of inheritance for such a long time. It clicked for me in this last week.01:13
srabbelierjamtoday: what are you subclassing now? :)01:16
*** jamtoday has quit IRC01:25
*** jamtoday has joined #melange01:36
*** skbohra has joined #melange02:12
*** skbohra has left #melange02:23
*** madrazr has joined #melange02:25
*** ChanServ sets mode: +v madrazr02:25
*** srabbelier has quit IRC02:36
*** jamtoday has left #melange02:38
*** Lennie has joined #melange03:18
*** ChanServ sets mode: +o Lennie03:18
*** tansell-laptop has quit IRC03:30
Lennieajaksu: I hope you are not awake03:39
*** tansell-laptop has joined #melange03:42
*** bastiao_ has joined #melange03:51
*** florinciu has joined #melange03:58
*** arun has quit IRC03:58
*** arun has joined #melange03:59
*** k0p has quit IRC04:08
*** tansell-laptop has quit IRC04:15
*** tansell-laptop has joined #melange04:16
*** Lennie has quit IRC04:49
*** MatthewWilkes has joined #melange05:09
*** MatthewWilkes has quit IRC05:21
*** MatthewWilkes has joined #melange05:22
kblinhm05:33
kblinthe program survey seems to assume I only mentor/contribute to one FOSS project at a time05:34
*** dhans has joined #melange05:59
*** ChanServ sets mode: +v dhans05:59
*** Merio has joined #melange06:02
*** ChanServ sets mode: +v Merio06:02
Merio127,0.0.1 sweet 127.0.0.1 :)06:03
*** mithro has quit IRC06:04
*** bastiao_ has quit IRC06:21
*** dhans has quit IRC07:20
*** dhans has joined #melange07:23
*** ChanServ sets mode: +v dhans07:23
*** Merio has quit IRC07:52
*** madrazr has left #melange08:11
*** seb_gsoc has joined #melange08:52
seb_gsochey, ust wanted to let everyone now that gsoc midterm evaluation worked flawlessly. Big thanks, guys!08:52
*** seb_gsoc has left #melange09:07
*** florinciu_ has joined #melange09:19
*** lisppaste9 has joined #melange09:25
*** florinciu has quit IRC09:28
*** Lennie has joined #melange10:18
*** ChanServ sets mode: +o Lennie10:18
Lennieajaksu: ping10:23
LennieErant: awake :)?10:23
*** durin42 has joined #melange10:36
*** ChanServ sets mode: +v durin4210:36
durin42MatthewWilkes: ping?10:36
MatthewWilkesdurin42: pong10:37
MatthewWilkesWhat's up?10:37
durin42Should I go ahead and submit that buildout work?10:37
durin42I *really* want to get towards fixing  buildbot.10:37
MatthewWilkesI think so, what did you think of my changes?10:37
durin42I haven't seen your changes10:39
durin42Where would I look?10:39
MatthewWilkeserr10:40
MatthewWilkescrap10:40
MatthewWilkesI forgot to pus10:40
MatthewWilkesh10:40
MatthewWilkesSo sorry mate10:40
MatthewWilkesThought I did that AGES ago10:40
durin42ah, that explains a lot10:40
durin42I also emailed you and the list, evidently it never showed.10:40
MatthewWilkesI've been a bit snowed under recently, not been reading the melange list as thoroughly as I'd like10:40
durin42no worries10:41
MatthewWilkeshmm, I'm getting auth failed10:45
MatthewWilkesn/m10:46
MatthewWilkesdurin42: Pushed to your mq10:47
durin42MatthewWilkes: thanks10:48
Lenniekblin: how did the presentation go :)?11:13
*** dhans_ has joined #melange11:48
*** dhans_ has left #melange11:52
*** dhans_ has joined #melange11:52
*** dhans_ has joined #melange11:53
*** dhans has quit IRC11:57
*** madrazr has joined #melange12:30
*** ChanServ sets mode: +v madrazr12:30
*** dhans_ has quit IRC12:44
kblinLennie: good. really can't complain12:52
Lennieawesome :)12:53
Lennieany nasty questions?12:53
kblinwell, of course the professor immediately started poking at the weakest point of the paper.. didn't even wait until I got to the questions12:54
Lennieomg12:54
Lenniehe interrupted the presentation?12:54
kblinyeah12:55
Lennierude tbh :S12:55
kblinwell, given he only does that when he's interested..12:55
kblinI didn't mind too much12:55
Lennierude but a compliment :P12:55
Lennieok12:57
Lennieso12:57
Lenniegratz on the degree?12:57
kblinnope12:57
Lenniestill a few courses to do :D?12:58
kblinI've still got lots of examns left12:58
Lennieok12:58
Lenniebut the thesis is done12:58
Lenniewhich is kinda nice :P12:58
Lenniethey don't let you do your thesis here unless you've finished all the courses from the compulsory part of the maser12:59
Lenniemaster*12:59
Lenniewhich is about half of all the courses you need to follow for it12:59
kblinyeah, it's unusual to do the thesis first12:59
Lennienonetheless good to get it over with right :D?13:00
kblinbut I've got all the courses done, so now I've got the time to prepare for the examns13:00
*** Lennie is now known as Lennie|Food13:06
ajaksuLennie|Food: very late pong, yes I'll join the call in audio, brb :)13:32
*** Merio has joined #melange13:34
*** ChanServ sets mode: +v Merio13:34
madrazrajaksu: something related to surveys is broken in the latest code in hg?13:34
*** dhaun has joined #melange13:35
madrazrI get this exception,  melange/app/soc/logic/models/survey.py in () <type 'exceptions.ImportError'>: No module named survey_record_group args = ('No module named survey_record_group',)  message = 'No module named survey_record_group'13:35
ajaksumadrazr: not that I know of, but I'm coming back to life as of now... did you see any indication of this?13:35
madrazrajaksu: Oh sorry. take time :)13:35
ajaksumadrazr: no, thank you for giving me something to focus on :)13:38
ajaksumadrazr: locally, I do have a soc.models.survey_record_group module, lemme check the mainline repo13:40
*** dr__house has joined #melange13:41
ajaksumadrazr: but Lennie did delete that module...13:44
*** MatthewWilkes has quit IRC13:44
ajaksuwithout changing soc/logic/models/survey.py, it seems...13:45
*** florinciu_ has quit IRC13:48
madrazrajaksu: Oh Ok NP13:57
madrazrbrb on Skype13:57
madrazrLennie|Food: I may be 5-10 mins late13:57
madrazrrebooting now13:57
Lennie|Foodmadrazr: my mistake :P13:57
Lennie|FoodI renamed stuff13:58
*** Lennie|Food is now known as Lennie13:58
madrazrLennie: ouch Ok13:58
LennieWTB working pylint!13:58
*** madrazr has left #melange13:58
Lenniecall incoming soon14:00
ajaksuLennie: what does "Someone named Ajaksu? " in the agenda mean? should I be worried? :)14:02
Lenniehaha14:02
Lennieyes!14:02
Lennieone of my how to make everybody read the agenda twice jokes14:03
Merioajaksu: you've been named, someone is looking for you aghaghagh14:03
LennieMerio:  you coming?14:03
Lennieoh you are there :P14:03
MerioLennie: yeah ^__^14:03
*** dhans has joined #melange14:22
*** ChanServ sets mode: +v dhans14:22
dhansMerio: ping14:23
Lenniedhans: skype call now ;)14:23
Lennieget in14:23
dhansLennie: sure14:25
dhansLennie: but I thought the conference call is to be at 9 pm...14:26
ajaksuLennie: I meant 'ok, goodbye dear sir', not 'by(finger clicks disconnect)' :)14:42
Lennie:)14:43
dhansMerio: ping ?14:44
Meriodhans: pong :)14:44
dhansMerio: hey, today, I've been working on making the server remember at which positions the user moved his widgets14:45
dhansMerio: actually it was not extremely difficult (but it's not ready yet), but it would be easier if one thing would be possible in JS14:46
Meriodhans: awesome! Tell me, what do you need?14:46
*** madrazr has joined #melange14:46
*** ChanServ sets mode: +v madrazr14:47
Meriodhans: (I didn't know you wanted to work on that, we need to make sure not to duplicate efforts ^__^)14:47
dhanscan we have in java script arrays (or better dicts) of other structures than strings?14:47
Meriodhans: but still I'm really happy with it!14:47
dhansMerio: :) I was about to tell you, but I was almost sure you wouldn't work on it today, since you were busy14:48
Meriodhans: actually JSON objects can contain more or less a mix of arrays and "dicts"14:48
dhansMerio: because for example: in createNewWidgetFromLink() in dashboard.js we create new_widget objects and as far as I understand after the function returns, we have no access to these objects14:49
dhanswhile it'd be helpful to have something like dictionary (new_widget.id: net_widget)14:50
Meriodhans: yes this is a sort of "mental TODO" of mine for places after I've built the skeleton14:51
MerioYou can do like14:51
dhans"mental TODO" -> :D14:52
MerioI mean you've all the potential of JSON objects14:52
Merioyep :P14:52
MerioAnd also14:52
MerioThere is an interesting particular in Javascript14:53
MerioThat you can access object properties using array-like access notation14:53
MerioSo if you have14:53
Meriovar widgets = {}14:53
dhansat the beginning, when no widgets are added?14:53
MerioYou can do like widgets.mywidgetid = mywidget14:53
Merioor widgets["mywidgetid"] = mywidget14:54
dhanscool :)14:54
MerioThat's especially useful if you create objects during iterations14:54
Meriosee for example the melange.error package in melange.js14:54
ajaksuMerio: maybe widgets could also add themselves to widgets[] on creation?14:54
Merioajaksu: yes the most simple thing is to have an external array (or object) and put a reference to the widgets in there14:55
Merioajaksu: dhans: But I really would like something that provide ourselves all the basics without having to mantain such a structure in the dashboard but in the melange.graph.chart package itself14:56
Merioajaksu: dhans: e.g. a closure outside the widget object14:56
dhansMerio: I'd also wanted to maintain widgets in melange_graph.chart, but the thing is that we set handlers on what to do when a widget is moved in dashboard.js14:57
dhansMerio: in stop: function (e,ui) { }14:58
Meriodhans: what do you mean? Going to pull your code14:59
dhansMerio: I didn't push it yet14:59
Merioah ok :P14:59
MerioSo which lines?15:00
dhansabout 19215:00
dhansMerio: but if I understand correctly, we want to have a handler which sends data to server when a widget is moved so that when the page is reloaded, we have the widget at its new place?15:01
Meriodhans: exactly15:01
Meriodhans: about stop:function etc see for example line 166 and then createNewWidgetFromLink function on line 12215:02
dhansstatistic_link.bind() ?15:03
Meriodhans: exactly15:04
dhanshmm so you are thinking about this having this bind in melange.graph.chart?15:04
Meriodhans: this is a very powerful construct, you can send a data object with the event, so your event handler can act in different ways with different data15:04
Meriono, opposite15:05
MerioI mean you see widget object15:05
MerioThe most intuitive thing to do is to have it return the object that it created15:05
dhansok15:05
MerioBut then you've to mantain an up-to-date list of widgets inside dashboard.js15:05
MerioAnd I think it would be good if a wrapper object is created in melange.grap.chart instead15:06
MerioBut it can be faster do have in dashboard.js in the meantime15:06
dhansso we'd have to make this bind in createNewWidgetFromLink?15:08
Meriowhat do you mean?15:08
dhansI don't know :)15:08
Merioahahah :P15:09
dhansI mentioned that stop: function (e,ui) is a handler for events when a widget is moved15:09
Merioyes15:09
dhansMerio: so do you want to use something else instead?15:09
Meriodhans: no you can bind another function inside stop handler15:10
Meriodhans: that takes care of having the structure with places/columns up-to-date15:10
Meriodhans: most important issue that could come up with15:10
Meriodhans: is that you don't want only to update the current widget column/position, but all the other widgets in the dashboard as well, of course15:11
Meriodhans: so the function is very general15:11
dhansMerio: yes15:12
MerioSomething that goes through the DOM and note the IDs and their position and then calls a function inside the melange.graph.chart package which takes care of updating all the current widgets structure15:12
dhansMerio: eariler, I thought of updating other widgets on server side, but now I see it's not very good idea ;-/15:12
Meriodhans: what do you mean?15:13
Meriodhans: Well when you reorder the places/columns than you have to send the position data to the server and then update it as well15:13
dhansMerio: I mean I wanted just to update all widgets properties on the server (while on the client side they could stay the same), but now I see that something may go wrong15:14
dhansafter the next changes15:15
Meriowell actually whole thing, more generally speaking, is to have something updated on JS, and then that change needs to be mirrored on the python/datastore15:16
dhansyes15:16
dhanshmm ok, so probably last question: we have the function which updates properties in melange.graph.chart, ok?15:18
dhansMerio: so this function needs to have access to the global dict of widgets, but the dict is defined in dashboard.js ?15:19
Meriothe properties should be updated from melange.graph.chart, while the communication with the server should be done by dashboard.js15:19
MerioWell, it's a design choice. I really would like to take the dict of the widgets inside melange.graph.chart package, but also to do that in dashboard.js would be fine15:20
dhanshmm keeping it inside melange.graph.chart would be cool, but then do we have access to it from dashboard.js?15:21
Meriodhans: yes if you use this.function_name() to create a function that gets back the structure, so you can call it from dashboard.js15:22
dhansMerio: or could we have at dashboard.js something like: var widgets = melange.graph.chart.ListOfWidgets ?15:26
dhansand ListOfWidgets = {} in melange.graph.chart15:27
Meriodhans: well it would mean to have ListOfWidgets as a "public" variable, I would prefer it private with privileged functions accessing the variable15:27
dhansso we need var ListOfWidgets in melange.graph.chart?15:28
Merioyea15:28
Meriofor the moment it would be sufficient15:29
dhansand a public function in dashboard.js that returns listOfWidgets?15:29
Meriono the public (privileged) function is in melange.graph.chart, that accesses the private variable ListOfWidgets15:30
Merioand is called by dashboard.js15:30
MerioMore or less like setData appendWidgetToDOM and saveToServer15:30
dhansMerio: exactly I wanted to write melange.graph.chart but wrote dahboard.js instead :P15:31
Meriook ^_^15:32
dhansMerio: I am sorry for so many simple questions, but it's let's say something new for me15:32
dhansMerio: I mean that var variable is private and without var is public15:33
dhansMerio: as far as I remember, I used public, private keywords to mark that something is publci/private :)15:33
Meriodhans: it's perfectly fine... I bet I do simple questions about Python as well ^__^15:34
Meriodhans: actually you should always use "var", otherwise it goes in the global scope15:34
Meriodhans: yes, as Java... but scope in JavaScript is very uncommon, you can actually "play" like private variables and so on, but they're only in inner scopes, which is something slightly different15:35
dhansMerio: ok, so I will try to do this by tomorrow :) probably I'll have some questions in the morning :P15:37
Meriodhans: however, I'm off now... need to have dinner and sleep some like 85 hours :P15:37
MerioYep, I'll be online at about 10:30 maximum 11:00 (our common timezone now :P)15:38
Meriodhans: however, I'm off now, see you tomorrow!15:40
*** Merio has quit IRC15:47
*** dhans has quit IRC15:59
Lennieping16:09
madrazrLennie: pong! :P16:10
ajaksume? pong :)16:10
madrazrbut  to whom was that?16:10
ajaksuyeah, I don't even have the daniel namespace as an excuse this time :)16:11
Lennie:)16:11
Lennieto none16:11
LennieI was distracted :p16:12
Lenniehi madrazr I saw wiki update16:12
Lennieyou are going for stars :)?16:12
madrazrLennie: yes16:12
Lennieok16:12
Lenniewhat effect will they have?16:12
madrazrLennie: googling to flick that star images :D16:12
Lennieis that subscribption :)?16:12
madrazrLennie: yes16:12
Lenniesweet16:12
Lenniecool16:13
Lenniego for it16:13
madrazrLennie: I found a place for it too :)16:13
madrazrI will show the screenshot, tell me what you feel in terms of usability16:13
Lennieok16:13
Lenniesure16:13
madrazrLennie: http://h.imagehost.org/view/0562/Screenshot-1 it is on the top page title bar16:16
tpbTitle: Screenshot-1.png - ImageHost.org (at h.imagehost.org)16:16
madrazrbut I am not sure if we can use this image, since this is flicked from issue tracker, so google copyright or whatever issues it might have :P16:17
madrazrLennie: I just wanted to get feedback about its location16:17
LennieI am not seeing anyting?16:17
Lennie<- confused16:18
Lenniewhat do I need to look at :D16:18
madrazrLennie: location of Star16:18
madrazr:)16:18
Lennieoh16:18
Lenniehehe16:18
Lennienow I see it :D16:18
madrazrLennie: comments/feedback please?16:18
Lennietoo small?16:19
Lenniedoesn't stand out :P16:19
madrazrLennie: the fact that you failed to see that in the first go makes it clear that, its not the right place :D16:19
madrazryes and the size is too small :P16:19
madrazrLennie: better we will have it on the right side of the task description along with the text "Subscribe to this task"16:20
Lennieperhaps better to put it somewhere arround the comments area once it's in there16:20
madrazrLennie: top is good I feel personally, exactly similar to Star this project on code.google.com16:21
madrazrto the right of Task title on this page16:21
Lennieok16:21
Lennieit's always easy to move that around16:21
Lennieas long as the backend works16:21
madrazrLennie: yeah true16:22
madrazrLennie: Time to complete(in hours): 24 is Ok? Django is again acting stubborn to give Time to complete: 24 hours output :P16:25
Lenniemwah I think we need a new tag for it16:26
Lenniesince you would like it to count down :D16:26
Lennieafter it has been claimed16:26
madrazrLennie: Oh wait, I did not think about this, we need to change the context variable too then :)16:27
Lennieif you don't like the templatetags you can write new ones or don't use them at all16:27
Lenniethe as_table_row is not that powerful16:27
madrazrLennie: yeah :), but this problem is easily solved by sending the right value through the context16:28
madrazrATM I am reading the value from entity.time_to_complete, which doesn't work while counting down16:28
madrazr:)16:28
Lennieyes16:30
Lenniewe came up with some ingenious way of keeping it all up to date right :D16:30
madrazrLennie: did not get you16:30
Lenniethe deadline property16:32
Lennieyou do deadline-now16:32
*** dr__house has quit IRC16:32
Lennieand you know how much time is left :D16:32
Lennieif the task has been claimed16:32
*** madrazr1 has joined #melange16:34
madrazr1Lennie: yes16:34
madrazr1Lennie: :)16:34
*** madrazr has quit IRC16:34
*** madrazr1 is now known as madrazr16:34
Lennieand we'll have a dedicated cron job to clean it up within max one minute of deadline passing :)?16:34
*** ChanServ sets mode: +v madrazr16:34
Lennietasks will not really cut it I think16:34
madrazrLennie: Ok, need to make a note of this16:35
Lennieok16:35
Lennie^_^16:35
madrazrwe need to do this :)16:35
*** dr__house has joined #melange16:35
Lennieit's just a week or two before it is at that stage I think16:36
Lennieor maybe even sooner16:36
madrazrLennie: at which stage?16:36
Lenniethat you need to get some kind of background process that will update tasks that have passed their deadline16:36
Lennie:)16:37
madrazrLennie: ah Ok :)16:37
Lennielemme know what you'll take :D16:53
Lenniecron jobs or Task API16:53
Lennieor both ^_^16:53
madrazrLennie: mixture :P16:53
Lenniecron jobs spawning tasks :D?16:53
madrazrLennie: but I need sometime before I decide16:53
Lennieyeah ure16:53
Lenniesure16:53
*** dhaun has quit IRC17:12
*** madrazr has left #melange18:56
*** dr__house has quit IRC18:58
*** Lennie has quit IRC19:04
*** Lennie has joined #melange19:13
*** ChanServ sets mode: +o Lennie19:13
*** Lennie has quit IRC19:14
*** tansell_laptop has joined #melange19:34
*** tansell_laptop has quit IRC19:35
*** tansell_laptop has joined #melange19:35
*** tansell-laptop has quit IRC19:45
*** tansell--laptop has joined #melange20:31
*** tansell_laptop has quit IRC20:33
*** ajaksu has quit IRC20:45
*** jamtoday has joined #melange20:47
*** tansell_laptop has joined #melange20:49
*** tansell_laptop has quit IRC20:55
*** tansell_laptop has joined #melange20:55
*** tansell--laptop has quit IRC20:58
*** tansell_laptop has quit IRC21:21
*** mithro has joined #melange21:24
*** ChanServ sets mode: +v mithro21:24
*** ajaksu has joined #melange22:19
*** ajaksu is now known as ajaksu_away23:11

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