beat.editor issueshttps://gitlab.idiap.ch/beat/beat.editor/-/issues2021-04-13T12:14:31Zhttps://gitlab.idiap.ch/beat/beat.editor/-/issues/282Editor will not start if Docker is not running2021-04-13T12:14:31ZAndré AnjosEditor will not start if Docker is not runningThis either needs fixing and a better error message. Currently, the editor only reports `Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))`.This either needs fixing and a better error message. Currently, the editor only reports `Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))`.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/258Documentation still points to the v1 editor components2020-10-16T15:25:30ZAmir MOHAMMADIDocumentation still points to the v1 editor componentsLooking at the docs, it looks like the documentation was not updated for v2 release.
Given that users are installing v2 now, the docs need to be updated.
* [ ] Docs in this package
* [ ] Docs in `beat/docs`Looking at the docs, it looks like the documentation was not updated for v2 release.
Given that users are installing v2 now, the docs need to be updated.
* [ ] Docs in this package
* [ ] Docs in `beat/docs`https://gitlab.idiap.ch/beat/beat.editor/-/issues/243There is no way to close an asset without opening another one.2020-08-10T15:27:51ZZohreh MOSTAANIThere is no way to close an asset without opening another one.At the moment at all the times there should be one asset opened (except for when the editor starts).
It might be useful to add a button to close an asset without opening a new one. It might also be useful in the future if multiple insta...At the moment at all the times there should be one asset opened (except for when the editor starts).
It might be useful to add a button to close an asset without opening a new one. It might also be useful in the future if multiple instances/windows of editor are open.https://gitlab.idiap.ch/beat/beat.editor/-/issues/185Experiment Editor2020-08-10T12:44:08ZJaden DIEFENBAUGHExperiment EditorThis issue tracks the implementation of the experiment editor.
As this editor is more complex regarding object management as well as setup, the work will be done in several steps:
* [x] Blocks edition
* [x] Toolchain preview
* [x] S...This issue tracks the implementation of the experiment editor.
As this editor is more complex regarding object management as well as setup, the work will be done in several steps:
* [x] Blocks edition
* [x] Toolchain preview
* [x] Smart filtering
Unlike all other BEAT assets, creating a new experiment requires an additional step therefore, a dedicated task is needed with regard to the creation of such a new asset:
* [x] Add support for new experiment creation to asset dialog[v2] 3 - Experiment editorSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/246Correct base types management in AssetModel2020-08-10T08:39:27ZSamuel GAISTCorrect base types management in AssetModelSummary
The DataFormat base types provided through AssetModel shall not be used everywhere a DataFormat is used.
An analysis must be done to determine where exactly it make sense to have them and also if they must be made availble toge...Summary
The DataFormat base types provided through AssetModel shall not be used everywhere a DataFormat is used.
An analysis must be done to determine where exactly it make sense to have them and also if they must be made availble together with the other Dataformats provided by the prefix.
AssetModel shall be purged from these types and a dedicated subclass created if it makes sense to provide them all in one or more places in the code.
Depending also on whether these base types should be the only type used, another model might be created or [QStringListModel](https://doc.qt.io/qt-5/qstringlistmodel.html) used directly in these cases.[v2] 1 - Edition/Visualization for small editorsFlavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.editor/-/issues/227Feature request: Search functionality when making a new version or fork an as...2020-08-06T09:10:07ZZohreh MOSTAANIFeature request: Search functionality when making a new version or fork an asset.It would be good to be able to search for the asset you want to fork or make a new version since the existing list can be very long.It would be good to be able to search for the asset you want to fork or make a new version since the existing list can be very long.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/275TypeError: %d format: a number is required, not NoneType2020-08-06T08:41:49ZAmir MOHAMMADITypeError: %d format: a number is required, not NoneTypeSteps to reproduce:
1. open a v1 alg in the editor: [livdet_baseline.tar.xz](/uploads/2e239002e1c600fe44c57b67005b5817/livdet_baseline.tar.xz)
2. answer yes to its migration to v2
3. save it:
```
Traceback (most recent call last):
File...Steps to reproduce:
1. open a v1 alg in the editor: [livdet_baseline.tar.xz](/uploads/2e239002e1c600fe44c57b67005b5817/livdet_baseline.tar.xz)
2. answer yes to its migration to v2
3. save it:
```
Traceback (most recent call last):
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/assetwidget.py", line 520, in saveJson
is_valid, errors = self.current_asset.is_valid()
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/backend/asset.py", line 269, in is_valid
_, error_list = self.type.validate(self.declaration_path)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/backend/asset.py", line 112, in validate
return validate(self.name.lower(), data)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/core/schema/__init__.py", line 176, in validate
validator = load_schema(schema_name, version)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/core/schema/__init__.py", line 93, in load_schema
__name__, os.path.join(schema_name, "%d.json" % version)
TypeError: %d format: a number is required, not NoneType
```Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/278Crash with TypeError: '<' not supported between instances of 'numpy.ndarray' ...2020-07-29T13:19:22ZAmir MOHAMMADICrash with TypeError: '<' not supported between instances of 'numpy.ndarray' and 'str'```
Traceback (most recent call last):
File "src/beat.editor/beat/editor/widgets/assetwidget.py", line 507, in loadAsset
self.__update_content(declaration)
File "src/beat.editor/beat/editor/widgets/assetwidget.py", line 227, in _...```
Traceback (most recent call last):
File "src/beat.editor/beat/editor/widgets/assetwidget.py", line 507, in loadAsset
self.__update_content(declaration)
File "src/beat.editor/beat/editor/widgets/assetwidget.py", line 227, in __update_content
editor.load_json(json_data)
File "src/beat.editor/beat/editor/widgets/editor.py", line 276, in load_json
self._load_json(json_object)
File "src/beat.editor/beat/editor/widgets/plotterparameterseditor.py", line 497, in _load_json
self.__load_json(json_object)
File "src/beat.editor/beat/editor/widgets/plotterparameterseditor.py", line 462, in __load_json
self.__load_parameter(json_object)
File "src/beat.editor/beat/editor/widgets/plotterparameterseditor.py", line 447, in __load_parameter
parameter_viewer = PlotterParameterViewer(name, data)
File "src/beat.editor/beat/editor/widgets/plotterparameterseditor.py", line 256, in __init__
self.parameter_widget = RestrictedParameterWidget(data)
File "src/beat.editor/beat/editor/widgets/plotterparameterseditor.py", line 185, in __init__
self.numerical_spinbox.setValue(self.default)
File "src/beat.editor/beat/editor/widgets/spinboxes.py", line 183, in setValue
if value > self.maximum():
TypeError: '<' not supported between instances of 'numpy.ndarray' and 'str'
```
Steps to reproduce:
```
$ beat plotterparam pull plot/isoroc/1
# open it with the editor
```https://gitlab.idiap.ch/beat/beat.editor/-/issues/277editor puts local config setting into global config2020-07-28T11:27:58ZAmir MOHAMMADIeditor puts local config setting into global configSteps to reproduce
```
$ beat config show
{
"user": "user"
}
$ cat ~/.beatrc
{
"user": "user"
}
$ beat config set --local user tst
$ beat config show
{
"user": "tst"
}
$ cat ~/.beatrc
{
"user": "user"
}
$ beat editor star...Steps to reproduce
```
$ beat config show
{
"user": "user"
}
$ cat ~/.beatrc
{
"user": "user"
}
$ beat config set --local user tst
$ beat config show
{
"user": "tst"
}
$ cat ~/.beatrc
{
"user": "user"
}
$ beat editor start
# do nothing, exit editor
$ cat ~/.beatrc
{
"user": "tst"
}
```https://gitlab.idiap.ch/beat/beat.editor/-/issues/276Editor crashes with KeyError on block parameters2020-07-21T13:12:53ZAmir MOHAMMADIEditor crashes with KeyError on block parameters```
Traceback (most recent call last):
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/assetwidget.py", line 507, in loadAsset
self.__update_content(declaration)
File "miniconda/envs/iris/lib/python3.7/s...```
Traceback (most recent call last):
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/assetwidget.py", line 507, in loadAsset
self.__update_content(declaration)
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/assetwidget.py", line 234, in __update_content
self.__updateJsonWidget()
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/assetwidget.py", line 319, in __updateJsonWidget
self.json_widget.setText(self.current_editor.dump_as_string())
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/editor.py", line 299, in dump_as_string
self.dump_json(), sort_keys=True, indent=4, cls=utils.NumpyJSONEncoder
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/editor.py", line 292, in dump_json
json_data.update(self._dump_json())
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/experimenteditor.py", line 1435, in _dump_json
__filter_parameters(item, globals_)
File "miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/experimenteditor.py", line 1411, in __filter_parameters
block_parameters[parameter_name]
KeyError: 'useBestGuess'
```
To reproduce:
* use this prefix: https://filesender.switch.ch/filesender/?vid=59e1dbc9-04e4-67c8-2bb1-00007d77b3bb
* start beat editor
* open this experiment:
```
├── experiments
│ └── jmcgrat3
│ └── jmcgrat3
│ └── livdet-baseline
│ └── 1
│ └── livdet-baseline.json
```Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/265Allow toolchain creation without having the blocks first2020-06-24T10:35:29ZAmir MOHAMMADIAllow toolchain creation without having the blocks firstWhen I want to create an experiment on BEAT, the first thing that I want to do is to create the toolchain.
Creating the toolchain allows me to visualize what blocks I need for the experiments and how they should look like.
It was possibl...When I want to create an experiment on BEAT, the first thing that I want to do is to create the toolchain.
Creating the toolchain allows me to visualize what blocks I need for the experiments and how they should look like.
It was possible with the v1 editor to create arbitrary blocks, define input/outputs and connect them.
The new editor, only lets you create blocks that already exist.
But, I don't have the blocks yet and I don't exactly know
how they will look like till I draw the toolchain.
Maybe a free editing mode can exist in the toolchain editor?
What I have done so far is to draw the toolchain on paper/in my mind, implement blocks, and then draw the toolchain with the app.André AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.editor/-/issues/267created toolchain ends up with an additional channel color2020-06-24T09:22:58ZAmir MOHAMMADIcreated toolchain ends up with an additional channel colorWhen I create a toolchain: [1.json](/uploads/bcc74bd465e922514b0550e245cad72f/1.json), it ends up with an extra channel color:
```
"channel_colors": {
"": "#000000",
"test": "#005500",
"train":...When I create a toolchain: [1.json](/uploads/bcc74bd465e922514b0550e245cad72f/1.json), it ends up with an extra channel color:
```
"channel_colors": {
"": "#000000",
"test": "#005500",
"train": "#aa0000"
},
```
which makes the toolchain invalid.
![beat-toolchain-color-bug](/uploads/1d83f51e40c819be013feb0c4256dccf/beat-toolchain-color-bug.webm)
[prefix.tar.xz](/uploads/51757b07d4efcbcf3e332de6b902dcc2/prefix.tar.xz)Flavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.editor/-/issues/236Make the contents in a dataformat collapsible2020-06-24T08:47:13ZZohreh MOSTAANIMake the contents in a dataformat collapsibleThe dataformats can become very complicated and big very fast. A way to make it easier for the user to deal with this amount of data is to make the content part in each category added to a dataformat collapsible so the user can have an o...The dataformats can become very complicated and big very fast. A way to make it easier for the user to deal with this amount of data is to make the content part in each category added to a dataformat collapsible so the user can have an overview of what is in the dataformat before going into details of each part of it.
This is to make it easier for the user to deal with big objects in the editor by handling the visual aspects of the editor in a better way. See #235Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/2712 bugs: Issues with commit and/or python update in conda environment2020-06-23T15:03:47ZFlavio TARSETTI2 bugs: Issues with commit and/or python update in conda environmentSummary and Steps to reproduce
Important note: these bugs have taken place after the "current blackout" and Idiap networking services restore
When trying to push to beat.editor some commits I now get two errors :
```
[INFO] Installin...Summary and Steps to reproduce
Important note: these bugs have taken place after the "current blackout" and Idiap networking services restore
When trying to push to beat.editor some commits I now get two errors :
```
[INFO] Installing environment for https://github.com/ambv/black.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
An unexpected error has occurred: CalledProcessError: Command: ('/home/neo/miniconda3/envs/beat_editor_v2/bin/python', '-mvirtualenv', '/home/neo/.cache/pre-commit/repos__f8_6t/py_env-python3.7', '-p', 'python3.7')
Return code: 3
Expected return code: 0
Output:
The path python3.7 (from --python=python3.7) does not exist
Errors: (none)
Check the log at /home/neo/.cache/pre-commit/pre-commit.log
(beateditor_v2) neo@matrix:~/softs/idiap/proAca.beat/beat_editor_v2/beat.editor$ cat /home/neo/.cache/pre-commit/pre-commit.log
An unexpected error has occurred: CalledProcessError: Command: ('/home/neo/miniconda3/envs/beat_editor_v2/bin/python', '-mvirtualenv', '/home/neo/.cache/pre-commit/repos__f8_6t/py_env-python3.7', '-p', 'python3.7')
Return code: 3
Expected return code: 0
Output:
The path python3.7 (from --python=python3.7) does not exist
Errors: (none)
Traceback (most recent call last):
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/error_handler.py", line 47, in error_handler
yield
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/main.py", line 261, in main
return run(runner, store, args)
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/commands/run.py", line 268, in run
repo.require_installed()
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/repository.py", line 195, in require_installed
_install_all(self._venvs(), self.repo_config['repo'], self.store)
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/repository.py", line 102, in _install_all
language.install_environment(prefix, version, deps)
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/languages/python.py", line 141, in install_environment
_make_venv(env_dir, python)
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/languages/python.py", line 153, in make_venv
cmd_output(*cmd, env=env, cwd='/')
File "/home/neo/miniconda3/envs/beat_editor_v2/lib/python3.6/site-packages/pre_commit/util.py", line 186, in cmd_output
returncode, cmd, retcode, output=(stdout, stderr),
pre_commit.util.CalledProcessError: Command: ('/home/neo/miniconda3/envs/beat_editor_v2/bin/python', '-mvirtualenv', '/home/neo/.cache/pre-commit/repos__f8_6t/py_env-python3.7', '-p', 'python3.7')
Return code: 3
Expected return code: 0
Output:
The path python3.7 (from --python=python3.7) does not exist
Errors: (none)
```
So I thought ok I maybe need to update python on my conda environment:
When I do a `conda install python=3.7` I then get:
```
CondaHTTPError: HTTP 503 SERVICE UNAVAILABLE for url <https://www.idiap.ch/software/beat/conda/label/beta/linux-64/repodata.json>
Elapsed: 00:03.326174
A remote server error occurred when trying to retrieve this URL.
A 500-type error (e.g. 500, 501, 502, 503, etc.) indicates the server failed to
fulfill a valid request. The problem may be spurious, and will resolve itself if you
try your request again. If the problem persists, consider notifying the maintainer
of the remote server.
```Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/237Improve remove/add button visuallization2020-06-19T14:52:24ZZohreh MOSTAANIImprove remove/add button visuallizationIt is not easy to distinguish which add/remove button is for which sub-category when there are many categories in an asset (such as a big confusing dataformat). This problem should be addressed properly. Maybe if we have different shades...It is not easy to distinguish which add/remove button is for which sub-category when there are many categories in an asset (such as a big confusing dataformat). This problem should be addressed properly. Maybe if we have different shades for the editor objects (see #235) This problem is solved automatically but there might be a better way.
Also at the moment the add button in the algorithm object is on the left but in the dataformat objects is on the right. The decision is to move all of them to the right.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/235Using different colors or shades for different objects added to an asset2020-06-19T14:52:24ZZohreh MOSTAANIUsing different colors or shades for different objects added to an assetIt is very difficult to distinguish which sub category of an asset belongs to which category. The problem is very obvious when dealing with the complicated and nested dataformats. It gets very confusing, very fast. However if each bigger...It is very difficult to distinguish which sub category of an asset belongs to which category. The problem is very obvious when dealing with the complicated and nested dataformats. It gets very confusing, very fast. However if each bigger category and subcategories have different shades or colors which are distinguishable visually, it will be much easier to deal with such big complicated assets.https://gitlab.idiap.ch/beat/beat.editor/-/issues/270Provide a new button for analyzers2020-06-19T14:52:23ZAmir MOHAMMADIProvide a new button for analyzersEven though analyzers are algorithms, creating one using the new algorithm button leads to a broken analyzer by default until you add some `results`.
It's easier (for users) to just provide a new analyzer button that already has some re...Even though analyzers are algorithms, creating one using the new algorithm button leads to a broken analyzer by default until you add some `results`.
It's easier (for users) to just provide a new analyzer button that already has some results.[v2] 1 - Edition/Visualization for small editorsSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/264No hints on invalid json files are given2020-06-18T13:19:07ZAmir MOHAMMADINo hints on invalid json files are givenWhen you create an invalid json file with the editor and click on save, a red icon appears on top. That's it you get a red icon telling you something is wrong but not more :)When you create an invalid json file with the editor and click on save, a red icon appears on top. That's it you get a red icon telling you something is wrong but not more :)Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/268AttributeError: 'NoneType' object has no attribute 'prefix' on experiment cre...2020-06-18T12:50:08ZAmir MOHAMMADIAttributeError: 'NoneType' object has no attribute 'prefix' on experiment creation[prefix.tar.xz](/uploads/786dc653117151cd24c0f8b0d5bfd4ff/prefix.tar.xz)
![beat-editor-experiment-database-selection-bug](/uploads/d59046058b52608b1f90350eedd0347d/beat-editor-experiment-database-selection-bug.webm)[prefix.tar.xz](/uploads/786dc653117151cd24c0f8b0d5bfd4ff/prefix.tar.xz)
![beat-editor-experiment-database-selection-bug](/uploads/d59046058b52608b1f90350eedd0347d/beat-editor-experiment-database-selection-bug.webm)Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/263The editor app does not have an icon2020-06-18T12:25:26ZAmir MOHAMMADIThe editor app does not have an iconWhen the beat.editor app launches, it does not have any icon in the window manager.
It would be nice to ship an icon with the app as well.When the beat.editor app launches, it does not have any icon in the window manager.
It would be nice to ship an icon with the app as well.Samuel GAISTSamuel GAIST