IRC logs for #buildstream for Thursday, 2019-10-10

*** tristan has joined #buildstream00:08
*** ChanServ sets mode: +o tristan00:25
tristanjjardon, Personally my preference would be to put everything into 'experimental' without prejudice, even for plugins which have been 'stable' for a long time00:25
tristanThe main reason for this is that it would cause us to create a process/story, eventually, for how plugins stablize and then graduate to stable repositories (regardless of how those end up being grouped)00:26
tristanBut I think what has been happening is a bit more arbitrary, and I don't have objections... this was my recommendation though some time ago00:27
persiaIf we're not doing one-plugin-per-repo, I think mixing status and name is correct (consider gstreamer's "good", "bad", and "ugly")00:57
persiaBut we do have to think about a policy to cause things to move out of experimental (and what to call them if/when they do)00:57
tristanand if we're doing the former, then we need to think about maintaining an index to those which have stability guarantees01:04
tristananyway it's been discussed to death :)01:05
persiaYes :)01:11
jjardonpersia: good bad ugly is not related with API stability02:26
jjardonFor example ugly is for plugins with problematic because licensing or patents02:31
persiaSure, but bad is a mix of the unmaintained, the bitrotted, and the experimental02:33
persiaWhereas good is license-safe (or broadly so, at least), working, and maintained.02:34
* persia thinks gstreamer's semantics are clear, unambiguous, and accessible02:34
* jjardon wishes we could have the same02:35
persiaThen let's do that.02:35
persiaI assert -experimental is equivalent to -bad02:36
persiaSo to sort things into good and ugly, we need some guidelines on what makes something compliance-safe, and what is required to be blessed.02:36
persiagstreamer requires a maintainer, a working test suite, independent code review, proper documentation, and evidence of wide use to promote from -bad to -good.02:37
persia(note, this discussion has to actually happen on the mailing list to mean anything: consensus here isn't binding by current buildstream governance)02:38
persiaBut I don't think *any* of the BuildStream plugins achieve gstreamer-good level at this point.  Some begin to be close, but others less so.02:39
persiaAnd I don't think any of the code in -experimental would qualify as -ghly at this point.02:40
jjardonSounds like a plan!02:50
*** jswagner has joined #buildstream03:21
*** jswagner has joined #buildstream03:26
*** narispo has quit IRC04:12
*** narispo has joined #buildstream04:12
*** bochecha has quit IRC07:43
*** traveltissues has joined #buildstream07:46
juergbijjardon: have you seen my comment on #1165?07:47
gitlab-br-botIssue #1165: Architecture support should not be hardcoded in the tool https://gitlab.com/BuildStream/buildstream/issues/116507:47
benschubertpersia: the problem with 'good' and 'bad', is that what if one 'good' plugin looses its maintainer and nobody comes up? do we move it to bad? If so, does that mean users will have to suddenly install 'bad' in addition because they were relying on this plugin? A theme-related or per-plugin repo still seems easier in that matter07:51
*** bochecha has joined #buildstream07:54
juergbiI also prefer per topic or individual plugin repositories. -experimental as incubator could be ok07:55
juergbihowever, I don't really see an advantage of a single -good repo compared to just keeping all good plugins in the core repo07:55
juergbii.e., it has all the downsides of keeping the plugins in the core repo but is slightly less convenient07:57
benschubert^ I concur, seems like all the inconvenients for no advantages07:59
*** toscalix has joined #buildstream08:01
coldtomwould it not be possible to have all the plugins in a single repo, but distributed as different python packages?08:04
coldtomsurely there's some setuptools magic for that08:04
benschubertthe problem with that is maintainership. Some plugins might not hav emaintainers, and that would add burden to people that do not care/know anything about the said plugin :) So it wouldn't make is easier to maintain either08:06
benschubert-the problem +one problem08:06
juergbicoldtom: what would the advantage be compared to a single repo per package?08:14
coldtomjuergbi: migration of plugins between packages is easier, distro packagers only have to care about a single git repo for plugins, it's easier to upstream plugins because it's obvious where they need to go, maintenance cost of a single repo is less than the maintenance cost of half a dozen repos (at least afaict)08:18
juergbiit depends on who maintains which plugin, I suppose08:20
juergbiif different plugins are maintained by different (sets of) maintainers, I would definitely go for multiple repos08:20
juergbiif they are all co-maintained by the same group of BuildStream (core) developers, a single repo could make sense08:21
juergbibut in that case it could also be in the core repo08:21
coldtomi think there is still a benefit to being outside of the core repo, for example the ostree plugin was moved out of core for dependency reasons08:24
juergbiif the plugins are individually installable (which would also have to be the case for a single external repo), I don't see a real difference08:26
*** mohan43u has joined #buildstream08:31
*** tpollard has joined #buildstream08:33
*** tiagogomes has joined #buildstream08:38
*** sistex has joined #buildstream08:43
traveltissuescoldtom, you can do that afair but it's messy08:46
traveltissuesi tried it once and decided it was easier just to have separate repos08:47
*** sistex is now known as ColdBoys08:47
*** santix has joined #buildstream08:56
*** lachlan has joined #buildstream09:09
*** jonathanmaw has joined #buildstream09:10
millonihow does one set a http header when fetching the sources?09:21
juergbimilloni: I don't think we support setting arbitrary headers. what header do you need to set?09:22
juergbidepending on the use case a proxy or mirror could make sense09:22
milloniit's a header for authenticating with artifactory09:23
millonijfrog artifactory09:24
millonii assume i should push it to git instead09:24
millonior maybe there's an artifactory plugin?09:25
juergbinot to my knowledger09:25
juergbi-r09:25
benschubertthe source has support for netrc, would that be usable?09:27
benschubert*most supports have support for netrc09:27
benschubert*most sources, gosh I don't know how to type today09:28
*** tristan has quit IRC09:34
*** lachlan has quit IRC10:03
*** ColdBoys has quit IRC10:13
*** lachlan has joined #buildstream10:14
milloniactually does the "http" source have support for basic auth?10:16
millonias in https://tools.ietf.org/html/rfc761710:16
tpollardbasic enough where you can just put the auth in the uri string?10:17
millonii dont know if that's what it does10:20
millonibasic auth is what happens when you go to a web page and there's a popup in the browser asking your for username and password10:20
juergbimilloni: I'd expect basic auth to be supported via netrc. is it not working or have you not tried yet?10:25
milloninoo, i just didnt know artifactory supported basic auth (of course it does!), i'll try that now10:26
juergbimilloni: I just checked, we have a test case that uses basic auth, afaict10:27
milloniok, thanks10:28
millonican you share a link to the test case?10:28
millonii'm going to base my code on this10:28
*** narispo has quit IRC10:28
*** narispo has joined #buildstream10:28
juergbimilloni: https://gitlab.com/BuildStream/buildstream/blob/master/tests/sources/remote.py10:29
millonithanks10:30
*** lachlan has quit IRC10:31
millonijuergbi: hm, so how do i pass my netrc to buildstream? is it just reading the host one?10:32
juergbimilloni: yes10:34
juergbiyou normally don't want passwords in your project git10:34
juergbiit might make sense to support specifying an alternative path, though10:35
milloniyeah, this is just a quick experiment, i'm not doing anything for production (yet)10:36
millonii dont even have a buildstream ci yet, its all loal10:36
millonilocal10:36
*** lachlan has joined #buildstream10:42
*** narispo has quit IRC10:43
*** lantw44 has quit IRC10:46
*** narispo has joined #buildstream10:46
*** lantw44 has joined #buildstream10:47
gitlab-br-botmarge-bot123 merged MR !1635 (bschubert/partial-source-cache->master: Gracefully fallback to fetching source if remote doesn't have every blob cached) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/163510:50
gitlab-br-botcs-shadow closed issue #39 (Enhancement: `bst shell --builddir` automatically picking the newest available builddir) on buildstream https://gitlab.com/BuildStream/buildstream/issues/3912:03
gitlab-br-botcs-shadow closed issue #53 (Source support for workspaces) on buildstream https://gitlab.com/BuildStream/buildstream/issues/5312:04
*** lachlan has quit IRC12:10
gitlab-br-botcs-shadow closed issue #116 (BuildStream usually requires fusermount) on buildstream https://gitlab.com/BuildStream/buildstream/issues/11612:11
*** lachlan has joined #buildstream12:12
gitlab-br-botcs-shadow closed issue #123 (Dealing with rust) on buildstream https://gitlab.com/BuildStream/buildstream/issues/12312:13
gitlab-br-botcs-shadow closed issue #176 (CI runners timeout prematurely, losing time at startup) on buildstream https://gitlab.com/BuildStream/buildstream/issues/17612:16
gitlab-br-botcs-shadow closed issue #178 (Publish documentation for each stable branch + current development (master)) on buildstream https://gitlab.com/BuildStream/buildstream/issues/17812:17
gitlab-br-botcs-shadow closed issue #179 (Be smarter about querying summaries from remote caches) on buildstream https://gitlab.com/BuildStream/buildstream/issues/17912:19
tlater[m]juergbi: Doesn't look like there's any existing way to do grpc proxying unfortunately12:22
tlater[m]I could use a generic handler and switch on the rpc name, but I might as well just do it per-rpc at that point12:23
*** lachlan has quit IRC12:23
*** narispo has quit IRC12:23
*** narispo has joined #buildstream12:24
juergbitlater[m]: yes, it's probably anyway just a single line per method, right?12:24
tlater[m]Don't think it'll be much more than that, no :)12:24
juergbiok, let's just go for that, then12:24
*** tristan has joined #buildstream12:26
gitlab-br-botcs-shadow closed issue #199 (Test suite buildstream imports may be ambiguous) on buildstream https://gitlab.com/BuildStream/buildstream/issues/19912:26
gitlab-br-botcs-shadow closed issue #218 (Allow specifying the chroot binary to use for sandboxes on unix platforms) on buildstream https://gitlab.com/BuildStream/buildstream/issues/21812:32
tlater[m]juergbi: I assume we want to bundle buildbox-casd with this artifact server, so that we don't *need* a third party server?12:37
gitlab-br-botcs-shadow closed issue #222 (Allow running bst commands from workspace directory) on buildstream https://gitlab.com/BuildStream/buildstream/issues/22212:38
juergbitlater[m]: for now it should remain as is, keep depending on buildbox-casd, same as bst12:39
juergbiwe could support making it a proxy for alternative CAS servers but I would hold off on that12:39
juergbinot sure whether there is really a need for it12:39
tlater[m]I suppose it's not much different anyway12:40
tlater[m]In either case, we need to send our RPCs to a server, all that changes is how we set up the client12:41
juergbinot in the proxying code itself12:41
juergbijust would require configuration for URL and possibly required authentication bits12:41
* tlater[m] will keep it flexible in case we want to do proxying in the future12:41
juergbiand then disabling casd launch12:41
tlater[m]I guess we have this implemented in buildstream itself now anyway12:41
juergbiswitching to different CAS for storage?12:42
juergbiif that's what you mean, yes, that's why I'm not sure whether there is really a need for proxying to other servers12:42
juergbiand we need to finish discussing plans for a scalable server before further work12:43
tlater[m]Yup, that makes sense12:45
gitlab-br-botmarge-bot123 closed issue #1094 (Check whether progress reporting could be incorrect in certain cases (technical debt)) on buildstream https://gitlab.com/BuildStream/buildstream/issues/109412:45
gitlab-br-botmarge-bot123 merged MR !1608 (tlater/progress-tests->master: Improve assertions around element loading progress reporting) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/160812:45
tlater[m]I was reading through https://mail.gnome.org/archives/buildstream-list/2019-September/msg00006.html, which made me muddle proxying into this12:45
tpollardbenschubert: I've just come to rebasing my multiprocess branch against master, and i've hit where you've added the childwatchers in the scheduler async for casd12:46
gitlab-br-botcs-shadow closed issue #284 (Source distribution cannot include symlinks) on buildstream https://gitlab.com/BuildStream/buildstream/issues/28412:46
benschuberttpollard: is it causing problems?12:46
tpollardfrom what I understand this is troublesome, as that pid is no longer a child of the forked process12:47
benschubertwhy? Is the frontend starting casd now? That would seem wrong to me :)12:47
tpollardcalling the childwatchers _do_waitpid before / after forking seems to prove this12:47
tpollardI've not altered how casd is launched, I'd have to track that down12:48
benschubertyeah i think it's better that the backend would start casd12:48
tpollardI currently fork when build is called12:48
benschubertI'm not sure why we would ever need it in the frontend12:48
benschubertunless we don't fork for 'show' ? Then we might need to have this split12:49
tpollardcurrently I'm not forking for 'show', I don't think it's worth it either12:50
tpollardI'll look where CASCache() is created12:51
gitlab-br-botcs-shadow closed issue #310 (`bst source-bundle` should get better documentation and receive test cases) on buildstream https://gitlab.com/BuildStream/buildstream/issues/31012:52
tpollardI *think* the status widget is what first causes us to initialise the cas object, in turn the subprocess12:56
*** santix has quit IRC12:56
gitlab-br-botcs-shadow closed issue #322 (Pylint should probably complain about our ostree imports in CI) on buildstream https://gitlab.com/BuildStream/buildstream/issues/32212:58
tpollardwhich is very much the frontend13:00
*** akvilebirgelyte_ has joined #buildstream13:03
*** santix has joined #buildstream13:11
*** akvilebirgelyte_ has quit IRC13:12
gitlab-br-bottlater opened issue #1167 (Make the bst-artifact-server proxy CAS storage calls to buildbox-casd) on buildstream https://gitlab.com/BuildStream/buildstream/issues/116713:13
*** akvilebirgelyte_ has joined #buildstream13:17
*** lachlan has joined #buildstream13:31
*** lachlan has quit IRC13:37
*** lachlan has joined #buildstream13:40
gitlab-br-botcs-shadow closed issue #326 (undocumented behaviour when Buildstream rebuilds all elements locally) on buildstream https://gitlab.com/BuildStream/buildstream/issues/32613:45
benschuberttpollard: why does the status widget needs cas? Oo13:50
benschubertoh the cache size?13:51
tpollardyes13:51
tpollardcalls get_cascache(), which will in-turn init the cas if it's not already done so13:52
benschubertI see 3 ways then: 1) forward that from the backend, 2) start cas in backend, send socket to frontend, 3) start in frontend, and attach a watcher in the frontend13:52
gitlab-br-botcs-shadow closed issue #365 (gir1-ostree version is wrong on Debian stable) on buildstream https://gitlab.com/BuildStream/buildstream/issues/36513:52
tpollardbenschubert: as we'll eventually need a loop in the part of stream which exists in the front process, I think option 3 is the likely final outcome13:55
tpollardwhich is only needed when we're running in a multiprocess, existing paths are fine as is13:56
tpollard(although I do agree that on a more broad point the launch the casd process should be a 'back end' task)13:58
*** lachlan has quit IRC14:25
*** lachlan has joined #buildstream14:27
*** narispo has quit IRC14:41
*** narispo has joined #buildstream14:41
*** akvilebirgelyte_ has quit IRC14:42
*** akvilebirgelyte_ has joined #buildstream14:43
millonican buildstream (by default) access the network from inside the sandbox?14:51
juergbimilloni: no, not from the build sandbox14:53
millonicool, i like it14:55
*** narispo has quit IRC14:59
*** narispo has joined #buildstream14:59
tlater[m]juergbi: Hrm, I guess when the other services interact with casd they'll need to send requests to casd as well, right?15:10
juergbitlater[m]: as in timestamp updates / checking whether the blobs are there?15:11
tlater[m]That's interesting, because some of these methods rely on accessing the files directly15:11
tlater[m]i.e. CASCache.objpath15:11
juergbiyes, we should probably replace that. although, we could theoretically also just do the proxy thing for the CAS protocol itself and leave the rest for now15:14
juergbiif it's easy enough to do everything via casd, that's probably best, though15:14
tlater[m]juergbi: yup15:17
tlater[m]ByteStream seems to be fond of doing these things15:17
juergbiah, yes, but ByteStream should be a straight proxy15:19
juergbiI thought you were talking about Artifact/Source service15:19
*** traveltissues has quit IRC15:27
gitlab-br-botTheRealMichaelCatanzaro closed issue #221 (Allow custom user specified URL for upstream inside workspaces) on buildstream https://gitlab.com/BuildStream/buildstream/issues/22115:31
*** lachlan has quit IRC15:32
*** santix has quit IRC15:42
*** lachlan has joined #buildstream15:46
*** tpollard has quit IRC15:47
*** santix has joined #buildstream15:57
*** lachlan has quit IRC16:30
gitlab-br-botcs-shadow closed issue #497 (Document cache quota 2GB headroom restriction) on buildstream https://gitlab.com/BuildStream/buildstream/issues/49716:35
*** phildawson_ has quit IRC16:42
*** lachlan has joined #buildstream16:43
*** santix has quit IRC17:00
*** jonathanmaw has quit IRC17:04
*** tiagogomes has quit IRC17:19
*** lachlan has quit IRC17:27
*** phoenix has joined #buildstream18:04
gitlab-br-botcs-shadow closed issue #903 (buildstream should inmediatelly fail if ostree < v2017.8 is installed) on buildstream https://gitlab.com/BuildStream/buildstream/issues/90318:05
*** bochecha_ has joined #buildstream18:13
gitlab-br-botcs-shadow closed issue #907 (Pipelines are taking a lot of time to finish (~140 min)) on buildstream https://gitlab.com/BuildStream/buildstream/issues/90718:15
gitlab-br-botcs-shadow closed issue #934 (Support incremental builds with workspaces + remote execution) on buildstream https://gitlab.com/BuildStream/buildstream/issues/93418:17
*** narispo has quit IRC18:44
*** narispo has joined #buildstream18:47
*** phoenix has quit IRC19:17
*** lachlan has joined #buildstream19:36
*** phoenix has joined #buildstream20:26
*** lachlan has quit IRC20:48
*** narispo has quit IRC21:01
*** narispo has joined #buildstream21:01
*** phoenix has quit IRC21:27
*** phoenix has joined #buildstream21:32
*** phoenix has quit IRC22:29
*** bochecha_ has quit IRC22:39

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