Commit graph

953 commits

Author SHA1 Message Date
Simon Willison
d3ea367131 Release 0.59a2
Refs #942, #1421, #1423, #1431, #1443, #1446, #1449
2021-08-27 18:55:54 -07:00
Simon Willison
30c18576d6 register_commands() plugin hook, closes #1449 2021-08-27 18:39:42 -07:00
Simon Willison
3655bb49a4 Better default help text, closes #1450 2021-08-27 17:49:03 -07:00
Simon Willison
92a99d969c Added not-footer wrapper div, refs #1446 2021-08-24 11:13:42 -07:00
Simon Willison
adb5b70de5 Show count of facet values if ?_facet_size=max, closes #1423 2021-08-16 11:56:32 -07:00
Simon Willison
2883098770 Fixed config_dir mode, refs #1432 2021-08-12 22:17:40 -07:00
Simon Willison
bbc4756f9e
Settings fix, refs #1433 2021-08-12 20:54:25 -07:00
Simon Willison
ca4f83dc7b Rename config= to settings=, refs #1432 2021-08-12 18:10:36 -07:00
Simon Willison
77f46297a8 Rename --help-config to --help-settings, closes #1431 2021-08-12 18:01:57 -07:00
Simon Willison
e837095ef3
Column metadata, closes #942 2021-08-12 16:53:23 -07:00
Simon Willison
b1fed48a95 derive_named_parameters falls back to regex on SQL error, refs #1421 2021-08-08 20:26:08 -07:00
Simon Willison
fc4846850f New way of deriving named parameters using explain, refs #1421 2021-08-08 20:21:13 -07:00
Simon Willison
ad90a72afa Release 0.59a1
Refs #1425
2021-08-08 18:13:03 -07:00
Simon Willison
a390bdf9ce Stop using firstresult=True on render_cell, refs #1425
See https://github.com/simonw/datasette/issues/1425#issuecomment-894883664
2021-08-08 17:38:42 -07:00
Simon Willison
3bb6409a6c render_cell() can now return an awaitable, refs 2021-08-08 16:05:00 -07:00
Simon Willison
61505dd0c6 Release 0.59a0
Refs #1404, #1405, #1416, #1420, #1422
2021-08-06 22:40:07 -07:00
Simon Willison
a21853c9da Fix for rich.console sometimes not being available, refs #1416 2021-08-06 22:17:36 -07:00
Simon Willison
66e143c76e New hide_sql canned query option, refs #1422 2021-08-06 22:17:36 -07:00
Simon Willison
b7037f5ece Bit of breathing space on https://latest.datasette.io/fixtures/pragma_cache_size 2021-08-06 22:17:36 -07:00
Simon Willison
a1f3830356 --cpu option for datasette publish cloudrun, closes #1420 2021-08-03 22:20:50 -07:00
Simon Willison
cd8b7bee8f Run codespell against datasette source code too, refs #1417 2021-08-03 10:03:48 -07:00
Simon Willison
54b6e96ee8 Use optional rich dependency to render tracebacks, closes #1416 2021-08-03 09:12:48 -07:00
Simon Willison
4adca0d850 No hidden SQL on canned query pages, closes #1411 2021-07-31 17:58:11 -07:00
Simon Willison
eccfeb0871 register_routes() plugin hook datasette argument, closes #1404 2021-07-26 16:16:46 -07:00
Simon Willison
c73af5dd72 Release 0.58.1
Refs #1231, #1396
2021-07-16 12:50:06 -07:00
Simon Willison
c00f29affc
Fix for race condition in refresh_schemas(), closes #1231 2021-07-16 12:44:58 -07:00
Simon Willison
dd5ee8e668 Removed some unused imports
I found these with:

    flake8 datasette | grep unus
