*** tristan has quit IRC | 01:16 | |
*** Ya_ALLAH_Ya_Muhmd has joined #buildstream | 01:40 | |
*** Ya_ALLAH_Ya_Muhmd has left #buildstream | 01:40 | |
*** tristan has joined #buildstream | 02:16 | |
*** mcatanzaro has quit IRC | 02:44 | |
*** Ya_ALLAH_Ya_Muhmd has joined #buildstream | 03:49 | |
*** Ya_ALLAH_Ya_Muhmd has left #buildstream | 03:49 | |
*** Ya_ALLAH_Ya_Muhmd has joined #buildstream | 04:15 | |
*** Ya_ALLAH_Ya_Muhmd has left #buildstream | 04:15 | |
*** noisecell has joined #buildstream | 07:33 | |
*** sstriker has joined #buildstream | 08:52 | |
gitlab-br-bot | buildstream: merge request (scripterror->master: plugins/.../script.py: fix ElementError ref) #188 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/188 | 09:13 |
---|---|---|
gitlab-br-bot | buildstream: merge request (scripterror->master: plugins/.../script.py: remove check for 'commands') #188 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/188 | 09:15 |
gitlab-br-bot | buildstream: merge request (scripterror->master: plugins/.../script.py: remove check for 'commands') #188 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/188 | 09:16 |
*** jude has joined #buildstream | 09:29 | |
*** jonathanmaw has joined #buildstream | 09:37 | |
gitlab-br-bot | buildstream: merge request (skip-configure-tests->master: Workspaced builds only run configure commands once) #191 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/191 | 09:43 |
gitlab-br-bot | buildstream: merge request (finallyunregister->master: _signals: always pop handlers, and restore states) #192 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/192 | 09:55 |
gitlab-br-bot | buildstream: merge request (scripterror->master: plugins/.../script.py: remove check for 'commands') #188 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/188 | 09:56 |
gitlab-br-bot | buildstream: merge request (cache_local_element_unique_key->master: Cache the local element's unique key) #193 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/193 | 10:14 |
*** ironfoot sets mode: +b *!Ya_ALLAH_Y@* | 10:17 | |
*** ssam2 has joined #buildstream | 10:21 | |
*** bochecha has joined #buildstream | 10:26 | |
*** bethw has joined #buildstream | 10:27 | |
adds68 | One i have built something in bst, how do i view the artifact? | 10:41 |
bochecha | adds68: depends what you want to do with it | 10:41 |
adds68 | Like is there a way to view the built things in a list, like Docker does with images/containers? | 10:41 |
adds68 | bochecha, i have an sdk, which depends on a base | 10:41 |
bochecha | you can open a shell in a sandbox populated with the build result: `bst shell element.bst` | 10:41 |
adds68 | The base is build, and i need to somehow get that base into the sdk build | 10:42 |
bochecha | you can also check it out, to have a tree populated by the build result: bst checkout element.bst DIRECTORY` | 10:42 |
bochecha | ah | 10:42 |
bochecha | are those elements in the same project? | 10:42 |
adds68 | bochecha, yea they are in the same project, but different directories? | 10:43 |
bochecha | as in, you have a base.bst which builds the base, and an sdk.bst which builds the sdk, in the same project? | 10:43 |
bochecha | then just add a dependency on base.bst in sdk.bst | 10:43 |
adds68 | bochecha, correct, good point, i'm not sure why it isn't configured in such a way | 10:43 |
bochecha | :) | 10:44 |
adds68 | bochecha, currently there is base/ and sdk/ and sdk/ relies on base being built | 10:44 |
bochecha | I don't see how that changes anything | 10:45 |
bochecha | as long asthey are in the same project, then you can just add dependencies between elements | 10:45 |
ssam2 | in https://gitlab.com/freedesktop-sdk/freedesktop-sdk they are actually separate projects | 10:46 |
ssam2 | i'm not entirely sure why it's done that way, would need to ask valentind | 10:46 |
ssam2 | once the recursive-pipelines feature branch is merged in buildstream, it'll be possible to have one project depend on another anyway | 10:47 |
ssam2 | in the meantime `bst checkout` is what you want | 10:47 |
adds68 | ok thanks all :) | 10:48 |
*** jude has quit IRC | 11:03 | |
valentind | ssam2, one project is cross-compiled, the other is not. | 11:05 |
valentind | bootstrap compiles just what is needed to use with buildstream. | 11:05 |
*** valentind has left #buildstream | 11:07 | |
*** jude has joined #buildstream | 11:14 | |
*** noah has joined #buildstream | 11:41 | |
*** noah has quit IRC | 11:42 | |
tlater | jonathanmaw: After your plugin branch lands, do we still use the '<plugin-package>:<plugin>' format for an element 'kind'? | 11:52 |
jonathanmaw | tlater: no | 11:52 |
tlater | It becomes just <plugin>? | 11:53 |
jonathanmaw | just <plugin>, finding out where the plugin package is is done via project.conf | 11:53 |
tlater | Cool, ta jonathanmaw :) | 11:53 |
gitlab-br-bot | buildstream: merge request (sam/savefile-utility->master: utils.py: Add SaveFile utility class) #179 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/179 | 11:54 |
gitlab-br-bot | buildstream: merge request (sam/multiple-caches->master: Multiple remote cache support) #166 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/166 | 12:39 |
gitlab-br-bot | buildstream: merge request (cache_local_element_unique_key->master: WIP: Cache the local element's unique key) #193 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/193 | 12:51 |
*** bochecha has quit IRC | 13:02 | |
*** benbrown has quit IRC | 13:02 | |
*** csoriano has quit IRC | 13:02 | |
*** ptomato[m] has quit IRC | 13:02 | |
*** persia has quit IRC | 13:02 | |
nexus | hmm | 13:04 |
gitlab-br-bot | buildstream: merge request (master->master: WIP: Documentation improvements) #183 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/183 | 13:07 |
gitlab-br-bot | buildstream: merge request (cache_workspace_key->master: Cache the workspace key) #189 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/189 | 13:12 |
gitlab-br-bot | buildstream: merge request (sam/multiple-caches->master: Multiple remote cache support) #166 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/166 | 13:34 |
*** bochecha has joined #buildstream | 13:34 | |
*** benbrown has joined #buildstream | 13:34 | |
*** csoriano has joined #buildstream | 13:34 | |
*** ptomato[m] has joined #buildstream | 13:34 | |
*** persia has joined #buildstream | 13:34 | |
*** csoriano has quit IRC | 13:34 | |
*** csoriano has joined #buildstream | 13:35 | |
gitlab-br-bot | buildstream: merge request (rmtempdir->master: utils._tempdir: don't leak on exceptions) #194 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/194 | 13:54 |
gitlab-br-bot | buildstream: merge request (workspaces-yml-version-1->master: Add support for version 1 workspaces.yml format) #176 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/176 | 14:00 |
*** jude has quit IRC | 14:15 | |
gitlab-br-bot | buildstream: merge request (cache_local_element_unique_key->master: Cache the local element's unique key) #193 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/193 | 14:25 |
*** mcatanzaro has joined #buildstream | 15:15 | |
*** jude has joined #buildstream | 15:44 | |
*** noisecell has quit IRC | 16:12 | |
ssam2 | i've profiled the startup time of `bst` a bit, and it seems by far the slowest thing we do is importing pkg_resources | 16:21 |
ssam2 | that's over 0.3s of the 0.5s total startup time | 16:21 |
tristan | and we basically just do that... so that we can write the version in the output logs and in `bst --version` output ? | 16:32 |
ssam2 | we use it 3 ways | 16:33 |
ssam2 | one in the `bst` startup script | 16:33 |
ssam2 | one to get version number | 16:33 |
ssam2 | and one to discover plugins | 16:33 |
ssam2 | it's definitely feasible to do all that in other ways | 16:34 |
tristan | the heading of log files and the version and plugins | 16:34 |
tristan | Certainly, but right now we have a useful thing solved with this extension we're using | 16:34 |
persia | The version is the easy change here. What's the strategy for plugins without pkg_resources_ | 16:34 |
persia | s/_$/?/ | 16:35 |
tlater | persia: We currently have pre-defined directories in which we look for them | 16:36 |
tristan | persia, I think the right way to do that is have bst installed in a prefix and advertise a directory where third parties can install plugin packages at or similar, via pkg-config (i.e. bit more traditional/system approach rather than pip approach), would be better | 16:36 |
tlater | With jonathanmaw's patch we could conditionally import pkg_resources | 16:37 |
tristan | but... anyway if pip needs what pkg_resources, it can certainly be deferred until used | 16:37 |
tristan | that said, it doesnt kill the overhead | 16:37 |
persia | Or maybe have a config option to be pip-compatible, if people are using pip, but default to being more performant? | 16:38 |
bochecha | ssam2: just `pip install` a few more modules, and you'll see pkg_resources take **much** more time to start | 16:38 |
tristan | ssam2, the useful thing which we would like to preserve if possible... is what setuptools_scm does for us | 16:38 |
bochecha | it basically iterates over all installe dpython modules to find their entrypoints and metadata | 16:39 |
bochecha | the more you have installed, the slower it gets | 16:39 |
tristan | ssam2, so I guess it's all related, but basically it will give us a nice *exact* version composed of the release branch + commit state | 16:39 |
gitlab-br-bot | buildstream: merge request (cache_local_element_unique_key->master: Cache the local element's unique key) #193 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/193 | 16:39 |
tristan | ssam2, *plus*, when you roll a dist tarball, that dist tarball gets the version state encoded and *that* state is used to provide the version info, where it is installed | 16:40 |
tlater | bochecha: Ouch, what happened to the 'don't do things when you're imported' pep? | 16:40 |
bochecha | tlater: pkg_resources has been doing this since forever, it's one of the reasons lots of people have always been avoiding setuptools | 16:40 |
bochecha | setuptools/pkg_resources are pretty great for a few things... being fast is not one of them :) | 16:42 |
bochecha | tlater: and in any case, even if those things weren't done when you import pkg_resources, you'd still need to do them first thing when you search for the console_script entry-point for your project, so it would still take the same time | 16:43 |
tlater | Yeah, I realize that, but for one, doing this only when invoked would mean we didn't have to play with conditionally importing things | 16:43 |
* tristan wonders if this pkg_resources thing might be work-aroundable with a venv | 16:44 | |
tlater | And for two, it would be easy enough to just cache that information, especially with python's pickle class, right? | 16:44 |
ssam2 | tlater, it's not | 16:44 |
bochecha | one thing pkg_resources does as well, is allowing to have various versions of a given module installed in parallel and loading the right one | 16:44 |
ssam2 | tlater, we need to allow access to the system site-packages dir in the virtualenv for pygobject to work | 16:44 |
bochecha | so when you `import pkg_resources`, it looks at the "requires" of the module you're running, and checks which version of which egg to take | 16:45 |
bochecha | ssam2: pygobject should be installable in a venv | 16:45 |
tlater | Ah, alright :| | 16:45 |
bochecha | (I sent the patch upstream that adds a setup.py file a while back) | 16:45 |
ssam2 | bochecha, ah ok. but then I have to build it from sourcve | 16:45 |
ssam2 | *source | 16:46 |
bochecha | ssam2: absolutely | 16:46 |
ssam2 | a hacky removal of pkg_resources seems to have also sped up the test suite; the test/format tests went from 48.6 to 29.5 seconds | 16:46 |
bochecha | :) | 16:46 |
bochecha | I've had commands take more than 2 seconds to start just because of pkg_resources | 16:46 |
bochecha | simply because those commands were used with a webapp that had lots of dependencies | 16:46 |
ssam2 | seems the test suite speedup was not caused by removing pkg_resources, having done a bit more testing | 16:47 |
ssam2 | just coincidence | 16:48 |
gitlab-br-bot | buildstream: merge request (164-minimise-overlaps-by-having-overlaps-raise-exceptions-unless-configured-not-to->master: Resolve "Minimise overlaps by having overlaps raise exceptions unless configured not to") #181 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/181 | 17:24 |
*** jude has quit IRC | 17:28 | |
gitlab-br-bot | buildstream: merge request (164-minimise-overlaps-by-having-overlaps-raise-exceptions-unless-configured-not-to->master: Resolve "Minimise overlaps by having overlaps raise exceptions unless configured not to") #181 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/181 | 17:34 |
gitlab-br-bot | buildstream: issue #168 ("Initialize logging early and use it in the frontend") changed state ("closed") https://gitlab.com/BuildStream/buildstream/issues/168 | 17:41 |
gitlab-br-bot | buildstream: merge request (jjardon/out-of-tree->master: WIP: buildstream/plugins/elements/autotools.yaml: Make builds out of tree by default) #175 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/175 | 17:43 |
gitlab-br-bot | buildstream: merge request (tracking-changes->master: Tracking changes) #119 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/119 | 17:44 |
gitlab-br-bot | buildstream: issue #117 ("bst build --track doesnt allow granular selection of elements to track") changed state ("closed") https://gitlab.com/BuildStream/buildstream/issues/117 | 17:45 |
gitlab-br-bot | buildstream: issue #113 ("Distinguish between tracking and saving in `bst build --track`") changed state ("closed") https://gitlab.com/BuildStream/buildstream/issues/113 | 17:46 |
*** jonathanmaw has quit IRC | 17:52 | |
gitlab-br-bot | buildstream: merge request (rmtempdir->master: utils._tempdir: don't leak on exceptions) #194 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/194 | 17:54 |
gitlab-br-bot | buildstream: merge request (finallyunregister->master: _signals: always pop handlers, and restore states) #192 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/192 | 17:58 |
*** bethw has quit IRC | 18:06 | |
*** ssam2 has quit IRC | 18:27 | |
*** valentind has joined #buildstream | 19:12 | |
*** jude has joined #buildstream | 20:42 | |
*** jude has quit IRC | 21:08 | |
*** jude has joined #buildstream | 21:11 | |
*** jude has quit IRC | 21:34 | |
*** valentind has quit IRC | 22:55 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!