Compare commits

...

9 Commits

Author SHA1 Message Date
Mojib Wali
d5fcf60cf7 v0.8.0 2022-02-09 16:29:35 +01:00
David Eckhard
772b21c93a config: add OAISERVER_ADMIN_EMAIL 2021-12-16 11:54:46 +01:00
mb-wali
c39221378f v0.7.1 2021-12-07 09:54:26 +01:00
mb-wali
a42f86fcdf configs: adds new & changed configs for v7 2021-12-06 14:44:05 +01:00
mb-wali
0dd0db04e2 v0.7.0 2021-12-06 09:45:11 +01:00
David Eckhard
b02ce8a755 fix: update blueprint reorder 2021-11-08 10:21:28 +01:00
Mojib
41dcb8f437 docs: adjust sphinx to flask 2
* Add werkzeug to intersphinx for additional type hints
* Describe type hints in bullet points rather than function signatures
* Remove 'warnings as errors' flag from documentation building, as some type hints aren't resolved properly and result in a warning
2021-11-04 10:55:33 +01:00
Mojib
35854691bd config: adds oai prefix 2021-11-04 10:55:33 +01:00
Mojib
f2e18b95c3 dep: upgrade rdm-records version
migrated allowed host to gitlab
2021-11-04 10:55:33 +01:00
7 changed files with 55 additions and 31 deletions

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 Mojib Wali.
Copyright (C) 2020 - 2021 Graz University of Technology.
invenio-config-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more
@@ -7,6 +7,18 @@
Changes
=======
Version 0.8.0 (released 2022-02-09)
- dep: bump rdm-records version
Version 0.7.1 (released 2021-12-07)
- configs: adds new & changed configs for v7 #76
Version 0.7.0 (released 2021-12-06)
- fix: update blueprint reorder #74
- dep: upgrade rdm-records version & OAI #72
Version 0.1.0 (released TBD)

View File

@@ -332,6 +332,8 @@ texinfo_documents = [
# Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = {
"python": ("https://docs.python.org/", None),
'flask': ('https://flask.palletsprojects.com/', None),
'werkzeug': ('https://werkzeug.palletsprojects.com/', None),
# TODO: Configure external documentation references, eg:
# 'Flask-Admin': ('https://flask-admin.readthedocs.io/en/latest/', None),
}

View File

@@ -41,17 +41,6 @@ CONFIG_TUGRAZ_ROUTES = {
# ===========
# See https://invenio-app.readthedocs.io/en/latest/configuration.html
# TODO: move this to gitlab vars.
APP_ALLOWED_HOSTS = [
"0.0.0.0",
"localhost",
"127.0.0.1",
"invenio-dev01.tugraz.at",
"invenio-test.tugraz.at",
"repository.tugraz.at",
]
"""Allowed Hosts"""
APP_DEFAULT_SECURE_HEADERS = {
"content_security_policy": {
"default-src": [
@@ -247,7 +236,7 @@ password from ``users.yaml`` will be used. If that is also absent, a password
will be generated randomly.
"""
RDM_RECORDS_DOI_DATACITE_FORMAT = "{prefix}/{id}"
DATACITE_FORMAT = "{prefix}/{id}"
"""Customize the generated DOI string."""
# Invenio-app-rdm
@@ -325,3 +314,27 @@ reopened regularly.
See https://docs.sqlalchemy.org/en/latest/core/engines.html.
"""
# Redis (cache)
# ========
# Cache or Redis configurations
RATELIMIT_AUTHENTICATED_USER = "25000 per hour;1000 per minute"
"""Increase defaults for authenticated users."""
RATELIMIT_GUEST_USER = "5000 per hour;500 per minute"
"""Increase defaults for guest users."""
# OAI-PMH
# =======
# See https://github.com/inveniosoftware/invenio-oaiserver/blob/master/invenio_oaiserver/config.py
OAISERVER_ID_PREFIX = "repository.tugraz.at"
"""The prefix that will be applied to the generated OAI-PMH ids."""
OAISERVER_ADMIN_EMAILS = [
'oai@repository.tugraz.at',
]
"""The e-mail addresses of administrators of the repository.
It **must** include one or more instances.
"""

View File

@@ -12,4 +12,4 @@ This file is imported by ``invenio_config_tugraz.__init__``,
and parsed by ``setup.py``.
"""
__version__ = "0.6.2"
__version__ = "0.8.0"

View File

@@ -33,21 +33,18 @@ def ui_blueprint(app):
@blueprint.before_app_first_request
def rank_higher():
"""Rank this modules blueprint higher than blueprint of security module."""
blueprints = current_app._blueprint_order
our_index = None
security_index = None
"""Rank this modules blueprint higher than blueprint of security module.
for index, bp in enumerate(blueprints):
if bp.name == "security":
security_index = index
if bp.name == "invenio_config_tugraz":
our_index = index
Needed in order to overwrite email templates.
if (security_index is not None) and (our_index > security_index):
temp = blueprints[security_index]
blueprints[security_index] = blueprints[our_index]
blueprints[our_index] = temp
Since the blueprints are in a dict and the order of insertion is
retained, popping and reinserting all items (except ours), ensures
our blueprint will be in front.
"""
bps = current_app.blueprints
for blueprint_name in list(bps.keys()):
if blueprint_name != "invenio_config_tugraz":
bps.update({blueprint_name: bps.pop(blueprint_name)})
return blueprint

View File

@@ -25,9 +25,9 @@ trap cleanup EXIT
python -m check_manifest --ignore ".*-requirements.txt"
python -m sphinx.cmd.build -qnNW docs docs/_build/html
python -m sphinx.cmd.build -qnN docs docs/_build/html
eval "$(docker-services-cli up --db ${DB:-postgresql} --search ${SEARCH:-elasticsearch} --cache ${CACHE:-redis} --env)"
python -m pytest
tests_exit_code=$?
python -m sphinx.cmd.build -qnNW -b doctest docs docs/_build/doctest
python -m sphinx.cmd.build -qnN -b doctest docs docs/_build/doctest
exit "$tests_exit_code"

View File

@@ -29,7 +29,7 @@ extras_require = {
"postgresql": [f"invenio-db[postgresql,versioning]{invenio_db_version}"],
"sqlite": [f"invenio-db[versioning]{invenio_db_version}"],
"docs": [
"Sphinx>=3,<3.4.2",
"Sphinx==4.2.0",
],
"tests": tests_require,
}
@@ -51,7 +51,7 @@ setup_requires = [
install_requires = [
# keep this in sync with invenioRDM release
"invenio-rdm-records>=0.32.2,<0.33.0",
"invenio-rdm-records>=0.34.4,<0.35.0",
"invenio-cache>=1.1.0"
]