From 6be3cbdcbf8705faf2407c121490f0b3a4f5d8b9 Mon Sep 17 00:00:00 2001 From: Christophe Benz Date: Mon, 24 Jun 2019 14:10:41 +0200 Subject: [PATCH] Don't fail if error loading catalog --- CHANGELOG.md | 6 ++++++ validata_ui/VERSION | 2 +- validata_ui/__init__.py | 10 ++++++++-- validata_ui/views.py | 1 + 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f667b0e..cc32d75 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## 0.2.2 + +Non-breaking changes: + +- Don't fail if error loading catalog + ## 0.2.1 Non-breaking changes: diff --git a/validata_ui/VERSION b/validata_ui/VERSION index 0c62199..ee1372d 100644 --- a/validata_ui/VERSION +++ b/validata_ui/VERSION @@ -1 +1 @@ -0.2.1 +0.2.2 diff --git a/validata_ui/__init__.py b/validata_ui/__init__.py index 8b19048..c58a03a 100644 --- a/validata_ui/__init__.py +++ b/validata_ui/__init__.py @@ -8,11 +8,12 @@ from urllib.parse import quote_plus import cachecontrol import flask import jinja2 -import opendataschema import pkg_resources import requests import tableschema +import opendataschema + from . import config log = logging.getLogger(__name__) @@ -51,7 +52,12 @@ class SchemaCatalogRegistry: def build_schema_catalog(self, name): if name in self.url_map: catalog_url = self.url_map[name] - return opendataschema.SchemaCatalog(catalog_url, session=self.session) + try: + catalog = opendataschema.SchemaCatalog(catalog_url, session=self.session) + except requests.exceptions.RequestException as exc: + log.exception(exc) + return None + return catalog return None diff --git a/validata_ui/views.py b/validata_ui/views.py index e14b834..8407bb9 100644 --- a/validata_ui/views.py +++ b/validata_ui/views.py @@ -427,6 +427,7 @@ def homepage_config_with_schema_metadata(ui_config): section_name = section['name'] schema_catalog = get_schema_catalog(section_name) if schema_catalog is None: + section['catalog'] = [] continue schema_list = [] for ref in schema_catalog.references: -- GitLab