Remove fail_if_plugins_in_metadata, part of #2248

pull/2257/head
Simon Willison 2024-02-01 14:44:16 -08:00
rodzic 4da581d09b
commit d4bc2b2dfc
4 zmienionych plików z 3 dodań i 31 usunięć

Wyświetl plik

@ -77,7 +77,6 @@ from .utils import (
parse_metadata,
resolve_env_secrets,
resolve_routes,
fail_if_plugins_in_metadata,
tilde_decode,
to_css_class,
urlsafe_components,
@ -336,16 +335,13 @@ class Datasette:
]
if config_dir and metadata_files and not metadata:
with metadata_files[0].open() as fp:
metadata = fail_if_plugins_in_metadata(
parse_metadata(fp.read()), metadata_files[0].name
)
metadata = parse_metadata(fp.read())
if config_dir and config_files and not config:
with config_files[0].open() as fp:
config = parse_metadata(fp.read())
self._metadata_local = fail_if_plugins_in_metadata(metadata or {})
self._metadata_local = metadata or {}
self.sqlite_extensions = []
for extension in sqlite_extensions or []:
# Resolve spatialite, if requested

Wyświetl plik

@ -33,7 +33,6 @@ from .utils import (
initial_path_for_datasette,
pairs_to_nested_config,
temporary_docker_directory,
fail_if_plugins_in_metadata,
value_as_boolean,
SpatialiteNotFound,
StaticMount,
@ -543,7 +542,7 @@ def serve(
metadata_data = None
if metadata:
metadata_data = fail_if_plugins_in_metadata(parse_metadata(metadata.read()))
metadata_data = parse_metadata(metadata.read())
config_data = None
if config:

Wyświetl plik

@ -1272,21 +1272,6 @@ def pairs_to_nested_config(pairs: typing.List[typing.Tuple[str, typing.Any]]) ->
return result
def fail_if_plugins_in_metadata(metadata: dict, filename=None):
"""If plugin config is inside metadata, raise an Exception"""
if metadata is not None and metadata.get("plugins") is not None:
suggested_extension = (
".yaml"
if filename is not None
and (filename.endswith(".yaml") or filename.endswith(".yml"))
else ".json"
)
raise Exception(
f'Datasette no longer accepts plugin configuration in --metadata. Move your "plugins" configuration blocks to a separate file - we suggest calling that datasette.{suggested_extension} - and start Datasette with datasette -c datasette.{suggested_extension}. See https://docs.datasette.io/en/latest/configuration.html for more details.'
)
return metadata
def make_slot_function(name, datasette, request, **kwargs):
from datasette.plugins import pm

Wyświetl plik

@ -883,14 +883,6 @@ def test_hook_forbidden(restore_working_directory):
)
def test_plugin_config_in_metadata():
with pytest.raises(
Exception,
match="Datasette no longer accepts plugin configuration in --metadata",
):
Datasette(memory=True, metadata={"plugins": {}})
@pytest.mark.asyncio
async def test_hook_handle_exception(ds_client):
await ds_client.get("/trigger-error?x=123")