[15:33] <SpecialK|Canon> https://code.launchpad.net/~doismellburning/launchpad/+git/launchpad/+merge/385644 - my og_title assert is failing and it's not yet clear to me if my template code is wrong or I should be poking makeTemplateView to inject more info - would appreciate feedback please
[15:33] <SpecialK|Canon> (both specific and general!)
[15:34] <cjwatson> SpecialK|Canon: What's the error message?
[15:35] <SpecialK|Canon> cjwatson: `testtools.matchers._impl.MismatchError: 'http' not in None`
[15:35] <SpecialK|Canon> presumably because `request/URL` is None
[15:35] <cjwatson> I normally write more like content.find('meta', property='og.title'), but your syntax should work too
[15:35] <cjwatson> request/URL is used in og:url rather than og:title though
[15:35] <SpecialK|Canon> cjwatson: property is a builtin in some modern Pythons though
[15:35] <SpecialK|Canon> cjwatson: hence I went for the dict
[15:36] <cjwatson> Ah yeah, fair point
[15:36] <SpecialK|Canon> (otherwise I would have)
[15:36] <cjwatson> "modern" :)
[15:36] <SpecialK|Canon> bah sorry, og_url not og_title
[15:37] <SpecialK|Canon> https://pastebin.canonical.com/p/y7S2VGN6YQ/ in full
[15:37] <SpecialK|Canon> https://pastebin.ubuntu.com/p/DFWsYspMcf/ even
[15:38] <SpecialK|Canon> very few things declare recommended_canonical_url, fine (I do mean to add tests for some of those later)
[15:38] <cjwatson> Mkay, having a look
[15:38] <cjwatson> I think soupmatchers would make this clearer FWIW
[15:39] <cjwatson> I always like composite tests to test as much as they can at once, because it means you get better error messages
[15:43] <SpecialK|Canon> Hm that does look interesting
[15:44] <cjwatson> request/URL should evaluate to http://launchpad.test here, since that's what makeTemplateView sets up ...
[15:45] <SpecialK|Canon> That's what I assumed; I'm struggling to find much in the way of docs about `request` though
[15:45]  * cjwatson sets a breakpoint on recommended_canonical_url
[15:45] <cjwatson> It's a LaunchpadTestRequest in this case
[15:46] <SpecialK|Canon> https://zope.readthedocs.io/en/latest/zopebook/AppendixC.html#tales-overview helpfully tells me it's a thing, but not much more
[15:46] <SpecialK|Canon> Ah
[15:46] <SpecialK|Canon> ...yes in hindsight it is, isn't it
[15:47] <cjwatson> Which is a thin layer over https://zopepublisher.readthedocs.io/en/latest/browser_api.html#zope.publisher.browser.TestRequest
[15:50] <cjwatson> As for template language docs, I generally point at https://pagetemplates.readthedocs.io/en/latest/ instead of that old Zope 2 doc
[15:51] <SpecialK|Canon> Digging a little more I suspect I may instead want view/url or context/url based on other usages, but I've not yet found anything definitive
[15:51] <SpecialK|Canon> Ah thanks
[15:52] <cjwatson> Ah
[15:53] <cjwatson> SpecialK|Canon: alternate expressions after | only get evaluated if the previous expressions *fail*, not just return None
[15:53] <SpecialK|Canon> Well, https://pagetemplates.readthedocs.io/en/latest/history/TutorialPart2.html?highlight=view%2Furl#inserting-text uses request/URL, but I'm still not clear on the exact different semantics
[15:53] <cjwatson> SpecialK|Canon: Try "python: view.recommended_canonical_url or request.URL" instead
[15:53] <SpecialK|Canon> cjwatson: ...that'll do it, thanks
[15:55] <SpecialK|Canon> hurrah, cheers :)
[16:13] <tomwardill> hopefully make css generation repeatable enough: https://code.launchpad.net/~twom/launchpad/+git/launchpad/+merge/385678
[16:13] <tomwardill> note, this disables compressed output for now, it makes the file ~80K bigger, but it's a single file that is then cached
[16:13] <tomwardill> but means SASS leaves the comments in, so I can work out which file is which!
[16:14] <tomwardill> I'll re-enable compressed output when this bug is confirmed fixed
[16:15] <cjwatson> Will you be able to compare between qastaging/staging/dogfood or something?
[16:15] <cjwatson> r=me anyway
[16:15] <tomwardill> that's the hope, yes
[16:16] <tomwardill> we have enough environments that build this that I can see if we get consistent results from it
[16:16] <tomwardill> I kind of dislike that we have rules that are dependant on the ordering of the filesystem
[16:16] <tomwardill> (apparently)
[16:19] <cjwatson> Yes, we clearly shouldn't
[16:21] <tomwardill> hopefully this will fix it for now, a better fix would probably be to create a SCSS _index file and use that rather than the jsbuild mechanisms
[16:23] <cjwatson> Yeah
[16:23] <cjwatson> Bah, another buildbot failure due to me
[16:33] <cjwatson> https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/385680 - quick testfix review?
[16:37] <tomwardill> looking
[16:38] <tomwardill> cjwatson: +1
[16:38] <cjwatson> cheers
[16:45] <cjwatson> I think that's about all the useful stuff I'm going to get done today.  Have a good weekend
[16:47] <SpecialK|Canon> cjwatson: you too!
[16:47] <SpecialK|Canon> https://code.launchpad.net/~doismellburning/launchpad/+git/launchpad/+merge/385644 if anyone's still around...?
[16:50] <tomwardill> mind blanked, what's the env var I need to use lp-shell with a local instance?
[16:50] <tomwardill> disables the SSL validation
[16:52] <tomwardill> LP_DISABLE_SSL_CERTIFICATE_VALIDATION=
[16:52] <tomwardill> that would do it
[16:56] <SpecialK|Canon> so https://dev.launchpad.net/Running - presumably "Point your usual web browser at https://launchpad.test, and accept the local self-signed certificate." predates "it is advisable to try Launchpad in an LXC/LXD container"
[16:57] <cjwatson> Probably, but I don't get the connection
[16:58] <SpecialK|Canon> is there anything more modern somewhere else?
[16:58] <cjwatson> What is your objection?
[16:58] <SpecialK|Canon> cjwatson: well the latter means that doing the former won't achieve much
[16:58] <cjwatson> Not so
[16:58] <SpecialK|Canon> cjwatson: because I'm running LP in a container
[16:58] <cjwatson> Works fine
[16:59] <cjwatson> You do have to follow the link to https://dev.launchpad.net/Running/RemoteAccess
[16:59] <SpecialK|Canon> and my host is not aware of launchpad.test
[16:59] <SpecialK|Canon> Right
[16:59] <cjwatson> It will be if you do the stuff in Running/RemoteAccess :)
[16:59] <cjwatson> Running may just need to be reordered a bit
[17:00] <SpecialK|Canon> "Works fine" *if* you have read some as-yet-unmentioned docs is...a stretch ;P
[17:00] <cjwatson> Yeah, I hadn't noticed that RemoteAccess is actually mentioned further down the page
[17:00] <SpecialK|Canon> But yes, thanks for the pointer, I'll rejig that a bit
[17:00] <cjwatson> A few people have been through the docs without mentioning that :)
[17:01]  * tomwardill always reads the entire paper before answering questions ;)
[17:01] <tomwardill> https://code.launchpad.net/~twom/launchpad/+git/launchpad/+merge/385683 add gitrepository.id to the API
[17:01] <cjwatson> Good catch that it's misordered though
[17:01] <tomwardill> (one of my previous statements is a complete lie)
[17:02] <tomwardill> I think at least myself and pappacena were given both links at the same time, so it's less obvious
[17:02] <cjwatson> Could be
[17:03] <cjwatson> https://dev.launchpad.net/Running/LXD also emphasises it a bit at the end
[17:03] <cjwatson> Anyway, not here :)
[17:03]  * tomwardill -> also not here, before dog eats anything else he's not meant to because I haven't fed him yet
[17:06] <SpecialK|Canon> Cheers :)
[17:06] <SpecialK|Canon> Have good weekends!