2021-07-15 23:26:12 -07:00
Simon Willison
e27dd7c12c Release 0.58
Refs #1365, #1371, #1377, #1384, #1387, #1388, #1389, #1394
2021-07-14 17:33:04 -07:00
Simon Willison
a6c8e7fa4c Big performance boost for faceting, closes #1394 2021-07-14 17:05:43 -07:00
Simon Willison
180c7a5328 --uds option for binding to Unix domain socket, closes #1388 2021-07-10 16:37:30 -07:00
Simon Willison
83f6799a96 searchmode: raw table metadata property, closes #1389 2021-07-10 11:33:08 -07:00
Simon Willison
ea627baccf Removed fallback parameter from get_metadata, refs #1384 2021-06-26 17:02:42 -07:00
Brandon Roberts
baf986c871
New get_metadata() plugin hook for dynamic metadata
The following hook is added:

    get_metadata(
      datasette=self, key=key, database=database, table=table,
      fallback=fallback
    )

This gets called when we're building our metdata for the rest
of the system to use. We merge whatever the plugins return
with any local metadata (from metadata.yml/yaml/json) allowing
for a live-editable dynamic Datasette.

As a security precation, local meta is *not* overwritable by
plugin hooks. The workflow for transitioning to live-meta would
be to load the plugin with the full metadata.yaml and save.
Then remove the parts of the metadata that you want to be able
to change from the file.

* Avoid race condition: don't mutate databases list

This avoids the nasty "RuntimeError: OrderedDict mutated during
iteration" error that randomly happens when a plugin adds a
new database to Datasette, using `add_database`. This change
makes the add and remove database functions more expensive, but
it prevents the random explosion race conditions that make for
confusing user experience when importing live databases.

Thanks, @brandonrobertz
2021-06-26 15:24:54 -07:00
Simon Willison
ff17970ed4 Release 0.58a1
Refs #1365, #1377
2021-06-24 09:24:59 -07:00
Simon Willison
b1fd24ac9f skip_csrf(datasette, scope) plugin hook, refs #1377 2021-06-23 15:40:09 -07:00
Simon Willison
4a3e8561ab Default 405 for POST, plus tests 2021-06-23 15:40:09 -07:00
Chris Amico
a6c55afe8c
Ensure db.path is a string before trying to insert into internal database (#1370)
Thanks, @eyeseast
2021-06-21 08:57:38 -07:00
Simon Willison
cd7678fde6 Release 0.58a0
Refs #1371
2021-06-09 21:51:14 -07:00
Simon Willison
d23a267138 Make request available to menu plugin hooks, closes #1371 2021-06-09 21:45:24 -07:00
Simon Willison
a3faf37883 Release 0.57.1
Refs #1364, #1367
2021-06-08 09:26:45 -07:00
Simon Willison
f4c5777c7e Fix visual glitch in nav menu, closes #1367 2021-06-07 11:24:14 -07:00
Simon Willison
03ec71193b Don't truncate list of columns on /db page, closes #1364 2021-06-06 15:07:45 -07:00
Simon Willison
58746d3c51 Release 0.57
Refs #263, #615, #619, #1238, #1257, #1305, #1308, #1320, #1332, #1337, #1349, #1353, #1359, #1360
2021-06-05 15:06:55 -07:00
Simon Willison
8f311d6c1d Correctly escape output of ?_trace, refs #1360 2021-06-05 15:03:38 -07:00
Simon Willison
ff29dd55fa ?_trace=1 now depends on trace_debug setting, closes #1359 2021-06-05 13:18:37 -07:00
Simon Willison
a634121525
Make custom pages compatible with base_url setting
Closes #1238

- base_url no longer causes custom page routing to fail
- new route_path key in request.scope storing the path that was used for routing with the base_url prefix stripped
- TestClient used by tests now avoids accidentally double processing of the base_url prefix
2021-06-05 11:59:54 -07:00
Simon Willison
6e9b07be92 More inclusive language 2021-06-02 21:45:03 -07:00
Guy Freeman
0f41db1ba8
Avoid error sorting by relationships if related tables are not allowed
Refs #1306
2021-06-01 21:25:27 -07:00
Simon Willison
f40d1b99d6 Don't show '0 results' on error page, refs #619 2021-06-01 21:09:10 -07:00
Simon Willison
ea5b237800 Show error message on bad query, closes #619 2021-06-01 20:59:29 -07:00