IRC logs for #buildstream for Wednesday, 2019-06-05

*** tristan has quit IRC05:40
*** tristan has joined #buildstream06:02
*** Kinnison has joined #buildstream06:52
*** tristan has quit IRC07:41
*** bochecha has joined #buildstream08:04
*** tristan has joined #buildstream08:06
*** pointswaves has joined #buildstream08:08
*** rdale has joined #buildstream08:10
*** phil has joined #buildstream08:11
*** pointswaves has quit IRC08:17
*** raoul has joined #buildstream08:48
gitlab-br-bottpollard approved MR !1371 (bschubert/cythonize-valid-char-names->master: _loader/loader: cythonize valid_chars_name) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137108:54
benschubertjennis: you are a maintainer for bst-plugins-experimental, correct? https://gitlab.com/BuildStream/bst-plugins-experimental/merge_requests/12 :)09:30
jennisNot that I'm aware of, I think the MAINTAINERS file was just copied from bst-external, but I'll have a look nonetheless09:33
benschubertah, do you know who's responsible?09:33
jennisIIRC, jjardon created the repo09:36
jennisbut this might have just been him actioning a stalling process09:36
*** jonathanmaw has joined #buildstream09:36
jennisI think I have merge rights, so I'll review09:37
*** lantw44 has quit IRC09:37
*** lachlan has joined #buildstream09:51
jennisbenschubert, do you mind if I push a commit to your branch, there is a typo in the ostree documentation09:56
jennisMay aswell bundle it in with this MR09:57
benschubertsure09:57
benschubertgo for it09:57
benschubertI'll have another PR in 2 minutes for more changes09:57
benschubertand then a bigger one a bit later on09:57
jennisCool09:58
*** lachlan has quit IRC09:58
jennisahh benschubert, turns out the typo is referring to an invalid cross reference to somewhere in BuildStream's core docs10:05
jennis<benschubert> Do we have a good way for linking to the BuildStream doc from a plugin's docs?10:05
jennis^ Is one of your MR's for this? Or did you find a way to do this?10:06
benschubertjennis: then wait for my new MR ;)10:06
benschubertit's coming10:06
jennishaha, good timing10:06
jennisLet me merge this one10:06
jennisoh... in fact I don't have write access :@10:07
benschubertphil: you have access to bst-plugins-experimental, correct?10:08
jennisbenschubert, done10:10
benschubertjennis: https://gitlab.com/BuildStream/bst-plugins-experimental/merge_requests/13 is with the additional changes10:10
philbenschubert, I do. I've given jennis access.10:11
*** bilelmoussaoui has quit IRC10:11
benschubertthanks a lot!10:11
*** lachlan has joined #buildstream10:11
benschubertI'll be moving the ostree examples to plugiins-experimental too10:11
benschubertin order to cleanup buildstream master10:11
philCool. Feel free to poke me for reviews when you want them :)10:13
*** ChanServ sets mode: +o tristan10:14
tristanWasn't the plan to move all the plugins to a single repository (bst-plugins-experimental I presume being the logical choice) as a first step of moving plugins out of BuildStream ?10:14
benschuberttristan: I think so yes. I'm only moving examples using ostree that were kept in buildstream when moving ostree to plugins-experimental10:14
benschubertI think it makes little sense to keep the examples for flatpak with ostree in the master, if you need all the plugins from experimental for it10:15
tristanYeah, I'm just whining again that ostree (like one of our most important plugins) got moved out in advance10:15
jennisbenschubert, some of the documentation examples in core use the ostree plugin to build, I'm not sure what we should be doing about this10:15
benschubertjennis: i'm moving them to bst-plugins-experimental10:16
tristanAnd was sort of hoping that we'd acknowledge that moving ostree outside was just shifting the same problem from one place to another10:16
tristanbut meh10:16
jennisbenschubert, we can't move BuildStream's example documentation to bst-plugins-experimental10:16
benschuberttristan: that is definitely correct, however, ostree was bringing lots of host dependencies not necessarily available on more legacy systems10:16
benschubertjennis: only the ostree-using part, which is two examples10:16
jennishttps://buildstream.gitlab.io/buildstream/examples/flatpak-autotools.html10:16
tristanbenschubert, Right, and that was rather the point: Moving all the plugins to bst-plugins-experimental puts them in a place where ostree also is10:17
cs-shadowtristan: I seem to remember the discussion differently. I thought we were going to move plugins to domain-specific repos. I am not sure what it accomplishes to move all plugins if we are again to lump them in the same place10:17
tristanproving that we're not getting rid of the problem anyway, and that anyway, the install of ostree is an optional one (it's not a hard dependency and never was)10:17
tristancs-shadow, The conversation was long and painful, find the summary... ok I'll find it10:17
benschuberttristan: "make doc" fails on my system because I don't have ostree, that's not super friendly :)10:18
tristancs-shadow, this: https://mail.gnome.org/archives/buildstream-list/2019-April/msg00082.html ... and then there is another final summary to that10:19
tristancs-shadow, was sander who suggested we move everything in one block, and then later go domain specific10:20
tristanbenschubert, building the docs shouldnt require plugins, only if you are regenerating the bst outputs, which I believe needs to be explicit (with some env var)10:21
cs-shadowyeah, i mean incremental progress is fine. I only mean that it's not the endgame to have all plugins end up in one repo10:21
tristanthat was very intentional that nobody should need to download a runtime just to test some changes to a docs contribution10:21
tristancs-shadow, You know my stance on that - they need to be all in the same repo if they they are going to installation bound instead of project bound, and if they are project bound, we need a better way to get it done than git submodules10:22
tristanbut whatever, not happy with this plugins story one bit, I'll stop pouting and keep my discontent to myself10:23
* cs-shadow isn't supper happy about it either but isn't looking forward to more lengthy ML threads :)10:24
tristanyeah, better wait a couple years and then think about creating something that is user ready after all the dev dies down10:28
benschuberttristan: I was trying to force the rebuild yes10:28
benschubertIf I interpret this correctly, you'd rather not have this moved to bst-experimental?10:28
tristanbenschubert, Originally "If you had BuildStream, then you had all the upstream core plugins, period; if you are missing a host dependency for a project, it will kindly tell you in preflight()"... and if you want to use any *other* plugins, then they should be project specific, shared amongst projects, and always safe to clash with other projects you junction depend on because plugins are namespaced by project10:30
tristanbenschubert, Now - people started shipping plugins with pip, can of worms starts opening, now people are sharing unstable plugin collections that are installation bound, rather than project bound as they were intended10:31
tristanNow we wanna split everything out, plot thickens10:31
tristanNot really fun10:31
* Kinnison was never particularly happy with the idea of pip sourced plugins10:32
benschuberttristan: Ok, let me backtrack a bit. The reason why I wanted to move the ostree examples to bst-plugins-experimental, is because we have some HAVE_OSTREE in a tests/testutils/sites.py. I wanted to get rid of this tests/testutils/sites.py since we already have buildstream/testing/site.py. For me the logical conslucion is to move the ostree stuff out since we moved the plugin away. I can hide it in BuildStream if that's what you want10:33
* cs-shadow humbly disagrees but doubts we'll resolve it here and now10:33
persiacs-shadow: From curiosity, with which bit do you disagree?10:34
benschuberttristan: So, would you rather have the sites.py stuff concerning ostree be moved to the ostree example so everything is at the same place, or that we move the ostree-using documentation to where ostree plugin lives?10:35
cs-shadowpip: couple of things but 1. that pip has somehow caused people to share unstable plugins. `pip` is just a delivery mechanism, everyone was free to share whatever plugins they wanted anyway10:35
cs-shadowand also that external plugins have to project bound. If core plugins aren't, I am not sure why external plugins have to be10:36
cs-shadowpersia: ^10:36
persiacs-shadow: Thanks: that makes sense.  I just wasn't sure if you disagreed with the plugin model or with moving the examples from first gloss :)10:38
cs-shadowpersia: oh sorry, I could've been clearer10:38
persiaNo worries :)10:39
tristancs-shadow, Before pip origin there was no opportunity for project authors to share plugins that are (incorrectly) installation bound instead of project bound10:41
tristancs-shadow, that was just a mistake we made, our reasoning being that "If buildstream installs it's own plugins, shouldnt it be possible to install other system wide packages alongside BuildStream" ? Yeah, but we got it wrong10:41
* Kinnison advocates removing that plugin source for bst210:43
tristanbenschubert, I'm not sure honestly about that - do we want to fragment the tutorial documentation just because the plugins are fragmenting ? Not sure that is a great idea10:43
cs-shadowtristan: of course shipping all plugins ourselves will be the simplest but I think the power of buildstream comes from being extensible, not from having an all-encompassing set of core plugins10:44
tristanbenschubert, Anyway sorry if I am a bit bitter, it is mostly about the knee-jerk nuking ostree plugin itself from BuildStream and treating it differently than everything else which was bothering me10:44
benschuberttristan: agreed. So isolating it inside the ostree example would be ok with you?10:44
tristancs-shadow, There are two sides of this: Extensible is important, but by design this extensibility is on a per-project basis: The project itself decides exactly which plugin to use; it should never be influenced by what version of what package someone decided to install *beside* buildstream10:45
tristancs-shadow, the other side of it is providing a useful base set of plugins which we can control and really guarantee API stability on10:46
tristanbenschubert, Don't we need the ostree plugin for many tutorials ? Some of them use the alpine tarball, then there is the flatpak example also which needs ostree10:46
benschuberttristan: from what I saw only the autotools-flatpak requires it10:47
benschuberthence why I thought moving it was the best10:47
tristanbenschubert, anyway I won't object to moving things around, but someone needs to come up with a plan on how to index this material conveniently :-/10:47
benschubertAgreed10:47
benschubertI'll keep it in for now10:47
benschubertisolating it more10:47
jennisbenschubert, tristan, tlater[m] is working on replacing this alpine tarball import with freedesktop, which will need ostree10:48
jennisJust a heads up10:48
jennis!130010:48
gitlab-br-botMR !1300: WIP: Use freedesktop-sdk as a base for tutorials as much as possible https://gitlab.com/BuildStream/buildstream/merge_requests/130010:48
benschubertjennis: ah ok, I'll keep that in then10:48
tristanThat is also true, but it could technically not use ostree if a tarball were generated instead10:48
tristanIt would have to be hosted, but the point of that MR is to prove some self hosting here - it makes sense to make examples which run from a runtime that is created with BuildStream10:49
jennistristan, I had a brief conversation with tlater about this MR, I think he wanted to implement this change because the tutorial will show the power/benefits of buildstream, i.e. here are all my components that I'm depending on, not just, let's unpack this tarball which is hosted somewhere random and build on top of it10:52
jennistherefore I'm not sure if a freedesktop tarball is the way he'd want to go, but I don't wanna speak for him :p10:52
tristanjennis, I think that whether it comes in the form of a tarball or not is irrelevant; it is the fact that it was generated with BuildStream that is interesting11:01
tpollardhaving the artifact command have a --remote option is something that I'd like to see11:05
tpollardif that's the correct place for that11:05
benschuberttpollard: thanks for the heads up, I need to answer to that message11:06
tristantpollard, Right, I only summarized what was in the mails from last year, we didn't discuss that before11:07
tristanbut it would be a good thing to discuss indeed - and raises the question of how that factors in with the same option for `pull` and `push`11:07
tpollardyep! it's good to have the summary11:07
tpollardbuild also has the --remote constraint too, but obviously that's not under the artifact subgroup11:08
tristanright I guess anything that can pull/push currently can have a remote specified on the CLI - maybe that should also now include even commands like workspaces or shell11:09
tpollardalso have the artifacts be proto based, gives us the possibility to encode more information into that which could be beneficial to show/list-content etc11:09
tpollard*having11:10
tristansince we (A) now have SourceCache ... oh maybe that doesnt apply to workspaces anyway... and (B) ... shells can result in pulling a buildtree11:10
tpollardI was thinking maybe the size is a candidate to be included in the proto, which would be quicker to query11:10
tristanIn general... the list-content idea has a similar problem to sources... and the fact that we don't have something to show source urls is already kind of problematic11:11
tristanthe similarity of the problem is that it is a list member of an element/artifact (and so doesnt work very well with `bst show` format strings)11:11
tristanwould be nice if someone had a genius idea of how to express what we want to see from a list of things in an element from a sort of bst show command11:12
tristanI haven't thought of anything particularly elegant for that11:12
tristanAnother case of "Shucks we have no way to observe sources": https://gitlab.com/BuildStream/bst-plugins-experimental/issues/211:13
tristan(and honestly, it would also be practical to be able to say "Show me the sources which went into this artifact", as much for an artifact as for an element)11:14
tpollardI agree11:14
*** bochecha_ has joined #buildstream11:22
*** bochecha has quit IRC11:24
*** bochecha_ is now known as bochecha11:24
*** bilelmoussaoui has joined #buildstream11:35
*** bochecha_ has joined #buildstream11:37
*** bilelmoussaoui has quit IRC11:38
*** bochecha has quit IRC11:40
*** bochecha_ is now known as bochecha11:40
*** slaf has quit IRC11:45
tristanjennis, So you are asking specifically about storing _depth on elements ? or the patch in general11:53
tristanI just went for a walk through the comments and the MR certainly looks promising (!1344), and it seems juergbi and benschubert have been closely reviewing this11:53
jennisThe former, purely because it's probably not inherent to Element, but we can't think of a better way to do it and it's not that bad11:54
tristanWell, that part seems to be quite fine to me, it makes sense to cache some things to make graph traversals more performant11:54
jennisCool, I'm glad you said that11:55
tristanI'm very interested to see performance impacts of eliminating calls to Element.dependencies() in cache key calculations (i.e. accumulative cache key building)11:55
tristanI guess that hasn't been tackled yet :)11:55
jennisYeah me too, this will happen once the concept of update sate is (eventually) removed11:58
jennisOk, I guess that once benschubert's comment about the RequiredQueue is resolved, we can think about marging this :)11:58
tristanjennis, Just added a few comments there, mostly about lack of comments12:07
*** slaf has joined #buildstream12:12
*** slaf has joined #buildstream12:12
*** lachlan has quit IRC12:16
*** slaf has quit IRC13:08
jennishah, ok thanks tristan13:10
*** tpollard has quit IRC13:24
*** tpollard has joined #buildstream13:25
*** tristan has quit IRC13:37
*** slaf has joined #buildstream13:38
*** slaf has joined #buildstream13:38
*** slaf has joined #buildstream13:38
*** slaf has joined #buildstream13:38
*** slaf has joined #buildstream13:39
*** slaf has joined #buildstream13:39
*** slaf has joined #buildstream13:39
*** slaf has joined #buildstream13:40
*** lachlan has joined #buildstream13:48
gitlab-br-botaevri opened MR !1373 (aevri/defensive_send_message->master: _scheduler/jobs: refactor, defensive send_message) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137313:49
benschubertcould someone wake marge up please? :)14:08
* jennis will see what he can do14:09
jennisShe should be restarted...14:13
benschubertthanks!14:13
*** tristan has joined #buildstream14:19
*** lantw44 has joined #buildstream14:25
gitlab-br-botBenjaminSchubert opened MR !1375 (bschubert/site-consolidation->master: Remove tests/testutils/site.py and move everything to buildstream/testing/_utils/site.py) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137514:25
gitlab-br-botmarge-bot123 merged MR !1334 (aevri/split_jobs_parent_child->master: Split ChildJob out from Job class) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/133414:40
benschuberttristan: !1375 is my cleanup of the _site_ business if you are interested14:41
*** bilelmoussaoui has joined #buildstream14:44
*** bilelmoussaoui has quit IRC14:53
*** lachlan has quit IRC14:54
gitlab-br-botaevri opened (was WIP) MR !1374 (aevri/spawk->master: Rename (spawn, fork) -> 'start process') on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137414:57
gitlab-br-botaevri opened (was WIP) MR !1373 (aevri/defensive_send_message->master: _scheduler/jobs: refactor, defensive send_message) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137314:57
*** lachlan has joined #buildstream15:00
gitlab-br-bottpollard approved MR !1374 (aevri/spawk->master: Rename (spawn, fork) -> 'start process') on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137415:03
gitlab-br-botmarge-bot123 closed issue #1025 (AaaP follow-up: Handling of legacy remotes & CAS/Artifact services) on buildstream https://gitlab.com/BuildStream/buildstream/issues/102515:14
gitlab-br-botmarge-bot123 merged MR !1366 (raoul/1025-legacy-remotes->master: Improved handling of legacy remotes) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/136615:14
tpollardwoo \o/15:14
* tpollard uncomments legacy remotes from his user conf15:16
*** bochecha has quit IRC15:30
*** phildawson_ has joined #buildstream15:34
*** phil has quit IRC15:35
gitlab-br-botmarge-bot123 merged MR !1371 (bschubert/cythonize-valid-char-names->master: _loader/loader: cythonize valid_chars_name) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137116:13
*** bochecha has joined #buildstream16:15
*** xjuan has joined #buildstream16:19
*** phildawson_ has quit IRC16:30
*** shibu has joined #buildstream16:48
*** paulsherwood has quit IRC17:04
*** paulsherwood has joined #buildstream17:05
*** ikerperez has quit IRC17:05
*** adds68 has quit IRC17:05
gitlab-br-botBenjaminSchubert opened MR !1376 (bschubert/pylint-integration->master: Ensure pylint runs in tests/integration) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137617:12
*** raoul has quit IRC17:12
gitlab-br-botBenjaminSchubert opened MR !1377 (bschubert/pylint-artifactcache->master: Ensure pylint runs in tests/artifactcache) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137717:45
*** shibu has quit IRC17:45
*** shibu has joined #buildstream17:46
*** jonathanmaw has quit IRC17:56
*** CTtpollard has joined #buildstream17:57
*** tpollard has quit IRC17:59
gitlab-br-botBenjaminSchubert opened MR !1378 (bschubert/pylint-fixes->master: Ensure pylint runs in some tests paths) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137818:01
*** slaf has quit IRC18:06
*** bochecha has quit IRC18:07
*** laurence has quit IRC18:22
*** bethw has quit IRC18:23
*** johnward has quit IRC18:23
*** jennis has quit IRC18:23
*** WSalmon has quit IRC18:23
*** valentind has quit IRC18:24
*** pointswaves has joined #buildstream18:24
*** WSalmon has joined #buildstream18:27
*** valentind has joined #buildstream18:27
*** laurence has joined #buildstream18:31
*** bethw has joined #buildstream18:31
*** johnward has joined #buildstream18:31
*** jennis has joined #buildstream18:32
*** xjuan has quit IRC18:54
*** shibu has quit IRC19:00
*** lachlan has quit IRC19:14
*** slaf has joined #buildstream20:52
gitlab-br-botBenjaminSchubert opened MR !1379 (bschubert/optimize-loader-types->master: Optimize _loader/types.py) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/137921:46
*** pointswaves has quit IRC22:12
*** hergertme has quit IRC23:39
*** hergertme has joined #buildstream23:40

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