IRC logs for #buildstream for Friday, 2019-07-12

*** mohan43u has quit IRC05:22
*** mohan43u has joined #buildstream05:31
laurencewhere's the best place to get a 'mission statement' about BuildStream? Or something that outlines it's stand-out features, explaining why someone should use it?06:46
laurenceIf we don't have one, I can write one over the next week06:47
gitlab-br-botmarge-bot123 merged MR !1429 (willsalmon/platformRefactor->master: Refactor Platform and Sandboxes) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/142907:29
KinnisonI thought that the elevator pitch was on buildstream.build07:41
gitlab-br-botmarge-bot123 merged MR !1389 (tristan/exit-on-nonblock-terminal-1.2->bst-1.2: _frontend/cli.py: Exit with error if output streams are set to nonblocking) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/138908:01
*** alexandrufazakas has joined #buildstream08:13
*** traveltissues has joined #buildstream08:27
*** bochecha has joined #buildstream08:41
tristanlaurence, I think this is the best we have in terms of what you're looking for: https://docs.buildstream.build/main_about.html09:03
tristanstill09:03
*** jonathanmaw has joined #buildstream09:04
*** tristan has quit IRC09:11
*** traveltissues has quit IRC09:13
*** traveltissues has joined #buildstream09:13
*** tristan has joined #buildstream09:25
*** lachlan has joined #buildstream09:25
gitlab-br-botbeckyella16 opened issue #1079 (bst artifact checkout should default to directory if neither --tar nor --directory given) on buildstream https://gitlab.com/BuildStream/buildstream/issues/107909:58
* jjardon wonders if we could have that info in a single place, instead duplicate it on both10:04
jjardonlaurence: ^10:04
*** traveltissues has quit IRC10:21
*** traveltissues has joined #buildstream10:21
laurencethanks tristan, I thought so10:31
laurencejjardon, what do you by 'both'?10:31
laurencehttps://buildstream.build/ and https://docs.buildstream.build/main_about.html ????10:32
*** ChanServ sets mode: +o tristan10:40
tristanThere is an "About" page on the website which is different10:40
tristanDon't ask me to justify that :)10:40
tristanAlthough tech wise, it makes sense... we can't realistically use the same source for the about page on the website10:40
tristanFact is, we definitely want an about section in "The documentation distributed with the source code"10:41
tristanAnd we *do* reuse the README text in https://docs.buildstream.build/main_about.html10:41
jjardonlaurence: yes10:41
tristanWe might be able to have the "About" link on the main website be a link to https://docs.buildstream.build/main_about.html instead of a duplicate page10:42
tristanMy understanding was that toscalix wanted to have an about page for a different audience on the website10:42
tristanBut unless we really have resources to really focus on that website more (the website's "about" is a but confusing and not well written, e.g. it says "toolsets" and then "tools set" in the same paragraph)10:43
tristan... unless we have people wanting to work on making that separate About page better, my vote would be to make the About in the website just be a link to https://docs.buildstream.build/main_about.html10:43
tristanI don't really disagree with Agustin that the main website has a different target audience than the documentation distributed with source code (but having both takes more effort)10:44
tristanMy comment above "Although tech wise, it makes sense... we can't realistically use the same source for the about page on the website" <-- scratch that, I blurted that out before thinking of making it be a link :)10:45
*** lachlan has quit IRC10:46
tristanOh, and laurence ... maybe jjardon means that, but *I* mean: https://buildstream.build/about.html and https://docs.buildstream.build/main_about.html10:47
tristanThe face page of the website is not the about page, I would vote to remove https://buildstream.build/about.html and link to https://docs.buildstream.build/main_about.html (unless we want to put a lot more effort in the website)10:47
tristanA little off topic but... I still really like the idea of making https://buildstream.build/news.html a "planet", i.e. an aggregation of the buildstream related blog posts of buildstream developers10:56
persiaTricky balance there.  Planets work best with 10+ people promising to publish with the right tags.10:59
persiaIf there are only a couple people posting, maybe better to manage directly.10:59
tristanpersia, Do you think ?11:03
tristanI don't know11:03
tristanpersia, I would say that there should be an upstream blog where releases are announced in the release process which is also aggregated there11:04
persiaTechnnically, it doesn't matter: one way involves automatically scanning sources and aggregating them, the other involves manually scanning sources and either aggregating them or publishing new ones.11:04
tristanBut it doesnt hurt to intersperse that with *any* related blogging activity which might happen in between, however sparse11:04
tristanI.e. it would be nice to have the blog about how valentind built a flatpak and snap of firefox using buildstream up there11:05
persiaSocially, I find people are more likely to publish to a planet when the set of publishers is not a "small special group", and I believe humans think about groups such that one needs at least 8 (and preferably 10) people to overcome the idea of "small special group".11:05
tristanOr have any exciting blog posts about conferences like "Build Meetup" there11:05
tristanA trap I think we *definitely* dont want to fall into, is copy/pasting verbatim from peoples blogs11:06
persiaAnd it can hurt to intersperse with other content from the same authors, depending on the nature of the content.  Best to only include things for a given tag.  I remember a situation years ago with another planet where someone published everything, and everyone else got mad because of what they wrote about *entirely other things* on their blog.11:06
tristanBut planets do have that feature right ?11:07
persiaI don't consider copy/paste verbatim to be a "trap".  It's doing something manually that could be automated.11:07
tristanPeople would have to tag their posts "buildstream"11:07
tristanpersia, that is a sort of trap, as in it prevents content from showing up until someone eventually gets around to doing it :)11:08
persiaPlanets don't have that feature, but the underlying syndication protocols do allow one to specify a tag (so the planet can be configured to pull a tag using the syndication protocol feature), and most publishing engines that support the syndication protocols support tags in a compatible way.11:08
tristanOf course that is the kind of tedium you can expect to never end up really happening :)11:08
persiatristan: You and I are violently agreeing.  I'm saying "doing it manyally is OK as long as the person doing it is willing to do it manually promptly" and you're saying "doing it manually is risky because some people don't want to do it manually promptly".  Two sides of the same blade.11:09
tristan:)11:09
tristanAnyway I think it would be a great thing for publicity, we only seem to disagree because you think a "planet" as a wide open group kind of thing, I understand that perception11:10
tristanI am thinking of using planet like software to facilitate the generation of interesting project new feed :)11:10
tristanWhich I would expect to have different perception11:10
persiaBut my point is that if news is published though aggregation, and there are only two or three syndicate feeds listed, the social barrier to volunteering one's content to be syndicated is high: getting over that benefits from an active editor/curator who is seeking to republish content and can help guide people on what sorts of excellent posts they are already publishing should be syndicated to the buildstream news page.11:11
tristanI see what you mean yes11:11
persiaOnce the number of publishers is high enough, then there's less need for active editing/curation, because a sense of appropriate content develops as a result of past contnt.11:11
persiaAnd telling the editor to use planet means the editor is begging publishers to add the tag to the publication engine, have the right syndication protocols, etc.  At low volume, it's easier to just ask permission to copy the content.11:12
tristanpersia, if I were to reach back to say https://glade.gnome.org/, we actually do all that news section manually in python and it has an rss feed, but even if way back when it was only mine and xjuan's blogs being sindicated on our page, it would have been great11:13
tristanthen when we had some contributor come up and do like... a whole couple month project (happened occasionally), we'd probably naturally invite them to have their related posts syndicated11:13
tristanOf course it takes someone to reach out to an idividual and say "Hey, why not syndicate these posts on our site !" :)11:14
persiatristan: Yep.  I think starting from the viewpoint of syndication is best, but I think it is up to the editor how they wish to handle that until the volume is high enough that automation is a net benefit.  You and xjuan are a special group who happen to use the same classes of blog engine and syndication protocol.11:14
tristanHere I was thinking that RSS was like, already something stable and reliable11:15
persiaSo, maybe start with planet (if the editor is comfortable and has a planned workaround to deal with incompatible publishing engines) or start with manual, while educating the author community, and then switching to planet later.11:15
tristanI guess we can't ask for things to come in standard formats :)11:15
persiaRSS and ATOM are fairly common, but there are others as well.11:15
persiaLast time I looked at a planet config, I think there were something like 6 syndication protocols supported.  I haven't looked at what protocols are supported by engines ever, but I imagine it to be a larger number than are supported by the readers and planets, etc.11:16
persia(and as each syndication protocol has new useful features of various sorts, there's all sorts of compatibility issues to get around: I remember one planet ending up publishing an RSS update every time someone commented on a post by a specific author (who was using a richer syndication protocol that the planet software didn'T support properly).11:17
gitlab-br-botBenjaminSchubert opened (was WIP) MR !1467 (bschubert/node-api-split->bschubert/new-node-api: Split the yaml API, document and final fixes) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/146711:22
benschubert^ tristan I'd appreciate a thorough review if you have time! That's the final part before making the MR to master11:22
*** lachlan has joined #buildstream11:22
tristanRight !11:24
benschubertand this is in what I expect to be the final state :)11:25
*** lachlan has quit IRC11:30
*** laurence has left #buildstream11:33
*** laurence has joined #buildstream11:33
*** lachlan has joined #buildstream11:52
*** lachlan has quit IRC11:59
*** bochecha has quit IRC12:19
*** bochecha has joined #buildstream12:20
benschuberttristan: just to make sure I understood https://gitlab.com/BuildStream/buildstream/merge_requests/1467#note_191227172 correctly, wherever we access Nodes that is not under src/buildstream/!plugins we should be importing from buildstream, correct? That means also for tests13:00
tristanbenschubert, Yeah that should mean also for tests13:12
benschuberttristan: for tests that do 'from buildstream.node import Node', should we have them do 'from buildstream import Node' ?13:13
tristanbenschubert, we have always exported public symbols in the toplevel __init__.py, so that we always have the freedom to move things around at will without affecting the public interface generally13:13
tristanbenschubert, Yes I think so13:13
benschubertok! I'll modify all of this then, thanks!13:14
tristanI mean, for tests it's less sensitive because we can control them, but of course when refactors happen which move internal modules around; having the tests behave the same reduces churn13:14
benschubertagreed13:14
tristanNot that I think it's likely that we'll move Node, but just as a general rule :)13:14
benschubertI'll amend the commit that does the split with this13:14
tristanconsistency and all13:15
benschubertyep, I'll expose '    from .node import MappingNode, Node, ProvenanceInformation, ScalarNode, SequenceNode', is that fine with you?13:15
tristanYeah that looks right :)13:15
benschubertoh and thanks, I didn't realize the doc would be generated correctly for implementation of abstract methods :D I'll split implementations in their own part13:30
benschubertDo you prefer it usually before or after the new buildstream-private methods?13:30
tristanbenschubert, lets follow what element/source do... that appears to be abstract method implementations first13:32
tristanoh wait13:32
tristanNo13:32
tristanbenschubert, sorry... That is "Abstract method *definitions* come first" in element13:33
benschubertwhich is the same in Node :)13:33
tristanAppears that it does not implement anything abstract from Plugin base class so we don't really have precedent in Element/Source13:33
benschubertyep, so which precedent do we want to set? I'd be to have them after, since we don't really need them to be super discoverable and mix match public + private13:34
tristanbenschubert, I'm rather ambivalent if there is no precedent... public always comes before private though, and this is confusing in this case because we have both public AND private abstract methods to implement13:34
benschubertor do we want public, public implem, private, private implem, local ?13:35
tristanbenschubert, I think I like that last thing yeah, that looks good13:35
benschubertperfect, thanks!13:35
*** lachlan has joined #buildstream13:40
*** lachlan has quit IRC13:51
benschuberttristan: I think I addressed all your comments, would you have time to validate them and do a second round?13:56
* tristan reloads page...13:59
tristanit takes time :)13:59
benschubertYeah :/ I'm not happy about the size of this change but think it was the only way x)14:00
*** traveltissues has quit IRC14:01
*** lachlan has joined #buildstream14:01
*** traveltissues has joined #buildstream14:01
tristanbenschubert, I can't see easily from the patch, but are Element.get/set_public_data() signatures / docs updated ?14:08
tristanDo they now work with MappingNode ?14:08
tristanmaybe it's in a different patch14:09
benschubertlet me double check14:09
benschubertit fell through the cracks, thanks :D14:09
tristanbenschubert, also did my _composite_under() nitpick comment get through gitlab ? it seems to have disappeared14:15
tristanbenschubert, Was just suggesting that instead of documenting this as "composites the source under the target instead" like that, could we just rename the 'target' parameter to be 'source' instead ? that seems a bit more clear14:16
tristanactually I don't care a great deal about it, but it seems gitlab didnt pick it up14:17
benschuberttristan: it did and I answered it14:17
benschuberthttps://gitlab.com/BuildStream/buildstream/merge_requests/1467?commit_id=396898ad15bc41bc2e00cd5b7251278223bf0d07#note_191262925 here!14:17
tristanStrange I'm not seeing it in the full diff :-/14:18
tristanbenschubert, Sure, no worries :)14:18
tristanbenschubert, Ok I don't think I will get through all the comments and resolve them by hand, but I think we're definitely good enough to go with this14:21
tristanprobably wanna catch that get/set_public_data() thing14:21
tristanbenschubert, Of course get/set_public_data() is of special interest because I'm interested to see what the port of the debian plugins which use it extensively will look like :)14:21
tristanI suppose it may involve some Node.from_dict() going on in there14:22
benschuberttristan: fix pushed for this one :D14:22
tristanThat's kind of one of the things which triggered this big refactor14:22
benschubertSo if you're happy with this change and can approve it, I'll just wait until Kinnison gave me his last feedback, merge it and make the final PR14:23
benschuberthttps://gitlab.com/BuildStream/buildstream/merge_requests/1467/diffs?commit_id=77d65eeb9bc8ad256e52e937bb866ce81caee6bf for the public_data doc change14:24
tristanbenschubert, I have to say I am a *bit* concerned still, there are parts of those porting patches which I pointed to (the patches in bst-plugins-experimental) which: (A) Gets public data from dependencies recursively... (B) Does some python dict manipulations, essentially creating a report of those... (C) Sets the result of that as a dictionary as it's own public data14:25
tristanI wonder what those will look like as a result of this14:25
benschuberttristan: do you have a link?14:25
tristanhttps://gitlab.com/BuildStream/bst-plugins-experimental/merge_requests/4/diffs?commit_id=9789013079fa11d1b144cb516c55ffc709bbcfd314:26
benschubertwe always have the option of making 'strip_node-info' public in the worst case14:26
tristanIt's linked to from the original issue which this branch should probably be made to close: https://gitlab.com/BuildStream/buildstream/issues/100614:26
tristanthere are two links to patches from that issue, which are samples of things we do with public data14:27
gitlab-br-bottristanvb approved MR !1467 (bschubert/node-api-split->bschubert/new-node-api: Split the yaml API, document and final fixes) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/146714:28
* tristan uses the approve button14:28
benschuberttristan: is the 'collect_manifest' well tested? If so, I can have a go at porting it to the new API and if we need something more in the API, I'll  add it14:28
tristanUnfortunately not I don't think so14:29
tristanI think it fell through the cracks on my first attempt, and I needed to do a full build to catch it14:29
benschuberta full build of freedesktop?14:29
tristanbenschubert, however the nightly BuildStream CI should probably exercise it (the one which I think is again failing by jjardon's latest account)14:29
tristanyeah14:29
benschubertok!14:30
benschubertI don't think I'll have time this week, but I can have a  look next week at building it entirely and fix the experimental plugins14:30
tristanthe debian plugins on the other hand are well tested (but not *used* to my knowledge)14:31
tristanironically we have tests for the plugins we don't use and not the other way around haha14:31
tristanBut my suspicion is that *you* do use the debian plugins :)14:31
benschubertalso from experimental, correct? Then I'll look at this ;)14:31
tristan(we did make them for your team originally after all)14:31
tristanyeah they are from bst-plugins-experimental, ported over from bst-external14:32
benschubertok, once the yaml changes are in, I'll have a look14:34
gitlab-br-bottraveltissues approved MR !1451 (becky/tar_compression->master: Allowing `bst artifact checkout --tar` to use compression) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/145114:42
gitlab-br-bottraveltissues unapproved MR !1451 (becky/tar_compression->master: Allowing `bst artifact checkout --tar` to use compression) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/145114:49
*** tristan has quit IRC14:54
*** tristan has joined #buildstream15:07
*** lachlan has quit IRC15:08
*** traveltissues has quit IRC15:09
*** traveltissues has joined #buildstream15:09
*** lachlan has joined #buildstream15:40
*** lachlan has quit IRC15:45
gitlab-br-botBenjaminSchubert merged MR !1467 (bschubert/node-api-split->bschubert/new-node-api: Split the yaml API, document and final fixes) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/146715:47
gitlab-br-botBenjaminSchubert opened MR !1472 (bschubert/new-node-api->master: Rewrite of the Node API) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/147215:56
*** tpollard has quit IRC15:56
benschuberttristan: ^ here is the final MR!15:57
*** xjuan has joined #buildstream16:10
*** lachlan has joined #buildstream16:10
*** lachlan has quit IRC16:14
*** alexandrufazakas has quit IRC16:16
*** bochecha has quit IRC16:18
*** lachlan has joined #buildstream16:24
*** traveltissues has quit IRC16:26
gitlab-br-botjennis approved MR !1451 (becky/tar_compression->master: Allowing `bst artifact checkout --tar` to use compression) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/145116:34
*** lachlan has quit IRC16:35
*** lachlan has joined #buildstream16:39
*** traveltissues has joined #buildstream16:54
*** jonathanmaw has quit IRC17:01
traveltissuesjuergbi, benschubert , do you have further comments on https://gitlab.com/BuildStream/buildstream/merge_requests/146617:01
gitlab-br-botBenjaminSchubert approved MR !1466 (traveltissues/cache-key-changes->master: element.py: changes to __cache_key_dict) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/146617:02
benschuberttraveltissues: I don't, thanks!17:02
traveltissuesthanks17:04
gitlab-br-botmarge-bot123 merged MR !1466 (traveltissues/cache-key-changes->master: element.py: changes to __cache_key_dict) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/146617:06
*** rdale has quit IRC17:14
gitlab-br-bottraveltissues approved MR !1452 (raoul/994-further-re-testing->master: Further RE testing) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/145217:38
*** tiagogomes has quit IRC17:55
*** lachlan has quit IRC17:57
*** traveltissues has quit IRC18:00
gitlab-br-botmarge-bot123 closed issue #994 (Further remote execution testing) on buildstream https://gitlab.com/BuildStream/buildstream/issues/99418:06
gitlab-br-botmarge-bot123 merged MR !1452 (raoul/994-further-re-testing->master: Further RE testing) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/145218:06
*** xjuan has quit IRC18:09
*** xjuan has joined #buildstream18:40
*** xjuan has quit IRC19:06
*** bochecha has joined #buildstream19:16
*** cs-shadow has quit IRC20:08
*** slaf has quit IRC21:25
*** slaf has joined #buildstream21:27
*** slaf has joined #buildstream21:27
*** bochecha has quit IRC22:35

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