beat issueshttps://gitlab.idiap.ch/groups/beat/-/issues2020-06-04T13:35:57Zhttps://gitlab.idiap.ch/beat/beat.cmdline/-/issues/71Make the experiment plotting less rigid2020-06-04T13:35:57ZSamuel GAISTMake the experiment plotting less rigidWith the old code and the part kept after the refactoring, the output format for the plotting the result of an experiment is locked to `image/png` if nothing is provided in the default plotter parameters.
This does not allow for people ...With the old code and the part kept after the refactoring, the output format for the plotting the result of an experiment is locked to `image/png` if nothing is provided in the default plotter parameters.
This does not allow for people to work on custom plotter that might output something else or use a different output type if nothing is provided as default parameter.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/262Refresh editor data2020-06-03T12:08:33ZSamuel GAISTRefresh editor dataSummary
When creating a new asset, generally an algorithm or a data format, the other editors like the experiment editor do not currently expose them.
Steps to reproduce
Create a new data format, once done, edit an algorithm then sea...Summary
When creating a new asset, generally an algorithm or a data format, the other editors like the experiment editor do not currently expose them.
Steps to reproduce
Create a new data format, once done, edit an algorithm then search for the newly created data format. It currently is not listed.
What is the current bug behavior?
The new asset is not listed.
What is the expected correct behavior?
Newly created asset should be visible without a restart of the application.
Possible fixes
- Reload all the parts that exposes these information when switching to an editor
- Reload all the parts that exposes these information when there's a modificationSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/257Editor crashes when I try to change the inputs2020-06-02T08:10:17ZAmir MOHAMMADIEditor crashes when I try to change the inputsI have this json file (an experiment):
```json
{
"analyzers": {
"analyzer": {
"algorithm": "test/iris_analyzer/1",
"inputs": {
"scores": "scores",
"species": "species"
...I have this json file (an experiment):
```json
{
"analyzers": {
"analyzer": {
"algorithm": "test/iris_analyzer/1",
"inputs": {
"scores": "scores",
"species": "species"
},
"parameters": {}
}
},
"blocks": {
"testing_alg": {
"algorithm": "test/means_testing/1",
"inputs": {
"means": "measurements",
"measurements": "lda_machine"
},
"outputs": {
"scores": "scores"
},
"parameters": {}
},
"training_alg": {
"algorithm": "test/means_training/1",
"inputs": {
"measurements": "measurements",
"species": "species"
},
"outputs": {
"means": "lda_machine"
},
"parameters": {}
}
},
"datasets": {
"testing_data": {
"database": "iris/1",
"protocol": "Main",
"set": "training"
},
"training_data": {
"database": "iris/1",
"protocol": "Main",
"set": "testing"
}
},
"description": "Amir's means LDA experiment",
"globals": {
"environment": {
"name": "Scientific Python 2.7",
"version": "0.0.4"
},
"queue": "Default"
}
}
```
When I try to edit it using the editor, it crashes with:
```
Traceback (most recent call last):
File "/home/amir/miniconda/envs/beat/lib/python3.7/site-packages/beat/editor/widgets/experimenteditor.py", line 627, in __remapIO
status, mapping = IOMapperDialog.getIOMapping(self.prefix_path, self.dump())
File "/home/amir/miniconda/envs/beat/lib/python3.7/site-packages/beat/editor/widgets/experimenteditor.py", line 323, in getIOMapping
return True, dialog.ioMapping()
File "/home/amir/miniconda/envs/beat/lib/python3.7/site-packages/beat/editor/widgets/experimenteditor.py", line 301, in ioMapping
label = self.inputs_layout.itemAt(i, QFormLayout.LabelRole).widget()
AttributeError: 'NoneType' object has no attribute 'widget'
[1] + 120487 abort (core dumped) beat editor start
```
I am trying to swap the inputs in this part:
```json
"testing_alg": {
"algorithm": "test/means_testing/1",
"inputs": {
"means": "measurements",
"measurements": "lda_machine"
},
```
Swap means and measurements.
but when I click on save, it crashes.Flavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.editor/-/issues/261A newly created analyzer comes out broken2020-06-01T19:27:22ZAmir MOHAMMADIA newly created analyzer comes out brokenSteps to reproduce:
```
# conda install beat beta versions
git clone git@gitlab.idiap.ch:beat/beat.tutorial.prefix reproduce-issues
cd reproduce-issues
beat config set --local prefix $PWD/prefix
beat editor start
# answer yes to confirma...Steps to reproduce:
```
# conda install beat beta versions
git clone git@gitlab.idiap.ch:beat/beat.tutorial.prefix reproduce-issues
cd reproduce-issues
beat config set --local prefix $PWD/prefix
beat editor start
# answer yes to confirmations
# go to file, new, algorithm
# check analyzer, edit a few things and save
# analyzer is not valid!
```
![Analyzer_broken](/uploads/80366adc2e58359625b6bc140d22ddba/Analyzer_broken.webm)Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/260Choosing the output type as string in an algorithm breaks the json file2020-05-29T08:50:35ZAmir MOHAMMADIChoosing the output type as string in an algorithm breaks the json fileSteps to reproduce:
1. Go to File->New->Algorithm
2. Edit the output type to `string` (`system/text/1` has not this problem).
The json file becomes invalid.Steps to reproduce:
1. Go to File->New->Algorithm
2. Edit the output type to `string` (`system/text/1` has not this problem).
The json file becomes invalid.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.editor/-/issues/259Cannot edit a newly created toolchain2020-05-28T22:16:55ZAmir MOHAMMADICannot edit a newly created toolchainSteps to reproduce:
```
# conda install beat beta versions
git clone git@gitlab.idiap.ch:beat/beat.tutorial.prefix reproduce-issues
cd reproduce-issues
beat config set --local prefix $PWD/prefix
beat editor start
# answer yes to confirm...Steps to reproduce:
```
# conda install beat beta versions
git clone git@gitlab.idiap.ch:beat/beat.tutorial.prefix reproduce-issues
cd reproduce-issues
beat config set --local prefix $PWD/prefix
beat editor start
# answer yes to confirmations
# go to file, new, toolchain
# create a new toolchain named test_lda
# try adding a block to the toolchain
```
You may also watch the attached video
![Peek_2020-05-27_12-39](/uploads/bc052421450fc1b2c1dbe32a350e75b5/Peek_2020-05-27_12-39.webm)Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/docs/-/issues/14Update installation instructions to match Bob's2020-05-28T14:05:31ZAmir MOHAMMADIUpdate installation instructions to match Bob'sI just went through installation instructions. It's best to install `beat.editor` when the environment is created.I just went through installation instructions. It's best to install `beat.editor` when the environment is created.https://gitlab.idiap.ch/beat/beat.editor/-/issues/239Library editor forces a dump of an optional key "uses:{}" for the available l...2020-05-28T10:57:29ZFlavio TARSETTILibrary editor forces a dump of an optional key "uses:{}" for the available libraries when the field is empty#### Summary
The library editor requires fixing. The key "uses" is set mandatory during the dump when it should actually be an optional field
#### Steps to reproduce
The bug is identified here:
https://gitlab.idiap.ch/beat/beat.edito...#### Summary
The library editor requires fixing. The key "uses" is set mandatory during the dump when it should actually be an optional field
#### Steps to reproduce
The bug is identified here:
https://gitlab.idiap.ch/beat/beat.editor/blob/v2/beat/editor/test/test_libraryeditor.py#L40
and explained in detail: https://gitlab.idiap.ch/beat/beat.core/merge_requests/79
#### What is the current bug behavior?
The current behavior forces the library to have a dump "uses" key
#### What is the expected correct behavior?
The schema of the library is explicit about it being an optional field. So if empty we should not get a "uses:{}" at the dump
The test needs to be fixed accordingly
#### Relevant code:
https://gitlab.idiap.ch/beat/beat.editor/blob/v2/beat/editor/test/test_libraryeditor.py#L40[v2] 1 - Edition/Visualization for small editorsSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.cmdline/-/issues/38Offline plotting support is shaky2020-05-26T15:19:19ZJaden DIEFENBAUGHOffline plotting support is shakyIf the plotter object and the default plotterparameters exist in the local prefix, failing to fetch info from the BEAT web platform should not stop plotting.
The issue came up when using the tutorial VM. Some people didn't have an inter...If the plotter object and the default plotterparameters exist in the local prefix, failing to fetch info from the BEAT web platform should not stop plotting.
The issue came up when using the tutorial VM. Some people didn't have an internet connection and couldn't plot because `beat.cmdline` was trying to fetch stuff from beat.web even though the plotter objects and default parameters existed.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/551Blocked account login attempts2020-05-26T12:57:45ZFlavio TARSETTIBlocked account login attemptsIf an account is blocked (not revalidated), then password reactivation is not possible. In this case, it would be nice to receive an e-mail indicating that, instead, and what to do to re-activate the account.
We do not wish to inform on...If an account is blocked (not revalidated), then password reactivation is not possible. In this case, it would be nice to receive an e-mail indicating that, instead, and what to do to re-activate the account.
We do not wish to inform online that a successful attempt was made, but rather inform the person by email about this.Flavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.web/-/issues/542Improve automatic e-mails2020-05-18T13:06:17ZAndré AnjosImprove automatic e-mailsE-mails such as those for account revalidation do not embed an easy to use URL that, upon clicking, performs the action in question.
It would be be handy to have URLs in all such e-mails, for accepting or, sometimes, rejecting the actio...E-mails such as those for account revalidation do not embed an easy to use URL that, upon clicking, performs the action in question.
It would be be handy to have URLs in all such e-mails, for accepting or, sometimes, rejecting the action, if it makes sense.Flavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.web/-/issues/550Notify supervisor of supervisee yearly revalidation - Quick link to revoke su...2020-05-18T13:06:16ZFlavio TARSETTINotify supervisor of supervisee yearly revalidation - Quick link to revoke supervisionWhen a supervisee revalidates his account during a yearly revalidation process, the supervisor should be notifed in order to quickly check if the revalidation claim is based on proper supervision information.
The supervisor can drop the...When a supervisee revalidates his account during a yearly revalidation process, the supervisor should be notifed in order to quickly check if the revalidation claim is based on proper supervision information.
The supervisor can drop the email notification if all is correct or should be able to quickly revoke this supervision claim if needed through a temporary link given in the email.
Related to #542Flavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.web/-/issues/538Moving cronjobs in beat.web to systemd2020-05-13T15:23:23ZAndré AnjosMoving cronjobs in beat.web to systemdI get repeated e-mails every day concerning our BEAT jobs in beat.web. After more than a year, these scripts are pretty stable and it would be nice if we managed to make them **not** report unless there is a problem (exit status != 0).
...I get repeated e-mails every day concerning our BEAT jobs in beat.web. After more than a year, these scripts are pretty stable and it would be nice if we managed to make them **not** report unless there is a problem (exit status != 0).
In our internal webserver, I managed to implement this using systemd (report on failure only).
Could we do the same here? That would avoid the continuous torrent of "successful run" e-mails.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/549Expand required for supervision lists2020-05-06T07:32:29ZFlavio TARSETTIExpand required for supervision listsThe supervision lists should be expanded over multiple columns to improve its visibilityThe supervision lists should be expanded over multiple columns to improve its visibilityFlavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.web/-/issues/547Improve new version push handling2020-04-16T13:15:24ZSamuel GAISTImprove new version push handlingCurrently if a new version of an asset is pushed without history information, there will be an error because the backend will try to create an asset from scratch. This will trigger an error because of an already existing asset.
As a sid...Currently if a new version of an asset is pushed without history information, there will be an error because the backend will try to create an asset from scratch. This will trigger an error because of an already existing asset.
As a side effect, if no asset of a previous version exists, the backbend will create a new one based on the name but with the wrong number.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.cmdline/-/issues/67Version information missing on push2020-04-14T14:43:26ZSamuel GAISTVersion information missing on pushWhen creating a new version of an algorithm or a fork, the version information is not pushed with the data.
It is currently not used by beat/beat.web> but this is about to change because the current way new version creation is handled i...When creating a new version of an algorithm or a fork, the version information is not pushed with the data.
It is currently not used by beat/beat.web> but this is about to change because the current way new version creation is handled is suboptimal. If for some reasons a new version is created manually rather than through "beat <asset_type> version`, the missing history version will trigger the creation of a new "version 1" asset or at least an attempt to do that.
See beat/beat.web#547Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/548API for compatibility information about an algorithm2020-04-07T20:26:11ZSamuel GAISTAPI for compatibility information about an algorithmThe detail page of an algorithm shows the information about which environments where used successfully to run that algorithm. The API currently does not offer that and it will be needed to create Docker container suitable for the AI4EU p...The detail page of an algorithm shows the information about which environments where used successfully to run that algorithm. The API currently does not offer that and it will be needed to create Docker container suitable for the AI4EU project.Samuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/546Improve experiment finished email2020-04-01T09:50:27ZSamuel GAISTImprove experiment finished emailCurrently, the emails sent to platform users for notification about a run success or failure contains a direct link that will end in a 404 error if the user is not logged in.
It would be nice if the link would allow to start the login p...Currently, the emails sent to platform users for notification about a run success or failure contains a direct link that will end in a 404 error if the user is not logged in.
It would be nice if the link would allow to start the login process since it is sent to the author of the experiment.Flavio TARSETTIFlavio TARSETTIhttps://gitlab.idiap.ch/beat/beat.web/-/issues/495Expose more info about the available environments from the REST API2020-03-30T15:38:45ZJaden DIEFENBAUGHExpose more info about the available environments from the REST APIRight now we get something like this:
```json
[
{
"name": "Cxx backend",
"queues": {
"queue": {
"memory_limit": 1985,
"nb_slots": 0,
"max_slots_per_user": 8,
"nb_cores_per_slot": 1,
...Right now we get something like this:
```json
[
{
"name": "Cxx backend",
"queues": {
"queue": {
"memory_limit": 1985,
"nb_slots": 0,
"max_slots_per_user": 8,
"nb_cores_per_slot": 1,
"time_limit": 1440
}
},
"accessibility": "public",
"languages": [
"cxx"
],
"version": "1.1.0",
"short_description": "C++ backend"
},
{
"name": "Python 2.7",
"queues": {
"queue": {
"memory_limit": 1985,
"nb_slots": 0,
"max_slots_per_user": 8,
"nb_cores_per_slot": 1,
"time_limit": 1440
}
},
"accessibility": "public",
"languages": [
"python"
],
"version": "1.2.0",
"short_description": "Local python interpreter"
}
]
```
We need to add a "modules" field to the environments that lists packages & versions that are available. It would look something like this:
```json
[
...
{
"name": "Python 2.7",
...
"packages": {
"alabaster": "0.7.10",
"Babel": "2.4.0",
...
},
"version": "1.2.0",
"short_description": "Local python interpreter"
}
]
```
This is needed for the June 2018 deliverable!https://gitlab.idiap.ch/beat/beat.web/-/issues/515BEAT website certificate and expiration2020-03-30T14:04:20ZAndré AnjosBEAT website certificate and expirationThe BEAT website certificate will expire in March 2020. The domain name will not be renewed, so we need to migrate the location of the official platform (beat.web production deployment).
To avoid a pressing issue then, and leave time f...The BEAT website certificate will expire in March 2020. The domain name will not be renewed, so we need to migrate the location of the official platform (beat.web production deployment).
To avoid a pressing issue then, and leave time for people to "adapt" to a new address, I propose we start looking for solutions now.
@samuel.gaist: Could you please contact the system group (via a ticket) and ask them which solutions could be setup to host the platform under "idiap.ch".
I thought of 2 options, but I'm not sure whether these are feasible:
1. "https://beat.idiap.ch": The advantage is that swagger docs would start working again...
2. "https://www.idiap.ch/software/beat/platform": This would be the one that makes more sense "structurally"Samuel GAISTSamuel GAIST