bob issueshttps://gitlab.idiap.ch/groups/bob/-/issues2020-11-27T18:16:28Zhttps://gitlab.idiap.ch/bob/bob.pipelines/-/issues/28Logging level does not propogate to workers2020-11-27T18:16:28ZAmir MOHAMMADILogging level does not propogate to workersWhen I run a script in verbose mode with dask, the debug logs are not printed in worker logs.When I run a script in verbose mode with dask, the debug logs are not printed in worker logs.Bob 9.0.0Tiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/145It's not possible to provide a dask wrapped pipeline and a dask client2020-11-17T09:53:56ZAmir MOHAMMADIIt's not possible to provide a dask wrapped pipeline and a dask clientI want to use custom dask tags and hence want to wrap the estimators myself in the config file.
but this is not possible as when I provide a dask client, the pipeline is again wrapped in dask.I want to use custom dask tags and hence want to wrap the estimators myself in the config file.
but this is not possible as when I provide a dask client, the pipeline is again wrapped in dask.Bob 9.0.0https://gitlab.idiap.ch/bob/bob.bio.base/-/issues/139Protect against paths starting with / in database filelist API2020-10-16T15:58:14ZAmir MOHAMMADIProtect against paths starting with / in database filelist APIIf the paths in the filelists of the filelist-based db interfaces start with `/` and we are checkpointing samples, there is a good chance that original samples of the database could be re-written.
We should either check for this and rais...If the paths in the filelists of the filelist-based db interfaces start with `/` and we are checkpointing samples, there is a good chance that original samples of the database could be re-written.
We should either check for this and raise an error, or fix this automatically.Bob 9.0.0https://gitlab.idiap.ch/bob/bob.bio.base/-/issues/136resources.py as CLI command2021-06-16T13:54:52ZTiago de Freitas Pereiraresources.py as CLI commandHi,
The `resources.py` is a very usesul script and we need to add it in our `bob bio` CLI "umbrella" .
Furthermore, we need to decide which type of resources should be kept and which should be dropped.
Today, the options available via ...Hi,
The `resources.py` is a very usesul script and we need to add it in our `bob bio` CLI "umbrella" .
Furthermore, we need to decide which type of resources should be kept and which should be dropped.
Today, the options available via `-t` are:
- d,database,
- p,preprocessor,
- e,extractor,
- a,algorithm,
- g,grid,
- c,config,
- an,annotator,
- b,baseline
I think now we should have something like:
- d,database,
- t,transformer,
- a,biometric_algorithm,
- d,dask_client,
- c,config,
- an,annotator,
- b,baseline
ping @ydayerBob 9.0.0https://gitlab.idiap.ch/bob/bob.bio.face/-/issues/20Using super() for base class function calls2017-10-20T02:30:32ZManuel Günthersiebenkopf@googlemail.comUsing super() for base class function callsAfter bob.bio.base#64 is merged, we can go ahead and use super() to call base class functionality here, too. This mainly should affect constructor calls.After bob.bio.base#64 is merged, we can go ahead and use super() to call base class functionality here, too. This mainly should affect constructor calls.May 2017 Hackathonhttps://gitlab.idiap.ch/bob/bob.db.arface/-/issues/2Creating the database fails2018-07-10T19:03:33ZManuel Günthersiebenkopf@googlemail.comCreating the database failsWhen I try to run `bin/bob_dbmanage.py arface create`, I get the following error:
```
bob/db/arface/models.py", line 89, in __init__
bob.db.base.File.__init__(self, file_id = image_name, client_id = image_name[:5], path = image_name...When I try to run `bin/bob_dbmanage.py arface create`, I get the following error:
```
bob/db/arface/models.py", line 89, in __init__
bob.db.base.File.__init__(self, file_id = image_name, client_id = image_name[:5], path = image_name)
TypeError: __init__() got an unexpected keyword argument 'client_id'
```
I assume that there was an error while switching form `bob.db.verification.utils.File`, which accepts the `client_id` keyword to `bob.db.base.File`, which does not. While just using the database with the stored `db.sql3` database file, this works fine -- since the `bob.db.arface.File` constructor is never called. When trying to use the `File` class (as done during `create`), this issue shows up.
I assume that this issue shows up in many more databases.May 2017 HackathonAlain KOMATYAlain KOMATYhttps://gitlab.idiap.ch/bob/bob.extension/-/issues/28Automatic docstring generator should adopt one of "Napoleon" styles2019-09-04T13:12:40ZAndré AnjosAutomatic docstring generator should adopt one of "Napoleon" stylesWhen we wrote our documentation generator in [documentation.h](bob/extension/include/bob.extension/documentation.h), there was not a set standard for documenting functions in sphinx. Since release 1.3 (which is now required by most of ou...When we wrote our documentation generator in [documentation.h](bob/extension/include/bob.extension/documentation.h), there was not a set standard for documenting functions in sphinx. Since release 1.3 (which is now required by most of our software), there is:
http://www.sphinx-doc.org/en/stable/ext/napoleon.html
The napoleon extension is already loaded by most of our software, so it makes sense that the generator follows one of the docstring standards defined on that manual page. Some of our python-based docstrings already follow the "Google" style:
http://www.sphinx-doc.org/en/stable/ext/example_google.html#example-google
It would be good to get the C++ docs matching that.May 2017 HackathonPavel KORSHUNOVPavel KORSHUNOVhttps://gitlab.idiap.ch/bob/bob/-/issues/273Issues to take care of before release2022-06-10T11:33:30ZAmir MOHAMMADIIssues to take care of before release- [ ] at the end of many pages e.g. https://www.idiap.ch/software/bob/docs/bob/docs/master/bob/bob.bio.spear/README.html there is a contact section with "For questions or reporting issues to this software package, contact our development...- [ ] at the end of many pages e.g. https://www.idiap.ch/software/bob/docs/bob/docs/master/bob/bob.bio.spear/README.html there is a contact section with "For questions or reporting issues to this software package, contact our development mailing list." pointing to https://groups.google.com/g/bob-devel -- isn't it a bit misleading since we are asking people to ask questions on stackoverflow https://stackoverflow.com/questions/tagged/python-bob ?
- [ ] bob.extension is still called a C++ extension package and the documentation needs to be revisited. Most of the useful docs for development should move to bob/bob.devtools
- [x] The tutorial in bob/docs is gone and we need a new one. The other pages need to be revised.
- [ ] bob/bob.bio.base documentation on creating csv datasets is not complete
- [ ] bob/bob.bio.base documentation on legacy should be removed
- [ ] bob/bob.bio.spear documentation and leaderboard needs updating
- [ ] bob/bob.bio.face leaderboard needs updating
- [ ] bob/bob.pad.face needs new baselines. the package is empty as of now.
- [ ] bob/bob.pad.face needs new documentation after baselines have changed.
- [x] bob/bob.bio.vein still uses nosetests instead of pytest
- [ ] bob/bob.devtools we need to command to install all packages inside `bob-devel`. That is creating a conda env with all bob dependencies and without bob packages.
- [x] Check the entry points of all packages (check which ones).The Great Deprecationhttps://gitlab.idiap.ch/bob/bob.bio.spear/-/issues/40Re-implement i-vector and plda2022-04-27T20:16:19ZAmir MOHAMMADIRe-implement i-vector and pldadepends on https://gitlab.idiap.ch/bob/bob.learn.em/-/issues/44depends on https://gitlab.idiap.ch/bob/bob.learn.em/-/issues/44The Great DeprecationYannick DAYERYannick DAYERhttps://gitlab.idiap.ch/bob/bob.learn.em/-/issues/44Re-implement i-vector and plda2022-04-27T20:16:20ZAmir MOHAMMADIRe-implement i-vector and pldaThe Great DeprecationTiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/181re-enable cllr tests2022-05-12T13:36:23ZAmir MOHAMMADIre-enable cllr testsafter https://gitlab.idiap.ch/bob/bob.measure/-/issues/67 is resolved
by reverting https://gitlab.idiap.ch/bob/bob.bio.base/-/commit/7bee57cbfd1e98b2bc4f6e0044eeb178fdf766b4after https://gitlab.idiap.ch/bob/bob.measure/-/issues/67 is resolved
by reverting https://gitlab.idiap.ch/bob/bob.bio.base/-/commit/7bee57cbfd1e98b2bc4f6e0044eeb178fdf766b4The Great Deprecationhttps://gitlab.idiap.ch/bob/bob.measure/-/issues/67rocch and calibration implementations are missing2022-05-12T13:36:56ZAmir MOHAMMADIrocch and calibration implementations are missingsince we removed bob.math in https://gitlab.idiap.ch/bob/bob.measure/-/merge_requests/106since we removed bob.math in https://gitlab.idiap.ch/bob/bob.measure/-/merge_requests/106The Great Deprecationhttps://gitlab.idiap.ch/bob/bob.measure/-/issues/71No API / function to plot a histogram with scores in memory2024-02-15T13:53:03ZYannick DAYERNo API / function to plot a histogram with scores in memoryThere is no way of creating a score histogram (like `bob bio hist` from bob.bio.base) from code without saving the scores to a file.
`det`, `roc` and other plots commands have a function that allows feeding negative and positive scores ...There is no way of creating a score histogram (like `bob bio hist` from bob.bio.base) from code without saving the scores to a file.
`det`, `roc` and other plots commands have a function that allows feeding negative and positive scores as lists, but `hist` does all the plotting in the Figure class.
We should consider moving the plotting part of the `bob.measure.script.figure.Hist` class in an `hist` function in the `bob.measure.plot` module.https://gitlab.idiap.ch/bob/bob.bio.vein/-/issues/29CI: Database interfaces return empty sample list2023-11-03T09:59:05ZYannick DAYERCI: Database interfaces return empty sample list[Sometimes](https://gitlab.idiap.ch/bob/bob.bio.vein/-/jobs/364632) one of the CI jobs fails because a database returned an empty list when retrieving samples.
Has Mainly been seen on the `macos-arm` jobs, but always on one of both jobs...[Sometimes](https://gitlab.idiap.ch/bob/bob.bio.vein/-/jobs/364632) one of the CI jobs fails because a database returned an empty list when retrieving samples.
Has Mainly been seen on the `macos-arm` jobs, but always on one of both jobs (`3.9,macos-arm` or `3.10,macos-arm`).
Re-running the failed job fixes the issue.
It could be an issue with having two jobs running on the same machine. If both share the same `data` directory: if the first job finishes and cleans the database definition file, the second one has no file to read and returns an empty sample list.https://gitlab.idiap.ch/bob/bob.measure/-/issues/70Output of metrics is confusing when not using an eval set2023-10-17T10:34:57ZYannick DAYEROutput of metrics is confusing when not using an eval setWhen evaluating one file (or multiple files without the `-e`/`--eval` option), the `metrics` option assumes this is a development set (it prints `[Min. criterion: EER ] Threshold on Development set <...>`).
This can be confusing if we w...When evaluating one file (or multiple files without the `-e`/`--eval` option), the `metrics` option assumes this is a development set (it prints `[Min. criterion: EER ] Threshold on Development set <...>`).
This can be confusing if we want to score one file on its own which could not be a development set file (e.g. to get the EER metrics of only an eval set).
suggestions:
- Change the line [script/figure.py:330](https://gitlab.idiap.ch/bob/bob.measure/-/blob/v6.1.0/src/bob/measure/script/figure.py?ref_type=tags#L330) and [342](https://gitlab.idiap.ch/bob/bob.measure/-/blob/v6.1.0/src/bob/measure/script/figure.py?ref_type=tags#L342) to something like `Threshold on file '%s': %s`, and keep the notion of `Development set` only when `self._eval == True`.
- Allow changing the set name with a new option.https://gitlab.idiap.ch/bob/bob.bio.base/-/issues/194Loading scores for the measure commands fails on non-float scores2023-08-22T08:07:17ZYannick DAYERLoading scores for the measure commands fails on non-float scores[src/bob/bio/base/score/load.py#L663](https://gitlab.idiap.ch/bob/bob.bio.base/-/blob/master/src/bob/bio/base/score/load.py#L663) and [src/bob/bio/base/score/load.py#L650](https://gitlab.idiap.ch/bob/bob.bio.base/-/blob/master/src/bob/bi...[src/bob/bio/base/score/load.py#L663](https://gitlab.idiap.ch/bob/bob.bio.base/-/blob/master/src/bob/bio/base/score/load.py#L663) and [src/bob/bio/base/score/load.py#L650](https://gitlab.idiap.ch/bob/bob.bio.base/-/blob/master/src/bob/bio/base/score/load.py#L650) cast a CSV score column to float, but it could contain other things (nothing or `None`) that cannot be converted to float. This needs to be handled correctly.
Possible solution:
- Convert all non-float values to `float("nan")`, this should be handled correctly by the measure commands.https://gitlab.idiap.ch/bob/bob.pad.base/-/issues/45train set is mandatory2023-06-27T17:42:16ZYannick DAYERtrain set is mandatoryThe training is always applied in `run-pipeline`, even on non-trainable pipelines. This is fine until you consider datasets without train sets. Trying to load such a dataset results in an error.
Possible solutions:
- Detect if the data...The training is always applied in `run-pipeline`, even on non-trainable pipelines. This is fine until you consider datasets without train sets. Trying to load such a dataset results in an error.
Possible solutions:
- Detect if the database has no train set, and warn the user that no fit will be done on the pipeline;
- Add an option to skip the training (and the train set loading attempt).Yannick DAYERYannick DAYERhttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/192vuln hist command missing far_value option2023-05-01T15:11:06ZAlain KOMATYvuln hist command missing far_value optionExecuting the command:
```
bob vuln hist -c far --far-value 0.001 scores-dev.csv --output 11_hist.pdf --figsize "6,5"
```
Outputs the following error:
```
Error: No such option: --far-value Did you mean --iapmr-line?
```Executing the command:
```
bob vuln hist -c far --far-value 0.001 scores-dev.csv --output 11_hist.pdf --figsize "6,5"
```
Outputs the following error:
```
Error: No such option: --far-value Did you mean --iapmr-line?
```https://gitlab.idiap.ch/bob/docs/-/issues/13Bob citation2023-04-13T06:59:19ZHatef OTROSHIBob citationIn [Bob's webpage](https://www.idiap.ch/software/bob/), the current BibTeX is referring to the proceedings of ICML 2017, while the paper has not appeared in the proceedings of ICML 2017. Indeed, the paper is accepted in [ICML 2017 RML W...In [Bob's webpage](https://www.idiap.ch/software/bob/), the current BibTeX is referring to the proceedings of ICML 2017, while the paper has not appeared in the proceedings of ICML 2017. Indeed, the paper is accepted in [ICML 2017 RML Workshop, Reproducibility in Machine Learning](https://openreview.net/group?id=ICML.cc/2017/RML) and is available on the [Openreview platform](https://openreview.net/forum?id=BJDDItGX-¬eId=BJDDItGX-) only. Therefore, its citation needs to be fixed as follows:
```BibTeX
@inproceedings{bob2017,
author = {A. Anjos AND M. G\"unther AND T. de Freitas Pereira AND
P. Korshunov AND A. Mohammadi AND S. Marcel},
title = {Continuously Reproducing Toolchains in Pattern Recognition and
Machine Learning Experiments},
year = {2017},
month = aug,
booktitle = {ICML 2017 Reproducibility in Machine Learning Workshop},
pages={1-8},
url={https://openreview.net/forum?id=BJDDItGX-}
}
```
ping @pkorshunov @ydayerhttps://gitlab.idiap.ch/bob/bob.bio.face/-/issues/98Entry-points vgg2-*-with-eval not listed in bob.bio.database group2023-03-31T14:01:51ZYannick DAYEREntry-points vgg2-*-with-eval not listed in bob.bio.database groupSome entry-points in `pyproject.toml` (notably `vgg2-short-with-eval` and `vgg2-full-with-eval`) are listed in the entry-points group `bob.bio.config` but not in `bob.bio.database`.
This leads to issues and confusion when passing the co...Some entry-points in `pyproject.toml` (notably `vgg2-short-with-eval` and `vgg2-full-with-eval`) are listed in the entry-points group `bob.bio.config` but not in `bob.bio.database`.
This leads to issues and confusion when passing the config to the `--database` option of `bob bio pipeline simple` and listing with `resources.py`.
We should (if it was not omitted for a reason) also add those config entry-points to the `bob.bio.database` entry-point group.