limbra issueshttps://gitlab.in2p3.fr/limbra/limbra/-/issues2021-04-30T14:56:00+02:00https://gitlab.in2p3.fr/limbra/limbra/-/issues/96Migrate to new inspirehep API2021-04-30T14:56:00+02:00LE GAC RenaudMigrate to new inspirehep API* Since March 2020 a new JSON API is available to search and to retrieve publications from `inspirehep.net`
* The old JSON API is available from `old.inspirehep.net`. It is also used by `cds.cern.ch`.
* `Inspirehep` will close the old AP...* Since March 2020 a new JSON API is available to search and to retrieve publications from `inspirehep.net`
* The old JSON API is available from `old.inspirehep.net`. It is also used by `cds.cern.ch`.
* `Inspirehep` will close the old API in the coming month.
* As a consequence, LIMBRA will have to deal with two stores (cds and inspirehep) working with a different API
* Documentation for the new API: https://github.com/inspirehep/rest-api-dochttps://gitlab.in2p3.fr/limbra/limbra/-/issues/78Add the number of citations2020-03-20T17:30:27+01:00LE GAC RenaudAdd the number of citations* It is now possible to collect the *number of citations*:
- http://inspirehep.net/record/1471725?of=recjson&ot=number_of_citations.
- https://inspirehep.net/search?recid=1762038&ot=number_of_citations&of=recjson
* Add a databa...* It is now possible to collect the *number of citations*:
- http://inspirehep.net/record/1471725?of=recjson&ot=number_of_citations.
- https://inspirehep.net/search?recid=1762038&ot=number_of_citations&of=recjson
* Add a database table, `citations`, containing citations per publications as a function of time:
date,
publications.id,
number_of_citations
* Add a web2py cron job updating the number of citation once a week (http://web2py.com/books/default/chapter/29/04/the-core#Cron)
* Build a pdf report contains plots (article):
- `number of publications` as a function of the `number of citations`
- `box plot` on the number of citation all, per domaine scientifique, per team, or per project
https://gitlab.in2p3.fr/limbra/limbra/-/issues/77Migrate from MARC to JSON format2020-02-12T16:48:07+01:00LE GAC RenaudMigrate from MARC to JSON format* Stores `inspirehep.net` and `cds.cern.ch` can return a JSON string instead of an XML one.
* For example: http://inspirehep.net/record/1471725?of=recjson
* More on the JSON API: https://inspirehep.net/info/hep/api?ln=fr
* Map JSON / ...* Stores `inspirehep.net` and `cds.cern.ch` can return a JSON string instead of an XML one.
* For example: http://inspirehep.net/record/1471725?of=recjson
* More on the JSON API: https://inspirehep.net/info/hep/api?ln=fr
* Map JSON / MARC: https://github.com/inspirehep/invenio/blob/prod/modules/bibfield/etc/atlantis.cfg
* Comparison between JSON and MARC in [CodesJsonMarc.pdf](/uploads/644fd6af927f05d54064baba7fb5b7ab/CodesJsonMarc.pdf) and [Json_fields.pdf](/uploads/6d30afc3ff85bbc7389dcf5d81159f01/Json_fields.pdf)https://gitlab.in2p3.fr/limbra/limbra/-/issues/94migrate to python 3.72019-12-05T18:23:20+01:00LE GAC Renaudmigrate to python 3.7* require web2py 2.18.3 or above
* require plugin_dbui 0.9.9.1-py37 or above* require web2py 2.18.3 or above
* require plugin_dbui 0.9.9.1-py37 or abovehttps://gitlab.in2p3.fr/limbra/limbra/-/issues/93fix bugs2019-10-31T10:11:03+01:00LE GAC Renaudfix bugs* [x] the role `user` is not working any more.
* [x] The affiliation key `Ecole Polytechnique` select autors from LLR (`Ecole Polytechnique`) and EPFL (`Ecole Polytechnique, Lausanne`)
* [x] Internal server error https://inspirehep.net/r...* [x] the role `user` is not working any more.
* [x] The affiliation key `Ecole Polytechnique` select autors from LLR (`Ecole Polytechnique`) and EPFL (`Ecole Polytechnique, Lausanne`)
* [x] Internal server error https://inspirehep.net/record/1713704 (article notice error)
* [x] Internal server error https://inspirehep.net/record/1692891 (proceeding missing 909CO field))
* [x] Internal server error https://inspirehep.net/record/1610670 (proceeding missing 909CO field)
* [x] Add a button Go in the selector of the publication tables
* [x] Allow user to modify authors rolehttps://gitlab.in2p3.fr/limbra/limbra/-/issues/65Run jsduck, sencha or sphinx via a docker container2018-04-27T15:02:17+02:00LE GAC RenaudRun jsduck, sencha or sphinx via a docker container* In the development setup, `build_version.py` run the command `jsduck`, `sencha` or `sphinx` using those defined in the local file system. It is painful to install them. In addition they are availble in docker image `web2py-degj`.
* It...* In the development setup, `build_version.py` run the command `jsduck`, `sencha` or `sphinx` using those defined in the local file system. It is painful to install them. In addition they are availble in docker image `web2py-degj`.
* It would be possible to run them via a docker container: `docker run --rm web2py-degj:2.9.11 sencha [options] ....`
* Add an option `image` or `docker image` to select the relevant image
* The same mechanism can be applied to the `run` command using web2py.LE GAC RenaudLE GAC Renaudhttps://gitlab.in2p3.fr/limbra/limbra/-/issues/69Change the javascript namespace from Trp to Limbra2018-04-27T15:02:17+02:00LE GAC RenaudChange the javascript namespace from Trp to Limbra* See `static/limbra/src/wizard/Harvester.js`
* Will improve the lisibility of the documentation.
* ...* See `static/limbra/src/wizard/Harvester.js`
* Will improve the lisibility of the documentation.
* ...https://gitlab.in2p3.fr/limbra/limbra/-/issues/70Change the logic for status OK2018-04-27T15:02:17+02:00LE GAC RenaudChange the logic for status OK* Currently, record marked `OK` can't be deleted nor modified.
* Relax this rule following gitlab approach.
* To delete / modify a record marked `OK`, a popup window appears asking if you are really sure and to confirm that you really...* Currently, record marked `OK` can't be deleted nor modified.
* Relax this rule following gitlab approach.
* To delete / modify a record marked `OK`, a popup window appears asking if you are really sure and to confirm that you really want to do it by typing a predefined value which depends on the record, *e.g.* the beginning of the title of the name of the first author.
* ...https://gitlab.in2p3.fr/limbra/limbra/-/issues/72Add author condition in the selector for metrics and graphs2018-04-27T15:02:17+02:00LE GAC RenaudAdd author condition in the selector for metrics and graphs* Same set of condition for lists, metrics and graphs
* Add the authors fields.
* The comparator operator is `contains`
* ...* Same set of condition for lists, metrics and graphs
* Add the authors fields.
* The comparator operator is `contains`
* ...https://gitlab.in2p3.fr/limbra/limbra/-/issues/81Migrate to plugin_dbui 0.9.8.12018-04-27T15:02:17+02:00LE GAC RenaudMigrate to plugin_dbui 0.9.8.1* The release 0.9.8.1 is not backward compatible.* The release 0.9.8.1 is not backward compatible.https://gitlab.in2p3.fr/limbra/limbra/-/issues/82Speed up the model2018-04-27T15:02:17+02:00LE GAC RenaudSpeed up the model* Follow the `tev/plugin_event` implementaion
* Create the module `auth` with the function `configure_auth`
* Create modules `model_core`, `model_report`, `model_selector` with the class `Core`, `Report` and `Selector`
* Create modules ...* Follow the `tev/plugin_event` implementaion
* Create the module `auth` with the function `configure_auth`
* Create modules `model_core`, `model_report`, `model_selector` with the class `Core`, `Report` and `Selector`
* Create modules `ui_core`, `ui_report`, `ui_selector` and `ui_viewport` with the classes `CoreUi`, `ReportUi`, `SelectorUi` and `ViewportUi`
* Reduce the model to one short file `main.py`
The main steps are:
- [x] models
- [x] lazyT
- [x] use `current.db`, `current.virtdb`, `current.auth`
- [x] replace `'` by `"`
- [x] run `pylint`https://gitlab.in2p3.fr/limbra/limbra/-/issues/83Speed up graph2018-04-27T15:02:17+02:00LE GAC RenaudSpeed up graph* deleguate dirty task to `DataFrame` instead of the database and python functions.* deleguate dirty task to `DataFrame` instead of the database and python functions.https://gitlab.in2p3.fr/limbra/limbra/-/issues/86Use pandas.DataFrame in record for author and their affiliation2018-04-27T15:02:17+02:00LE GAC RenaudUse pandas.DataFrame in record for author and their affiliation* Class `invenio_tools.RecordPubli`
* Store the authors and their affiliation in a DataFrame with two columns `raw_author` and `affiliation`
* Columns like `format_author`, `first_name`, `last_name` can be added when required.
* Vector...* Class `invenio_tools.RecordPubli`
* Store the authors and their affiliation in a DataFrame with two columns `raw_author` and `affiliation`
* Columns like `format_author`, `first_name`, `last_name` can be added when required.
* Vectorize the function `format_author_fr` and `familly_name_fr`.
* Should speed up the author / affilation processing and simplify the code.https://gitlab.in2p3.fr/limbra/limbra/-/issues/11Develop unit test for the module invenio_tools and for the class PublicationT...2017-06-18T12:16:06+02:00LE GAC RenaudDevelop unit test for the module invenio_tools and for the class PublicationTool.* Make the harvesters robust is the priority.
* The first step is described in #9.
* The second test is to develop unit tests for the main classes of the `invenio_tool` module: `CheckAndFix`, `InvenioStore` and `Marc12`.
* The last st...* Make the harvesters robust is the priority.
* The first step is described in #9.
* The second test is to develop unit tests for the main classes of the `invenio_tool` module: `CheckAndFix`, `InvenioStore` and `Marc12`.
* The last step is to develop unit tests for the class `PublicationTool`.https://gitlab.in2p3.fr/limbra/limbra/-/issues/63Change the name of the project to LIMBRA2016-06-08T18:35:36+02:00LE GAC RenaudChange the name of the project to LIMBRA*LIstes et Métriques BibliogRaphiques Automatisées**LIstes et Métriques BibliogRaphiques Automatisées*https://gitlab.in2p3.fr/limbra/limbra/-/issues/62Migrate to web2py 2.13.42016-06-08T18:35:36+02:00LE GAC RenaudMigrate to web2py 2.13.4* The current version `0.9.5.2` is not running.
* Since the release `2.10.1`, web2py uses the external module `pyDAL` instead of `gluon.dal`.
* Then the call `from gluon.dal import smart_query` is failing.
* Remove `from ...` and uses...* The current version `0.9.5.2` is not running.
* Since the release `2.10.1`, web2py uses the external module `pyDAL` instead of `gluon.dal`.
* Then the call `from gluon.dal import smart_query` is failing.
* Remove `from ...` and uses `DAL.smart_query` in a controller or other syntax in a module.
* Check all `from gluon.dal import ...`https://gitlab.in2p3.fr/limbra/limbra/-/issues/57Add a command in build_version to install a plugin2016-02-23T17:32:04+01:00LE GAC RenaudAdd a command in build_version to install a plugin* Remove the existing plugin
* Install a fresh version
* plugin repository can be choose by the user (by default ../plugin_dbui_build)
* Proposal:
```
./build_version plugin dbui extjs mathjax
./build_version plugin --rel...* Remove the existing plugin
* Install a fresh version
* plugin repository can be choose by the user (by default ../plugin_dbui_build)
* Proposal:
```
./build_version plugin dbui extjs mathjax
./build_version plugin --release 0.7.3dev dbui
./build_version plugin --git ../plugin_dbui_build extjs
./build_version plugin --tar myfile.tar.gz dbui extjs mathjax
```https://gitlab.in2p3.fr/limbra/limbra/-/issues/64test existence of jsduck and sench using which2016-02-18T12:49:33+01:00LE GAC Renaudtest existence of jsduck and sench using which* `build_version.py`
* Test the existence of the command `jsduck` and `sencha` using `which` instead of a fix path.
* This is required to run on the docker image for the server* `build_version.py`
* Test the existence of the command `jsduck` and `sencha` using `which` instead of a fix path.
* This is required to run on the docker image for the serverhttps://gitlab.in2p3.fr/limbra/limbra/-/issues/25Export list in word2015-12-15T09:41:48+01:00LE GAC RenaudExport list in word* Popular request, mainly related to AERES reports.
* Not so easy to implement since, the converter has to deal with equations.
* Known converter are not perfect.
* ...
* A solution will be:
1. Export the list in RTF
2....* Popular request, mainly related to AERES reports.
* Not so easy to implement since, the converter has to deal with equations.
* Known converter are not perfect.
* ...
* A solution will be:
1. Export the list in RTF
2. Do not render the equation.
3. Avoid to depend on external converter by using the python module `pyrtf`. It is available in web2py.
https://gitlab.in2p3.fr/limbra/limbra/-/issues/37Create a wizard to configure harvesters2015-12-09T18:06:38+01:00LE GAC RenaudCreate a wizard to configure harvesters* Ease the configuration of harvesters for non expert.
* Wizard with 4 tabs. The wizard is launched by the action `harvesters > Add`.
* TAB 1 → select the *team* and the *project*.
* TAB 2 → select the store (`cds.cern.ch` or `inspire...* Ease the configuration of harvesters for non expert.
* Wizard with 4 tabs. The wizard is launched by the action `harvesters > Add`.
* TAB 1 → select the *team* and the *project*.
* TAB 2 → select the store (`cds.cern.ch` or `inspirehep.net`)
* TAB 3 → select the collection by choosing the *experiment* and the *automaton*:
* The underlying processing should generate the search criteria which depends on the store.
* Could we extract the list of experiment from inspirehep?
* Could extract the list of collection (*e.g* LHCb Papers) from cds?
* Could we standardize the search criteria between the two stores?
* One can have an expert view in which the user enter the criteria by hand.
* TAB 4 → select the publication category. Possible values depends on the automaton