workflows: snapshot generation fix

* Fixes the generation of snapshots to take into consideration
  the new ObjectVersion's ERROR and WAITING.

* Adds a new test to cover this issue.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
oaiharvester: record splitting improvement

* Improves the splitting of records from OAI-PMH requests to also
  handle the case of MARCXML from other Invenio instances.

* Defers the splitting logic to a XML parser and moves some utility
  functions to a new utils file in the new module structure.

* Adds tests for these utility functions.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
workflows: Holding Pen file serving fix

* Fixes the file serving used in Holding Pen details pages
  to also serve files that were automatically prefixed with
  uuid's.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
legacy: get_most_popular_field_values fix

* Properly checks if tags parameter is of string type.

Signed-off-by: Javier Martin Montull <javier.martin.montull@cern.ch>
collect: addition of sorting filter

Signed-off-by: Javier Martin Montull <javier.martin.montull@cern.ch>
uploader: initial manage command implementation

* Adds basic `inveniomanage uplaoder insert -f FILE` command.
  (addresses #1772)

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
setup: WTForms pin version 1.0.5

* NOTE Invenio installation is currently broken. Flask-Admin does
  not support WTForms>2.0.0. This is a temporary commit until it is
  fixed.

Signed-off-by: Javier Martin Montull <javier.martin.montull@cern.ch>
knowledge: API migration to SQLAlchemy

* Replaces run_sql queries with SQLAchemy query.

* Refactors module in order to move logic from api to model.

* Fixes bibknowledge webinterface kb mapping update.

Signed-off-by: Leonardo Rossi <leonardo.r@cern.ch>
BibSched: post-process data exchange

* Adds the ability for tasks to transfer arbitrary data to BibTasklets
  specified via the `--post-process=` argument via a new task parameter
  `post_process_params`.

Co-authored-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
WebSearch: webcoll post-process data

* Adds sending of added/modified record IDs during webcoll run to
  `post-process` tasklet via a new task parameter `post-process_params`.

Co-authored-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
oaiharvester: authorlist extraction task

* Updates post-process task for authorlist extraction to
  properly fall back to the default XSLT stylesheet.

* Adds a check that the script file is found for the filtering
  script task.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>