beat issues
https://gitlab.idiap.ch/groups/beat/-/issues
2020-08-06T08:41:49Z
https://gitlab.idiap.ch/beat/beat.editor/-/issues/275
TypeError: %d format: a number is required, not NoneType
2020-08-06T08:41:49Z
Amir MOHAMMADI
TypeError: %d format: a number is required, not NoneType
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...
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 GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.examples/-/issues/16
Create a new version of all databases and set the database environment they s...
2020-07-07T12:08:20Z
Samuel GAIST
Create a new version of all databases and set the database environment they should use
With the latest version of beat/beat.core> databases can now list which environment to use.
This will allow to avoid having to make an update to the corresponding images to list each time a new database created.
For backward compatibil...
With the latest version of beat/beat.core> databases can now list which environment to use.
This will allow to avoid having to make an update to the corresponding images to list each time a new database created.
For backward compatibility, will keep the old declaration as is as the cash was built with them. The new version implies that the index must be regenerated.
https://gitlab.idiap.ch/beat/beat.cmdline/-/issues/72
Local support for splittable
2020-08-06T14:39:48Z
Samuel GAIST
Local support for splittable
Currently there's no possibility to validate a splittable algorithm locally.
There's nothing in the experiment execution part and in the algorithm execution the number of slots is locked to one and not even used.
The splitting part is ...
Currently there's no possibility to validate a splittable algorithm locally.
There's nothing in the experiment execution part and in the algorithm execution the number of slots is locked to one and not even used.
The splitting part is currently done at the beat/beat.web> level and then the scheduler takes the generated tasks and sends them to the appropriate worker machines.
That part shall be ported to beat/beat.cmdline> so that the behaviour can be mimicked locally through maybe multiprocessing.
https://gitlab.idiap.ch/beat/beat.backend.python/-/issues/35
BEAT componenets are tied to a prefix
2022-03-03T17:35:06Z
Amir MOHAMMADI
BEAT componenets are tied to a prefix
Throughout all code and components of BEAT, a prefix is required and this requirement makes it impossible to define and run BEAT experiments interactively.
Here is a tentative plan for refactoring the code:
1. [ ] Update BEAT compone...
Throughout all code and components of BEAT, a prefix is required and this requirement makes it impossible to define and run BEAT experiments interactively.
Here is a tentative plan for refactoring the code:
1. [ ] Update BEAT component classes so that they can be created on the fly without pointing to a prefix
2. [ ] Implement a global config object to keep track of user's config such as where the prefix is or what the username is. This will help users provide less information when creating objects on the fly.
3. [ ] Dynamic creation of experiment/toolchain with running the python code in a kind of graph mode. This will be similar to how graphs are constructed in Python using tensorflow or dask.
3. [ ] We would also need a singleton class to hold the prefix objects in memory to avoid passing around caches.
https://gitlab.idiap.ch/beat/beat.editor/-/issues/274
Keep a history of selected Algorithms and datasets around in the toolchain
2022-03-04T09:39:05Z
Amir MOHAMMADI
Keep a history of selected Algorithms and datasets around in the toolchain
Summary
With the new editor, it's only possible to add blocks based on available datasets, algorithms, and analyzers. Which might be a good thing according to #265.
Also, once blocks are added (according to the algorithm or dataset it w...
Summary
With the new editor, it's only possible to add blocks based on available datasets, algorithms, and analyzers. Which might be a good thing according to #265.
Also, once blocks are added (according to the algorithm or dataset it was selected from), it is no longer associated with the block that it was chosen from.
This makes sense because as far as the toolchain is concerned, this association is irrelevant and this association is kept around in the experiment definition.
However, I think it makes sense to keep association around in the toolchain. Doing so can let us:
- Provide hints to the user (reminding them what algorithm that block was) so that they have to memorize less when designing the toolchain.
- Automatically figure out the channel of blocks as disccussed in #272.
On the other hand, we want to merge the toolchain/experiment definitions per https://gitlab.idiap.ch/beat/beat.core/-/issues/88
So maybe this issue must be looked at when that works is already done?!
https://gitlab.idiap.ch/beat/beat.editor/-/issues/273
Right-click actions on the blocks in the toolchain editor
2022-03-04T09:38:51Z
Amir MOHAMMADI
Right-click actions on the blocks in the toolchain editor
Here is my suggestion:
* Upon right clicking on the blocks, provide a list of actions.
* A `Delete` action
* A `Edit` or `Properties` action that does the same thing as double clicking
Here is my suggestion:
* Upon right clicking on the blocks, provide a list of actions.
* A `Delete` action
* A `Edit` or `Properties` action that does the same thing as double clicking
https://gitlab.idiap.ch/beat/beat.editor/-/issues/272
Automatic inference of synchronization channels when drawing the toolchain
2022-03-04T09:38:31Z
Amir MOHAMMADI
Automatic inference of synchronization channels when drawing the toolchain
Summary
When drawing several blocks in the toolchain and connecting inputs and outputs, the (synchronization) channel for blocks are not automatically determined even though most of the time there is only one option.
See the video below...
Summary
When drawing several blocks in the toolchain and connecting inputs and outputs, the (synchronization) channel for blocks are not automatically determined even though most of the time there is only one option.
See the video below where I have to select the channel in all blocks before getting a valid toolchain:
![synchronization_channels_not_selected_automatically](/uploads/75d3cce295e08c2515f69ace8c2810b8/synchronization_channels_not_selected_automatically.webm)
It would be beneficial if the toolchain editor would infer and select the channel for me as I edit along.
Why is it needed ?
It would make editing toolchains simpler as I will not have to go into each block and edit them one by one.
https://gitlab.idiap.ch/beat/beat.editor/-/issues/271
2 bugs: Issues with commit and/or python update in conda environment
2020-06-23T15:03:47Z
Flavio TARSETTI
2 bugs: Issues with commit and/or python update in conda environment
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] 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 GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.web/-/issues/552
Refer to the dockerhub images
2020-06-23T15:57:59Z
Amir MOHAMMADI
Refer to the dockerhub images
From what I understand, we are using public docker images now.
Please also update the docs to reflect that. For example:
https://www.idiap.ch/software/beat/docs/beat/docs/master/beat/beat.web/doc/user/algorithms/guide.html#implementing-a...
From what I understand, we are using public docker images now.
Please also update the docs to reflect that. For example:
https://www.idiap.ch/software/beat/docs/beat/docs/master/beat/beat.web/doc/user/algorithms/guide.html#implementing-an-algorithm-in-c
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/docs/-/issues/16
Refer to the dockerhub images
2020-06-19T13:52:23Z
Amir MOHAMMADI
Refer to the dockerhub images
From what I understand, we are using public docker images now.
Please also update the docs to reflect that. For example:
https://www.idiap.ch/software/beat/docs/beat/docs/master/beat/beat.web/doc/user/algorithms/guide.html#implementing-a...
From what I understand, we are using public docker images now.
Please also update the docs to reflect that. For example:
https://www.idiap.ch/software/beat/docs/beat/docs/master/beat/beat.web/doc/user/algorithms/guide.html#implementing-an-algorithm-in-c
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/docs/-/issues/15
Analyzers work differently from algorithms but there is no docs on them.
2020-06-29T12:44:33Z
Amir MOHAMMADI
Analyzers work differently from algorithms but there is no docs on them.
The syntax of algorithms are different from analyzers but I could not find documentation on this.
For example, an algorithm works like this:
```python
def process(self, inputs, data_loaders, outputs):
outputs["features"].wr...
The syntax of algorithms are different from analyzers but I could not find documentation on this.
For example, an algorithm works like this:
```python
def process(self, inputs, data_loaders, outputs):
outputs["features"].write({"value": out})
```
while an analyzer would be:
```python
def process(self, inputs, data_loaders, output):
output.write({"features": {"value": out}})
```
I have two issues here:
1. why analyzers code should be different?
2. where is this documented?
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.core/-/issues/99
The outputs parameter from an Algorithm does not raise exceptions for unknown...
2020-07-08T15:29:36Z
Amir MOHAMMADI
The outputs parameter from an Algorithm does not raise exceptions for unknown outputs
I have an algorithm, let's say this:
```python
class Algorithm:
def process(self, inputs, data_loaders, outputs):
# Writes the output
outputs["score"].write({"value": np.int32(60)})
return True
```
but the out...
I have an algorithm, let's say this:
```python
class Algorithm:
def process(self, inputs, data_loaders, outputs):
# Writes the output
outputs["score"].write({"value": np.int32(60)})
return True
```
but the output is called `scores` and not `score`. However, the output of `outputs["score"]` is `None` instead of an exception, why?
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.core/-/issues/98
local executer does not show the traceback of algorithms in case of failure.
2020-06-29T11:54:07Z
Amir MOHAMMADI
local executer does not show the traceback of algorithms in case of failure.
For example:
```
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/experiments.py", line 278, in run_experiment
result = executor.process()
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packa...
For example:
```
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/experiments.py", line 278, in run_experiment
result = executor.process()
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/core/execution/local.py", line 405, in process
"Algorithm {} process failed".format(self.algorithm.name)
RuntimeError: Algorithm amohammadi/svm-classify-0-100/1 process failed
```
It's not very useful to know that the algorithm just failed. Having a traceback is more useful.
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.editor/-/issues/270
Provide a new button for analyzers
2020-06-19T14:52:23Z
Amir MOHAMMADI
Provide a new button for analyzers
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 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 editors
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.core/-/issues/97
Created database v2 from template is wrong
2020-06-18T13:58:35Z
Amir MOHAMMADI
Created database v2 from template is wrong
I have created a v2 database (found in [prefix.tar.xz](/uploads/37186a98f55a1d68e7b316564b8ae85e/prefix.tar.xz))
but when I tried to finally run it from an experiment, I got:
```
$ beat exp run amohammadi/amohammadi/iris-pad-with-train/1...
I have created a v2 database (found in [prefix.tar.xz](/uploads/37186a98f55a1d68e7b316564b8ae85e/prefix.tar.xz))
but when I tried to finally run it from an experiment, I got:
```
$ beat exp run amohammadi/amohammadi/iris-pad-with-train/1/iris-pad-with-train
Created cache path `/home/amir/idiap/git/beat/livedet2020-iris-beat-demo/prefix/cache'
Index for database livedet_iris_2020/1 not found, building it
Index for database livedet_iris_2020/1 not found, building it
Running `amohammadi/lbp-feature-extractor/1' for block `test_features'
Start the execution of 'amohammadi/lbp-feature-extractor/1'
Traceback (most recent call last):
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/loader.py", line 123, in run
return getattr(obj, method)(*args, **kwargs)
TypeError: setup() got an unexpected keyword argument 'start_index'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/amir/miniconda/envs/iris/bin/beat", line 11, in <module>
sys.exit(main())
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/decorators.py", line 21, in new_func
return f(get_current_context(), *args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/decorators.py", line 92, in _decorator
value = view_func(*args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/experiments.py", line 780, in run
return run_experiment(config, name, force, docker, local, environment, quiet)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/experiments.py", line 278, in run_experiment
result = executor.process()
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/core/execution/local.py", line 360, in process
loop_socket=self.loop_socket,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/execution/algorithm.py", line 166, in __init__
databases=databases,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/helpers.py", line 248, in create_inputs_from_configuration
end_index=end_index,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/database.py", line 184, in setup
end_index=end_index,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/loader.py", line 127, in run
six.reraise(exc, exc(value), traceback)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/six.py", line 702, in reraise
raise value.with_traceback(tb)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/loader.py", line 123, in run
return getattr(obj, method)(*args, **kwargs)
RuntimeError: setup() got an unexpected keyword argument 'start_index'
^CException ignored in: <module 'threading' from '/home/amir/miniconda/envs/iris/lib/python3.7/threading.py'>
Traceback (most recent call last):
File "/home/amir/miniconda/envs/iris/lib/python3.7/threading.py", line 1307, in _shutdown
lock.acquire()
KeyboardInterrupt
```
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.editor/-/issues/269
Created database v2 from template is wrong
2020-06-18T12:19:48Z
Amir MOHAMMADI
Created database v2 from template is wrong
I have created a v2 database (found in [prefix.tar.xz](/uploads/b6e5c5a1503c7c77846b577aa67aedfc/prefix.tar.xz))
but when I tried to finally run it from an experiment, I got:
```
$ beat exp run amohammadi/amohammadi/iris-pad-with-train/1...
I have created a v2 database (found in [prefix.tar.xz](/uploads/b6e5c5a1503c7c77846b577aa67aedfc/prefix.tar.xz))
but when I tried to finally run it from an experiment, I got:
```
$ beat exp run amohammadi/amohammadi/iris-pad-with-train/1/iris-pad-with-train
Created cache path `/home/amir/idiap/git/beat/livedet2020-iris-beat-demo/prefix/cache'
Index for database livedet_iris_2020/1 not found, building it
Index for database livedet_iris_2020/1 not found, building it
Running `amohammadi/lbp-feature-extractor/1' for block `test_features'
Start the execution of 'amohammadi/lbp-feature-extractor/1'
Traceback (most recent call last):
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/loader.py", line 123, in run
return getattr(obj, method)(*args, **kwargs)
TypeError: setup() got an unexpected keyword argument 'start_index'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/amir/miniconda/envs/iris/bin/beat", line 11, in <module>
sys.exit(main())
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/click/decorators.py", line 21, in new_func
return f(get_current_context(), *args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/decorators.py", line 92, in _decorator
value = view_func(*args, **kwargs)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/experiments.py", line 780, in run
return run_experiment(config, name, force, docker, local, environment, quiet)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/cmdline/experiments.py", line 278, in run_experiment
result = executor.process()
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/core/execution/local.py", line 360, in process
loop_socket=self.loop_socket,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/execution/algorithm.py", line 166, in __init__
databases=databases,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/helpers.py", line 248, in create_inputs_from_configuration
end_index=end_index,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/database.py", line 184, in setup
end_index=end_index,
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/loader.py", line 127, in run
six.reraise(exc, exc(value), traceback)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/six.py", line 702, in reraise
raise value.with_traceback(tb)
File "/home/amir/miniconda/envs/iris/lib/python3.7/site-packages/beat/backend/python/loader.py", line 123, in run
return getattr(obj, method)(*args, **kwargs)
RuntimeError: setup() got an unexpected keyword argument 'start_index'
^CException ignored in: <module 'threading' from '/home/amir/miniconda/envs/iris/lib/python3.7/threading.py'>
Traceback (most recent call last):
File "/home/amir/miniconda/envs/iris/lib/python3.7/threading.py", line 1307, in _shutdown
lock.acquire()
KeyboardInterrupt
```
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.editor/-/issues/268
AttributeError: 'NoneType' object has no attribute 'prefix' on experiment cre...
2020-06-18T12:50:08Z
Amir MOHAMMADI
AttributeError: '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 GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.editor/-/issues/267
created toolchain ends up with an additional channel color
2020-06-24T09:22:58Z
Amir MOHAMMADI
created toolchain ends up with an additional channel color
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":...
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 TARSETTI
Flavio TARSETTI
https://gitlab.idiap.ch/beat/beat.editor/-/issues/266
KeyError: 'BlockType.DATASETS is not a valid block type'
2020-06-17T13:08:02Z
Amir MOHAMMADI
KeyError: 'BlockType.DATASETS is not a valid block type'
using this prefix: [prefix.tar.xz](/uploads/2167bd1f19b59a8520aa44f204e396a9/prefix.tar.xz)
edit the `iris-pad-with-train` toolchain, add a dataset:
```
Traceback (most recent call last):
File "/home/miniconda/envs/iris/lib/python3.7/...
using this prefix: [prefix.tar.xz](/uploads/2167bd1f19b59a8520aa44f204e396a9/prefix.tar.xz)
edit the `iris-pad-with-train` toolchain, add a dataset:
```
Traceback (most recent call last):
File "/home/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/toolchaineditor.py", line 767, in from_name
return cls[name]
File "/home/miniconda/envs/iris/lib/python3.7/enum.py", line 352, in __getitem__
return cls._member_map_[name]
KeyError: <BlockType.DATASETS: 'datasets'>
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/assetwidget.py", line 297, in __updateJsonWidget
self.json_widget.setText(self.current_editor.dump_as_string())
File "/home/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 "/home/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 "/home/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/toolchaineditor.py", line 1939, in _dump_json
return self.toolchain.dump()
File "/home/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/toolchaineditor.py", line 1785, in dump
if block_type == BlockType.from_name(block.type):
File "/home/miniconda/envs/iris/lib/python3.7/site-packages/beat/editor/widgets/toolchaineditor.py", line 769, in from_name
raise KeyError("{} is not a valid block type".format(name))
KeyError: 'BlockType.DATASETS is not a valid block type'
```
Samuel GAIST
Samuel GAIST
https://gitlab.idiap.ch/beat/beat.editor/-/issues/265
Allow toolchain creation without having the blocks first
2020-06-24T10:35:29Z
Amir MOHAMMADI
Allow toolchain creation without having the blocks first
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 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é Anjos
André Anjos