beat.web issueshttps://gitlab.idiap.ch/beat/beat.web/-/issues2015-04-09T11:32:54Zhttps://gitlab.idiap.ch/beat/beat.web/-/issues/103The JS canvas of the toolchain editor stopped working2015-04-09T11:32:54ZAndré AnjosThe JS canvas of the toolchain editor stopped workingThe JS canvas of the JS editor stopped working after the last upgrade.
@philip.abbet: could you please take a look since you're our only expert on this component?The JS canvas of the JS editor stopped working after the last upgrade.
@philip.abbet: could you please take a look since you're our only expert on this component?Tutorial for the FG2015 ConferencePhilip ABBETPhilip ABBEThttps://gitlab.idiap.ch/beat/beat.web/-/issues/102"Send configuration to scheduler" button stopped working2015-04-08T20:00:54ZAndré Anjos"Send configuration to scheduler" button stopped workingAfter the latest upgrades, we can no longer send the configuration to the scheduler.
The reason is related:
```text
{"detail":"CSRF Failed: CSRF token missing or incorrect."}
```
A missing CSRF protection, likely, on the JS si...After the latest upgrades, we can no longer send the configuration to the scheduler.
The reason is related:
```text
{"detail":"CSRF Failed: CSRF token missing or incorrect."}
```
A missing CSRF protection, likely, on the JS side.
We must fix this ASAP.Tutorial for the FG2015 ConferenceSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/101Worker: missing easy deactivation action2015-04-20T16:26:07ZAndré AnjosWorker: missing easy deactivation actionIt should be possible to quickly deactivate a number of workers from the configuration, w/o removing all of the configuration from its place. This would allow us to adjust the farm size on demand.
Items to be executed:
- [x] Add a ...It should be possible to quickly deactivate a number of workers from the configuration, w/o removing all of the configuration from its place. This would allow us to adjust the farm size on demand.
Items to be executed:
- [x] Add a field on each worker indicating its state (active/deactive)
- [x] Add an action to the worker admin to deactivate/activate workers in batch
- [x] Modify the configuration logic so that, if a worker is active, is the same as it not belonging to the configuration
- [x] Display this information adequately on the scheduler/backend pageTutorial for the FG2015 ConferenceAndré AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.web/-/issues/100Backend/scheduler administration page improvements2020-08-03T08:41:33ZAndré AnjosBackend/scheduler administration page improvementsA small list of improvements for the backend/scheduler page:
1. The worker listing takes too much space and does not allow for the visualisation of important information. It would be better to transform it into a table, in which each ...A small list of improvements for the backend/scheduler page:
1. The worker listing takes too much space and does not allow for the visualisation of important information. It would be better to transform it into a table, in which each line corresponds to a host and each column shows the following information: IP address, cores (in-use/available), memory (in-use/available), beat.scheduler version. The color of the line can be color coded: light green means 100% free, light read means 100% occupied, light yellow means partially occupied.
2. The total number of cores affected to a queue should be displayed
3. The queue listing should also become a table with more compact information displayed.Tutorial for the FG2015 ConferenceAndré AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.web/-/issues/99Normal registration and minimal profile page2015-05-01T16:08:43ZAndré AnjosNormal registration and minimal profile pageFor the tutorial in May, we absolutely need to put in place a minimal registration page (or revive the one we have) and let users change passwords and reset their secret tokens via a profile page.
Here are the features:
- [x] Reviv...For the tutorial in May, we absolutely need to put in place a minimal registration page (or revive the one we have) and let users change passwords and reset their secret tokens via a profile page.
Here are the features:
- [x] Revive registration
- [x] Allow users to reset their passwords using their profile page
- [x] Allow users to re-generate their secret tokens using their profile pageTutorial for the FG2015 ConferenceSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/96Inspect the experiment datasets2015-05-04T16:42:23ZTiago de Freitas PereiraInspect the experiment datasetsWhen a experiment is opened, it is not possible to see the dataset setup.
When a experiment is opened, it is not possible to see the dataset setup.
Tutorial for the FG2015 Conferencehttps://gitlab.idiap.ch/beat/beat.web/-/issues/94URL field "format=string" does not work after Django rest framework port2015-03-27T12:38:34ZAndré AnjosURL field "format=string" does not work after Django rest framework portThis field in the URL is used by the rest framework to define which serializer/marshaller to use.
We will need to change this everywhere to something like `object-format=string`.This field in the URL is used by the rest framework to define which serializer/marshaller to use.
We will need to change this everywhere to something like `object-format=string`.Tutorial for the FG2015 ConferenceSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/93Object list in the user micro-site does not include all visible contributions2015-03-27T12:38:43ZAndré AnjosObject list in the user micro-site does not include all visible contributionsWhen listing objects in the user micro-site, it would better if the user had access to all visible contributions, organized this way:
1. The user's own contributions
2. Objects which have been explicitly shared with the user
3. All ...When listing objects in the user micro-site, it would better if the user had access to all visible contributions, organized this way:
1. The user's own contributions
2. Objects which have been explicitly shared with the user
3. All other public contributions
The filtering bar on the top should work-out fine so that the user can fine-tune the results.Tutorial for the FG2015 ConferenceSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/92Team creation form2015-03-27T12:37:48ZAndré AnjosTeam creation formThe team creation form is in place. A couple of fixes are due:
- [x] It would be good that we describe, somewhere, what the different privacy levels mean.
- [x] It would be better to have the whole form completable at once, in a sing...The team creation form is in place. A couple of fixes are due:
- [x] It would be good that we describe, somewhere, what the different privacy levels mean.
- [x] It would be better to have the whole form completable at once, in a single page, instead of creating the team and then editing its attributes
- [x] It would be good if, by clicking on the team (at the user micro-site), the system took the user to the team edition page as for other objects. Some harmonization should be put in place for this.Tutorial for the FG2015 ConferenceSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/91DELETE action was removed from <base>/experiments/configuration/...2015-03-27T12:38:52ZAndré AnjosDELETE action was removed from <base>/experiments/configuration/...According to @samuel.gaist, this was done during the rest framework port. We should bring this API back.According to @samuel.gaist, this was done during the rest framework port. We should bring this API back.Tutorial for the FG2015 ConferenceSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/89Django experiments/Results table could be largely simplified2015-05-04T13:13:37ZAndré AnjosDjango experiments/Results table could be largely simplifiedCurrently, our Results table contains 4 columns that store data types: one for integers, one for floats, one for booleans and one for "everything else". In order to know how to read the data, the platform consults the value of the "type"...Currently, our Results table contains 4 columns that store data types: one for integers, one for floats, one for booleans and one for "everything else". In order to know how to read the data, the platform consults the value of the "type" column" and then reads the corresponding field, with an adequate de-serializer.
In order to support the new plotting standard, the choice of implementation would be to add a "__type__" field on chart data (saved at the "Data value" column), which implies in a hack to ignore such a field on beat.core.
The way to solve this cleanly could go through:
1. Re-write the Result table so that all results are represented by strings or binary blobs
2. Condition the readout of Result tables to the type of the data object, as defined in the "type" column, which would have to be set to a "string" type.
This technique would remove 3 columns from the table, simplifying it, at the cost of reviewing the code that uses/displays results.
Because all results would be expressed into string (or binary), no need to worry about issue #83 anymore, would this solution be taken.Tutorial for the FG2015 ConferenceLaurent EL SHAFEYLaurent EL SHAFEYhttps://gitlab.idiap.ch/beat/beat.web/-/issues/88Implement support for beat.core description/documentation API2015-05-06T07:45:26ZAndré AnjosImplement support for beat.core description/documentation APIThe new beat.core contains direct support for object descriptions and a documentation API.
Following the other functionality that is already well-merged with beat.core, it would be good that this package also used the beat.core APIs t...The new beat.core contains direct support for object descriptions and a documentation API.
Following the other functionality that is already well-merged with beat.core, it would be good that this package also used the beat.core APIs to set and get object descriptions and documentation.
The object `short_description` in beat.web (known as `description` in beat.core), can still be cached inside beat.web, but should be updated on beat.core once it changes. This allows users to simply edit the object JSON files and still be able to push the description to the server, when they are using the command-line interface.
Similarly, `description` in beat.web (known as `documentation` in beat.core) should be materialized in a proper file, like it is done for the JSON declarations. This would allow users from the command-line to edit this file and push it to the server.Tutorial for the FG2015 ConferenceAndré AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.web/-/issues/87Locked attestation page content2015-05-04T14:36:13ZSébastien MARCELLocked attestation page contenton locked attestation pages, for instance https://www.beat-eu.org/platform/attestations/1444752237/,
will it be possible to add more information such as at the very latest the results (error rates, plots).
Indeed, locked attestation ...on locked attestation pages, for instance https://www.beat-eu.org/platform/attestations/1444752237/,
will it be possible to add more information such as at the very latest the results (error rates, plots).
Indeed, locked attestation are supposed to be inserted in publications under review, so that a reviewer can click on the attestation link and verifies the claims/results of the paper.
So it will makes sense that the page shows those results.Tutorial for the FG2015 Conferencehttps://gitlab.idiap.ch/beat/beat.web/-/issues/86Missing API for downloading databases and views2015-03-18T12:16:12ZAndré AnjosMissing API for downloading databases and viewsWe're currently missing an API to download databases (JSON and views) associated with experiments. There should be no reason why this should not be possible.
Currently, after downloading and experiment, the toolchain and related algor...We're currently missing an API to download databases (JSON and views) associated with experiments. There should be no reason why this should not be possible.
Currently, after downloading and experiment, the toolchain and related algorithms and dataformats, the user may not validate the experiment because it is lacking the database definition.
Clearly, we're not talking about the real data, just the (JSON and python views) associated with the platform. Confidentiality should be respected in all cases.Tutorial for the FG2015 ConferenceAndré AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.web/-/issues/84Synchronisation issue between the system status and the internal status ?2015-03-27T06:09:52ZSébastien MARCELSynchronisation issue between the system status and the internal status ?there might be a synchronisation issue between the system status ( https://www.beat-eu.org/platform/ ) and the internal status. Indeed, the status says that 1 experiment is running but clearly looking at the scheduler page this is not th...there might be a synchronisation issue between the system status ( https://www.beat-eu.org/platform/ ) and the internal status. Indeed, the status says that 1 experiment is running but clearly looking at the scheduler page this is not the case.
Tutorial for the FG2015 ConferenceAndré AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.web/-/issues/83Django FloatField does not handle +/-inf and NaN values2015-04-27T09:58:37ZLaurent EL SHAFEYDjango FloatField does not handle +/-inf and NaN valuesThe current version of Django (1.7.1) has a FloatField implementation that does not support special floating point values such as +/-inf and NaN.
The following Django ticket mentions this issue:
https://code.djangoproject.com/ticket/...The current version of Django (1.7.1) has a FloatField implementation that does not support special floating point values such as +/-inf and NaN.
The following Django ticket mentions this issue:
https://code.djangoproject.com/ticket/4287
This is currently a problem with our analyzers that store results as FloatField in the SQL database.
When such a value is passed from the scheduler to the web (e.g. in the block_finished method), an error occurs (500: internal server error), which leads to the messsage to be continuously sent and misprocessed.
We need to find a workaround for this.Tutorial for the FG2015 ConferenceSamuel GAISTSamuel GAISThttps://gitlab.idiap.ch/beat/beat.web/-/issues/71Inserting an invalid JSON for a database generates a beat.web error2015-03-18T12:52:42ZAndré AnjosInserting an invalid JSON for a database generates a beat.web errorA simple test is to copy-paste the JSON containing version and short doc strings.A simple test is to copy-paste the JSON containing version and short doc strings.Tutorial for the FG2015 ConferenceAndré AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.web/-/issues/53Validation of all Contributions must be more thorough2015-03-18T12:17:09ZAndré AnjosValidation of all Contributions must be more thoroughCurrently, the validation of contributions saved on our database does not go through important accessibility check that must be executed before object insertion.
Namely, the following checks should be performed:
* [x] When the user...Currently, the validation of contributions saved on our database does not go through important accessibility check that must be executed before object insertion.
Namely, the following checks should be performed:
* [x] When the user inserts a data format, that all referenced data formats are accessible
* [x] When the user saves an algorithm that all referenced data formats are acessible
* [x] When the user saves an experiment, that databases, algorithms, analysers, data formats and environments are accessible.
When all these items are checked, we can safely close this bug.Tutorial for the FG2015 ConferenceAndré AnjosAndré Anjoshttps://gitlab.idiap.ch/beat/beat.web/-/issues/51Reset statistics if Experiment results are cached, but Experiment is reset fr...2015-05-05T18:24:02ZAndré AnjosReset statistics if Experiment results are cached, but Experiment is reset from the admin interfaceIn the case the Experiment is reset from the admin interface, its cache files are not erased (they cannot since we don't know if they would be shared by other experiments). If the experiment is re-scheduled, the scheduler will not run a ...In the case the Experiment is reset from the admin interface, its cache files are not erased (they cannot since we don't know if they would be shared by other experiments). If the experiment is re-scheduled, the scheduler will not run a single block since all files are cached. When replying to the webserver, the scheduler will indicate successful completion, but no statistics, stdout or stderr will be present.
At this point, the web believes these are empty. Instead, it would be more correct if the backend would try to re-connect old statistics to the experiment instead.Tutorial for the FG2015 Conferencehttps://gitlab.idiap.ch/beat/beat.web/-/issues/49Django Superuser should have access to all website2015-05-04T16:39:08ZAndré AnjosDjango Superuser should have access to all websiteCurrently, the Django super user can edit any object using the admin interface, but it cannot inspect the object using the normal user interface. This is a bit inconsistent. We should modify this behaviour so that, if the user is a super...Currently, the Django super user can edit any object using the admin interface, but it cannot inspect the object using the normal user interface. This is a bit inconsistent. We should modify this behaviour so that, if the user is a super-user, it is granted access to all site objects in all views.Tutorial for the FG2015 ConferenceSamuel GAISTSamuel GAIST