From 0d5cc20aeffa3537cfc9296d01ec24b9c6e23dcf Mon Sep 17 00:00:00 2001 From: Simon Willison Date: Sat, 9 Oct 2021 18:25:33 -0700 Subject: [PATCH] Revert "asyncio_run helper to deal with a 3.10 warning, refs #1482" This reverts commit 98dcabccbbf9c0800efa74df9b7d1fee81c3cd0c. --- datasette/cli.py | 13 ++++++++----- datasette/utils/__init__.py | 9 --------- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/datasette/cli.py b/datasette/cli.py index 95ee9495..22e2338a 100644 --- a/datasette/cli.py +++ b/datasette/cli.py @@ -14,7 +14,6 @@ from runpy import run_module import webbrowser from .app import Datasette, DEFAULT_SETTINGS, SETTINGS, SQLITE_LIMIT_ATTACHED, pm from .utils import ( - asyncio_run, StartupError, check_connection, find_spatialite, @@ -137,7 +136,9 @@ def cli(): @click.option("--inspect-file", default="-") @sqlite_extensions def inspect(files, inspect_file, sqlite_extensions): - inspect_data = asyncio_run(inspect_(files, sqlite_extensions)) + app = Datasette([], immutables=files, sqlite_extensions=sqlite_extensions) + loop = asyncio.get_event_loop() + inspect_data = loop.run_until_complete(inspect_(files, sqlite_extensions)) if inspect_file == "-": sys.stdout.write(json.dumps(inspect_data, indent=2)) else: @@ -554,10 +555,10 @@ def serve( return ds # Run the "startup" plugin hooks - asyncio_run(ds.invoke_startup()) + asyncio.get_event_loop().run_until_complete(ds.invoke_startup()) # Run async soundness checks - but only if we're not under pytest - asyncio_run(check_databases(ds)) + asyncio.get_event_loop().run_until_complete(check_databases(ds)) if get: client = TestClient(ds) @@ -577,7 +578,9 @@ def serve( if open_browser: if url is None: # Figure out most convenient URL - to table, database or homepage - path = asyncio_run(initial_path_for_datasette(ds)) + path = asyncio.get_event_loop().run_until_complete( + initial_path_for_datasette(ds) + ) url = f"http://{host}:{port}{path}" webbrowser.open(url) uvicorn_kwargs = dict( diff --git a/datasette/utils/__init__.py b/datasette/utils/__init__.py index 1b7bfe05..70ac8976 100644 --- a/datasette/utils/__init__.py +++ b/datasette/utils/__init__.py @@ -1089,12 +1089,3 @@ async def derive_named_parameters(db, sql): return [row["p4"].lstrip(":") for row in results if row["opcode"] == "Variable"] except sqlite3.DatabaseError: return possible_params - - -def asyncio_run(coro): - if hasattr(asyncio, "run"): - # Added in Python 3.7 - return asyncio.run(coro) - else: - loop = asyncio.get_event_loop() - return loop.run_until_complete(coro)