=== _thumper_ is now known as thumper | ||
=== danilos is now known as danilo-food | ||
=== danilo-food is now known as danilos | ||
=== Guest23169 is now known as EdwinGrubbs | ||
barry | #startmeeting | 15:00 |
---|---|---|
MootBot | Meeting started at 09:00. The chair is barry. | 15:00 |
MootBot | Commands Available: [TOPIC], [IDEA], [ACTION], [AGREED], [LINK], [VOTE] | 15:00 |
barry | hello everyone and welcome to this week's ameu reviewer's meeting. who's here today? | 15:00 |
bigjools | me | 15:00 |
EdwinGrubbs | me | 15:00 |
sinzui | me | 15:00 |
deryck | me | 15:00 |
henninge | me | 15:00 |
mars | me | 15:00 |
noodles775 | me | 15:00 |
henninge | jtv sends his apologies but he does need to sleep sometime ... ;-) | 15:00 |
intellectronica | me | 15:01 |
danilos | me | 15:01 |
barry | adeuring: ping | 15:01 |
adeuring | whoops, me | 15:02 |
barry | allenap: ping | 15:02 |
leonardr | me | 15:02 |
barry | bac: ping | 15:02 |
barry | BjornT: ping | 15:02 |
allenap | barry: I'm on holiday this week. | 15:02 |
gary_poster | me | 15:02 |
flacoste | me | 15:02 |
danilos | allenap: never mind that, you can lead the meeting :) | 15:02 |
danilos | cprov: you? | 15:02 |
mars | lol | 15:02 |
cprov | me | 15:02 |
BjornT | me | 15:03 |
bac | me | 15:03 |
* barry hates irc | 15:04 | |
barry | i'm just going to assume everyone here :) | 15:05 |
barry | [TOPIC] agenda | 15:05 |
MootBot | New Topic: agenda | 15:05 |
barry | * Roll call | 15:05 |
barry | * Action items | 15:05 |
barry | * Mentoring update | 15:05 |
barry | * Including js script tags conditionally | 15:05 |
barry | * ReST headers in doctests -- gmb | 15:05 |
barry | * Permission explosions -- flacoste | 15:05 |
barry | * Peanut gallery (anything not on the agenda) | 15:05 |
barry | [TOPIC] action items | 15:05 |
MootBot | New Topic: action items | 15:05 |
barry | * gary_poster to take importfascist and rSP() discussion to ml | 15:05 |
gary_poster | barry: I will do that in the next week or we will take it off the list. | 15:05 |
gary_poster | my apologies | 15:06 |
barry | gary_poster: no worries. thanks | 15:06 |
barry | * intellectronica to email list about higher JS branch limits | 15:06 |
intellectronica | i did | 15:06 |
barry | intellectronica: yep, thanks! | 15:06 |
barry | [TOPIC] mentoring update | 15:06 |
MootBot | New Topic: mentoring update | 15:06 |
barry | any feedback from our mentors or mentats? | 15:07 |
barry | guess not :) | 15:08 |
deryck | it's been going fine for me, not that that's much feedback. :) | 15:08 |
barry | deryck: great to hear | 15:08 |
barry | [TOPIC] * Including js script tags conditionally | 15:08 |
MootBot | New Topic: * Including js script tags conditionally | 15:08 |
barry | sorry, i forget who added this one | 15:08 |
deryck | barry, I did, per a review you did of my branch. | 15:08 |
barry | deryck: right! it's been one of those weeks ;) | 15:09 |
barry | deryck: take it away deryck the orchestra leader! | 15:09 |
deryck | This is Just as a reminder to all that we should only include script tags when in devmode, so that we don't load js twice. | 15:09 |
deryck | scripts are concat'ed into launchpad.js, so be careful of this, and watch for it in reviews. | 15:10 |
abentley | me (sorry I'm late) | 15:10 |
barry | deryck: can you describe the tal you used to load that conditionally? | 15:10 |
gmb | me | 15:10 |
deryck | barry, just a <tal:devmode condition="devmode"> with the scripts in that block. | 15:11 |
flacoste | deryck: can it be added to the JS wiki page? | 15:11 |
sinzui | The yahoo calendar widget is not in the compressed yui file, which does require a conditional in the head-epilogue. | 15:11 |
deryck | flacoste, sure, I can do that. | 15:11 |
barry | deryck: thanks | 15:11 |
deryck | np :) | 15:11 |
sinzui | Is it possible to get that script into something that is away "on" | 15:12 |
flacoste | sinzui: can't we just add it? | 15:12 |
sinzui | flacoste: I was tempted to do so last night. I'm not sure if the separation is historical or YUI2. I think I need a pre-imp call to understand the issue | 15:13 |
flacoste | sinzui: let's have a pre-impl call later | 15:13 |
sinzui | fab | 15:13 |
barry | cool. anything else on this topic? | 15:13 |
barry | [TOPIC] * ReST headers in doctests -- gmb | 15:14 |
MootBot | New Topic: * ReST headers in doctests -- gmb | 15:14 |
gmb | Ah. | 15:14 |
gmb | So, this came up on Monday. | 15:14 |
gmb | First there was some confusion about whether we should use ReST or Moin style headers in doctests. | 15:14 |
barry | rest | 15:14 |
gmb | Then, when bigjools and I had confirmed we should be using ReST, no one could remember why we had changed back to ReST from Moin | 15:15 |
barry | but existing pages can be changed as you go, low priority | 15:15 |
gmb | (having gone from ReST to Moin some time before) | 15:15 |
sinzui | lp-dev-util/formatdoctest -p path/to/tests/*.txt will fix many. Edwin pointed out though the script uses the headers I use from gedit doctests. we can tweak the script to use gary's headers | 15:15 |
gmb | barry: Right, but the point is that people are still confused about this, and the reasons for the change don't seem to have been communicated effectively. | 15:15 |
barry | gmb: we're trying to standardize on rest since that's basically what the python community has standardized on | 15:15 |
flacoste | well, they were | 15:15 |
flacoste | but | 15:15 |
flacoste | we didn't follow-through | 15:16 |
flacoste | the idea is that there are no tools to process Moin syntax | 15:16 |
flacoste | and we aren't really using Moin syntax at all anyway | 15:16 |
gary_poster | I guess. trying to make it casual and low-pain means that people didn't notice or remember | 15:16 |
gary_poster | that is, I guess we didn't follow through | 15:16 |
flacoste | the idea was to have a sphinx easy setup to browse all the doctests | 15:17 |
sinzui | I think salgado or bac have test cleanup listed among their objectives. rs=sinzui to run the script and land the branch | 15:17 |
flacoste | as a start | 15:17 |
flacoste | and then start organizing it | 15:17 |
flacoste | that's what we didn't follow-through on | 15:17 |
gary_poster | that test cleanup sounds cool | 15:17 |
gary_poster | I see | 15:17 |
salgado | me | 15:18 |
barry | it would also be nice if we could start using rest in our wikis :) | 15:18 |
sinzui | salgado: are you late or volunteering to update all tests to ReST headers | 15:18 |
gary_poster | or both! :-) | 15:18 |
salgado | just late! | 15:18 |
barry | flacoste, sinzui can we put some action items on the list for this? or is it all just so background/low priority that we won't get to it any time soon? | 15:19 |
abentley | barry: We can start using rest in our wikis. | 15:19 |
barry | abentley: really? well, that would be cool. also in our merge proposal cover letters :) | 15:19 |
abentley | barry: Sure, moin has supported rest for years. | 15:20 |
flacoste | barry: yeah, it's not really a priority at the moment | 15:20 |
sinzui | barry: I can do it within the next 3 weeks. I will create a bug about it since I think we want to codify the header style in the script | 15:20 |
flacoste | standardizing on what the python community uses is sufficient in itself imho | 15:21 |
barry | flacoste, sinzui, abentley cool. so, gmb does that answer the question? :) | 15:21 |
flacoste | especially since it means that's what we are using in the lazr packages | 15:21 |
flacoste | because of PyPi | 15:21 |
gmb | barry: Yes, thank you. I'll update the style guid to include some details as to the whys and wherefores. | 15:21 |
gmb | *guide | 15:21 |
barry | gmb: awesome, thanks | 15:21 |
abentley | barry: Just specify #FORMAT rst at the top. | 15:21 |
barry | [ACTION] gmb to update style guides to clarify why we're standardizing on rest | 15:22 |
MootBot | ACTION received: gmb to update style guides to clarify why we're standardizing on rest | 15:22 |
sinzui | BTW I had a merge conflict into lazr.restful because the headers in the tests are different | 15:22 |
barry | abentley: rock. i will try that when i update the minutes of this meeting :) | 15:22 |
barry | gmb: thanks, anything else on this topic? | 15:22 |
gmb | Nope. | 15:22 |
gmb | That's all. | 15:22 |
barry | [TOPIC] * Permission explosions -- flacoste | 15:23 |
MootBot | New Topic: * Permission explosions -- flacoste | 15:23 |
flacoste | ok | 15:23 |
flacoste | this is a reminder | 15:23 |
flacoste | we should try to minimize the number of special permissions | 15:23 |
flacoste | so in reviews, everytime you see somebody define a new permission | 15:23 |
flacoste | you should ask why one of the regular one isn't used | 15:24 |
flacoste | the model is | 15:24 |
flacoste | View -> Append -> Edit -> Admin | 15:24 |
flacoste | there is also the Moderate permission which sits above Append at the level of Edit | 15:24 |
flacoste | those are our core permissions | 15:24 |
flacoste | now, if you look at permissions.zcml, you'll see that there are a lot of other special permissions | 15:25 |
flacoste | sometimes these are unvoidable, but many times they are not | 15:25 |
flacoste | for example, the ProjectReview special permission was introduced recentely | 15:25 |
flacoste | i think there is no reason why launchpad.Moderate couldn't have been used there | 15:26 |
flacoste | so as reviewer, be though on the introduction of new permission | 15:26 |
barry | flacoste: do we have any plans to do an audit and clean up of those special permissions? | 15:26 |
bac | flacoste: i'll follow up with you to clean that one up | 15:26 |
flacoste | yeah, i think we'll need to do an audit at some point and see if we can remove some of those | 15:27 |
flacoste | but starting with a lock-down will make the audit easier :-) | 15:27 |
barry | flacoste: cool | 15:27 |
flacoste | i'll update the reviewers checklist with this reminder | 15:27 |
flacoste | not sure if that page is still checked often though | 15:28 |
barry | flacoste: also, what is the root cause for adding new special permissions? is it because we don't (as a group) have a good understanding of how the existing permissions work? | 15:28 |
flacoste | some of that | 15:28 |
flacoste | but also, the way permissions are mapped to roles is kind of ad-hoc | 15:28 |
flacoste | (through the IAuthorization interface) | 15:28 |
flacoste | you have to inspect code to understand who get to do what | 15:29 |
flacoste | where | 15:29 |
barry | flacoste: which isn't really feasible when you're working out a new feature | 15:30 |
mars | flacoste, so, would centralizing the permissions and capabilities of each make them easier to use? | 15:30 |
flacoste | they are already kind of centralised | 15:30 |
flacoste | in one file | 15:30 |
flacoste | but that's not the way things work | 15:30 |
flacoste | permission are granted on a per-context level | 15:30 |
flacoste | that's why it's possible to not define new ones | 15:31 |
flacoste | but reuse the semantics of existing ones | 15:31 |
flacoste | for example, i think the Moderate permission is really only defined on the Question object | 15:31 |
flacoste | which means it's easy to reuse the semantic for project review | 15:32 |
barry | flacoste: maybe a brief overview (largely what you wrote above) would be useful in the dev wiki? could you add that when you update the reviewer docs? | 15:33 |
flacoste | sure | 15:33 |
barry | flacoste: thanks! | 15:33 |
barry | [ACTION] flacoste to update reviewer docs and dev wiki re: permission implosion | 15:34 |
MootBot | ACTION received: flacoste to update reviewer docs and dev wiki re: permission implosion | 15:34 |
flacoste | explosion! | 15:34 |
flacoste | proliferation | 15:34 |
flacoste | whatever | 15:34 |
flacoste | eot | 15:34 |
barry | :) | 15:34 |
barry | flacoste: thanks, great topic | 15:34 |
barry | [TOPIC] * Peanut gallery (anything not on the agenda) | 15:34 |
MootBot | New Topic: * Peanut gallery (anything not on the agenda) | 15:34 |
barry | okay, the floor is open, does anybody have anything else? | 15:34 |
intellectronica | i wanted to talk briefly about generating js | 15:34 |
barry | intellectronica: go ahead | 15:34 |
intellectronica | from time to time you'll need to generate javascript code and values to embed in a page | 15:35 |
intellectronica | say, when you want to initialise a widget or call a function using values you have when you render the page | 15:35 |
intellectronica | two important things to remember: | 15:35 |
intellectronica | 1. avoid using zpt for doing that. it's clumsy and hard to maintain. do the work in the view code in python, expose it as a property and include it in the template | 15:36 |
intellectronica | 2. always use simplejson to serialize python values into javascript code. it's so easy to do, and you have no chance of getting better result by preparing the string yourself | 15:37 |
intellectronica | that's it | 15:37 |
barry | intellectronica: thanks very much. i learned this lesson the hard way (and thanks for your patch :) | 15:37 |
mars | intellectronica, is there a specific pattern we have to follow to get the <script> tag and it's contents in there from the view? Because zpt tries to "help" with script tags... | 15:38 |
sinzui | I am tempted to try a 3rd way, the view reads the initialization script, adds the setup values and exposes it as a property so that the JS is not in the python | 15:38 |
noodles775 | sinzui: +1 | 15:38 |
intellectronica | mars: <script tal:content="structure view/js_code" /> should do the trick, i think | 15:39 |
barry | sinzui: i'm not sure i understand, can you clarify? | 15:39 |
intellectronica | sinzui: please explain more. i don't understand | 15:39 |
sinzui | I am hesitant to start this because I want to ensure there are sane values in the initialization script for YUI-test | 15:39 |
noodles775 | I'm finding it hard to see a case where you'd need to generate js, rather than the js initialising from classes/content on the page (but just point me where) | 15:39 |
barry | sinzui: if you'd like to defer to next week or the ml, that's cool | 15:40 |
intellectronica | noodles775: yes, that's another way to do that. still you have to put these values in the page | 15:40 |
noodles775 | intellectronica: yes, but that can be done semantically (so the page represents the state that the JS initialises from) | 15:41 |
sinzui | intellectronica: I will follow up on the list. I just want the keep js and python and html separated. | 15:41 |
intellectronica | noodles775: i don't understand. i think you guys are ahead of me | 15:41 |
intellectronica | sinzui: cool, i look forward | 15:42 |
barry | sinzui: it's the intersection of those three axes of evil where things get interesting | 15:42 |
noodles775 | intellectronica: no, I probably just haven't seen an example where it's required. I'll watch for the mailing list discussion too :) | 15:42 |
sinzui | interesting? you mean "knives out". | 15:42 |
mars | sinzui, I would love to see a more in-depth statement of the problem, issues, solution, and how it might address them on the list | 15:42 |
barry | :) | 15:42 |
barry | sinzui: thanks. we have 3 minutes left so moving that to the ml would be great | 15:42 |
barry | any last minute items? otherwise, we're done | 15:43 |
barry | 5 | 15:43 |
barry | 4 | 15:44 |
barry | 3 | 15:44 |
barry | 2 | 15:44 |
barry | 1 | 15:44 |
barry | #endmeeting | 15:44 |
MootBot | Meeting finished at 09:44. | 15:44 |
barry | thanks everyone, great meeting today | 15:44 |
abentley | barry: Thanks! | 15:44 |
=== salgado is now known as salgado-lunch | ||
=== salgado-lunch is now known as salgado | ||
=== Moot2 is now known as MootBot | ||
=== salgado is now known as salgado-afk | ||
barry | #startmeeting | 23:27 |
MootBot | Meeting started at 17:27. The chair is barry. | 23:27 |
MootBot | Commands Available: [TOPIC], [IDEA], [ACTION], [AGREED], [LINK], [VOTE] | 23:27 |
barry | #endmeeting | 23:27 |
MootBot | Meeting finished at 17:27. | 23:27 |
barry | #startmeeting | 23:30 |
MootBot | Meeting started at 17:30. The chair is barry. | 23:30 |
MootBot | Commands Available: [TOPIC], [IDEA], [ACTION], [AGREED], [LINK], [VOTE] | 23:30 |
barry | jml, thumper, mwhudson ping | 23:30 |
jml | hi | 23:30 |
mwhudson | hi! | 23:30 |
thumper | jo | 23:30 |
barry | how are y'all doing? earthquake + tsunami didn't bother you did it? | 23:31 |
thumper | didn't even feel it | 23:31 |
mwhudson | given the magnitude it seems to have caused amazingly little damage | 23:31 |
mwhudson | and only a baby tsunami | 23:31 |
barry | good to hear! | 23:31 |
barry | i had a friend from pittsburgh who moved to san fran describe his first earthquake | 23:32 |
barry | said, "they always tell you never run outside". when it first hit, he said he found himself outside before he even knew what was going on ;) | 23:32 |
mwhudson | (the epicentre really is in the ass-end of nowhere too, that helps) | 23:33 |
jml | the epicentre is in Palmy? :P | 23:33 |
mwhudson | hah | 23:33 |
barry | inside joke? :) | 23:34 |
barry | anyway... | 23:34 |
mwhudson | i live in palmy | 23:34 |
barry | oh :) | 23:34 |
mwhudson | it's not the most exciting place in the universe | 23:34 |
mwhudson | indeed, anyway... | 23:34 |
barry | do you guys have burning issues, or do you want me to start with a review of ameu? | 23:34 |
mwhudson | review of ameu sounds good | 23:34 |
jml | review please | 23:35 |
jml | all issues have been safely coated in asbestos | 23:35 |
barry | lessee... | 23:35 |
barry | deryck brought up an issue from a review about only loading javascript files in devmode, since in prod they're always included in launchpad.js | 23:35 |
barry | he'll write about that in the js wiki page | 23:36 |
barry | gmb brought up a question about doctest format, moin or rest, but since you guys all hate doctests, i guess that one doesn't matter :) | 23:36 |
mwhudson | well | 23:37 |
mwhudson | if our documentation is going to be written in some markup | 23:37 |
mwhudson | it would be nice if this was used somehow | 23:37 |
barry | mwhudson: we're rest all the way baby! | 23:37 |
mwhudson | i don't really have an opinion on moin vs rest, pick one and stick to it though | 23:38 |
barry | but existing doctests can be updated as we go | 23:38 |
barry | definitely rest, for a host of reasons outlined in the detailed minutes | 23:38 |
barry | gmb will update the relevant wiki pages | 23:38 |
mwhudson | if we setup a sphinx-y type thing somewhere and actually use it, it might encourage us to make our doctests better documentation | 23:38 |
mwhudson | (gasp!) | 23:38 |
barry | i've also filed an rt to get our dev wiki to support rest | 23:38 |
barry | mwhudson: +1 is not plussy enough | 23:39 |
jml | barry, if Launchpad gets a wiki, do you anticipate *it* supporting rest? | 23:39 |
barry | jml: i do | 23:39 |
barry | at least | 23:39 |
thumper | we're going to hand craft a wiki aren't we? | 23:39 |
thumper | I thought we were going to build one on bzrlib | 23:40 |
barry | thumper: that's been on the wishlist for at least 2 years | 23:40 |
jml | like someone has already done with Hg :( | 23:40 |
thumper | right | 23:40 |
barry | :( | 23:40 |
jml | gosh that was disappointing watching that lightning talk at europython and thinking "we've had this idea for at least two years now" | 23:40 |
jml | anyway | 23:41 |
barry | last review item: flacoste brought up the issue of "permission explosion", the tendency to create too many special permissions | 23:41 |
barry | instead of reusing the core ones | 23:41 |
thumper | barry: for example? | 23:41 |
barry | thumper: let me get my notes... | 23:41 |
jml | barry, presumably flacoste noticed this trend by inspecting our highly auditable zcml or perhaps looking at a permission control panel? :P | 23:42 |
barry | Jul 15 10:23:44 <flacoste>we should try to minimize the number of special permissions | 23:42 |
barry | Jul 15 10:23:59 <flacoste>so in reviews, everytime you see somebody define a new permission | 23:42 |
barry | Jul 15 10:24:07 <flacoste>you should ask why one of the regular one isn't used | 23:42 |
barry | Jul 15 10:24:12 <flacoste>the model is | 23:42 |
barry | Jul 15 10:24:22 <flacoste>View -> Append -> Edit -> Admin | 23:42 |
barry | Jul 15 10:24:41 <flacoste>there is also the Moderate permission which sits above Append at the level of Edit | 23:42 |
jml | (sorry, I think I prepared the coffee extra bitter this morning). | 23:42 |
barry | Jul 15 10:24:52 <flacoste>those are our core permissions | 23:42 |
barry | Jul 15 10:25:19 <flacoste>now, if you look at permissions.zcml, you'll see that there are a lot of other special permissions | 23:43 |
barry | Jul 15 10:25:38 <flacoste>sometimes these are unvoidable, but many times they are not | 23:43 |
barry | Jul 15 10:25:57 <flacoste>for example, the ProjectReview special permission was introduced recentely | 23:43 |
barry | Jul 15 10:26:07 <flacoste>i think there is no reason why launchpad.Moderate couldn't have been used there | 23:43 |
barry | Jul 15 10:26:28 <flacoste>so as reviewer, be though on the introduction of new permission | 23:43 |
thumper | we have an Append permission? | 23:43 |
jml | yeah. | 23:43 |
thumper | huh | 23:44 |
thumper | didn't know that | 23:44 |
mwhudson | i was more or less aware of this point | 23:44 |
barry | flacoste will update the relevant wiki pages with details | 23:44 |
jml | neither did I. | 23:44 |
jml | barry, and how would we *find* the relevant wiki pages? | 23:44 |
mwhudson | i haven't reviewed or written any code to do with permissions in ages though | 23:44 |
barry | jml: they should be on the dev wiki <wink> | 23:44 |
jml | well that narrows it down :\ | 23:45 |
barry | foundations also wants to audit and simplify our permissions | 23:45 |
barry | jml: yeah | 23:45 |
barry | anyway, that's all i have from ameu. what's on your mind? | 23:45 |
mwhudson | well at least there's less obsolete crap on the dev wiki than launchpad.c.c | 23:45 |
jml | yeah. that's a very good thing. | 23:45 |
thumper | I don't have anything just now | 23:46 |
mwhudson | nothing in particular | 23:46 |
thumper | apart from a general ORM annoyance | 23:46 |
barry | we need some interns to garden our wikis :) | 23:46 |
thumper | w.r.t. permissions | 23:46 |
jml | nothing from me, apart from general build process annoyance :) | 23:46 |
mwhudson | the usual trepidation about how we're all supposed to be focused on a not-yet designed ui | 23:46 |
jml | barry, with respect, no. | 23:46 |
barry | jml: you don't like interns? | 23:47 |
jml | barry, we need a little bit of bootstrapping to put some kind of structure in place, and we need developers to be dissatisfied with simply getting an answer to their question. | 23:47 |
barry | jml: yeah. but wiki editing is pretty low on people's list of things to do | 23:48 |
mwhudson | there's something about wiki editing that always infuriates me | 23:49 |
jml | barry, it's not wiki editing, it's working in a distributed team. | 23:49 |
mwhudson | "edit this section" like media wiki would help, i think | 23:49 |
barry | mwhudson: the fact that textarea sucks? | 23:49 |
mwhudson | barry: partly yeah | 23:50 |
jml | mwhudson, +1 | 23:50 |
barry | that would be nice. it's all text does make things a bit better (not great though) | 23:50 |
barry | well, that's all i have anyway | 23:51 |
jml | likewise. | 23:51 |
mwhudson | if we end up with sphinx for our documentation, we should use that more and the wiki less maybe> | 23:51 |
mwhudson | ? | 23:51 |
mwhudson | but enough directionless rambling on this topic | 23:51 |
* mwhudson is done | 23:51 | |
barry | mwhudson: possibly. i'm digging sphinx a lot lately | 23:51 |
barry | cool. i guess we're done. thanks guys | 23:52 |
barry | #endmeeting | 23:52 |
MootBot | Meeting finished at 17:52. | 23:52 |
jml | thanks barry | 23:52 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!