beat.core issueshttps://gitlab.idiap.ch/beat/beat.core/-/issues2022-02-24T09:03:39Zhttps://gitlab.idiap.ch/beat/beat.core/-/issues/108Nightlies are failing for several reasons2022-02-24T09:03:39ZSamuel GAISTNightlies are failing for several reasonsThe nightlies are currently failing for several unrelated reasons:
- Looks like some keys have gone missing
- Some tests cannot be run because of database environment missing.
The first one is likely related to the use of cgroup v2 bas...The nightlies are currently failing for several unrelated reasons:
- Looks like some keys have gone missing
- Some tests cannot be run because of database environment missing.
The first one is likely related to the use of cgroup v2 based on the name of the fields missing and the information given on the [Container Stats information for the Docker v1.41 API](https://docs.docker.com/engine/api/v1.41/#operation/ContainerStats).
As for the database environments, the likely reasons is that all the runners and test machines had previous versions of the database images and thus the tests were run successfully although the test image pull method used later versions of them.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/107Error on docker client creation2021-04-13T12:14:32ZSamuel GAISTError on docker client creationAt least on macOS when the daemon is not running, the client creation may fail and thus lead to an exception.
This is a case that is not yet handled like the others that follows when looking up for images.
Related to beat/beat.editor#282At least on macOS when the daemon is not running, the client creation may fail and thus lead to an exception.
This is a case that is not yet handled like the others that follows when looking up for images.
Related to beat/beat.editor#282Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/104Experiment global properties regex is wrong for algorithms name2020-11-12T12:20:40ZSamuel GAISTExperiment global properties regex is wrong for algorithms nameThe `patternProperties` definition for algorithm related properties is missing `-` for the author part of the regex so it forbids creating experiments using valid algorithms.The `patternProperties` definition for algorithm related properties is missing `-` for the author part of the regex so it forbids creating experiments using valid algorithms.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/101Add tmpfs when running a container2020-07-29T09:18:53ZSamuel GAISTAdd tmpfs when running a containerDespite the tests run in the various aspects of the BEAT code base which showed that having the container start read-only was successful, actual run on the platform started to unsuccessfully fail with an error related to temporary file c...Despite the tests run in the various aspects of the BEAT code base which showed that having the container start read-only was successful, actual run on the platform started to unsuccessfully fail with an error related to temporary file creation coming from the entrypoint script loading the correct conda environment.
"Unsuccessfully failed" here means that the full experiment run was marked as good despite that error happening which in fact did not even allow for a proper start of the execution procedure.
The fix for this situation is to add a minimal writable tmpfs for /tmp in order to have the space necessary for that file to be created.
It might also be useful to have one for /run even if it does not look like it is being used currently (at least in the same way as /tmp seemed to not be used).Soft loopsSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/95Schema: missing constraints2020-03-10T16:08:31ZSamuel GAISTSchema: missing constraintsOn the platform, fields like the short descriptions have for example size constraints.
These should be reflected here to avoid issues when creating a new object.On the platform, fields like the short descriptions have for example size constraints.
These should be reflected here to avoid issues when creating a new object.https://gitlab.idiap.ch/beat/beat.core/-/issues/93New environment descovery does not respect the raise on error property2020-01-29T13:15:19ZSamuel GAISTNew environment descovery does not respect the raise on error propertyIf the discovery process using image labels is run on a machine without docker running or if the daemon is not running, it will fail as expected however the error handling does not follow the raise on error property.
To reproduce, call ...If the discovery process using image labels is run on a machine without docker running or if the daemon is not running, it will fail as expected however the error handling does not follow the raise on error property.
To reproduce, call `beat editor refresh-env` on a machine without docker or with the daemon stopped.
A current workaround is to create the `.environments.json` file in the prefix with `{}` as its content.Soft loopsSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/83Test prefix: plotters empty uses not present2019-06-28T13:14:47ZFlavio TARSETTITest prefix: plotters empty uses not presentThis issue tracks inconsistency with the json libraries management in the plotter and other editors such as the library editor.
Description of the issue:
In the test prefix, the plotters contain a "uses" key targeting the libraries th...This issue tracks inconsistency with the json libraries management in the plotter and other editors such as the library editor.
Description of the issue:
In the test prefix, the plotters contain a "uses" key targeting the libraries that are used.
When used we have:
```python
"uses": {
"baselib": "plot/baselib/1"
}
```
When no libraries are defined I was expecting to have something like this:
```python
"uses": {}
```
However we get no "uses" key in the dictionary at all. This is counter-intuitive and works at the opposite of what is done for the libraries editor where no libraries used mean having:
```python
"uses": {}
```
in the json file.Flavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.core/-/issues/78Plotterparameter saving is not operational2019-05-06T13:35:08ZSamuel GAISTPlotterparameter saving is not operationalCurrently the implementation of the writing of a Plotterparameter can succeed.
The implementation is wrong and there are elements of the class that are missing.Currently the implementation of the writing of a Plotterparameter can succeed.
The implementation is wrong and there are elements of the class that are missing.Soft loopsSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/74Update the schemas to better reflect parameter type support in different objects2020-10-19T15:16:45ZJaden DIEFENBAUGHUpdate the schemas to better reflect parameter type support in different objectsSee https://gitlab.idiap.ch/beat/beat.editor/issues/205#note_40301
The issue we found first is that the algorithm editor's parameter logic doesn't actually support complex types, but the algorithm schema indicates support. See the algor...See https://gitlab.idiap.ch/beat/beat.editor/issues/205#note_40301
The issue we found first is that the algorithm editor's parameter logic doesn't actually support complex types, but the algorithm schema indicates support. See the algorithm schema, `algorithm/common.json:80`:
```json
80 "parameter": {
81 "type": "object",
82 "properties": {
83 "type": { "$ref": "../common/1.json#/definitions/basetype" },
84 "default": { "$ref": "../common/1.json#/definitions/value" },
85 "description": { "type": "string" }
86 },
87 "required": [
88 "type"
89 ]
90 },
```
The `type` field references the `basetype` types, which includes complex types, but the editors (`beat.web` & `beat.editor`) don't actually support complex types for algorithm parameters.
I'll be looking through the other schemas and will update this issue with other things I find, if any.
EDIT: didn't find anything else in the other objects' schemas parameter definitionsJaden DIEFENBAUGHJaden DIEFENBAUGHhttps://gitlab.idiap.ch/beat/beat.core/-/issues/71Algorithm prototype loading fails on python 3.52019-03-15T10:41:57ZSamuel GAISTAlgorithm prototype loading fails on python 3.5Issue similar to the one fixed by !58
`pkg_resources.resource_string` returns bytes and not str which the json module doesn't load on 3.5.
Issue found through beat/beat.web>Issue similar to the one fixed by !58
`pkg_resources.resource_string` returns bytes and not str which the json module doesn't load on 3.5.
Issue found through beat/beat.web>Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/67Algorithm prototype default dataformat not available on platform installation2019-02-25T08:32:27ZSamuel GAISTAlgorithm prototype default dataformat not available on platform installationThe `integers` dataformat used as default type when loading the algorithm prototype is not available on a default installation of the BEAT platoform.The `integers` dataformat used as default type when loading the algorithm prototype is not available on a default installation of the BEAT platoform.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.core/-/issues/66The plotterparameter type doesn't have a JSON schema file2019-04-18T22:25:57ZJaden DIEFENBAUGHThe plotterparameter type doesn't have a JSON schema fileNot sure what happened but we need one, right?
I found this out by working on https://gitlab.idiap.ch/beat/beat.editor/issues/161Not sure what happened but we need one, right?
I found this out by working on https://gitlab.idiap.ch/beat/beat.editor/issues/161Jaden DIEFENBAUGHJaden DIEFENBAUGHhttps://gitlab.idiap.ch/beat/beat.core/-/issues/58Local executor doesnt capture user stdout2018-05-30T14:29:40ZJaden DIEFENBAUGHLocal executor doesnt capture user stdoutAdding a print statement to an algorithm prints it alongside the platform's messages, not under the captured user stdout sectionAdding a print statement to an algorithm prints it alongside the platform's messages, not under the captured user stdout sectionhttps://gitlab.idiap.ch/beat/beat.core/-/issues/56Docker timer tests rely on having adequate CI resources2018-12-12T09:13:59ZJaden DIEFENBAUGHDocker timer tests rely on having adequate CI resourcesSometimes docker timing tests will fail when the tests go too slowly. These tests rely on a hard-coded number of seconds/milliseconds with numbers that are reasonable to assume on one's own machine but obviously aren't designed for a CI ...Sometimes docker timing tests will fail when the tests go too slowly. These tests rely on a hard-coded number of seconds/milliseconds with numbers that are reasonable to assume on one's own machine but obviously aren't designed for a CI (just see the [docker tests](https://gitlab.idiap.ch/beat/beat.core/blob/85cef289db0eac7aaa47308dd92cc5003a6a689b/beat/core/test/test_docker.py).
Some of these tests can just be changed. For example, the `test_images_cache` tests are actually relative tests - you just want to be sure that doing something a second time is faster than the first time. I believe that the CI performance would be consistent across each of these tests (which shouldn't last for more than a couple seconds).
There's other ones though, like the timeout tests. Not sure what to do with those.
This doesn't unconditionally make the CI fail since rerunning the job usually fixes it.https://gitlab.idiap.ch/beat/beat.core/-/issues/46Master CI failing2018-04-25T06:36:46ZJaden DIEFENBAUGHMaster CI failingJob [#125265](/beat/beat.core/-/jobs/125265) failed for a8871304860b9e7c87f3b7ec08c0b308ccd0908a:Job [#125265](/beat/beat.core/-/jobs/125265) failed for a8871304860b9e7c87f3b7ec08c0b308ccd0908a:https://gitlab.idiap.ch/beat/beat.core/-/issues/44Agent is unprotected in case the user sends to many "nxt" commands2017-08-06T11:17:03ZAndré AnjosAgent is unprotected in case the user sends to many "nxt" commandsWe should put in place:
1. A check in the agent side (around line 150), that prevents the agent to measure the length of `None'
2. A new protocol reply possibility for an erroneous condition on the `nxt` operation.
We should put in place:
1. A check in the agent side (around line 150), that prevents the agent to measure the length of `None'
2. A new protocol reply possibility for an erroneous condition on the `nxt` operation.
BTAS TutorialAndré AnjosAndré Anjos