WebSearch: add bibdocs to record context
installation: initial upgrade recipe for next

* Create WebDeposit tables.
WebStyle: nice error page view decorator

* Add flask view decorator that will catch specific exceptions and
  render a nice error page for the end-user. The decorator is
  complementary to the normal Flask error handlers for 404 and 500
  HTTP errors.
WebSession: port user registration to Flask

* Ported user registration view to Flask but moving register view from
  websession_webinterface to webaccount_blueprint and creating a new
  WTForm form with validation logic for user registration.

* Use email instead of nickname for login

* Fix issue in webuser when dealing with Flask generated legacy
  requests instead of proper legacy requests.

* FIXME Unauthorized access page not ported
WebDeposit: fix pre_validate method in fields

* Ensure pre_validate function signature matches that of WTForms.
  Already fixed by Kostas, so to be removed from next-op once new
  WebDeposit changes have been pushed and integrated into next-op.
WebStyle: install I18N Jinja2 extensions

* Load Jinja2 I18N extension.
BibClassify: remove ability to run as standalone

* Removes ability to run BibClassify in standalone mode.

* Fixes an issue where lib/python/invenio/ was added to sys.path to be
  able to run e.g. BibClassify as standalone. This caused modules to
  be importable outside of their package hierarchy (e.g. both 'import
  inveni.config' and 'import config' would work). As a side-effect,
  this would also mask out system-level packages with the same name
  as an Invenio module (e.g. 'invenio.celery' would mask out 'celery'
  module) (closes #1459).
global: fix remote debugger to work with Flask

* Fixes remote debugger to work with Flask.

* Changes method of enabling remote debugger to use
  CFG_DEVEL_TOOLS

* Removes legacy code profiler.
testutils: add test mail server to inveniomange

* Adds inveniomange command to run a test mail server which prints
  all received messages on the console.
celery: fix issue with undefined database

* Fixes an issue where the database in certain cases where not
  defined, which caused an exception when a celery worker was started.
oairepository: automatically compute model field

* Connects OaiREPOSITORY model to SQLAlchemy events to ensure field
  setDefinition is properly computed on db insert/update when using
  the SQLAlchemy model.
celery: add manage commands to start worker

* Adds inveniomanage commands to start a celery worker.
Flask-SSLify: fix url standard ports rewrite

* Fixes problem with rewriting secure site url running on standard
  port where the port number is included in CFG_SITE_URL (e.g.
  http://localhost:80 -> https://localhost:443).
signalutils: initial release

* Adds tools for implementing observer-pattern (i.e. decoupling publishers
  of notification from their subscribers).
BibDocFile: add download progress callback

* Add an optional progress callback function to download_external_url
  to enable progress reporting of larger files.
BibFormat: load bfe_elements in Jinja env

* Fix issue with bibreformat creating empty pre-formatted records,
  caused by bibformat elements not being loaded.

Co-authored-by: Jiri Kuncar <jiri.kuncar@cern.ch>
WebSession: fix empty password registrations.

* Disallow empty password registrations.