installation: requirement addition for six library

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
arxiv: docs entry addition

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
docs: css theme overrides

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
registry: keygetter value fix

* `register` method of `DictModuleAutoDiscoverySubRegistry` class
  gives original value of parameter `value` to the keygetter method
  as well as the modified value from valuegetter.

* NOTE If your registry.py is using DictModuleAutoDiscoverySubRegistry
  and you use your own keygetter method then please update your
  keygetter method to use all three parameters.

Co-authored-by: Jan Åge Lavik <jan.age.lavik@cern.ch>
Co-authored-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
Signed-off-by: Graham R. Armstrong <graham.richard.armstrong@cern.ch>
workflows: registry fix for keygetter method

* `keygetter` method of WorkflowsRegistry updated for keygetter fix.

Co-authored-by: Jan Åge Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Graham R. Armstrong <graham.richard.armstrong@cern.ch>
jsonalchemy: move to `isinstace(foo, Mapping)`

* Improve type checks to use `collection.Mapping` instead of `dict` as
  this the recommended way and it gives more abstraction.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
jsonalchemy: preserving original tags inside JSON

* When using creator rules that involves regex like `245..` the original
  marc tag is preserved inside the `__meta_metadata__` key for posterior
  needs.

* Enhances `json_for_marc` producer to use the input tag if the
  producer is defined to do so (See `json_for_marc` documentation).
  (addresses #1722)

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
records: move legacy methods to the Record object

* Moves `legacy_export_as_marc` and `legacy_create_recstruct` from the
  `SmartJson` class to the record class.

* Enhances test cases for this two methods.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
jsonalchemy: fix for `__additional_info__` access

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
tags: REST API and testing

* Adds functionality to attach tags
  to a record.

Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
restful: fix for testing accesstoken

* Adds support to check if all elements
  in a given list have the correct type. The error
  that is added in the validation errors is
  the 'INCORRECT_ELEMENT_TYPE_IN_DATASTRUCTURE'.

* The get_errors() function is refactored i order
  to catch the above case.

Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
requirements: cerberus package upgrade

* In order to support some new features of cerberus
  and output errors in the format
  {code:c, message:m,field:f} cerberus package must
  be upgraded to latest version(v 0.7) or the previous
  one(v 0.6).

Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>