IRC logs for #buildstream for Friday, 2018-11-02

*** vil has joined #buildstream00:48
*** Prince781 has quit IRC01:05
*** xjuan has quit IRC01:06
*** Prince781 has joined #buildstream01:06
*** xjuan has joined #buildstream01:23
*** Prince781 has quit IRC01:31
*** xjuan has quit IRC01:34
*** bochecha has quit IRC02:02
*** tristan has joined #buildstream06:50
juergbitristan: while it's still marked WIP, I'd appreciate your thoughts about the API additions to allow command batching: https://gitlab.com/BuildStream/buildstream/merge_requests/91507:10
*** ChanServ sets mode: +o tristan07:58
tristanjuergbi, On it...07:58
tristanHmmm, how do you remove the '+r' ?07:58
tristanjuergbi, Done08:18
juergbita08:19
*** Exterminador^TL has joined #buildstream08:55
*** Exterminador^TL has quit IRC08:55
*** tristan has quit IRC09:10
*** benschubert has joined #buildstream09:27
*** TinkerT has joined #buildstream09:33
*** raoul has joined #buildstream09:44
*** jonathanmaw has joined #buildstream09:54
*** tristan has joined #buildstream09:57
*** bochecha has joined #buildstream10:20
*** lachlan has joined #buildstream10:27
*** anahuelamo has quit IRC10:34
*** anahuelamo has joined #buildstream10:34
lachlanHi, I posed a query yesterday about storing benchmarking data - has anyone on channel any thoughts on the topic?10:44
jmacISTR last time this was discussed there was resistance to storing data, and people felt it would be better to make sure tests can be re-run in the future to get comparative results10:48
jmacI don't agree with that, and personally I'd use a relational database, but that's just my preference10:48
lachlanjmac: Thanks for your input.10:51
lachlanGetting historical comparisons for recent changes by simply re-running tests against specific points in Master seems very onerous to me, true you should be able to re-run the tests in this fashion, but it's not particularly practical on a day-to-day basis.10:55
*** jonathanmaw_ has joined #buildstream10:55
*** jonathanmaw has quit IRC10:56
jmacIt's not the computing power required that worries me, I don't think you'll be able to reliably regenerate historic data10:58
lachlanjmac: I think computing power is an issue, to make results comparable my thinking is that it would be best to run benchmarks on a specific machine and make the jobs serial, as it stands running the current pipeline (using my dev branch) takes 26 minutes to get one set of results across all tests.11:03
lachlanFor any statistically valuable set it would take many hours to generate them.11:05
jmacOh, it is an issue, certainly11:06
*** alatiera_ has joined #buildstream11:08
lachlanAs it stands, I don't think we stamp the results with the current benchmarking commit, I think it might be a good idea to add this.11:14
*** finn_ is now known as finn11:18
finnWhat does BuildStream do better than Nix?11:18
benschubertCould some people have a look at https://gitlab.com/BuildStream/buildstream/issues/727 and give me their opinion? Thanks!11:23
persiafinn: Different problem space, mostly.  If you want to construct lots of filesystem snippets from some sources, both tools do well.  If you want to compose those into a single filesystem, BuildStream has stronger support.  If you want to compose those into a collection of namespaced virtual filesystems, Nix has stronger support.11:30
persiaI suspect the relevant missing features could be added to either tool, but generally folk look at tools with their outcome in mind, rather than their mechanism, so there isn't that much overlap in the userbases.11:32
finnwhat's the difference between composing something into a "single filesystem" and "collection of namespaces virtual filesystems"?11:40
persiaMostly disk layout and kernel overhead.11:43
*** lachlan has quit IRC11:45
persiaMore specifically, most of the buildstream compositions I've seen produced end up being something akin to a tarball containing a bunch of files, which can be unpacked into a single filesystem.11:45
persiaHrm, except Nix has that but with a different layout.11:46
* persia tries to describe this better11:46
persiaSo, with BuildStream composition elements, files are usually stored in a location in the filesystem that matches any internal references to the filesystem that may be in the files (e.g. config file locations, rpath entries, etc.).11:47
persiaWith Nix, users usually deploy all the build elements in separate special directories, and then create symlink farms representing execution filesystems, such that the paths of the symlinks match the internal references in the files, rather than the files themselves.11:48
finnThis sounds more like an implementation detail. Why would I care about if something is a single filesystem vs a collection of namespaced virtual filesystems?11:48
persiaSome software interacts with symlinks badly, but that's just an implementation detail as well: implementing the virtual filesystems with hardlinks or FUSE avoids that problem.11:49
persiaWith a real filesystem, there's slightly less overhead at runtime, although except in tightly constrained systems, this isn't that important.11:50
finnThey sound to me like they're very similar.11:50
persiaIf you don't care about the ultimate representation, yes, they are very similar.  Surprisingly, lots of folk care.11:50
finnSo the fact you have to use a functional language vs YAML and plugins11:51
*** lachlan has joined #buildstream11:51
persiaI know that some of the folk involved in the intiiation of BuildStream found the way in which Nix delivers things to be incredibly confusing, but that might be personal preference.11:51
persiaIf you want to build systems that need real files (e.g. a bootable image), it gets a bit more complex with Nix, but that sort of thing can be done with an external script (and often is).11:52
persiaWell, also, that Nix permits one to compose a system with multiple virtual filesystems: I believe this would be hard in BuildStream.11:53
persiaSo, if you want to have two versions of some software, using the same filenames, and have those each be dependencies of two other pieces of software, which run simultaneously, Nix is probably the better choice.11:54
persiaOn the other hand, changing the version of a specific piece of software that is a dependency of several other pieces of software (e.g. for a security update), is easier in BuildStream.11:55
finnIn what way?11:58
persiaBecause Nix permits each component to depend on an arbitrary version of each other component, one often has to update the version in several places, or force-rebuild the reverse dependency tree.  BuildStream does this automatically.  Alternately said, BuildStream forces a complete rebuild just because you fixed a typo in the gcc documentation.11:59
*** lachlan has quit IRC12:02
*** lachlan has joined #buildstream12:04
jmacI've moved https://gitlab.com/BuildStream/buildstream/merge_requests/911 (Direct CAS-to-CAS imports) out of WIP. It's a fairly complicated change, but isolated to one file (and one test). If anyone has time to review it, that would be welcome.12:15
*** gitlab-br-bot has joined #buildstream12:44
gitlab-br-botjmacarthur opened MR !923 (jmac/execution-architecture-docs->master: Docs: Add remote execution architecture documentation.) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/92312:45
*** brlogger` has joined #buildstream12:49
*** brlogger has quit IRC12:50
*** jonathanmaw_ has quit IRC12:50
*** gitlab-br-bot has quit IRC12:50
*** gitlab-br-bot has joined #buildstream12:50
*** jonathanmaw has joined #buildstream12:50
*** brlogger has joined #buildstream12:54
*** gitlab-br-bot has quit IRC12:55
*** gitlab-br-bot has joined #buildstream12:55
Kinnisonjmac: You have an unticked "performance test" - do you anticipate doing that before merge?13:04
Kinnisonjmac: Oh never mind, I see your comment now13:05
* Kinnison can scroll, oh yes13:05
*** Prince781 has joined #buildstream13:06
*** gitlab-br-bot has quit IRC13:08
*** gitlab-br-bot has joined #buildstream13:08
ironfoot#113:08
gitlab-br-botIssue #1: sphinx docs fail on python2-default systems https://gitlab.com/BuildStream/buildstream/issues/113:08
ironfoottristan: ^13:08
persia!113:12
gitlab-br-botMR !1: Artifact Cache https://gitlab.com/BuildStream/buildstream/merge_requests/113:12
gitlab-br-botjonathanmaw opened MR !924 (jonathan/workspace-fragment-create->master: Support invoking buildstream from a workspace outside a project) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/92413:18
cs-shadowdoes it work when #1 is mentioned in a sentence?13:18
cs-shadowapparently not13:18
ironfootcs-shadow: it does work, but it has some anti-spam tricks in place13:21
ironfootso it currenlty waits for another 15 messages  in the channel before reminding you what that issue (#1) was13:22
cs-shadowironfoot: that's neat.13:22
cs-shadowlet's try with #213:22
gitlab-br-botIssue #2: Support mounting the host filesystem read-only in the sandbox https://gitlab.com/BuildStream/buildstream/issues/213:22
cs-shadowyay! that worked13:23
ironfootalso if #2 was mentioned recently by the bot (maybe new issue created), the bot won't reply either13:23
ironfoothappy to take any feature request13:24
cs-shadowthat makes sense. Is the source for the bot also on GitLab somewhere? :)13:24
ironfoothttps://gitlab.com/palvarez89/gitlabirced13:25
cs-shadowthanks!13:25
ironfootIt's not the best code, and there are a few cleanups I want to do13:25
*** dopE has joined #buildstream13:27
*** Prince781 has quit IRC13:41
* persia tests whether the 15-message boundary includes messages from gitlab-br-bot by asking about !113:42
persiaApparently not :)13:43
ironfootcheeky13:46
*** Prince781 has joined #buildstream14:26
*** anahuelamo has quit IRC14:32
*** anahuelamo has joined #buildstream14:32
adds68Is it ever possible for a git source to have no url ?14:41
adds68When parsing sources in a plugin, i can am getting an error "AttributeError: 'GitSource' object has no attribute 'url'"14:41
adds68can14:42
finnWhich plugin are you using?14:43
finnI don't think I've ever seen a plugin with no url - for local files I use something like `url: file://my/local/adam.file`14:44
finnAs in a source plugin sorry14:44
tpollardadds68: I think that's correct, the object has no .url attr14:45
adds68finn, it's one i'm extending/making14:46
adds68tpollard, but shouldn't all git sources have urls?14:46
tpollardadds68: looks at the gitsource class14:46
adds68good idea14:46
tpollardyou'll want .original_url14:47
tpollardmore than likely14:47
adds68tpollard, 0_0 i shall look14:49
adds68and thanks :)14:49
tpollardadds68: or see what public api the source.py has14:50
adds68tpollard, i can't see anything about urls in the plugin reference14:53
adds68tpollard and in the Git source documentation the yaml states "url"14:53
tpollardlink?14:54
adds68tpollard, https://docs.buildstream.build/sources/git.html?highlight=git#module-sources.git14:55
tpollardyeh, it's url in yaml, but it looks like whatever you've written is trying to access that via an attribute it's not assigned to14:55
tpollardadds68: https://gitlab.com/BuildStream/buildstream/blob/master/buildstream/plugins/sources/git.py#L36314:57
adds68Hmmm that seems a bit odd, but i guess i will have to use that!14:58
adds68It's strange, because GitMirror is still using "self.url"14:59
*** jonathanmaw_ has joined #buildstream15:02
*** jonathanmaw has quit IRC15:03
*** Prince781 has quit IRC15:35
raoulDone the changes mablanch suggested on https://gitlab.com/BuildStream/buildstream/merge_requests/900, so if anyone with write access wants to do a final review and merge that'd be grand16:12
*** anahuelamo has quit IRC16:22
*** lachlan has quit IRC16:38
laurencetristan, jennis, tlater[m], and anyone else who is interested, re the BuildStream Architecture, 101 and 102 sessions from the gathering, I am just doing some final bits of editing, hope to have them on the website next week.16:48
jmacI keep getting an error about 'tmp_path' being a missing fixture when running the test suite: https://paste.gnome.org/puib7b6or16:49
jmacThat's the only test which uses that fixture apparently16:50
tpollardhmm, that's recently landed?16:51
jmacAbout a week ago16:51
tpollardgitlab is telling me it was 1 day ago16:52
tpollardhttps://gitlab.com/BuildStream/buildstream/merge_requests/912/diffs16:52
jmacRight, the commit was written a week ago, merged yesterday16:53
jmacCI has a more recent version of pytest than me16:54
jmacFixed16:54
tpollardyep, looks very recent too16:54
*** lachlan has joined #buildstream16:55
tpollard21 days even16:55
gitlab-br-botcs-shadow merged MR !914 (chiaratolentino/fix-pip-source-regex->master: plugins/sources/pip.py: Accomodate characters '-','.','_' for packages) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/91417:09
*** ChunkyPuffs has quit IRC17:22
*** tpollard has quit IRC17:22
*** abderrahim3 has joined #buildstream17:24
*** abderrahim2 has quit IRC17:25
*** finn has quit IRC17:42
*** raoul has quit IRC17:45
gitlab-br-botknownexus opened MR !925 (issue-638-validate-all-files->master: WIP: Added --all functionality to `bst show`) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/92517:58
NexusWhen did the gitlab bot start saying names?17:58
*** tiagogomes has quit IRC17:59
gitlab-br-botjmacarthur closed issue #745 (Reimplementation of `utils._force_rmtree()`) on buildstream https://gitlab.com/BuildStream/buildstream/issues/74518:00
gitlab-br-botknownexus opened MR !926 (issue_640-Build-All->master: WIP: Added build all functionality to `bst build`) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/92618:01
gitlab-br-botjmacarthur opened MR !927 (jmac/make_writable_combination->master: WIP: Use _force_rmtree instead of custom code.) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/92718:04
*** jonathanmaw_ has quit IRC18:21
*** xjuan has joined #buildstream18:42
*** Prince781 has joined #buildstream19:05
*** xjuan has quit IRC19:09
*** Prince781 has quit IRC19:49
*** xjuan has joined #buildstream20:07
*** lachlan has quit IRC20:23
*** ChunkyPuffs has joined #buildstream20:23
*** benschubert has quit IRC20:36
*** Prince781 has joined #buildstream20:41
*** Alexwall has joined #buildstream21:00
*** xjuan has quit IRC21:20
*** xjuan has joined #buildstream21:39
*** Prince781 has quit IRC23:15
*** flatmush has quit IRC23:15
*** flatmush has joined #buildstream23:16
*** mohan43u has quit IRC23:18
*** mohan43u has joined #buildstream23:21
*** tristan has quit IRC23:37
*** bochecha has quit IRC23:37

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