IRC logs for #buildstream for Wednesday, 2018-12-05

*** nimish has quit IRC00:11
*** nimish has joined #buildstream00:13
*** bochecha has quit IRC00:22
*** alatiera has quit IRC00:22
*** nimish has quit IRC00:24
*** xjuan has quit IRC01:39
*** Ulrike has joined #buildstream03:33
*** nimish has joined #buildstream03:40
*** nimish has quit IRC03:43
*** nimish has joined #buildstream03:43
*** nimish has quit IRC05:47
*** nimish has joined #buildstream05:50
*** tristan has joined #buildstream05:57
*** mohan43u has quit IRC06:08
*** mohan43u has joined #buildstream06:13
gitlab-br-bottristanvb opened MR !988 (tristan/refactor-queues-update-state->master: _scheduler/queues/queue.py: Don't call update state outside of error handling harness) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/98806:15
*** nimish_ has joined #buildstream06:38
*** nimish has quit IRC06:38
*** nimish_ is now known as nimish06:39
*** abderrahim has quit IRC06:55
*** abderrahim has joined #buildstream06:55
*** mohan43u has quit IRC07:04
*** mohan43u has joined #buildstream07:06
*** nimish has quit IRC07:07
*** tristan has quit IRC07:18
*** tristan has joined #buildstream07:36
gitlab-br-bottristanvb merged MR !988 (tristan/refactor-queues-update-state->master: _scheduler/queues/queue.py: Don't call update state outside of error handling harness) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/98807:37
*** nimish has joined #buildstream07:51
*** Nexus has joined #buildstream07:54
*** tristan has quit IRC07:55
*** Nexus has joined #buildstream07:55
*** tristan has joined #buildstream08:26
*** ChanServ sets mode: +o tristan08:27
tristan<juergbi> tristan: this should actually already be possible using a local junction to .08:27
tristanjuergbi, picking that up from the logs I think you didn't understand what I meant08:27
tristanjuergbi, I meant if a "bst build" with no arguments "build everything" kind of thing would be practically useful... I should be able to use it to build everything... like if I run `bst build` in gnome-build-meta, I would like to have a bootable system image; AND a flatpak GNOME SDK08:27
tristanwhere those two products probably imply specifying different `-o` project options08:27
juergbithe default target could theoretically point to a stack that points to two self-junctions (local `.` source) each with different project options08:28
*** pro[m] has quit IRC08:34
tristanjuergbi, Ah I see what you mean now08:36
tristanThe power of self-junctions08:36
juergbiyes, don't know whether we actually want to recommend this, but it should be possible08:36
tristanI keep forgetting :)08:36
juergbithere is a potential issue with nested junctions getting merged/coalesced where we don't want it in that case08:37
tristanThankfully I forget about self-junctioning powers enough that I don't accidentally recommend this08:37
juergbiI'd like to make this more flexible08:37
tristanmaybe I will start remembering if we have a lot of use cases to recommend it for08:37
tristanjuergbi, I think valentind has been asking for something like "using the same element twice in the same project", maybe self-junctioning is the way to do that08:43
juergbiyes, I have been using that for my buildstream test version of my distro for bootstrapping purposes08:45
juergbionly one gcc element with build instructions08:46
juergbi(although I needed helper gcc elements without build instructions due to not sufficiently flexible path/sysroot handling)08:46
*** paulsherwood has joined #buildstream08:50
*** slaf has quit IRC08:51
*** toscalix has joined #buildstream08:53
*** slaf has joined #buildstream08:53
tristanjuergbi, sounds like that might be the very use case indeed08:55
* tristan has git:unlisted-submodule ready... and tying up a test for git:invalid-submodule now08:56
*** pro[m] has joined #buildstream09:03
*** alatiera has joined #buildstream09:04
*** nimish has quit IRC09:06
*** nimish has joined #buildstream09:06
*** finn has joined #buildstream09:23
*** alatiera has quit IRC09:23
tristanvalentind, Ok I'm just going to force push some rewording to your documentation *directly* to your !906 branch09:25
gitlab-br-botMR !906: Track of git tags and save them to reproduce minimum shallow repository https://gitlab.com/BuildStream/buildstream/merge_requests/90609:25
tristanAnd then merge09:25
valentindtristan, ok09:26
Nexusohh, found an uncaught exception in master09:26
NexusIf you have an element with "depends:" but nothing in the depends, it gives a nonetype error09:27
tristanNexus, nice catch, I would have expected that to be invalid YAML09:30
Nexustristan: Do you want an issue for it, or do you just want to fix it?09:30
tristanNexus, I'm ambivalent about the issue; if you have time to fix it as the next thing, then fix is better, use an issue if there is any chance at all of forgetting09:31
tristanNexus, *however*, a fix for this should come with a regression test in tests/format somewhere09:32
*** kapil___ has quit IRC09:43
gitlab-br-botknownexus opened issue #803 (Unhandled NoneType exception) on buildstream https://gitlab.com/BuildStream/buildstream/issues/80309:45
*** finn has quit IRC09:48
*** finn has joined #buildstream09:49
tristanvalentind, done, I've rewritten the docs and set the last iteration to merge09:54
*** jonathanmaw has joined #buildstream09:57
*** alatiera has joined #buildstream10:01
*** tristan has quit IRC10:02
*** tpollard has joined #buildstream10:03
*** nimish has quit IRC10:06
*** nimish has joined #buildstream10:06
gitlab-br-botgokcennurlu opened (was WIP) MR !985 (gokcennurlu/remote_url_override_push_error->master: Set ArtifactCache for push/pull correctly when `--remote` is used) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/98510:07
*** solid_black has joined #buildstream10:11
*** nimish has quit IRC10:11
*** nimish has joined #buildstream10:12
*** paulsher1ood has joined #buildstream10:19
gitlab-br-bottristanvb closed issue #487 (Implement a mechanism to allow builds to leverage git describe) on buildstream https://gitlab.com/BuildStream/buildstream/issues/48710:23
gitlab-br-bottristanvb merged MR !906 (valentindavid/git_describe_tracking->master: Track of git tags and save them to reproduce minimum shallow repository) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/90610:23
*** tristan has joined #buildstream10:33
*** lachlan has joined #buildstream10:34
*** alatiera has quit IRC10:36
*** nimish has quit IRC10:37
*** nimish has joined #buildstream10:37
*** paulsherwood has quit IRC10:46
*** bochecha has joined #buildstream10:48
gitlab-br-botvalentindavid opened MR !989 (valentindavid/git_shallow_fetch->master: Fetch git shallow clone when possible) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/98910:51
*** jmac has joined #buildstream10:51
valentindjjardon, tristan, I have made !989 for shallow clones on fetch/build.10:52
jjardoncool!10:52
jjardonvalentind: can we make shallow clones configurable?10:53
valentindjjardon, what would be the use case?10:54
valentindIf you want git describe to work, then just set "track-tags", and track the element. The tags gets stored. And when there are tags, it is never shallow.10:55
valentindIf you have no tag, then the .git repository does not exist during the build.10:56
valentindSo that would not make a difference.10:56
valentindWell actually, when using tags, the build .git is shallow but with what it needs, but the fetch cache is full.10:56
*** nimish has quit IRC10:57
*** nimish has joined #buildstream10:58
valentindAnyway, there should be no reason to have it configurable.11:00
jjardonvalentind: what if I'm developing a element so Im tracking master and I need the full git history? would that work fine by default?11:07
valentindjjardon, It switches to full clone when needed.11:08
valentindjjardon, so if you "bst track" or "bst build --track", then it should clone the full repository.11:09
valentindEven if you did a "bst fetch" before.11:10
jjardonnice, I guess no need to be configurable then11:10
valentindjjardon, we should prepare for 1.4 in freedesktop SDK by merging all the 1.4 changes of git into git_tag.11:11
jjardontrue11:11
valentindNow we have git describe working in master, so the new git plugin should work again for fd.o SDK. That was the missing thing.11:12
valentindjjardon, but we will have to track all elements that require git describe.11:13
jjardonvalentind: you mean they have to have a "track:" in the bst? Would the module fail to build if It's not there?11:19
*** kapil___ has joined #buildstream11:25
valentindjjardon, you can set "track:" to the desired ref.11:29
valentindAnd track it.11:29
tpollardjuergbi: in terms of https://gitlab.com/BuildStream/buildstream/issues/566#note_121157069 would you envision if the user specified it to not push-buildtrees, this would override if they've set normal push to true?11:29
tpollardwith the default being to push buildtrees11:30
valentindtristan, something we forgot about, maybe we want to have git describe to work on submodules as well. Should not be much to do, though.11:40
*** bochecha has quit IRC11:41
*** nimish has quit IRC11:43
*** nimish has joined #buildstream11:43
jjardonvalentind: should we assume then all the git elements would need to be tracked (as we do not know if they use git describe unless we actually inspect the elemtent), and maybe fire a warning if "track:" is not specify?11:46
valentindjjardon, no it is fine to not have track:11:47
*** alatiera has joined #buildstream11:47
*** lachlan has quit IRC11:47
valentindIt is just that you cannot track tags to make git describe work.11:47
jjardonright11:48
juergbitpollard: push-buildtrees is irrelevant if push is False, so yes, the combination 'push True and push-buildtrees False' should not push buildtrees11:49
*** abderrahim has quit IRC11:49
juergbinot sure about the default11:49
*** abderrahim has joined #buildstream11:50
jjardonIs there plans to release a new snapshot of master? the last one is quite behind now (more than 1000 commits I think)11:50
juergbithere hasn't been any real development snapshot yet. 1.3.0 was just to get the proper version number11:51
juergbimay make sense to release a snapshot before Christmas but I'm not sure whether tristan has other plans11:52
*** nimish has quit IRC11:53
*** nimish has joined #buildstream11:53
jjardoncool, thanks11:54
*** bochecha has joined #buildstream11:57
*** lachlan has joined #buildstream12:01
jmacHanging test on tests/artifactcache/pull.py again12:04
jmacIs it just me and tristan who are seeing this, or are other people?12:04
phildawsonFor what it's worth, I've not noticed it.12:04
tpollardjuergbi: I'll go with push-buildtrees to default to true for now12:07
juergbijmac: you see this also on master? and always/frequently or sporadically?12:09
juergbiI'm not aware of such an issue blocking CI. and haven't seen it for a long time myself locally (but I'm not running tests locally as frequently anymore)12:10
juergbitpollard: ok, I'll leave possible discussion on this to tristan and sstriker ;)12:11
jonathanmawWSalmon: I've simplified the way we use the WorkspaceProjectCache in line with your comments in !924, if you want to have another look12:12
gitlab-br-botMR !924: Support invoking buildstream from a workspace outside a project https://gitlab.com/BuildStream/buildstream/merge_requests/92412:12
valentindjmac, I recommend you add a faulthandler on a signal like SIGUSR1 and then kill -USR1 the process to print the current stacks in all thread if this happens again12:13
valentindSee https://docs.python.org/3/library/faulthandler.html12:13
jmacDoes seem to be just my branch12:18
*** lachlan has quit IRC12:19
juergbivalentind: could it make sense to add this in master?12:19
valentindjuergbi, not by default.12:19
*** lachlan has joined #buildstream12:19
valentindBut we could make it configurable.12:19
valentindLike with an environment variable.12:19
juergbiyes12:20
valentindWell, that is my opinion.12:20
valentindLet me make a branch for that.12:20
juergbita12:22
*** alatiera has quit IRC12:27
*** alatiera has joined #buildstream12:46
*** nimish has quit IRC13:18
*** nimish has joined #buildstream13:19
*** nimish has quit IRC13:24
*** nimish has joined #buildstream13:24
*** hjudt has joined #buildstream13:31
*** nimish has quit IRC14:04
*** nimish has joined #buildstream14:04
juergbiphildawson: btw: there are also seems to be some cruft in the commit history. create_source_tarball still exists in old commit and create_tarball is introduced in a later commit than the one that actually needs it14:10
juergbis/there are/there/14:10
juergbimaybe you can clean this up at the same time as fixing the other points I mentioned14:10
phildawsonjuergbi, will do.14:15
phildawsonthanks for taking another look14:15
skullman:/ shell completion tests assume they won't need to configure a cachedir, but to provide completions for artifact refs requires interacting with a cache, which means it's got to initialise it, which involves a mkdir outside of the testing directory14:39
juergbiskullman: what's the reason this is more problematic for shell completion tests than for all the other tests that need a cache dir?14:49
skullmanjuergbi: other tests that need a cache dir are full integration tests, and expect to have a whole project to build14:53
skullmanI've worked out how tests get a different kind of cli object, might have to either add a dummy project and use the integration tests CLI object, or add a new kind of CLI object half-way in-between which handles having custom config but doesn't expect a project.conf14:55
juergbiskullman: don't you anyway have to put something in the cache (using full cli object) for the completion test?15:01
skullmanhmm, I'd just been thinking as far as making sure all the old uses of `bst checkout` could be replaced with `bst artifact checkout`. I will later, yeah. I could probably just catch the failure to get completions for artifact refs and only provide completions for element target names15:07
skullmanthough it's not great that command-completion can have side-effects…15:07
*** alatiera has quit IRC15:08
*** alatiera has joined #buildstream15:08
valentindjuergbi, Interesting error: https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/jobs/12979463515:16
valentindCPU use was 33%. Bandwith maybe high though.15:17
valentindI wonder if grpc has a very short timeout for connect()15:17
juergbimaybe, would be worth checking15:20
gitlab-br-botknownexus opened MR !990 (issue-640-contrib-build-all->master: contrib files for build all and show all) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/99015:21
valentindMaybe we show handle UNAVAILABLE for GetCapabalitiesRequest to make it retry.15:21
valentindBut having long timeout would be also something nice.15:21
laurenceNexus, when raising an MR, if there is no gitlab issue, pls can you link to the relevant ML discussion  ?15:23
Nexuslaurence: there is an issue15:23
* Nexus wonders who will get MR 100015:25
laurenceNexus, ah, ok15:26
gitlab-br-botjuergbi closed issue #775 (Execution Environment Requirements) on buildstream https://gitlab.com/BuildStream/buildstream/issues/77515:28
gitlab-br-botjuergbi merged MR !969 (raoul/775-execution-environment-reqs->master: Execution environment reqs) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/96915:28
valentindReading the code in grpc, it should be 20 seconds of timeout.15:46
valentindAt least.15:46
*** nimish has quit IRC15:54
*** nimish has joined #buildstream15:55
*** lachlan has quit IRC15:57
*** nimish has quit IRC16:25
*** nimish has joined #buildstream16:25
*** nimish has joined #buildstream16:26
gitlab-br-botraoul.hidalgocharman closed issue #628 (Remote-execution client flow optimisation (technical debt)) on buildstream https://gitlab.com/BuildStream/buildstream/issues/62816:36
gitlab-br-botraoul.hidalgocharman merged MR !982 (raoul/628-RE-flow-optimisation->master: Remote-execution client flow optimisation) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/98216:36
*** nimish has quit IRC16:41
*** nimish has joined #buildstream16:41
*** lachlan has joined #buildstream16:42
*** lachlan has quit IRC16:44
*** nimish has quit IRC16:46
*** nimish has joined #buildstream16:46
*** lachlan has joined #buildstream16:51
*** nimish has quit IRC16:56
*** nimish has joined #buildstream16:57
*** lachlan has quit IRC17:04
*** solid_black has quit IRC17:06
*** lachlan has joined #buildstream17:08
*** alatiera has quit IRC17:16
*** toscalix has quit IRC17:28
*** alatiera has joined #buildstream17:50
*** tpollard has quit IRC18:01
*** finn has quit IRC18:10
*** nimish has quit IRC18:12
*** nimish has joined #buildstream18:12
*** nimish has quit IRC18:17
*** nimish has joined #buildstream18:17
*** jonathanmaw has quit IRC18:29
gitlab-br-botnanonyme opened issue #804 (Not possible to disable git ls-tree for submodules) on buildstream https://gitlab.com/BuildStream/buildstream/issues/80418:35
*** raoul has quit IRC18:36
gitlab-br-botgokcennurlu opened issue #805 (fetch() is called on the source even though it is cached) on buildstream https://gitlab.com/BuildStream/buildstream/issues/80518:37
*** xjuan has joined #buildstream18:40
*** nimish has quit IRC18:52
*** nimish has joined #buildstream18:54
cs-shadowIs buildstream expected to preserve the order of dependencies as they are listed in the bst file, when the time comes to stage them in the sandbox?18:59
cs-shadowor, checkout them, for that matter19:00
*** nimish has quit IRC19:03
*** nimish has joined #buildstream19:04
juergbics-shadow: no, at least for staging it actually guarantees to use a deterministic order that is independent of the declaration order19:05
juergbiElement.dependencies() will produce that order19:05
juergbihttps://buildstream.gitlab.io/buildstream/buildstream.element.html#buildstream.element.Element.dependencies19:05
cs-shadowjuergbi: thanks! that clarifies a few things. So, the reason I started looking at this order was because overlaps currently produce a warning like "there's an overlap ... order foo.bst above bar.bst"19:08
gitlab-br-botjuergbi opened MR !992 (juerg/fetch->master: Do not call fetch() for cached sources) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/99219:08
cs-shadowif the declaration order doesn't matter, then is this warning misleading? Or have i misinterpreted it?19:08
*** nimish has quit IRC19:09
*** nimish has joined #buildstream19:10
juergbics-shadow: the warning message is based on the staging order. bst show may help to get you the staging order of an element's dependencies19:10
*** nimish has quit IRC19:10
*** ChanServ sets mode: +o tristan19:11
tristancs-shadow, if there is no explicit dependency between two elements which a given element depends on, and those two elements overlap eachother, then they are guaranteed to overlap eachother in the same order, but the project has just not determined it with an explicit dependency19:11
tristan(in the same order, i.e. it will be deterministic and not random, just the order hasn't been declared with a dependency)19:11
cs-shadowtristan: right, that's exactly the example I was looking at, i.e. no explicit dependency. So, I am just wondering how is ordering one element over the other going to change anything? (if buildstream will come up with a deterministic ordering anyway)19:12
tristanordering of elements in a depends: doesnt mean anything19:13
tristansaying that one element runtime depends on another element however is a way to explicitly decide the order19:13
cs-shadowtristan: So, the bit from the warning that says "order A above B" can be removed right?19:13
cs-shadowor changed to say something like "declare explicit dependency on B from A" or such19:14
tristanI think that warning could be phrased better (and less verbosely), but one is certainly above the other19:14
tristanmaybe it could be enhanced in some way to *also* communicate whether the order was explicitly declared with a dependency or not19:15
tristanbut there is always a linear staging order, whether explicitly declared or not19:15
cs-shadowtristan: cool, thanks! I do think it's a bit confusing at the moment. As I initially thought it was telling me to order the dependencies in the bst file19:15
*** nimish has joined #buildstream19:16
tristanagree that it is a source of confusion :)19:16
cs-shadowi'll try to submit a MR to try and improve the wording (or at least create an issue for it)19:16
cs-shadowthanks!19:16
*** nimish has quit IRC19:26
*** nimish has joined #buildstream19:26
*** nimish_ has joined #buildstream19:32
*** nimish has quit IRC19:33
*** nimish_ is now known as nimish19:33
*** tristan has quit IRC19:35
*** nimish has quit IRC19:36
*** nimish has joined #buildstream19:41
*** bochecha_ has joined #buildstream19:42
*** bochecha has quit IRC19:42
*** bochecha_ is now known as bochecha19:43
*** nimish has quit IRC20:41
*** nimish has joined #buildstream20:41
*** xjuan has quit IRC20:42
*** lachlan has quit IRC20:52
*** xjuan has joined #buildstream21:01
*** nikc has joined #buildstream21:05
*** xjuan has quit IRC21:48
*** xjuan has joined #buildstream22:06
*** bochecha has quit IRC22:51

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