/srv/irclogs.ubuntu.com/2013/04/08/#launchpad-dev.txt

StevenKwgrant: http://pastebin.ubuntu.com/5688104/01:15
wgrantStevenK: Why does LP_JS_BUILD depend on YUI_DEFAULT_SYMLINK, and why does YUI_DEFAULT_SYMLINK depend on YUI2_BUILD?01:33
StevenKwgrant: So that we have one rule that will do all population via dependency resolution01:33
wgrantStevenK: Isn't that jsbuild?01:34
StevenKwgrant: I can expand it out into jsbuild if you wish01:35
wgrantStevenK: That seems better than having random deps like you have now01:35
StevenKwgrant: http://pastebin.ubuntu.com/5688136/01:38
wgrantStevenK: That seems more sensible, though it looks like you can probably now merge JS_OUT, JS_ALL and JS_BUILD01:40
wgrantEr01:41
wgrants/JS_BUILD/jsbuild/01:41
StevenKJS_ALL and JS_OUT can not be merged01:41
StevenKThe JS_ALL rule can be flattened01:42
wgrantThey can be merged, because we never used launchpad.js now01:42
wgrantI don't think support YUI <3.5, and we only support 3.5 when it's comboloaded01:43
StevenKwgrant: You want me to rip out generation of launchpad.js?01:44
StevenKAnd yes, launchpad.js only supports YUI 3.3.001:44
wgrantStevenK: Given you're doing this rework now, and it will be purely deleting code...01:45
wgrant3.3 support was only kept so we could do a gradual migration to 3.501:45
wgrantThat migration is done01:45
wgrantMulti-version support should probably be preserved for future upgrades, but we don't need to preserve the non-comboloader approach01:45
StevenKjs.combo_loader.enabled can die too01:46
wgrantYes01:46
wgrantAnd the code that it disables01:46
wgrantWhich is probably just two lines in the root template01:46
StevenKYeah01:46
StevenKwgrant: It's a bit more than two lines02:04
StevenK% bzr di lib/lp/app/templates/base-layout-macros.pt | diffstat -s02:04
StevenK 1 file changed, 1 insertion(+), 20 deletions(-)02:04
wgrant:)02:06
StevenKGrrrr02:08
StevenKcombine-css depends on jsbuild implicitly, since it wants all of the css files in icing02:08
wgrantStevenK: Can you do the CSS copying outside jsbuild?02:14
StevenKwgrant: Sorry, where jsbuild means bin/jsbuild02:31
StevenKwgrant: http://pastebin.ubuntu.com/5688275/02:44
wgrantStevenK: Doesn't js.yui-version want to stay?03:03
wgrantYou can also drop YUI_VERSIONS down to just 3.5.103:03
StevenKwgrant: js.yui-version isn't referenced anywhere else03:07
StevenKwgrant: And I can not.03:07
StevenKYUI 3.3.0 is linked into icing, and combo.css uses one of the files03:08
wgrant    @property03:08
wgrant    def yui_version(self):03:08
wgrant        """The version of YUI we are using."""03:08
wgrant        value = getFeatureFlag('js.yui_version')03:08
StevenKHaha03:08
wgrantStevenK: There's no corresponding file in 3.5.1?03:08
StevenKNote the disparity03:08
wgrantIndeed03:08
wgrantThe name in the docs was wrong03:08
StevenKwgrant: Fixed the docs03:12
StevenKwgrant: cssreset/reset.css 3.3.0 and 3.5.1 has a slight difference03:12
StevenKwgrant: http://pastebin.ubuntu.com/5688372/03:40
wgrantStevenK: YUI_DEFAULT_SYMLINK probably wants a -n, and won't combo.css now get the 3.5.1 reset/grid CSS because of the default symlink change?04:13
wgrantActually, we may still be using a copy of the 3.0.0 grid CSS...04:14
wgrantYeah04:14
wgrantSo it might just be reset that we care about04:14
wgrantBaaaah04:15
StevenKwgrant: Hmm?04:18
wgrantStevenK: Tried to reproduce the process-upload logging unicode issue this morning04:19
wgrantFinally realised what I was doing wrong now04:19
wgrantIt's failing to write to the file stream, not the stderr steam04:19
wgrantstream04:19
StevenKwgrant: So the 3.5.1 link is okay in terms of reset.css?04:19
wgrantStevenK: I don't know; we'll want to test04:19
wgrantBut it's probably fine.04:19
StevenKwgrant: I've fixed the -n for DEFAULT_SYMLINK. Shall I push this mess up?04:20
wgrantStevenK: Sounds like a plan04:21
wgrantI've wanted to fix this for a while :)04:21
StevenKwgrant: Which, the process-upload, or the YUI building thing that I got annoyed enough to take an axe too?04:22
wgrantStevenK: Both, but I was talking about the latter.04:22
StevenKwgrant: https://code.launchpad.net/~stevenk/launchpad/silence-yui-build/+merge/15727204:32
wgrantStevenK: Hmm04:46
wgrantStevenK: I think we need to always run lpjsmin, don't we?04:46
StevenKwgrant: Why?04:46
wgrantThe launchpad.js call was guarded before, but the combo-rootdir one was not04:46
StevenKYeah04:46
wgrantBecause launchpad.js was either minified or not04:46
wgrantWhereas for the comboloader it produces separate .min versions04:47
StevenKIt does, yes04:47
wgrantSo we probably just want to always run it04:47
wgrantUnless there's a reason not to?04:47
StevenKThen the variable just dies04:47
wgrantExactly04:47
wgrantAnd we remove more dev/prod crap from the makefile :)04:47
StevenKwgrant: Do we want to sprinkle in YUI 3.9.1 after this branch?04:52
wgrantStevenK: I imagine there'll be some porting work, but we should at least see how many tests break04:52
wgrantThe 3.5 upgrade wasn't that bad, apart from the comboloader04:52
StevenKwgrant: 3.9.1 in YUI_VERSIONS will blow up tests?04:52
wgrantI've been meaning to modernise our Zope stack for a while04:52
wgrantStevenK: No, but once it's there we'll want to run the tests over it04:53
wgrantI guess that just means changing the default, jsbuild, then run the tests?04:53
StevenKYeah04:53
StevenKI can add it to download-cache and prep a throwaway branch to toss at ec2 to do so04:53
wgrantI wouldn't bother ec2ing it. The tests don't take long to run locally.04:54
wgrantAnd easier to debug04:54
wgrantThen we can hopefully migrate to the new calendar and kill off yui3.304:55
StevenKAnd 204:55
wgrantEr04:55
wgrantThat's what I meant, yeah04:55
wgrant3.3's already dead :)04:55
StevenK:-)04:55
StevenKNot until you approve my branch it isn't04:56
wgrantAh, didn't realise JS_BUILD had perished.04:56
StevenKI got distracted by URL-hacking to find a 3.9.1 zip that I didn't tell you I'd pushed04:57
wgrantI got distracted by failing to find a YUI3 changelog04:57
StevenKhttp://yuilibrary.com/download/yui3/ doesn't mention 3.9.1, but the zip file does exist04:57
wgrantThe 3.6.0, 3.7.0, 3.8.0 and 3.9.0 announcements look safe enough04:59
wgrantSo there shouldn't be much fallout, AFAICT04:59
StevenKwgrant: http://pastebin.ubuntu.com/5688475/05:00
wgrantStevenK: Leave 3.3.0 so current devel is buildable..05:01
wgrantBut 3.3 and 3.4.1 can go05:02
StevenKwgrant: That's 3.3.0.zip05:02
wgrantOrright05:02
StevenK-rw-rw-r-- 1 steven steven 12M Jul 17  2012 yui_3.3.0.zip05:02
StevenK-rw-rw-r-- 1 steven steven 33M Jul 17  2012 yui_3.5.1.zip05:02
StevenK-rw-rw-r-- 1 steven steven 30M Apr  8 14:57 yui_3.9.1.zip05:02
wgrant:)05:02
* StevenK watches bzr upload 30MiB05:03
StevenKwgrant: Can haz +1?05:04
wgrantStevenK: Is icing/yui's sole remaining purpose to feed the CSS combiner?05:05
StevenKYes05:05
wgrantYay05:05
wgrantr=me05:05
StevenKWe could grab reset.css and drop that requirement05:06
wgrantLet's not do that right now05:06
wgrantThis branch avoids evil so far05:06
StevenKAvoids? It outright removes it05:07
StevenKwgrant: -vvm javascript, or which tests were you thinking?05:24
wgrantStevenK: -vv --layer YUI05:24
StevenKwgrant: They're all failing with AssertionError: JS timed out.  The test may never have started.05:28
StevenKOh, not all of them05:29
wgrantStevenK: Some of them may reference files that don't exist any more. Try running the failures in a browser05:29
wgrantAlso make sure you've actually jsbuilt.05:29
StevenKFailure in /home/steven/launchpad/lp-branches/test-391/lib/lp/registry/javascript/sharing/tests/test_sharingdetails.html.Sharing Details.test_display_error_bug: Unexpected error: 'undefined' is not a function05:30
StevenKPassed tests:     9305:30
StevenKFailed tests:      705:30
wgrantThat's not bad, considering how much that page does05:30
wgrantHow many test files fail vs pass?05:31
StevenK91.1% pass, 6.9% fail05:31
StevenK102 total05:31
wgrantGreat.05:32
StevenKAnd 2 skipped, for some reason05:32
wgrantThat's from testr?05:32
StevenKbin/test -vv --layer YUI --subunit, and then I ran subunit-stats over the stream05:32
wgrantRight05:32
wgrantSo, sounds like the upgrade will be easy.05:33
wgrantFeel like finishing it off now?05:33
StevenKI don't think we'll jump to it by default, but I can fix the tests05:34
wgrantyeah, we'll want to trial it ourselves for at least a few days, but I think we can probably get the tests fixed and landed today05:35
wgrantUnless something terrible happens05:35
StevenKThe YUIXHR tests all fail05:35
StevenKlib/lp/app/javascript/choiceedit/tests/test_choiceedit.html passes in my browser, but failed under bin/test05:35
wgrantTHey're fragile at the best of times05:35
wgrantDo they even pass with 3.3?05:36
wgrantOr 3.5?05:36
wgrantHmm05:36
StevenKI thought buildbot ran them?05:36
wgrantYeah05:36
wgrantBut I mean on your system05:36
StevenKdevel gives the same failures against 3.5.105:39
StevenK(WRT yuixhr)05:39
wgrantRight05:40
wgrantWhat about 3.3?05:40
StevenKwgrant: 3.3.0 (IE devel r-1) works05:44
StevenKAh ha, they die on buildbot too05:47
wgrantIndeed. Do you want to look at that, or do you want to look at the eg. choiceedit failures while I poke at YUIXHR?05:48
StevenKwgrant: I'll see if I can work out the other 4 if you grab YUIXHR05:49
wgrantkk05:49
czajkowskijtv: does this sound right to tyou ??? https://bugs.launchpad.net/launchpad/+bug/116219208:15
_mup_Bug #1162192: Partial pot-files destroy translations <lp-translations> <Launchpad itself:New> < https://launchpad.net/bugs/1162192 >08:15
jtvczajkowski: hi.  No, that does not sound right to me.08:26
jtvMaybe somebody got clever and decided we can delete TTIs instead of setting their sequence number to zero.08:27
czajkowskiStevenK: wgrant has anything been done to translations in the last week or so ?08:27
wgrantjtv, czajkowski: I discussed that with danilos last week08:28
jtvTTI stands for TranslationTemplateItem.  It's basically an entry that says "this particular translatable message, or POTMsgSet, occurs in this particular template, and here's its message number in that template."08:28
wgrantIt regressed in mid-201108:28
wgrantWhen a POTMsgSet pruner was added08:28
wgrantIt also prunes TTIs with sequence == 008:28
jtv!08:28
wgrantWhich I believe is insane08:28
wgrantBut I was hoping to get input from you or danilos on that :)08:28
czajkowskijtv: morning btw :)08:28
jtvWhen a message was once in a template but no longer is, we keep it and set its sequence number to zero (not null unfortunately, for historical reasons) exactly so that it can be restored easily, with all its translations.08:29
jtvSo wgrant, here's my input: yes that's insane.  :)08:30
wgrantjtv: That's what I thought, yeah. http://bazaar.launchpad.net/~launchpad-pqm/launchpad/devel/view/head:/lib/lp/scripts/garbo.py#L1230 is the code08:30
jtvThere should be at least a grace period.08:31
wgrantUntil last week I assumed that it just pruned POTMsgSets08:31
wgrantBut it prunes obsolete TTIs too08:31
wgrantYes08:31
wgrantThat would be more reasonable :)08:31
wgrantBut I'm more inclined to just not prune obsolete TTIs at all08:31
wgrantThere shouldn't be that many of them08:31
jtvWell you can't prune POTMsgSets without getting rid of the TTIs.08:31
wgrantWell, POTMsgSets from deleted templates will get pruned08:32
wgrantBut that's about it08:32
wgrantThough can you even delete templates...08:32
jtvYou can mark them as deactivated, not delete them.08:32
jtvOr you can merge them into other templates.08:32
wgrantSo perhaps we want to set a date when we obsolete a TTI08:32
wgrantThen kill them after 6 months or something08:33
jtvAnd then only prune POTMsgSets that don't have any TTIs.08:34
wgrantWell, FKs should ensure that.08:34
wgrantBut yes08:34
jtvI mean: the two can be entirely separate processes.08:35
jtvWhere one _only_ prunes long-unused TTIs, and the other prunes unreferenced POTMsgSets.08:35
wgrantOh, I thought that's what it did already, but you're right.08:35
wgrantIt is entirely TTI-driven08:35
wgrantI hadn't read the code beyond seeing the sequence == 0 bit and crying.08:36
jtvI'll bet the join is complicated by having to deal with both sequence == 0 *and* there being no TTI.08:36
jtvI wanted null for the unused sequence number.  Would have made it easy to sort them first or last as desired, for one.08:36
wgrantThough it's certainly faster to be TTI-driven, but there are few enough POTMsgSets that it might not matter08:36
jtvI would also expect obsolete POTMsgSets etc. to pile up slowly enough that it's more a matter of a one-off cleanup followed by reruns at glacial intervals.08:37
wgrantI think it currently runs daily mostly because there is no less frequent schedule08:39
wgrantBut I was going to introduce a garbo-weekly or garbo-monthly for this08:39
jtvNice.08:40
jtvFor those jobs where the cost of checking for cruft vastly outweighs the cost of cleaning it up.08:41
wgrantYep08:41
wgrantAnd the cost of the cruft is so minimal, except over huge intervals.08:42
wgrantStevenK: buildbot's just run the first yuixhr test, and it succeeded. the milestone one needed another YUI 3.5 fix, but I think they're all good in devel now. Hopefully that'll fix your issue with 3.908:45
wgrantHuh08:49
wgrantThe other 3 tests failed.08:49
wgrantStill pass locally :/08:50
wgrantEven in a clean branch08:55
=== gary_poster|away is now known as gary_poster
=== teknico_ is now known as teknico
=== jamestunnicliff_ is now known as jamestunnicliffe
=== marcoceppi_ is now known as marcoceppi
=== deryck is now known as deryck[afk]
=== BradCrittenden is now known as bac
=== deryck[afk] is now known as deryck
=== cinerama_ is now known as cinerama

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