*** tristan has quit IRC | 00:31 | |
*** tristan has joined #buildstream | 01:14 | |
*** narispo has quit IRC | 04:23 | |
*** narispo has joined #buildstream | 04:23 | |
*** narispo has quit IRC | 06:20 | |
*** narispo has joined #buildstream | 06:20 | |
*** gitlab-br-bot has quit IRC | 07:20 | |
*** gitlab-br-bot has joined #buildstream | 07:22 | |
*** traveltissues has joined #buildstream | 08:00 | |
*** tpollard has joined #buildstream | 08:03 | |
*** phoenix has joined #buildstream | 08:04 | |
*** phildawson has joined #buildstream | 08:29 | |
*** tiagogomes has joined #buildstream | 08:49 | |
*** santix has joined #buildstream | 08:50 | |
*** lachlan has joined #buildstream | 09:02 | |
*** jonathanmaw has joined #buildstream | 09:12 | |
*** lachlan has quit IRC | 09:14 | |
*** lachlan has joined #buildstream | 09:16 | |
*** phoenix has quit IRC | 09:34 | |
*** lachlan has quit IRC | 09:50 | |
*** lachlan has joined #buildstream | 09:55 | |
gitlab-br-bot | jjardon opened issue #1168 (WSL overnight test are failing) on buildstream https://gitlab.com/BuildStream/buildstream/issues/1168 | 09:58 |
---|---|---|
*** tristan has quit IRC | 09:59 | |
gitlab-br-bot | jjardon opened issue #1169 (aarch64 overnight job is failing: "ERROR: py37: commands failed") on buildstream https://gitlab.com/BuildStream/buildstream/issues/1169 | 10:04 |
benschubert | jjardon: ^ I updated the title, it's because of 'buildbox-casd' not being present in the docker image for aarch64 | 10:09 |
tlater[m] | We really need a checklist for things to do when introducing a new dependency... | 10:10 |
jjardon | Ah rigth; thanks benschubert | 10:11 |
jjardon | benschubert: juergbi for me the main benefit of all plugins to be outside (even if they are in the same repo) is that all plugins are first class citizen ; if some are inside the repo it's easier to fix those and break external ones (I see this happening before several times) | 10:24 |
juergbi | jjardon: I agree that if some plugins are external, it's better if all plugins are external (except for very few plugins providing core functionality) | 10:28 |
juergbi | where I fail to see a significant advantage is keeping all plugins in a single external repo compared to keeping all plugins in the core repo | 10:29 |
juergbi | I think it makes sense to keep plugins external but only if we use multiple repositories | 10:29 |
juergbi | (making it easy for anyone to provide a plugin, among other things) | 10:30 |
*** cs-shadow has joined #buildstream | 10:30 | |
traveltissues | it's definitely more convenient especially in terms of packaging | 10:30 |
jjardon | Well, are you saying that if you want a new plugin you have to integrate it in the main repo? | 10:31 |
jjardon | Basically not allowing external plugins? | 10:32 |
traveltissues | no, i think it would be the opposite | 10:32 |
traveltissues | if you kept all plugins in the core repo, then yes, but not if they were all external which i think is the better way to approach it | 10:33 |
jjardon | If we agree that if you allow external plugins should be all external, then if you put all in the main repo you should not allow external plugins | 10:34 |
jjardon | traveltissues: I think we are saying the same :) | 10:34 |
traveltissues | i'm suggesting that all plugins would make more sense being in external repos | 10:34 |
traveltissues | i think juergbi agreed? | 10:35 |
jjardon | Yeah, that is the current plan | 10:35 |
traveltissues | i think the disagreement is whether that external plugin source should be one repo per plugin or one repo and i'd prefer one repo per plugin | 10:35 |
traveltissues | you could always metapkg those together regardless | 10:35 |
jjardon | That migth be more correct but impractical | 10:36 |
traveltissues | why is that? | 10:36 |
jjardon | Every single repo have to have its CI, release cycle, issue tracking etc | 10:37 |
juergbi | jjardon: it doesn't have to be strictly one repo per plugin | 10:37 |
coldtom | plus we already see that with two repos plugins can be broken and nobody notices, this just gets compounded when it's one repo per plugin | 10:37 |
traveltissues | yes but that is not too much of a burden jjardon | 10:37 |
juergbi | sensible grouping could definitely be useful | 10:37 |
benschubert | coldtom: people who care about a repo do notice. Others don't need to notice :) | 10:38 |
benschubert | juergbi: I do agree on that point | 10:38 |
juergbi | coldtom: the plan was/is to test known plugin repos also as part of BuildStream core CI | 10:38 |
jjardon | traveltissues: let's agree on disagree; we barely manage to maintain one | 10:38 |
traveltissues | also in some ways it's a bit difficult to enforce this, once they are moved out of core it becomes the maintainers job to see that their plugin does not break | 10:38 |
benschubert | juergbi: I don't think it is 'known plugins' but a subset of plugins that are maintained by BuildStream core maintainer rather :) | 10:38 |
juergbi | well, not all known plugins but I wouldn't restrict it that much | 10:39 |
benschubert | Also remember, we should not be breaking plugins after 2.0 as we are doing now | 10:39 |
traveltissues | jjardon, i had to roll out ci on multiple plugins on another project, i feel your pain | 10:39 |
benschubert | so the problem _in theory_ should not be much | 10:39 |
coldtom | yes, i was going to say that a lot of the issues are the gap between master/stable | 10:39 |
juergbi | yes, it's currently mainly an issue because master doesn't have API stability | 10:39 |
traveltissues | ^ | 10:39 |
*** narispo has quit IRC | 10:42 | |
*** narispo has joined #buildstream | 10:42 | |
*** lachlan has quit IRC | 10:55 | |
tlater[m] | juergbi: Grmbl, our test suite really relies on CASCache internals to check remote CASes | 10:59 |
tlater[m] | Think it's worth refactoring that so that we just use the actual grpc API? | 10:59 |
*** lachlan has joined #buildstream | 11:03 | |
*** narispo has quit IRC | 11:12 | |
*** narispo has joined #buildstream | 11:13 | |
juergbi | tlater[m]: hm, is this really an issue? | 11:16 |
juergbi | theoretically, it would be nice to test buildstream against other CAS servers but I don't think this is a big issue right now | 11:18 |
*** lachlan has quit IRC | 11:30 | |
*** narispo has quit IRC | 11:33 | |
*** narispo has joined #buildstream | 11:34 | |
*** paulsherwood has left #buildstream | 11:42 | |
tlater[m] | juergbi: the problem is that since we're not using CASCache as the remote anymore, all tests break down completely because they use file paths that don't work on buildbox-casd. | 11:45 |
*** lachlan has joined #buildstream | 11:49 | |
juergbi | tlater[m]: I don't understand. CASCache uses a casd-compatible filesystem layout, otherwise bst wouldn't work either | 12:07 |
juergbi | i.e., we're just removing an abstraction layer (CASCache) for bst-artifact-server. it's not like we're switching from one storage to another. master is already casd as well | 12:08 |
*** santix has quit IRC | 12:13 | |
*** lachlan has quit IRC | 12:25 | |
tlater[m] | juergbi: hrm, nevermind me, I think I just accidentally changed something I didn't expect I would | 12:25 |
*** santix has joined #buildstream | 12:40 | |
gitlab-br-bot | tpollard closed issue #1168 (WSL overnight tests are failing) on buildstream https://gitlab.com/BuildStream/buildstream/issues/1168 | 12:44 |
*** tpollard has quit IRC | 12:54 | |
*** tpollard has joined #buildstream | 12:55 | |
tpollard | anyone having issues with the 'test_mirror_track_upstream_absent` tests? | 13:15 |
tpollard | it always fails locally for me, but not in CI seemingly | 13:15 |
*** santix has quit IRC | 13:20 | |
traveltissues | i haven't seen any issues | 13:23 |
traveltissues | do you have a snipet | 13:23 |
traveltissues | snippet* | 13:23 |
traveltissues | i think i've found some questionable test behaviour. aiui workspace open --force --directory dir should ignore files in dir, but the test for this expects the existing files to be removed | 13:25 |
traveltissues | i have to assume this is because no-checkout is False by default? | 13:26 |
traveltissues | i don't find either option to be very intuitive or how they combine, checkout is just a checkout imo it doesn't imply how existing non-tracked files should be treated | 13:28 |
*** santix has joined #buildstream | 13:35 | |
*** lachlan has joined #buildstream | 13:40 | |
*** jonathanmaw has quit IRC | 14:05 | |
*** lachlan has quit IRC | 14:23 | |
*** lachlan has joined #buildstream | 14:25 | |
*** santix has quit IRC | 14:29 | |
tlater[m] | Could someone run `tox -e py37-nocover -- -x tests/artifactcache/push.py::test_push` on master and tell me if the test is working for them? | 14:29 |
*** phoenix has joined #buildstream | 14:57 | |
tlater[m] | Ugh, looks like most tests are failing locally for me :( | 14:58 |
*** phoenix has quit IRC | 14:59 | |
cs-shadow | tlater[m]: works for me | 15:01 |
* tlater[m] is a little stumped | 15:02 | |
tlater[m] | Maybe I should update my buildbox-casd | 15:02 |
* cs-shadow tested this using the same docker image that's used in CI | 15:06 | |
tlater[m] | I'm getting an "instance name unkown", which is odd, coming from the test suite. | 15:08 |
cs-shadow | can you run `buildbox-casd --help` ? | 15:12 |
tlater[m] | cs-shadow: Yup | 15:12 |
tlater[m] | Though after a couple of `git clean -ffxd` and `git reset --hard` my test suite is thoroughly borked now | 15:13 |
* tlater[m] wonders if his system python is struggling | 15:13 | |
cs-shadow | might be time to get a coffee (and restart your computer in the meantime) :) | 15:14 |
* tlater[m] already did :( | 15:15 | |
tlater[m] | If I was one to give up it'd be time to crack out the arch iso and reinstall | 15:16 |
tlater[m] | Currently I'm getting an importmismatcherror from pytest | 15:16 |
tlater[m] | I've had this before, but I haven't a clue what caused it last time. | 15:16 |
traveltissues | in these cases i delete the tox | 15:21 |
tlater[m] | Grmbl, still works in a different repo | 15:21 |
tlater[m] | traveltissues: I've run `git clean -ffxd` and `git reset --hard` a dozen times or so. It's equal to the state on origin/master. | 15:21 |
traveltissues | right but the tox cache is not indexed right? | 15:22 |
tlater[m] | -ffxd is required to actually delete the .tox dir, you need -ff to delete directories | 15:22 |
tlater[m] | x removes non-indexed and indexed thigns | 15:22 |
traveltissues | i just do the old rm -rf | 15:22 |
traveltissues | and reclone | 15:22 |
tlater[m] | Well, there's no .tox directory anymore | 15:22 |
cs-shadow | that should definitely clean it up unless you do something like `tox --workdir /some/other/dir` | 15:22 |
traveltissues | when in doubt, it's easier | 15:22 |
tlater[m] | Well, but I'll lose my local branches | 15:23 |
* tlater[m] doesn't think that matters | 15:23 | |
tlater[m] | But I'd rather not | 15:23 |
*** toscalix has quit IRC | 15:24 | |
tlater[m] | Hrm... | 15:25 |
tlater[m] | It looks like pytest is trying to import both the conftest.py in the .tox dir and the one in src/buildstream/testing | 15:25 |
benschubert | tlater[m]: I run my tests with pytest and don't get any problem? | 15:26 |
cs-shadow | yeah, I do the same. Seems like something's weird in your setup :) | 15:26 |
tlater[m] | I... doubt it. Considering that it works on the buildstream-1.2 branch | 15:26 |
tlater[m] | I think we screwed up tox on master with up-to-date python3.7 or somesuch | 15:27 |
* tlater[m] triest to remember how to run setuptools | 15:27 | |
cs-shadow | tlater[m]: what version of python do you have? | 15:27 |
cs-shadow | i mean including the patch version | 15:27 |
tlater[m] | 3.7.4 - updated this morning | 15:27 |
benschubert | tlater[m]: I remember using tox yesterday on my personal laptop with ubuntu 19.10 up to date, and no problem either? | 15:28 |
tlater[m] | It worked for me yesterday | 15:28 |
cs-shadow | ¯\_(ツ)_/¯ 3.7.4 is the same version that the CI uses (and what I tried) | 15:30 |
tlater[m] | It works on the 1.4.1 tag |: | 15:30 |
* tlater[m] is thoroughly stumped | 15:30 | |
tlater[m] | python dependencies shouldn't matter either, because tox takes care of those | 15:31 |
tlater[m] | ... It started running again after I checked out another branch and checked this one back in | 15:34 |
tlater[m] | Black voodoo magic, I tell you | 15:34 |
tlater[m] | Ah, no, looks like py37-nocover is broken again | 15:40 |
* tlater[m] figures out why | 15:40 | |
tlater[m] | It's probably the usedevelop thing again | 15:41 |
tlater[m] | Oh, right, I had an issue about this: https://gitlab.com/BuildStream/buildstream/issues/1121 | 15:42 |
tlater[m] | cs-shadow: When you said "works for me", I assume you meant the test suite in general, because the command I gave there clearly shouldn't work for you? | 15:46 |
tlater[m] | Just because I'll still need to figure out why that test fails | 15:47 |
tlater[m] | Aha, that test still works on master if I first apply the nocov patch | 15:52 |
* tlater[m] 's branch is therefore broken | 15:53 | |
* tlater[m] curses this nocov issue | 15:53 | |
gitlab-br-bot | tlater opened MR !1639 (tlater/nocover-usedevelop->master: Add usedevelop to nocover environments) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/1639 | 15:55 |
gitlab-br-bot | BenjaminSchubert approved MR !1639 (tlater/nocover-usedevelop->master: Add usedevelop to nocover environments) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/1639 | 15:57 |
gitlab-br-bot | BenjaminSchubert unapproved MR !1639 (tlater/nocover-usedevelop->master: Add usedevelop to nocover environments) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/1639 | 15:58 |
benschubert | tlater[m]: ^ wut? why do we need that if not for coverage? | 15:58 |
tlater[m] | benschubert: https://gitlab.com/BuildStream/buildstream/issues/1121 | 15:58 |
benschubert | the only reason for that was so that we would have access to the .so files | 15:58 |
tlater[m] | Something else went very wrong | 15:58 |
tlater[m] | That MR deliberately says it's a band-aid | 15:59 |
benschubert | and breaks isolation for nocover tests :( | 15:59 |
tlater[m] | Clearly nobody seems to care about isolation for nocover tests, I'm the only one running them | 15:59 |
tlater[m] | They've been broken for a month | 15:59 |
traveltissues | i mostly just use the ci | 16:01 |
traveltissues | because enough things are skipped on my local testing | 16:02 |
tlater[m] | traveltissues: That takes like, what, 30 minutes every time you want to check if your most recent change does something? | 16:02 |
* tlater[m] uses a test-driven approach, using CI as my test runner won't work at all, and I don't want my test suite to fail because it desperately tries to show me a coverage report | 16:03 | |
*** tpollard has quit IRC | 16:05 | |
traveltissues | my suggestion is that if this test is important, it should be part of the ci | 16:06 |
benschubert | traveltissues: this tox env is to run the tests without coverage enabled, that's all :) | 16:07 |
benschubert | so it's not important but it's very convenient | 16:07 |
tlater[m] | Well, more importantly, it's a test that shows how buildstream behaves in isolation | 16:07 |
tlater[m] | BuildStream can currently not be tested without its working directory | 16:08 |
tlater[m] | That is a bug | 16:08 |
* tlater[m] thinks traveltissues is talking about that | 16:08 | |
*** santix has joined #buildstream | 16:08 | |
tlater[m] | But afaik getting the repository into a state where this works again involves reverting the casd change, becasue that introduced it. | 16:09 |
benschubert | tlater[m]: add 'tests/' at the end of line 14 in setup.cfg and try :) | 16:12 |
benschubert | (which is why I would not reproduce, since I always specify the dir in which I test) | 16:13 |
tlater[m] | benschubert: So, py.test tries to load conftest from any old directory? | 16:15 |
tlater[m] | But by specifying that we restrict it to that dir? | 16:15 |
tlater[m] | In that case, when do we load the conftest.py from src/buildstream/testing? | 16:16 |
tlater[m] | Surely that has to be loaded at some point? | 16:16 |
benschubert | tlater[m]: pytest will load all conftest.py by _path_ that it discovers from the root of the tests. If you don't specify anything, the root is '.', which means 'conftest.py' in sourcetest gets imported twice with different paths, which is wrong | 16:16 |
benschubert | I actually never ran source tests with nocover, that is something that would need testing | 16:16 |
tlater[m] | Right | 16:16 |
cs-shadow | tlater[m]: what I tried was the same command you mentioned, but with `--workdir /tmp`. Let me try without that | 16:19 |
tlater[m] | The source tests themselves seem to work... | 16:20 |
tlater[m] | cs-shadow: Don't worry about it, it seems to work post debugging the other test suite issues I've run into | 16:20 |
cs-shadow | all said and done, I do think we should have at least one CI environment that tests with `usedevelop` | 16:21 |
cs-shadow | sorry, _without _`usedevelop` | 16:21 |
tlater[m] | Yeah, that's less of an issue now that we know why it's failing | 16:22 |
gitlab-br-bot | traveltissues opened (was WIP) MR !1637 (traveltissues/1140->master: Workspaces via sourcecache 2) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/1637 | 16:22 |
tlater[m] | Although it'd be interesting to know if source tests work with this | 16:22 |
cs-shadow | i meaan my motivation is that there are a lot of issues that can go undetected when using `usedevelop`, mostly related to incomplete manifests etc | 16:23 |
*** phoenix has joined #buildstream | 16:26 | |
tlater[m] | cs-shadow: Think it's enough to do that only on one platform? | 16:29 |
cs-shadow | tlater[m]: yep, that's why i said _at least_ one environment | 16:29 |
tlater[m] | Ah, sorry, mind skipped that part | 16:30 |
cs-shadow | :) | 16:30 |
cs-shadow | well, it's Friday | 16:30 |
tlater[m] | Hrm, this is going to be a bit more difficult than I'd hoped | 16:32 |
tlater[m] | Doesn't really make sense to test this without testing things like the man pages | 16:33 |
tlater[m] | Because those are especially prone to generating manifests | 16:33 |
tlater[m] | But we can't currently test those with -nocover | 16:34 |
tlater[m] | Oh well, I guess for now testing only the actual tests with nocover is an improvement | 16:34 |
*** lachlan has quit IRC | 16:37 | |
*** lachlan has joined #buildstream | 16:38 | |
*** bochecha has quit IRC | 16:46 | |
*** santix has quit IRC | 16:51 | |
*** tiagogomes has quit IRC | 16:53 | |
*** lachlan has quit IRC | 16:56 | |
*** tristan has joined #buildstream | 17:28 | |
gitlab-br-bot | traveltissues opened (was WIP) MR !1637 (traveltissues/1140->master: Workspaces via sourcecache 2) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/1637 | 17:29 |
gitlab-br-bot | traveltissues opened MR !1640 (traveltissues/1140-softreset->master: Workspaces via sourcecache MR 2) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/1640 | 17:30 |
traveltissues | does anyone make use of workspace reset --soft? | 17:34 |
gitlab-br-bot | traveltissues closed MR !1637 (traveltissues/1140->master: Workspaces via sourcecache 2) on buildstream https://gitlab.com/BuildStream/buildstream/merge_requests/1637 | 17:43 |
gitlab-br-bot | traveltissues opened issue #1170 (purpose of soft resetting workspaces) on buildstream https://gitlab.com/BuildStream/buildstream/issues/1170 | 17:47 |
*** traveltissues has quit IRC | 18:16 | |
*** cs-shadow has quit IRC | 19:10 | |
*** phoenix has quit IRC | 20:11 | |
*** phoenix has joined #buildstream | 20:12 | |
*** phoenix has quit IRC | 20:17 | |
*** narispo has quit IRC | 22:28 | |
*** narispo has joined #buildstream | 22:28 | |
*** narispo has quit IRC | 22:55 | |
*** narispo has joined #buildstream | 22:55 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!