[12:05] <mdke> kiko, anyone, can you guys change team ownership?
[12:05] <Burgwork> how do I change the ownership of teams in launchpad?
[12:05] <Burgwork> oh, wait
[12:05] <mdke> haha
[12:05] <kiko> mdke, yes.
[12:05] <kiko> what's up?
[12:05] <kiko> clahey, I don't know, but I don't believe we do!
[12:06] <mdke> kiko: can you change wikiteam to Corey Burger pls?
[12:06] <Burgwork> and this team https://launchpad.net/people/marketingteam
[12:06] <mdke> now you're just collecting teams dude
[12:06] <kiko> would it be possible for john to write requesting this change?
[12:06] <Burgwork> no, both are owned by John Lambrechts, who hans't been seen for a while
[12:06] <Burgwork> kiko, ^
[12:07] <mdke> kiko: he's been inactive. He just had the idea for the team, then cleared off
[12:07] <kiko> these are fairly big teams, so I worry about stepping on shoes
[12:07] <kiko> do you guarantee I'll have no grief over this?
[12:07] <mdke> i dunno about marketing, but for -doc I can vouch for Burgwork 
[12:07] <Burgwork> if you do, I will take it all
[12:07] <clahey> kiko: It'd be a cool tool.
[12:07] <mdke> there is no conceivable problem for -doc, in any way
[12:07] <kiko> clahey, /products/rosetta/+filebug :-)
[12:07] <mdke> i mean wikiteam
[12:07] <kiko> Burgwork, what's your LP id?
[12:08] <clahey> kiko: :)
[12:08] <Burgwork> corey.burger
[12:08] <Burgwork> kiko, also, how do we rename teams?
[12:08] <kiko> done
[12:08] <Burgwork> neither the marketing nor the wiki team have ubuntu in their names
[12:08] <kiko> Burgwork, change team details.
[12:09] <mdke> heh ubuntu-wiki namespace is taken
[12:10] <mdke> kiko: is there a policy on trying to grab namespaces of individuals for teams? (ubuntu-wiki, for example)
[12:10] <kiko> not really
[12:10] <kiko> but you should contact the user if it's an issue
[12:10] <mdke> fair enough
[12:11] <mdke> kiko: no address in this case
[12:11] <Burgwork> hmm, no contact details, unless LP has one
[12:12] <kiko> let me see.
[12:12] <kiko> mdke, I'll rename him, one moment.
[12:12] <mdke> that's the stuff
[12:13] <kiko> the reason he's got that name is because his email is actually ubuntu-wiki@ something
[12:13] <mdke> yeah
[12:14] <mdke> it shouldn't do that
[12:14] <mdke> bad launchpad
[12:14] <kiko> and a chuck-peters already exists
[12:14] <kiko> lol
[12:15] <kiko> chuck-peters2 it is!
[12:15] <mdke> kiko: how about prompting for a handle on the post registration page, instead of taking from email address?
[12:16] <kiko> mdke, this problem derives from accounts we sniff via gina, poimport and uploads, so it's not that easy.
[12:16] <mdke> kiko: well, I can reproduce it by doing the normal registration too...
[12:16] <mdke> i think
[12:16] <kiko> you can
[12:17] <kiko> but that's not what I said. :)
[12:17] <mdke> oh, I misunderstood then
[12:18] <kiko> well, what I meant was was that /even if/ we fixed that part of the problem, automatically created accounts still need guessed names :-/
[12:18] <mdke> sounds like a win though
[12:19] <kiko> can't say I agree -- both the chuck-peters I just ran into were auto-created.
[12:20] <mdke> kiko: right, but at the worst you solve some instances of the problem and keep others
[12:20] <kiko> yeah, but we have larger problems, too. :)
[12:21] <mdke> this is true
[12:21] <mdke> I didn't mean that it was a big problem, just chatting
[12:21] <kiko> yeah, I know
[12:21] <kiko> it is a net win but it comes at some cost (changing the signup UI is non-trivial)
[12:21] <mdke> I can imagine
[12:28] <mpt_> hmm
[12:28] <mpt_> How does one create a plural form based on which digit a number *starts* with?
[12:32] <kiko> mpt_, luckily I don't have an answer for that
[12:33] <mpt_> g'night kiko
[02:54] <troy_s> Any gurus in the house?
[03:42] <mpt> jamesh, how do I resolve the conflict "Conflict adding files to lib/canonical/rosetta. Not deleting."?
[03:42] <mpt> Delete the directory?
[03:49] <jamesh> mpt_: I don't know.  What did you do to trigger the conflict?
[03:49] <mpt_> jamesh, merged rocketfuel
[03:49] <mpt_> and the difference between this branch and (a previous version of) rocketfuel should be zero
[03:50] <mpt_> Maybe it's related to the recently-fixed bug about canonical.rosetta being killed?
[03:51] <jamesh> if lib/canonical/rosetta was removed, but you had non-versioned files in the directory (e.g. old .pyc files), then it might give an error
[03:51] <jamesh> but that message looks a little weird
[03:54] <mpt_> ok, deleting it works
[03:55] <jamesh> you might want to report it as a bug
[03:55] <jamesh> the message is misleading
[03:55] <mpt_> ok
[04:03] <mpt_> reported bug 47802
[04:03] <Ubugtu> Malone bug 47802 in bzr "Misleading "Conflict adding files", merging from branch where directory was deleted" [Normal,Unconfirmed]  http://launchpad.net/bugs/47802
[04:21] <bradb> mpt_: bug 47764 ;)
[04:21] <Ubugtu> Malone bug 47764 in bzr "Confusing merge conflict message when directory removed" [Normal,Unconfirmed]  http://launchpad.net/bugs/47764
[04:22] <mpt_> eh
[04:22] <mpt_> bradb, why do security contacts have their own zcml, while bug contacts are part of product.zcml and distribution.zcml?
[04:25] <bradb> mpt_: Because security contacts can be easily described by the IHasSecurityContact interface, so I decided to put it in a separate file, where objects with bug contacts haven't been factored that way yet.
[04:25] <mpt_> ok
[04:26] <mpt_> bradb, yesterday I tried making a single "Bug tracking settings" page containing the "Uses Malone officially" checkbox, the "Bug contact" field, and the "Security contact" field
[04:26] <mpt_> and I drowned
[04:26] <bradb> drowned!
[04:27] <bradb> how hard can it be?
[04:27] <mpt_> well, to start with, security contacts use generalform while the others use editform
[04:28] <mpt_> and they all use different classes that presumably have to be merged
[04:30] <bradb> It might be easier to ignore what's there and just rewrite the view from scratch. It's probably about a half-hour's work, with tests.
[04:30] <mpt_> ok
[04:30] <bradb> (assuming a ready template)
[04:30] <mpt_> yeah, it'll need a custom template
[04:30] <mpt_> because there should be JS disabling the contact fields if you're not using Malone
[04:31] <bradb> mpt_: Can we depend on JS? I think we should.
[04:31] <bradb> But I can see the argument against requiring it.
[04:31] <mpt_> no, if the checkbo was unchecked we'd just ignore values in the other field
[04:32] <mpt_> the JS would be extra, preventing entry of values that will be ignored
[04:32] <bradb> ok
[04:33] <mpt_> bradb, next question: the status_widget line in bugtarget-macros-search.pt produces 5 * <input ... id="field.status" name="field.status.list" type="hidden" />
[04:33] <mpt_> one for each bug status
[04:33] <mpt_> and that's invalid, because they all have the same id=
[04:33] <mpt_> Any ideas how to fix that?
[04:34] <mpt_> (demo: http://localhost:8086/distros/ubuntu/+bugs )
[04:34] <bradb> hm, that smells like a zope bug
[04:35] <mpt_> one for BjornT, then?
[04:35] <bradb> probably. what do you want the html to look like? no idea, presumably?
[04:35] <mpt_> not sure
[04:35] <bradb> er, i meant "no id", sorry
[04:35] <mpt_> well, hmm
[04:36] <mpt_> I don't know what the point of those hidden fields is in the first place
[04:36] <bradb> mpt_: to memorize the current search filte
[04:36] <bradb> r
[04:36] <bradb> so that changing sort order works
[04:46] <changlinn> How do I change my email address on Launchpad?
[04:47] <mpt_> changlinn, click on the link to your name at the top right of any page
[04:47] <mpt_> then in the box on the left, click "E-mail Addresses"
[04:48] <changlinn> domestic blindness
[04:48] <mpt_> changlinn, no, bad design :-)
[04:48] <changlinn> heh
[04:48] <mpt_> those links on the left look like global navigation
[04:49] <changlinn> I had an interesting issue, my home mail server uses a few free blacklists, and it looks like the launchpad emails where blocked, sent it to work ok. But I get the ubuntu-au mailing list which is the same tld as launchpads mail server, I think the same server...
[04:50] <changlinn> mpt_: they do
[05:15] <mpt_> see y'all in a few days
[09:22] <SteveA> hi
[09:58] <carlos> morning
[10:08] <ReMink> Hello !
[10:10] <ReMink> I've created two user in launchpad. Can I delete an user ? Because there are problems with the nickname / email because with two user and the same information -_-
[10:10] <ddaa> you can merge them
[10:11] <ddaa> provided they are both registered using an email address you have access to
[10:11] <ddaa> check the FAQ
[10:11] <ReMink> Ok thanks you ddaa _o/
[10:17] <carlos> BjornT: hi, around?
[10:18] <SteveA> hi stub 
[10:19] <ddaa> hey SteveA
[10:19] <ddaa> looks like the process handling fix solved the test suite hangs :)
[10:19] <stub> hi
[10:20] <SteveA> ddaa: yay.  hurrah for ddaa's inventive solutions
[10:21] <BjornT> hi carlos 
[10:21] <carlos> BjornT: I'm not able to get one pagetest running with file uploads
[10:21] <carlos> BjornT: I'm doing it following the documentation
[10:22] <carlos> but our code is checking that the given object is a FileUpload
[10:22] <carlos> and that check fails
[10:23] <carlos> I'm not sure if its related to the way pagetest work
[10:23] <BjornT> what are you doing exactly, and what error do you get?
[10:24] <carlos> BjornT: https://chinstrap.ubuntu.com/~dsilvers/paste/filetg6KV2.html
[10:25] <carlos> BjornT: the code path that is executed: https://chinstrap.ubuntu.com/~dsilvers/paste/filef1VDS8.html
[10:26] <carlos> BjornT: the 'if not isinstance(file, FileUpload):' says that is not a FileUpload
[10:27] <carlos> BjornT: and the page content renders the message 'The upload failed because there was a problem receiving the data.'
[10:27] <BjornT> carlos: what documentation are you following? zope/testbrowser/README.txt is a good read, it tells you to use file_control.add_file(open(...), 'content/type', 'file-name')
[10:29] <carlos> hmmm
[10:29] <carlos> BjornT: seems like it changed...
[10:29] <carlos> BjornT: I'm using an old version
[10:30] <BjornT> oh, maybe i looked in a newer version...
[10:30] <carlos> BjornT: I was trying to prevent any merge from rocketfuel to give you a diff against the review you did for PoMsgSetPage
[10:31] <carlos> but this branch is getting a lot of changes and I guess you would need a new review of it
[10:31] <carlos> BjornT: should I merge and try with the new zope?
[10:32] <BjornT> carlos: merging from rocketfuel won't help, i was looking in the testbrowser included in my own personal project, rocketfuel uses an older version. i'll take a look at what's wrong.
[10:32] <carlos> In the mean time, I guess is ok to mix new style and old style pagetests, right?
[10:33] <lifeless> hi folk
[10:33] <BjornT> carlos: if it's blocking you, yeah, using a mix is ok.
[10:34] <Kinnison> Good morning Lunchpadders
[10:35] <carlos> BjornT: ok, do you need a bug filed? if the answer is yes, what kind of information should I put there so you can debug the problem?
[10:37] <carlos> lifeless, Kinnison: hi
[10:40] <BjornT> carlos: a bug is probably good to have. the test snippet and the name of the view class that the page uses would be good to include.
[10:40] <carlos> ok
[10:41] <malcc> Kinnison: Are you back with us then?
[10:41] <jamesh> SteveA: I was going to send a merge request for the sigusr1 stuff.  Do you want to look over the diff first? https://chinstrap.ubuntu.com/~dsilvers/paste/fileAhifk2.html
[10:41] <Kinnison> malcc: I am
[10:41] <malcc> Kinnison: Woo :)
[10:41] <SteveA> jamesh: cool.  will look
[10:41] <Kinnison> malcc: Go easy on me for a bit, I've gotta wind myself back into LP mode
[10:43] <jamesh> Kinnison: don't forget to convert your branches to knit format then ...
[10:43] <Kinnison> jamesh: Well, I can start fresh, is LP now knitted?
[10:43] <jamesh> Kinnison: yeah
[10:43] <Kinnison> Coolio
[10:43] <Kinnison> since anything I wanted to keep was merged
[10:43] <SteveA> +"""The SIGUSR1 handler."""  <-- more descriptive module docstring please
[10:44] <jamesh> Kinnison: you can be a guinea pig for https://launchpad.canonical.com/WorkingWithSharedRepositories if you want :)
[10:44] <Kinnison> jamesh: I'll give it a read while my laptop's hard drive is going "OMG,WTF,RM-RF-HOW-MUCH?!?!?!!!!one!!11eleven"
[10:46] <carlos> jamesh: hi, how's going? what's the review status of my bug-46459 branch?
[10:46] <Kinnison> Is there a bzr 0.8 on chinstrap to prep the repo or do I have to prep it here?
[10:46] <jamesh> carlos: just sent it.  Sorry for the delay
[10:46] <carlos> jamesh: ok, thanks
[10:49] <Kinnison> lifeless: have all the old ghosts been repopulated?
[10:49] <Kinnison> lifeless: I.E. can I now remove my old converted-from-baz archives?
[10:53] <jamesh> Kinnison: bzr on chinstrap is 0.8.  I believe there are still old ghosts in rocketfuel
[10:53] <Kinnison> Right, I'll leave my old archives behind still
[10:53] <SteveA> Kinnison: lifeless will be doing a mass convert shortly
[10:54] <Kinnison> SteveA: I see
[10:54] <SteveA> and will arrange removal of old data
[10:54] <Kinnison> jamesh: So, should I init my launchpad-repo on chinstrap or on my machine?
[10:55] <jamesh> Kinnison: do you have local copies of the branches you want to put in the repo?
[10:55] <Kinnison> Consider me a clean slate
[10:55] <Kinnison> I have no branches
[10:56] <jamesh> probably easiest to create a repo on chinstrap, branch rocketfuel/launchpad/devel into it, and then do init+pull for each branch you want to migrate into the repo
[10:57] <jamesh> after you've got all the revisions from rocketfuel in the repo, it should be relatively quick to import the other branches
[10:58] <jamesh> then rsync it down (over the top of a similar repo if you want to save time)
[11:45] <sabdfl> hey lunchpadders
[11:45] <sabdfl> happy dapper day
[11:48] <stub> sabdfl: https://launchpad.net/distros/ubuntu/dapper/ now needs gardening. I'm not sure if sparc should be flagged as 'official'.
[11:50] <ddaa> damper drake, the waterproof operating system :)
[11:58] <SteveA> Znarl: ping
[11:58] <Znarl> SteveA : Pong?
[12:05] <zoot_> hi there - i'm unable to create wiki pages on wiki.ubuntu.com despite being logged into launchpad already? any clues? i didn't creat a WikiWord login for launchpad, could this be the problem?
[12:06] <ddaa> hey lifeless
[12:06] <stub> You should be able to login using your validated email address and launchpad password.
[12:07] <ddaa> lifeless: I'm looking at time.sleep in cscvs, there's one in CVS.Repository.get and one in CVS.WorkingTree.commit
[12:07] <ddaa> I think we could get a nice test suite speed up by removing the one in CVS.Repository.get and adding one in CVS.Repository.Import
[12:08] <ddaa> since get does not create a timestamp, but Import does
[12:08] <ddaa> lifeless: am I missing something?
[12:09] <zoot_> as per sub's comment... i did this, but get the error message: "sorry, wrong password". i've double checked my password and logged in/out of launchpad several times
[12:12] <malcc> zoot_: And you definitely have your email address in the "name" box?
[12:12] <malcc> zoot_: I always get confused and put my name in there
[12:12] <zoot_> malcc: yes
[12:14] <zoot_> malcc: aha! i thought that firefox may have stored a carriage return, as i cut'n pasted... so remove d stored password and manually entered it... voila! i'm in, thanks
[12:14] <malcc> zoot_: You're welcome, anytime you need more suggestions which are nothing to do with the issue, I'm here for you :)
[12:17] <koke_> hi all!
[12:17] <ajmitch> hey koke_ 
[12:17] <koke_> carlos, is there any way to get some kind of "language pack" of POs to review them locally?
[12:18] <carlos> koke_: you can get the sourcepackage of the language pack
[12:18] <zoot_> malcc: hehe... another one coming up... cannot save my prefs... but that's prob an issue on the server, or network latency :-D
[12:18] <carlos> koke_: it should be a set of .po files
[12:18] <koke_> cool
[12:18] <koke_> I guess it's quite updated right now
[12:19] <carlos> koke_: mawson.ubuntu.com/~carlos has also daily snapshots with updated .po files since the release
[12:21] <koke_> thanks
[12:25] <carlos> koke_: could you identify to ChanServ? I think I don't get your private messages
[12:25] <koke_> :)
[12:26] <koke> carlos, done
[12:32] <Kinnison> Have we lost the ability to click on bug listing columns to sort by the column?
[12:40] <ddaa> yes
[12:40] <ddaa> because it was unreliable
[12:41] <ddaa> sorting was restricted to the current page, not the complete listing
[12:42] <Kinnison> right
[12:57] <SmileyLap> hey guys :D
[01:05] <sladen> can one of the admins associate  https://launchpad.net/people/vmware-build  to the email address  vmware-build@vmware.com  The object has been created with no email addresses, which means that bugs can't be assigned to it
[01:13] <carlos> sladen: is it a team?
[01:14] <SteveA> "A new email was sent to 'vmware-build@vmware.com' with instructions on how to confirm that it belongs to you."
[01:15] <SteveA> carlos: it is a Person in launchpad
[01:15] <SteveA> although its name says "vmware-build team"
[01:15] <carlos> shouldn't it be a team then?
[01:15] <SteveA> no idea
[01:15] <SteveA> quite probably
[01:24] <kiko> good morning vietnam!
[01:25] <cprov> good morning 
[01:34] <lifeless> ddaa: there is an lp bug on this
[01:35] <ddaa> lifeless: finished the patch, it's in the review queue, I'd be happy if you could give me quick review
[01:36] <ddaa> lifeless: I cannot find the bug, any hint?
[01:37] <lifeless> https://launchpad.net/distros/ubuntu/+source/cvs/+bug/12230
[01:37] <Ubugtu> Malone bug 12230 in cvs "cvs checkout is racy, it wasn't in the past" [Normal,Unconfirmed]  
[01:38] <SteveA> lifeless: i mailed about two strange error in the launchpad development bzr trees
[01:38] <ddaa> lifeless: okay, my fix saves time.time() after checkout and commit and waits before commit.
[01:39] <ddaa> lifeless: maybe I can avoid saving the timestamp before commit? That would yield some extra speed up
[01:41] <lifeless> SteveA: lunchtime here, will look later unless its really urgent
[01:42] <SteveA> lifeless: not urgent.
[01:43] <SteveA> both are trees where bzr info or perhaps bzr status fails with an error
[01:43] <SteveA> with one of them, i can reproduce creating that tree from pushing --overwrite another tree
[01:53] <SteveA> meeting in 6 minutes
[01:56] <Kinnison> SteveA: I guess I should attend :-)
[01:56] <SteveA> wb
[01:56] <jamesh> matsubara: did you see the weekly OOPS summary report?
[01:57] <matsubara> jamesh: yes, thanks.
[01:59] <kiko> jamesh, !!! very nice
[02:00] <SteveA> LAUNCHPAD DEVELOPMENT MEETING
[02:00] <stu1> Here!
[02:00] <SteveA> Welcome to the Dapper Release Day launchpad development meeting
[02:00] <kiko> yay
[02:00] <jamesh> kiko/matsubara: I didn't turn it on for this week, but would the text version also be useful?
[02:00] <kiko> me
[02:00] <jamesh> me
[02:00] <bradb> me
[02:00] <stu1> Up to day
[02:00] <BjornT> me
[02:00] <stu1> production is working. Can I go now?
[02:00] <carlos> me
[02:00] <salgado> me
[02:00] <matsubara> me
[02:00] <kiko> jamesh, I'm not sure -- seems like it would be quite long, wouldn't it?
[02:01] <spiv> me
[02:01] <SteveA> stu appears to be suffering from premature interjeculation
[02:01] <jamesh> kiko: I mean just to generate it and bung it on the web -- not mail it
[02:01] <SteveA> mpt is on vacation
[02:01] <SteveA> lifeless is in meetings in london
[02:01] <kiko> jamesh, oh. I don't see a lot of advantage there..
[02:02] <SteveA> cprov:  ?
[02:02] <ddaa> I'm up to date, and almost here, I've got something cooking.
[02:02] <cprov> me, sorry
[02:02] <Kinnison> Sorry, I'm here
[02:02] <SteveA> == Agenda ==
[02:02] <SteveA>  * Roll call
[02:02] <SteveA>  * Agenda
[02:02] <SteveA>  * Next meeting
[02:02] <SteveA>  * Activity reports
[02:02] <SteveA>  * Actions from last meeting
[02:02] <SteveA>  * Launchpad oops milestone report
[02:02] <SteveA>  * Outstanding sysadmin requests
[02:02] <SteveA>  * Production and staging (stub)
[02:02] <SteveA> ----
[02:02] <SteveA>  * Staging2 (stub, kiko)
[02:02] <SteveA>  * work-in-progress tag on PendingReviews (steve)
[02:02] <SteveA>  * (other items)
[02:02] <SteveA> ----
[02:02] <SteveA>  * Keep, Bag, Change
[02:02] <SteveA>  * Three sentences
[02:02] <SteveA> 
[02:02] <SteveA> next meeting: 8 June, same time
[02:02] <SteveA>  * Activity reports
[02:03] <SteveA> i'm behind
[02:03] <kiko> I am not
[02:03] <Kinnison> I'm starting back with launchpad today
[02:03] <matsubara> i'm not up to date
[02:03] <BjornT> i'm up to date
[02:03] <carlos> I'm up to date
[02:03] <ddaa> up dot date
[02:03] <spiv> I'm up to date.
[02:03] <kiko> I /am/ up to date. I am not behind, is what I'm not. :)
[02:03] <salgado> up to date
[02:03] <bradb> i'm up to date, but i'm wondering what happened to my may 25th report
[02:03] <jamesh> I'm behind
[02:04] <cprov> up to date
[02:04] <stub> up to date
[02:04] <SteveA>  * Actions from last meeting
[02:04] <SteveA>  * matsubara to mail the Launchpad list describing the requirements for merge messages
[02:04] <matsubara> done it.
[02:05] <SteveA>  * SteveA to report a bug about "display[ing bug numbers]  prominently in the email from pqm"
[02:05] <SteveA> not reported.  i have various notes on how we want pqm to output things
[02:05] <SteveA> so: MeetingAction: SteveA to write up braindump spec of how we want pqm to output stuff
[02:05] <SteveA>  * Launchpad oops milestone report
[02:06] <matsubara> The hack to log requests is oopsing, as seen in today's oops report (OOPS-151C379). SteveA left a comment on bug 47034 saying it's already fixed. stub I presume that was fixed after (2006-05-31 09:47:43 UTC) the above OOPS, right?
[02:06] <Ubugtu> Malone bug 47034 in launchpad "We should log URLs being processed at the start of transaction" [Normal,Unconfirmed]  http://launchpad.net/bugs/47034
[02:06] <Ubugtu> https://chinstrap.ubuntu.com/~jamesh/oops.cgi/151C379
[02:06] <matsubara> hello?
[02:06] <kiko> is it me you're looking for?
[02:06] <stub> matsubara: The last fix I did was on Sunday, so that OOPS is valid if it occurred yesterday.
[02:06] <matsubara> stuart
[02:07] <SteveA> stub: is the encoding to UTF-8 of the request present in production?
[02:07] <stub> SteveA: Yes
[02:07] <kiko> SteveA, stub: could the input not be in something which is not valid UTF-8?
[02:07] <kiko> i.e. some cp1252 chars above 160?
[02:07] <SteveA> i suspect a zope bug
[02:08] <SteveA> where although we're asking for unicode(request)
[02:08] <stub> kiko: Possibly. Likely the exception is occuring trying to render REQUEST as unicode. There have been similar bugs before..
[02:08] <SteveA> we're actually getting __str__ called at some place
[02:08] <SteveA> so i suggest the code be changed to fall back to saying
[02:08] <SteveA> "cannot print request" instead
[02:08] <SteveA> and maybe also the URL
[02:08] <SteveA> but not cause the request to fail
[02:08] <malcc> Oops, forgot meeting. I'm here, and activity reports are up to date
[02:09] <SteveA> hi malcc 
[02:09] <SteveA> stub: what do you think?
[02:09] <stub> I can't see anything in that OOPS report that is helpful :-(
[02:09] <SteveA> jamesh: the Non-sql time  	-1000 ms  is curious
[02:10] <ddaa> time-travel!
[02:10] <stub> It is worth sticking an exception handler around it though to catch any eventuality. It would be nice if we knew about failures though :-(
[02:10] <jamesh> SteveA: yeah.
[02:10] <SteveA> stub: then log it
[02:10] <jamesh> SteveA: especially since it is exactly one second
[02:11] <matsubara> I don't know what's causing OOPS-150D31, but I reported bug 47515. It's happening quite frequently. The top oops from today's report. Does anybody know why this happen?
[02:11] <Ubugtu> Malone bug 47515 in launchpad "RuntimeError while creating a new account" [Normal,Unconfirmed]  http://launchpad.net/bugs/47515
[02:11] <SteveA> MeetingAction: stub to improve the request logging code to cope with UnicodeDecode errors and log stuff
[02:11] <Ubugtu> https://chinstrap.ubuntu.com/~jamesh/oops.cgi/150D31
[02:12] <BjornT> it looks like HTTP_USER_AGENT contains a non-UTF-8 non-ASCII character
[02:12] <kiko> BjornT, SteveA, stub: what BjornT said
[02:12] <kiko> matsubara, I have no clue -- have you grepped to see where this comes from in the sourcecode
[02:12] <SteveA> BjornT: care to fix it upstream in zope3?
[02:13] <BjornT> SteveA: sure, i'll take a look at it.
[02:13] <SteveA> there's probably an assumption that user-agent is ascii
[02:13] <SteveA> no idea what the HTTP standard says
[02:13] <matsubara> kiko: yes, but I didn't quite understand that
[02:13] <SteveA> but it shouldn't cause zope to choke
[02:13] <SteveA> stub: it is in the oops report
[02:13] <SteveA> HTTP_USER_AGENT	Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Vodafone Espa\xf1a; .NET CLR 1.1.4322)
[02:13] <matsubara> it's on webapp.authentication
[02:13] <BjornT> well, the problem is that zope tried to decode the strings to unicode, and if it fails it leaves the string as it is.
[02:13] <stub> Ahh
[02:14] <stub> I was looking for a user name ;)
[02:14] <kiko> BjornT, that sounds like a bug :-(
[02:14] <BjornT> kiko: yeah, sort of. it causes a lot of subtle bugs, so it should be fixed somehow. i'm not sure exactly what the best fix is, though.
[02:15] <kiko> BjornT, smash into unicode.
[02:15] <kiko> there isn't anything else we can do
[02:15] <jamesh> treat it as latin1
[02:15] <kiko> you should warn() though
[02:15] <SteveA> yeah, encode to unicode with "?" and log a WARNING level log message
[02:15] <SteveA> not warn()
[02:15] <SteveA> unless you mean log.warn
[02:16] <stub> headers are latin1 if anything officially, and smashing anything that isn't would be warrented.
[02:16] <kiko> SteveA, I did
[02:17] <kiko> who cares about non-ascii user agents anyway?
[02:17] <SteveA> stub: i think headers are ascii
[02:17] <SteveA> not latin1
[02:17] <kiko> they should be shot
[02:17] <SteveA> but each header is encoded separately
[02:17] <SteveA> there's a spec on our wiki about this
[02:18] <ddaa> for any web spec, you can find a web MSIE variant that breaks it
[02:18] <carlos> kiko: Spain is different....
[02:18] <carlos> :-(
[02:18] <SteveA> did we get https://chinstrap.ubuntu.com/~jamesh/oops.cgi/2006-05-30/D31 understood?
[02:18] <stub> My branch up for review changes this area, so I might have already fixed it.
[02:19] <stub> (or made it worse ;) )
[02:19] <SteveA> okay, so we'll see if it occurs again once stub's branch is rolled out
[02:19] <kiko> stub, when should that message appear?
[02:19] <SteveA> message?
[02:19] <kiko> well, the exception
[02:19] <SteveA> you mean, when do we get an oops like that?
[02:20] <SteveA> when there's a person id in the session database
[02:20] <SteveA> where that person id doesn't exist in the actual database
[02:20] <SteveA> as a valid person
[02:20] <SteveA> who may log in
[02:20] <kiko> out of order sql?
[02:20] <kiko> or just madness?
[02:20] <SteveA> more likely a merged account
[02:20] <kiko> stub, how does your code improve that?
[02:20] <kiko> SteveA, merged account IDs are preserved.
[02:20] <kiko> or do you not mean IDs, but names?
[02:21] <SteveA> i mean ids
[02:21] <SteveA> only one of the ids is preserved
[02:21] <kiko> then I don't understand
[02:21] <SteveA> the other becomes defunct
[02:21] <kiko> uhhh
[02:21] <kiko> "defunct"?
[02:21] <SteveA> a merge is between two Person records
[02:21] <SteveA> each has a unique id
[02:21] <SteveA> one id remains as a valid person after merging
[02:21] <niemeyer> Good morning!
[02:21] <SteveA> if the other invalid id has a session going
[02:21] <matsubara> All oops i've seen happening like that were on +newaccount page.
[02:21] <SteveA> then we may see such a problem
[02:22] <SteveA> but, let's see what happens once stu's code lands
[02:22] <stub> SteveA: That isn't the problem as at the moment, if your account is merged you can still operate as the merged user
[02:22] <stub> SteveA: What is happening here is someone had been logged into the staging database I think
[02:22] <SteveA> i see
[02:22] <SteveA> so, changing cookies would help there
[02:22] <stub> SteveA: And then switched to production. The same cookie was being used (again, fixed in my patch up for review). Or something like that (?)
[02:23] <SteveA> okay.
[02:23] <SteveA> matsubara: next issue?
[02:23] <matsubara> The top exceptions for the week are: bug 40321(We should sanitize all values from the URL generated in the advanced bug search form.) which is not assigned; and bug 45601 which salgado is fixing.
[02:23] <Ubugtu> Malone bug 40321 in malone "We should sanitize all values from the URL generated in the advanced bug search form." [Normal,Confirmed]  http://launchpad.net/bugs/40321
[02:23] <Ubugtu> Malone bug 45601 in shipit "OOPS trying to Cancel the same request on two different tabs" [Normal,In progress]  http://launchpad.net/bugs/45601
[02:23] <matsubara> who should I assign the first one? We should raise an UnexpectedDataFormat like discussed in a previous meeting?
[02:24] <stub> We care about 45601? Doctor! It hurts whenever I do this!
[02:24] <bradb> Why not just do normal widget validation?
[02:24] <bradb> The data format is valid. The values are not.
[02:25] <SteveA> UnexpectedFormData i think
[02:25] <SteveA> is what we should raise
[02:25] <bradb> ah
[02:25] <SteveA> then we can have such errors categorized in the OOPS reports
[02:25] <SteveA> so we can see where people are interested in fiddling with the URL query paramers
[02:26] <SteveA> and decide if we want to be friendly in that regard
[02:26] <SteveA> but the first step is to raise UnexpectedFormData
[02:26] <carlos> SteveA: shouldn't add too its own page
[02:26] <SteveA> pardon?
[02:26] <carlos> so people don't see an OOPS
[02:26] <carlos> page
[02:26] <SteveA> i don't understand you
[02:26] <kiko> yes
[02:26] <carlos> but a 'broken data input'?
[02:26] <kiko> matsubara filed that bug yesterday
[02:26] <matsubara> a custom error page when UFD is raised
[02:27] <kiko> crct
[02:27] <SteveA> i don't think we need a special page
[02:27] <kiko> I think we do
[02:27] <kiko> because people file bugs on oopses
[02:27] <kiko> and complain on IC
[02:27] <kiko> IRC
[02:27] <SteveA> it is possible that there's a bug in our system that makes it not accept the data it is giving out
[02:27] <kiko> and are generally confused
[02:27] <SteveA> we cannot tell if it is a bug in our system or not
[02:27] <kiko> it's a policy decision I feel
[02:28] <SteveA> we could have a page that says "don't file a bug if you fiddled with the URL"
[02:28] <kiko> users don't read
[02:28] <kiko> that's not the way forward I feel
[02:28] <SteveA> but it should still display the OOPS and say "do file a bug if you didn't do anything special"
[02:28] <kiko> we just need to set a policy
[02:28] <bradb> SteveA: How do you propose differentiating between when a UFD should be raised vs. normal widget validation (like entering a bogus assignee name?)
[02:28] <SteveA> then, just a normal page will be fine
[02:28] <SteveA> we can reevaluate it if we get lots of such spurious bugs filed
[02:28] <SteveA> and in any case, having a clear UnexpectedFormData will make triaging such errors easy
[02:29] <SteveA> just ask the reporter whether they fiddled with the URL
[02:29] <SteveA> bradb: i think that is obvious
[02:29] <kiko> UFD is when the user can't do something using the UI
[02:29] <kiko> i.e. including a select option ID that isn't in the form
[02:29] <bradb> kiko: ah, true
[02:30] <kiko> or sending a string with 100 chars when the maxlen is 5
[02:30] <SteveA> the edge case is when we do a production update
[02:30] <SteveA> and we might get data produced by an old version of the form
[02:30] <SteveA> that when posted causes an UFD
[02:30] <SteveA> but, we can expect such things
[02:30] <SteveA> they will be rare
[02:30] <SteveA> matsubara: anything else?
[02:30] <kiko> they will be pretty rare, production updates take a while
[02:30] <matsubara> And last but not least, kiko, how's timeout work going?
[02:31] <kiko> matsubara, so SQLRelatedJoin and friends are almost there -- two more hours of work and done
[02:31] <kiko> once that is finished we should see a general speedup of maybe 1%
[02:31] <matsubara> oh
[02:31] <carlos> kiko: we had such errors with Rosetta, people translating while production is updated...
[02:31] <kiko> after that I will look into the top errors
[02:31] <kiko> heh
[02:31] <matsubara> I'm worried about the +translations page
[02:31] <stub> kiko: We do some production updates with zero downtime by updating one pair of appserver, waiting a minute, then updating the other pair.
[02:31] <SteveA> we should also lose the construction of a stack trace in newInteraction() as pointed out by niemeyer 
[02:32] <SteveA> although i think we start timing requests after that, so it won't affect recorded time
[02:32] <SteveA> time to move on.
[02:32] <SteveA> thank you matsubara 
[02:32] <SteveA>  * Outstanding sysadmin requests
[02:33] <malcc> Mine from last week is done now
[02:33] <matsubara> you're welcome SteveA. And thanks everybody.
[02:33] <malcc> Need the rt number again?
[02:33] <SteveA> if it is done, then it is not outstanding
[02:33] <SteveA> unless you want to complement the sysadmins on doing an outstanding job
[02:33] <kiko> compliment
[02:33] <malcc> Absolutely. They were marvellous.
[02:33] <kiko> and yes, good idea
[02:33] <SteveA> kiko: the complement each other
[02:34] <SteveA> kiko: they complement each other
[02:34] <SteveA> and we complement them
[02:34] <kiko> ha ha
[02:34] <SteveA>   * Production and staging (stub)
[02:34] <stub> Production is running happily. No further lockups have happened to my knowledge since adding the debugging information we need an a patch to the session machinery.
[02:34] <stub> Now that dapper has been released, we can be less paranoid about rollouts. I propose rolling out current HEAD next tueday unless I here otherwise now. Anything in rocketfuel that needs to go out this week?
[02:34] <stub> Nothing unusual happening on staging. Staging might have a little brother soon - a second instance for long term testing of scary UI changes that need to be seen and played with before landing to rocketfuel.
[02:35] <stub> Staging auth is still broken until I get my branch landed, although I can poke it manually.
[02:35] <bradb> stub: a UI playground would be sweet.
[02:35] <SteveA> ok
[02:35] <SteveA>   * Staging2 (stub, kiko)
[02:36] <jamesh> an implementation of lifeless's SIGUSR1 idea is in rocketfuel now
[02:36] <kiko> stub, there may be some fixes, I'll ping you if anything urgent needs to go in.
[02:36] <kiko> stub, there is at least a change carlos is going to do to allow pointing translations to dapper.
[02:36] <SteveA> so... soon we'll have a second staging server.
[02:36] <kiko> so heads-up for that one.
[02:36] <SteveA> the idea is the staging.launchpad.net will always be real staging -- latest code with production data
[02:37] <SteveA> for looking to see if bugs are reproducable with latest code
[02:37] <SteveA> and that kind of thing
[02:37] <kiko> right
[02:37] <carlos> stub: if you would cherry pick r3574 it should improve dapper translations, hidding languages that are not common from launchpad.net/distros/ubuntu/dapper/+translations
[02:37] <carlos> stub: and that other thing kiko just told you
[02:37] <SteveA> and other uses of a staging environment such as UI experiements we don't want in mainline RF
[02:37] <SteveA> and other long-term trials of things
[02:37] <SteveA> can go on the new box
[02:37] <SteveA>  * work-in-progress tag on PendingReviews (steve)
[02:38] <SteveA> if you look on https://launchpad.canonical.com/PendingReviews
[02:38] <SteveA> you'll see the Work In Progress section
[02:38] <SteveA> and use of work-in-progress branch tags
[02:39] <SteveA> I encourage all of you to put branches you're currently working on there, on that page
[02:39] <SteveA> this allows people to easily see a diff on the pending reviews diff-o-matic
[02:39] <SteveA> and for you to see if you have conflicts etc.
[02:39] <SteveA> with knits and repositories, the pending reviews scripts work very fast
[02:40] <SteveA>  * Keep, Bag, Change
[02:40] <bradb> Isn't it quicker to just merge launchpad-upstream to see if you have conflicts?
[02:40] <SteveA> bradb: is it?
[02:40] <ddaa> bradb: it's even quicker to just look at the page
[02:40] <SteveA> 6
[02:40] <SteveA> 5
[02:40] <SteveA> 4
[02:40] <ddaa> KEEP: merging to sourcecode trees
[02:40] <bradb> SteveA: I think so yeah. Since the page is only updated so often, AIUI.
[02:40] <SteveA> 3
[02:40] <cprov> keep wip section, it's indeed very nice feature
[02:40] <SteveA> 2
[02:40] <SteveA> 4
[02:40] <SteveA> 3
[02:40] <SteveA> 2
[02:40] <SteveA> 1
[02:41] <SteveA> done
[02:41] <SteveA> htanks
[02:41] <SteveA> thanks
[02:41] <SteveA> bradb: it may be quicker for you on your own branches
[02:41] <SteveA> it is not quicker for everyone else who may be interested in the status of your work and your branches
[02:41] <SteveA> so, while your observation is valid, it is made from a selfish viewpoint
[02:41] <bradb> heh. :) I was just addressing your reasoning for wip above.
[02:42] <SteveA>  * Three sentences
[02:42] <jamesh> bradb: the page is updated once every 2 hours
[02:42] <SteveA> go ahead please
[02:42] <stub> DONE: Authentication bug fixes and fallout
[02:42] <stub> TODO: Text search bugs and enhancements (again)
[02:42] <stub> BLOCKED: Nope
[02:42] <malcc> DONE: Sprinted, new-style page tests for Soyuz
[02:42] <malcc> TODO: Finish landing other early bugfixes, finish tidying process_upload
[02:42] <malcc> BLOCKED: No
[02:42] <ddaa> DONE: long week-end, rewrite importd-cvs-tests, tame rogue nc
[02:42] <ddaa> TODO: pending branches, cscvs cleanups, bzr-native
[02:42] <ddaa> BLOCKED: no
[02:42] <bradb> DONE: Landed implicit subs. Fixed various bugs. Writing xmlrpc tests. Figuring out release bug management requirements. Refactored .createBug to take a parameter object.
[02:42] <Kinnison> DONE: Distro
[02:42] <bradb> TODO: Fix more bugs. Reach a decision on how best to harness community input into release management. Get xmlrpc into a landable state.
[02:42] <bradb> BLOCKED: No.
[02:42] <cprov> DONE: Publishing issues, upload policy change, Contents generation
[02:42] <cprov> TODO: soyuz small fixes sprint (UI and backend) get simple requests implemented\ and sort items for discussion in paris
[02:42] <cprov> BLOCKED: none
[02:42] <BjornT> DONE: vacation. fixed some bugs.reviews.
[02:42] <BjornT> TODO: land my reviewed branches. fix some of my assigned bugs. reviews.
[02:42] <BjornT> BLOCKED: no
[02:42] <salgado> DONE: Polished the mirror-related pages a bit more and applied kiko's review suggestions; some fixes on shipit to avoid duplicate requests; 3 days on leave
[02:42] <salgado> TODO: catch up with email; try again to land my mirror-prober changes (which I couldn't land because of 30-mergepeople.txt), tackle the remaining shipit bugs that are causing OOPSes and any other urgent bug fixes that show up
[02:42] <salgado> BLOCKED: No
[02:42] <jamesh> DONE: code reviews, SIGUSR1 handler, setup weekly cron job, start on bzrscan/importd stuff for ddaa
[02:42] <jamesh> TODO: code reviews, bzrscan/importd stuff for ddaa
[02:42] <jamesh> BLOCKED: no
[02:42] <matsubara> DONE: oops report analysis, fixed some oops bugs and ticket permission
[02:42] <matsubara> TODO: finish the ticket permission bug and more of the same
[02:42] <matsubara> BLOCKED: nope
[02:43] <spiv> DONE: Made check_merge check everything again, FINALLY.  Reviews.  Fixed 44183, 41414.  Investigated 32233.
[02:43] <kiko> DONE: management, code reviews, planning, assisting Soyuz and Rosetta for dapper, work on SQLRelatedJoin and prejoins
[02:43] <spiv> TODO: Reviews, SFTP server bugs.
[02:43] <spiv> BLOCKED: no
[02:43] <kiko> TODO: finish off SQLRelatedJoina nd prejoins, sprint date conclusions, performance work
[02:43] <kiko> BLOCKED: no
[02:43] <SteveA> DONE: management, menus code/integration, code review
[02:43] <SteveA> TODO: get new menus onto staging environment
[02:43] <SteveA> BLOCKED: no
[02:43] <Kinnison> TODO: bug 47770 and more as I go
[02:43] <Kinnison> BLOCKED: No
[02:43] <Ubugtu> Malone bug 47770 in launchpad-publisher ""raw-dist-upgrade" target does not support pockets" [Normal,Unconfirmed]  http://launchpad.net/bugs/47770
[02:43] <SteveA> DONE: DescriptionMarkup spec, LaunchpadLoginService work, bugfixes
[02:43] <SteveA> TODO: holiday
[02:43] <SteveA> BLOCKED: no 
[02:43] <SteveA> um
[02:43] <SteveA> that was from mpt
[02:44] <kiko> SteveA, for a moment I was afraid you were going on holiday!
[02:44] <stub> Should we just labotomize 30-mergepeople.txt ? I believe the actual merge process is already tested in person.txt so we don't technically need to confirm the merge worked.
[02:44] <carlos> DONE: #46459, karma test fixes, POMsgSetPage test fixes, OO.org exports, many dapper translation fixes, breezy to dapper migration started, #47057, #40550, some bugs detected and filed about new pagetests
[02:45] <carlos> TODO: merge #40550, debug last two test failing with POMsgSetPAge and merge it, fix main translatable distro links, merge my karma branch
[02:45] <carlos> BLOCKED: no
[02:45] <SteveA> stub: maybe.  there are other things we should try i think.
[02:45] <SteveA> okay, that's all folks.
[02:46] <SteveA> there are a couple of issues that we didn't cover that were provisionally on the agenda
[02:46] <SteveA> let's mention these after the meeting
[02:46] <SteveA> MEETING ENDS
[02:46] <kiko> you don't love me
[02:46] <SteveA> tough love
[02:46] <SteveA> one item from kiko was vacations:
[02:46] <kiko> no love
[02:46] <SteveA>  - who hasn't had a vacation for far too long?
[02:47] <kiko> cprov may be in line for some vac
[02:47] <stub> Me, because I can't get off my arse and organize it
[02:47] <kiko> stub hasn't taken any in ages
[02:47] <carlos> SteveA: what do you understand by 'far too long' ?
[02:47] <kiko> carlos, have you planned vacation for the second semester already?
[02:48] <kiko> it would be good if people could deliver their vacation plans for the latter part of the year over the next month
[02:48] <carlos> kiko: not yet
[02:48] <cprov> kiko: no, thanks, I had enough vac in march/april ;) 
[02:48] <kiko> jamesh is another
[02:48] <bradb> kiko: it's hard to plan vacations too far in advance, i find, because of confs.
[02:48] <carlos> bradb++
[02:48] <bradb> like, more than 2-3 months
[02:49] <kiko> carlos, bradb: if you plan vacation in advance we can plan the conferences taking them into account
[02:49] <stub> I plan to have a week underwater soon - need to confirm weather windows. And possibly two or three weeks in October or September.
[02:49] <malcc> kiko: So you only need vacation in advance if it's vacation we won't mind re-scheduling if a conference comes along?
[02:49] <carlos> kiko: the thing is that usually would be possible to get some vacations near the conference to visit the country where the conference is
[02:50] <kiko> malcc, we are trying to have smaller more focused sprints instead of big fat conferences
[02:50] <kiko> carlos, yeah IKWYM
[02:50] <kiko> but you already know london. :)
[02:50] <stub> Just please try to avoid London :-)
[02:50] <malcc> kiko: Ok, but the question is the same. Do you need only vacation which will block events and can't be re-scheduled, or for everyone to knock up a full vacation schedule for the year?
[02:50] <spiv> kiko: haha, so the plan is to hold sprints in boring locations to solve that problem then? ;)
[02:50] <stub> Been there, done that, caught the virus
[02:51] <kiko> malcc, it's good to have a vacation schedule for the next 6 months, and I'd say that the 3-month window is firm and can block events.
[02:51] <carlos> kiko: but my girlfriend doesn't know it ;-)
[02:52] <kiko> carlos, there are girls in london too
[02:52] <kiko> underage ones even
[02:52] <stub> There are more in Bangkok with less clothing ;)
[02:52] <carlos> kiko: I will remove this log from the computer before my girlfriend reads it ;-)
[02:52] <kiko> and before the police reads it!
[02:52] <carlos> or you will need to do all conferences in Valencia
[02:53] <ddaa> there are far worse places
[02:53] <malcc> stub: Did you mean "a picture of..."?
[02:53] <stub> Why make do with a picture?
[02:54] <jamesh> stub: it is cheaper to post?
[02:54] <kiko> and cheaper to maintain!
[02:55] <ddaa> naked gogo dancers are cheap, you do have to pay for clothing!
[02:55] <SteveA> there are more lithuanian girls in london than in vilnius now
[02:56] <jamesh> apparently we'll be getting an equivalent of the London underground oyster cards in Perth some time this year
[02:56] <ddaa> jamesh: you think that'll attract lithuanian girls?
[02:57] <stub> I'm wondering how he made that topic jump
[02:57] <jamesh> ddaa: it couldn't hurt.
[02:57] <kiko> jamesh, wow, that's cool
[02:58] <ddaa> SteveA: if there no other post meeting item, I could stop being silly and go back to coding :)
[02:58] <SteveA> ddaa: the other item doesn't concern your work
[02:58] <SteveA> so please go ahead
[02:58] <SteveA> i'm going to go get late lunch shortly
[02:59] <jamesh> kiko: unfortunately we'll still have spotty coverage and hardly any buses on weekends ...
[02:59] <SteveA> stub: i think james was very cleverly killing the sordid coversations
[02:59] <stub> Ahh.... spotty coverage... naked gogo dancers... I get it.
[02:59] <SteveA> the second issue bumped from the agenda was...
[02:59] <SteveA> opening edgy
[03:00] <kiko> I'm already talking to cprov and carlos 
[03:00] <kiko> but Kinnison may know something of this too
[03:00] <SteveA> ok
[03:00] <kiko> and stub needs to know that there may be some additional patches to support it.
[03:00] <SteveA> i guess there's nothing that the whole team needs to be aware of about this
[03:01] <Kinnison> kiko: Apart from what I knew of opening edgy back in feb, I'm not sure I know any more now
[03:02] <kiko> SteveA, the team needs to know that edgy is opening, of course
[03:02] <kiko> there is a lot of impact throughout launchpad
[03:02] <kiko> it will affect malone and rosetta to a large degree
[03:02] <kiko> soyuz to a very large degree
[03:02] <SteveA> i don't think it affects ddaa's work
[03:02] <carlos> kiko: I would appreciate that you tell us when it's happening
[03:03] <kiko> SteveA, it's good that he knows.
[03:03] <ddaa> that's done
[03:03] <ddaa> but as SteveA said, it does not impact my work in the least
[03:03] <kiko> well, at the moment we are waiting for dapper to stabilize, and for people to ensure that a new distrorelease will not affect their components in unexpected ways.
[03:04] <kiko> we already know that it will affect rosetta (which needs to go on pointing to dapper for as long as we want)
[03:04] <kiko> but there may be other places.
[03:16] <SteveA> malcc, kiko, cprov: Kinnison just called me.  His internet has broken.  People are looking into it, but it looks like a physical problem that will not be fixed during this afternoon.  Meanwhile, he has a full copy of RF and is working on bug 47770 
[03:16] <Ubugtu> Malone bug 47770 in launchpad-publisher ""raw-dist-upgrade" target does not support pockets" [Normal,Unconfirmed]  http://launchpad.net/bugs/47770
[03:16] <SteveA> and will definitely be online tomorrow, either at home with working internet, from from a nearby friend's place
[03:20] <malcc> SteveA: Thanks
[03:24] <salgado> stub, kiko, I just realized that either I did something wrong on that fix to lock the ShippingRequest table or the lock doesn't solve the problem
[03:24] <kiko> salgado, why?
[03:24] <salgado> actually, I think that the lock doesn't help in this case
[03:25] <salgado> kiko, I just created a dupe request on staging
[03:25] <kiko> hmmm
[03:25] <kiko> really?
[03:25] <kiko> that's weird
[03:25] <salgado> I don't think it's weird. it makes sense to me
[03:25] <kiko> really?
[03:26] <salgado> the lock doesn't prevent other SELECTs to run, as stub pointed out
[03:26] <kiko> it prevents a select to run and then insert, though
[03:26] <kiko> stub?
[03:27] <salgado> one insert can happen after the other without any problems
[03:27] <salgado> we don't have a db constraint
[03:27] <kiko> so you're saying we only block when inserting?
[03:28] <salgado> yes, AIUI (and as it seems to work), it single thread INSERTs and UPDATEs
[03:28] <kiko> can you do the select together with the insert
[03:28] <kiko> i.e. in the same statement?
[03:29] <kiko> insert into XXX (...) values (xxx, xxx, select foo from bar) ?
[03:29] <salgado> no
[03:29] <kiko> really? 
[03:29] <kiko> mmm
[03:29] <kiko> you can select into though
[03:29] <salgado> the select is to check that the user doesn't have an existing request
[03:29] <kiko> IC
[03:29] <kiko> stuuuub
[03:29] <kiko> stuuuuuuuuuuuuuub
[03:49] <rousseau_> hello all, I'm having a permission denied (public key) error when I run the command bzr push --create-prefix sftp://bazaar.launchpad.net/~ryan.rousseau/py-education/devel-main
[03:50] <rousseau_> Does anyone know what could be wrong with my SSH key, if anything?
[03:53] <stub> kiko: Yer
[03:54] <lifeless> rousseau_: have you uploaded it to launchpad ?
[03:54] <kiko> stub, see the locking problem above? still stuck. any advice?
[03:54] <rousseau_> lifeless: yep, with no problems
[03:54] <lifeless> rousseau_: is your launchpad user the same as your unix account name ? (if you, use sftp://username@bazaar.launch....)
[03:54] <kiko> we need something which ensures that a select-and-insert completes non-concurrently.
[03:54] <kiko> stub, basically
[03:55] <rousseau_> lifeless: I tried something similiar to that yesterday, I guess I got it wrong because it's working now, thanks!
[03:55] <rousseau_> lifeless: well, it seems to be working
[03:55] <stub> The workflow should be: lock table, check for an existing row, insert a new row if no existing row
[03:56] <kiko> stub, that's what we're doing. but the lock table doesn't block the select, does it?
[03:56] <salgado> stub, but this lock shouldn't allow for another select before the insert is finished
[03:56] <stub> kiko: Obtaining the lock blocks
[03:56] <stub> I think
[03:57] <stub> Yes - only one connection can hold the exclusive lock at a time
[03:58] <kiko> salgado, hah. what now?
[03:58] <stub> You can test this using psql.
[03:58] <kiko> stub, does this work even on staging?
[03:59] <Keybuk> lifeless: knits are done per-line, right?
[03:59] <stub> kiko: There is nothing special about staging's database
[04:00] <kiko> stub, salgado: scratch head
[04:01] <salgado> stub, you said previously that EXCLUSIVE mode allows concurrent SELECTs
[04:01] <salgado> and it seems to work this way, actually
[04:01] <stub> Yes - other connections can SELECT happily
[04:01] <kiko> uhhh
[04:01] <salgado> that's the problem
[04:01] <stub> Why?
[04:02] <kiko> stub, connection A checks. finds no row.
[04:02] <kiko> stub, connection B checks. finds no row.
[04:02] <kiko> stub, connection A inserts.
[04:02] <kiko> stub, connection B blocks.
[04:02] <kiko> stub, connection A finishes insert.
[04:02] <stub> No - because they each attempt to lock the table first.
[04:02] <stub> And if they don't, that is the bug
[04:03] <stub> connection a locks table, checks, finds no row, inserts. connection b locks table and blocks, connection a commits, connection b checks, finds row, fails
[04:03] <stub> hmm.... I wonder if us running in serialized isolation mode is causing the trouble though?
[04:04] <lifeless> Keybuk: yeth
[04:04] <Keybuk> lifeless: what does it do for binaries?
[04:04] <lifeless> very long lines
[04:04] <stub> If we had previously selected rows from the table before issuing the lock, further selects would still get a consistent view of the data and not notice the insert made by the other connection. nuts.
[04:05] <kiko> stub, we /have/ previously selected rows from the table, probably
[04:06] <stub> I wish we had dropped the isolation level from day one :-( psycopg default isn't the normal default.
[04:06] <salgado> stub, https://chinstrap.ubuntu.com/~dsilvers/paste/filesx5G2U.html is the code involved in this
[04:06] <Keybuk> lifeless: is it not possible to use something other than a line break?
[04:06] <Keybuk> e.g. knit an xml file by tags?
[04:07] <stub> ok. so locking doesn't look like it is going to help in the short term. So we can either use a trigger to maintain the cross table constraint, or collapse the shippingrequest and shipment tables into one. I would prefer the latter I think, but it is a lot more work as here will be a lot of fallout. So I should probably just write the trigger.
[04:07] <lifeless> Keybuk: not really. Why would that help ?
[04:08] <lifeless> Keybuk: remember, knits store snapshots.
[04:08] <Keybuk> would it not help the merge case?
[04:08] <Keybuk> or does it not behave like weave in that respect?
[04:08] <stub> kiko, salgado: either option will cause OOPS requests when triggered though
[04:09] <stub> Although that is probably normal for our forms and double-submits
[04:09] <kiko> salgado: is it possible to not query that table beforehand?
[04:09] <kiko> stub, it's then a case of invalid form data I feel
[04:09] <kiko> but...
[04:09] <stub> kiko: We can't really guarantee that. It isn't just that table either, but related tables. It would be too flakey to attempt to trick the isolation level into not noticing changes until we want it too.
[04:10] <kiko> I see
[04:10] <stub> I'm also seriously considering dropping the transaction isolation level back to READ COMMITTED now that the release is done to see what happens...
[04:11] <stub> I guess I should do it just on staging first though ;)
[04:11] <kiko> stub, would that help us here?
[04:11] <stub> kiko: It would make the locking work the way I originally expected it to.
[04:11] <kiko> that's an idea
[04:12] <stub> But I don't see us changing that on production for a week or three at the earliest, so we should fix the problem in other ways. The trigger isn't nasty and can be done tomorrow no worries.
[04:13] <kiko> ok then
[04:13] <stub> If there is a bug on this, please assign it to me. I'll pull out the lock at the same time.
[04:13] <kiko> salgado, can you do that?
[04:14] <salgado> sure
[04:14] <stub> btw. I think that process is called for every request, not just submits with validated data, so we were locking unnecessarily. This would have caused the timeouts.
[04:14] <stub> Or was the form already fully validated at this point, and process just supposed to do the actual insert?
[04:15] <kiko> right
[04:15] <kiko> the latter.
[04:15] <stub> ok.
[04:16] <salgado> yes, process will only insert or update
[04:19] <clahey> Rosetta seems slow this morning.
[04:21] <salgado> stub, assigned bug 5812 to you
[04:22] <clahey> Oh, it woke up.
[04:22] <clahey> So, I uploaded a new pot file to Rosetta last night, but it appears that the plural string that I added didn't make it in for some reason.  It's still showing up as the singular string that used to be there.
[04:22] <clahey> And when I went to download the pot file to see what the state was, it said there was an error.
[04:24] <carlos> clahey: the .pot download feature is broken atm, I have  a fix, but it's not yet on production.
[04:24] <kiko> clahey, it should roll out on tuesday
[04:24] <clahey> carlos: Cool.  Any idea why French is still showing up without that plural string?
[04:24] <clahey> Vous avez %d tlchargement%s encore en cours.
[04:24] <clahey> That's the old singular string.
[04:26] <carlos> clahey: if you only uploaded the .pot file with the plural form string
[04:26] <carlos> clahey: the french one cannot have the translation...
[04:26] <carlos> am I missing anything?
[04:26] <clahey> I know, but I would expect it to show up untranslated.
[04:26] <clahey> And for the old singular string to not show up.
[04:27] <carlos> clahey: it's full translated now
[04:27] <clahey> Yeah, I noticed that.
[04:27] <clahey> I'm looking through it for the string now.
[04:28] <carlos> clahey: take into account that there is a delay between when you do an upload and the system does the import
[04:28] <clahey> Yeah, I know that, but the untranslated counts did update.
[04:29] <carlos> clahey: because you added new strings
[04:30] <carlos> and there was a small delay between the .pot import and the .po import
[04:34] <clahey> Sure, but the pot file was imported yesterday and the French translation still has the singular and not the plural.
[04:34] <clahey> Who knows.  Maybe I uploaded it without the plural.  I can try again.
[04:35] <carlos> clahey: I don't see any plural form there
[04:35] <carlos> clahey: if a language lacks it, all languages lack it
[04:35] <carlos> and same thing with the .pot file
[04:35] <carlos> unless the .pot file had an error and was not imported (is not the case)
[04:39] <clahey> carlos: I
[04:39] <clahey> I'll submit another copy.
[04:39] <carlos> ok
[04:41] <clahey> Or Greg will, rather.
[04:47] <jordi> hey carlos
[04:47] <jordi> carlos: what's the status of the OOo email
[04:48] <jordi> do we want to send it, should I rewrite.
[04:50] <carlos> jordi: did you get kiko's answers ?
[04:50] <carlos> jordi: I guess you should rewrite it following the input that doko, kiko and I gave
[04:50] <carlos> jordi: and send it again for review
[04:50] <jordi> carlos: unfortunately I think I wasn't cc'd on some of those mails
[04:51] <jordi> because I noticed I missed some of the conversation
[04:51] <carlos> jordi: you only missed the first from kiko
[04:51] <jordi> oh ok.
[04:51] <carlos> and it's included in my answer
[04:51] <jordi> ok
[05:24] <carlos> clahey: Greg uploaded a .html file instead of a .pot file
[05:25] <carlos> clahey: http://librarian.launchpad.net/3007930/messages.pot
[05:32] <clahey> carlos: It's an html display of the pot file...  :)
[05:32] <clahey> I'll talk to him.
[05:43] <matsubara> BjornT, bradb: check the Also affects: upstream distribution links http://localhost:8086/malone/cve/1999-8979 is there a bug for that?
[05:44] <jordi> carlos: can you assign ubuntu-l10n-si to ubuntu-translators?
[05:45] <bradb> hah
[05:48] <sfllaw> Kinnison: Welcome!
[05:48] <Kinnison> SteveA: Is it a known bug in bzr that pushing a revision to a shared repo will say "0 revision(s) pushed" when it clearly just succeeded in pushing the one revision I just committed?
[05:49] <bradb> matsubara: I opened bug 47867
[05:50] <bradb> bug 47867!
[05:50] <Kinnison> ubugtu hates you
[05:50] <Ubugtu> Malone bug 47867 in malone "CVE reports contain bogus "Also affects" links" [Normal,Unconfirmed]  http://launchpad.net/bugs/47867
[05:50] <Kinnison> erk
[05:50] <bradb> heh
[05:52] <kiko> Kinnison, yes, known bug.
[05:54] <bradb> six pouces, jambon, pain de bl
[05:54] <matsubara> bradb: thanks
[05:54] <bradb> np
[05:55] <Kinnison> kiko: Right, I won't investigate further
[05:55] <Kinnison> it made pushing my bugfix branch take about 1 minute
[05:55] <Kinnison> which for an sftp push is bloody good
[05:57] <sivang> Kinnison: back to launchpad ? :)
[05:58] <Kinnison> sivang: yes, although my 'net connection has chosen today to be really really bad
[05:58] <sivang> Kinnison: I heared
[06:00] <SteveA> Kinnison: I've noticed something like that... where i've pushed 2 revisions and it says "1 revisions pushed"
[06:00] <SteveA> so perhaps it is a fencepost error
[06:01] <Kinnison> perhaps
[06:01] <SteveA> matsubara: one point about UnexpectedFormData errors
[06:02] <SteveA> matsubara: we should use a special page to return the appropriate HTTP error code
[06:03] <matsubara> SteveA: ok, I'll add that to the bug. bradb took over it, btw.
[06:03] <kiko> bradb, are you sure that bug.duplicates works correctly?
[06:03] <SteveA> matsubara: ... if there is one...
[06:03] <SteveA> http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
[06:04] <bradb> kiko: It appears to not be tested, so no.
[06:05] <bradb> it looks like matsubara added it, if i'm reading this right
[06:05] <SteveA> matsubara: i guess 500 is the most reasonable.  and i think that's our default OOPS anyway
[06:05] <matsubara> I'm talking about bug 40321
[06:05] <Ubugtu> Malone bug 40321 in malone "We should sanitize all values from the URL generated in the advanced bug search form." [Normal,In progress]  http://launchpad.net/bugs/40321
[06:06] <matsubara> SteveA: couldn't be code 400?
[06:07] <SteveA> no
[06:07] <SteveA> the syntax is fine
[06:07] <SteveA> we understand the request
[06:07] <SteveA> just, it is saying things that we don't know how to interpret well
[06:07] <SteveA> unless the meaning of "syntax" in the HTTP spec is different than what I think it is
[06:08] <SteveA> lifeless would know the answer, I'm sure
[06:11] <lifeless> whats the question ?
[06:11] <matsubara> SteveA: is it better to file a new bug? something like: We should display an special error page when UFD is raised
[06:12] <SteveA> lifeless: the client POSTs to the server
[06:12] <SteveA> the POST has hand-crufted stuff in that our form processor for that page isn't designed to handle
[06:12] <SteveA> so it raises an UnexpectedFormData exception
[06:13] <SteveA> when this exception is delivered to the client, what HTTP error code should it have?
[06:13] <SteveA> matsubara suggested a 400, but I think that applies only to incorrect HTTP-level syntax
[06:13] <lifeless> right
[06:13] <SteveA> so i think 500
[06:13] <lifeless> 400 means something like fucked http headers
[06:14] <lifeless> this is definately a 5xx error
[06:14] <Kinnison> Umm
[06:14] <Kinnison> 5xx indicates an app error surely
[06:14] <Kinnison> It's an error in the input data, not in the app
[06:14] <SteveA> yes, because there is nothing in HTTP that says POSTs must come from data forms managed by the application
[06:14] <SteveA> so, it's an application error not an HTTP error
[06:15] <lifeless> Kinnison: its a 500 class error.
[06:15] <SteveA> and as the whole application is in the server
[06:15] <SteveA> it is a server error, not a client error
[06:15] <SteveA> if it were a GET, it could be a 404
[06:15] <SteveA> but it's a POST, so the query params aren't in the URL
[06:15] <Kinnison> If it's not a 4xx then it's a 500 specifically
[06:15] <lifeless> it could be a 400 if yousquint.
[06:16] <lifeless> I'm not sure that squinting like that is useful, or correct.
[06:16] <Kinnison> It's either a 400 or a 500, neither is perfect
[06:16] <bradb> SteveA: btw, unless you specifically know differently, this seems more likely to be old bookmarks, not hand crafted urls.
[06:16] <Kinnison> but they're the better of the options (on reading rfc2616)
[06:16] <Kinnison> if lifeless is squicked by 400 then I'd recommend 500
[06:16] <SteveA> bradb: on a POST ?
[06:16] <SteveA> or a 402
[06:17] <SteveA> will fix for $$$
[06:17] <SteveA> okay, thanks everyone.  i think matsubara has enough to go on
[06:17] <bradb> oh, i didn't know it was a post. that people are posting searches is ultra-weird.
[06:17] <SteveA> bradb: this applies to more than searches
[06:17] <SteveA> but i take the point about people bookmarking searches
[06:17] <the_CName> elo
[06:18] <SteveA> the electric light orchestra?
[06:18] <Ubugtu> Malone bug 40321 in malone "We should sanitize all values from the URL generated in the advanced bug search form." [Normal,In progress]  http://launchpad.net/bugs/40321
[06:18] <bradb> which, thankfully, was a GET
[06:18] <the_CName> i've registered in lauchpad for receive distri ubuntu but i'm not obtain info by mail ! that's normal ?
[06:19] <SteveA> that's not normal
[06:19] <SteveA> have you checked your junk mail folder, if you use something like gmail?
[06:19] <the_CName> i bieleve too
[06:19] <the_CName> no, it's mine mail
[06:20] <the_CName> webhosted by apinc 
[06:20] <SteveA> do they use greylisting?
[06:20] <lifeless> its a 500, fo sure.
[06:20] <SteveA> these are the two most common reasons for people not getting email from launchpad
[06:20] <lifeless> its not 400 because this error is not a *http client error*
[06:20] <SteveA>  - their email provider uses greylisting, so the email arrives after several hours
[06:20] <SteveA>  - it has been classified as junk mail
[06:21] <SteveA> lifeless: unless we want their money.
[06:21] <SteveA> cool, 500 it is
[06:21] <the_CName> i don't believe ... i'm feeling just blacklisting
[06:21] <SteveA> do you have another email address you can use?
[06:21] <the_CName> more
[06:22] <Kinnison> bradb: Do we have a way to sort bug listings by status?
[06:23] <bradb> Kinnison: no, but it's easy enough to add
[06:23] <the_CName> SteveA/>  to test with another, isn't it ?
[06:23] <Kinnison> bradb: could we have it please. There are times I want to look at all the untriaged bugs, and sorting by status would be easier
[06:24] <bradb> Kinnison: Untriaged is an Importance now, and you'll be able to sort by that.
[06:24] <SteveA> the_CName: yes, try registering with launchpad with another email address
[06:24] <SteveA> if that one doesn't work, we'll try some experiments
[06:24] <Kinnison> bradb: Right, but that was just one example of sorting by status
[06:25] <the_CName> Registration mail sent
[06:25] <Kinnison> bradb: It's nice to see all the needs-info next to each other to review them
[06:25] <Kinnison> bradb: etx.
[06:25] <Kinnison> s/x/c/
[06:26] <Kinnison> :-)
[06:26] <bradb> sure, i can add it. the next rollout will also have sorting by most recently changed, which hopefully some will find useful
[06:26] <Kinnison> That'll be useful too
[06:26] <Kinnison> thanks dude
[06:27] <Kinnison> To be frank, the more flexibility in the search/report stuff the better
[06:27] <the_CName> SteveA/>  it's thunderbird to block it !
[06:27] <SteveA> i see
[06:27] <bradb> Kinnison: amen
[06:27] <SteveA> never seen that before
[06:30] <the_CName> SteveA/>  thks
[06:39] <SteveA> i'm about to clear off out of irc for the evening, to focus on some code.  any last-minute hasslings before i go?
[06:40] <SteveA> matsubara: about bug https://launchpad.net/products/launchpad/+bug/47877
[06:40] <Ubugtu> Malone bug 47877 in launchpad "We should display an special error page whenever UnexpectFormData is raised" [Normal,Unconfirmed]  
[06:40] <SteveA> matsubara: it should be UnexpectedFormData, not UnexpectFormData
[06:41] <SteveA> and, is it a dupe of https://launchpad.net/products/launchpad/+bug/47711 ?
[06:41] <Ubugtu> Malone bug 47711 in launchpad "Custom error page when we raise UnexpectedDataFormat" [Normal,Confirmed]  
[06:43] <matsubara> SteveA: yes it is and I should leave the crack pipe at home
[07:10] <Oppy> hello
[07:12] <Oppy> anyone here?
[07:18] <SteveA> lifeless: ping
[07:24] <Yannig> Hello everyboduy
[08:04] <Kinnison> time for me to go shopping and then make dinner
[08:04] <Kinnison> ciau
[08:27] <cbx33> hey all
[08:27] <cbx33> will LP be using knits soon?
[08:27] <SteveA> yes
[08:27] <cbx33> :D
[08:27] <SteveA> very soon
[08:27] <SteveA> the code is written
[08:27] <cbx33> excellent
[08:27] <cbx33> that's all i wanted to hear
[08:27] <SteveA> i think it will be deployed early next week, but i'm not sure exactly
[08:28] <cbx33> ok
[08:28] <ddaa> it's been last week for one month...
[08:28] <cbx33> oh :(
[08:28] <ddaa> unexpected problems popped up
[08:28] <cbx33> :((
[08:28] <ddaa> but the fixes have just been comitted
[08:28] <cbx33> oooh good
[08:28] <ddaa> thank spiv
[08:33] <salgado> kiko, https://chinstrap.ubuntu.com/~dsilvers/paste/fileWsBnng.html fixes the two issues we discussed this morning and some shipit OOPSes
[08:48] <segfault> how do i force a mail forward change in LP? eg. segfault@ubuntu.com -> my.other@email.com
[08:50] <salgado> segfault, I think your-launchpad-name@ubuntu.com will always forward to your launchpad preferred contact address
[08:50] <Yannig> Do someone know what are the supposed best translations: French or Spanish?
[08:50] <Yannig> (in terms of quality in Launchpad=
[08:55] <mdke> Yannig: there is no way to tell
[09:27] <Yannig> mdke> Bad luck :)
[09:27] <Yannig> It was just to know how to help me with a second language :)
[09:36] <BenC> got a big malone question
[09:36] <BenC> now that dapper is released, the next kernel is being worked on, and we are moving from linux-source-2.6.15 to linux-source-2.6.17
[09:37] <BenC> is there an easy way to add linux-source-2.6.17 as a target for a large number of bugs?
[09:42] <kiko> salgado, looking.
[09:45] <bradb> BenC: not in the ui. maybe our dba can do it.
[09:45] <bradb> BenC: should all bugs be moved over?
[09:45] <BenC> bradb: Unfortunately it will be something I need close control over, so I need an interface
[09:46] <BenC> not all bugs, and likely, not even a well defined group until I start going through them all
[09:47] <bradb> BenC: so i guess you want to be able to do a search, eyeball each row, and will usually have enough information from the bug listing to know whether it should be moved to the new package?
[09:48] <BenC> yeah, pretty much
[09:48] <BenC> I have an idea of what the group will ential, but haven't defined it yet
[09:50] <bradb> BenC: of the 624 bugs currently open, what percentage do you think will carry forward?
[09:52] <BenC> bradb: probably only 100 or so
[09:54] <bradb> BenC: interesting. ok, can you wait till tomorrow for us to come up with a quick and simple plan to do that?
[09:55] <BenC> I don't plan on this till after I upload 2.6.17, which is a few days away
[09:55] <BenC> so no problem
[09:55] <bradb> ok, cool
[09:58] <BenC> bradb: Oh there other thing is I would want to select "Reject" for almost all things aimed at 2.6.15 and still open
[09:58] <BenC> if we aren't going to fix it, no reason to leave it open
[09:59] <bradb> ok
[10:04] <kiko> salgado, can I have that link again?
[10:05] <salgado> kiko, no
[10:06] <kiko> PLEASE
[10:06] <salgado> https://chinstrap.ubuntu.com/~dsilvers/paste/fileWsBnng.html
[10:06] <salgado> had to look in the logs
[10:07] <kiko> you can see recent pastes in paste/
[10:07] <salgado> with our Internet connection I think the log is faster
[10:08] <kiko> our internet connection works quite well IMO
[10:16] <kiko> hmmm something has started to pick up the http_proxy environment variable
[10:23] <bradb> SteveA: so, IIUC, to fix bug 40321 an UnexpectedFormData exception should be raised if the validation fails in a way that looks like the user tried to do something they couldn't do by using the form itself?
[10:23] <Ubugtu> Malone bug 40321 in malone "We should sanitize all values from the URL generated in the advanced bug search form." [Normal,In progress]  http://launchpad.net/bugs/40321
[10:28] <SteveA> bradb: yep.  the form processor needs to accept what the form allows.  anything else, and you can raise UnexpectedFormData
[10:28] <bradb> SteveA: and then will we have a way of excluding that from the oops reports?
[10:29] <SteveA> a user should only see an UnexpectedFomData exception when they've fiddled with the URL or on the rare occassions we've updated the software while they've been filling in a form.
[10:29] <SteveA> we'll be able to classify these separately, if necessary
[10:29] <bradb> old bookmarks!
[10:29] <SteveA> so, for pages that we expect to be bookmarked (like search pages)
[10:29] <SteveA> we should aim to have nice URLs including query parameters (not long autogenerated form query parameters)
[10:30] <SteveA> and support them in a forwards-compatible way
[10:30] <SteveA> but, seeing as we haven't done that, we'll that's just tough on people who have the pages bookmarked
[10:31] <bradb> ok
[10:31] <SteveA> each page we support that kind of thing for should have a spec
[10:31] <SteveA> or at least a doctest
[10:31] <SteveA> that tests the supported form behaviour
[10:32] <SteveA> kiko: 
[10:32] <kiko> hello SteveA 
[10:32] <SteveA> kiko: phone call before i crash?
[10:33] <kiko> SteveA, sure
[10:33] <kiko> SteveA, I was looking for a review though
[12:04] <kiko> bradb, ping?
[12:05] <bradb> kiko: pong