An open source multi-tool for exploring and publishing data
APACHE-2.0 License
Bot releases are hidden (Show)
Published by simonw over 4 years ago
The main focus of this release is a major upgrade to the register_output_renderer(datasette) plugin hook, which allows plugins to provide new output formats for Datasette such as datasette-atom and datasette-ics.
"can_render"
callback that controls if a suggested link to the output format is provided. (#581, #770)metadata.json
option for setting a custom default page size for specific tables and views, see Setting a custom page size. (#751)datasette publish
when running on operating systems where the /tmp
directory lives in a different volume, using a backport of the Python 3.8 shutil.copytree()
function. (#744)Published by simonw over 4 years ago
A small release which provides improved internal methods for use in plugins, along with documentation. See #685.
db.execute()
, see await db.execute(sql, ...).db.execute_against_connection_in_thread()
to db.execute_fn()
and made it a documented method, see await db.execute_fn(fn).results.first()
and results.single_value()
methods, plus documentation for the Results
class - see Results.Published by simonw over 4 years ago
You can now create custom pages within your Datasette instance using a custom template file. For example, adding a template file called templates/pages/about.html
will result in a new page being served at /about
on your instance. See the custom pages documentation for full details, including how to return custom HTTP headers, redirects and status codes. (#648)
Configuration directory mode (#731) allows you to define a custom Datasette instance as a directory. So instead of running the following:
$ datasette one.db two.db \
--metadata.json \
--template-dir=templates/ \
--plugins-dir=plugins \
--static css:css
You can instead arrange your files in a single directory called my-project
and run this:
$ datasette my-project/
Also in this release:
NOT LIKE
table filter: ?colname__notlike=expression
. (#750)/-/patterns
- e.g. https://latest.datasette.io/-/patterns. This is a page that shows every Datasette user interface component in one place, to aid core development and people building custom CSS themes. (#151)pragma_table_info(tablename)
are now allowed in Datasette SQL queries. (#761)content-type
of text/html; charset=utf-8"
. (#752)raw_path
value of None
, which should allow compatibilty with the Mangum adapter for running ASGI apps on AWS Lambda. Thanks, Colin Dellow. (#719)Published by simonw over 4 years ago
datasette publish now
, which used the the now-retired Zeit Now v1 hosting platform. A new plugin, datasette-publish-now, can be installed to publish data to Zeit (now Vercel) Now v2. (#710)extra_template_vars(request, view_name)
plugin hook was not receiving the correct view_name
. (#716)extra_template_vars()
plugin hook are now shown in the ?_context=1
debugging mode (see template_debug). (#693)datasette publish
bug where --plugin-secret
would over-ride plugin configuration in the provided metadata.json
file. (#724)Published by simonw over 4 years ago
"sort"
and "sort_desc"
for setting the default sort order for a table. See Setting a default sort order. (#702)await Request(scope, receive).post_vars()
method for accessing POST form variables. (#700)Published by simonw over 4 years ago
datasette publish cloudrun
now accepts an optional --memory=2Gi
flag for setting the Cloud Run allocated memory to a value other than the default (256Mi). (#694)Published by simonw over 4 years ago
scope["path"]
being a string rather than bytesPublished by simonw over 4 years ago
.execute_write()
and .execute_write_fn()
methods. Documentation. (#682)inspect
command now use the calculated count more effectively - thanks, Kevin Keogh. (#666)--reload
no longer restarts the server if a database file is modified, unless that database was opened immutable mode with -i
. (#494)?_searchmode=raw
option turns off escaping for FTS queries in ?_search=
allowing full use of SQLite’s FTS5 query syntax. (#676)Published by simonw over 4 years ago
datasette
object passed to plugins now has API documentation: Datasette class. (#576)datasette
: .add_database()
and .remove_database()
- documentation. (#671)prepare_connection()
plugin hook now takes optional datasette
and database
arguments - prepare_connection(conn, database, datasette). (#678)https://datasette.readthedocs.io/en/latest/changelog.html#v0-36
Published by simonw over 4 years ago
Datasette
class has a new render_template()
method which can be used by plugins to render templates using Datasette’s pre-configured Jinja templating library.-- comment
- thanks, Jay Graves (#653)https://datasette.readthedocs.io/en/latest/changelog.html#v0-35
Published by simonw over 4 years ago
_search=
queries are now correctly escaped using a new escape_fts()
custom SQL function. This means you can now run searches for strings like park.
without seeing errors. (#651)datasette publish cloudrun
has been updated to work even if the user has not installed the gcloud
beta components package. Thanks, Katie McLaughlin (#660)datasette package
now accepts a --port
option for specifying which port the resulting Docker container should listen on. (#661)https://datasette.readthedocs.io/en/stable/changelog.html#v0-34
Published by simonw almost 5 years ago
rowid
is now included in dropdown menus for filtering tables (#636)--static
option (#641)/-/threads
debug page--port 0
to listen on an available porttemplate_debug
setting for debugging templates, e.g. https://latest.datasette.io/fixtures/roadside_attractions?_context=1 (#654)https://datasette.readthedocs.io/en/latest/changelog.html#v0-33
Published by simonw almost 5 years ago
Datasette now renders templates using Jinja async mode. This makes it easy for plugins to provide custom template functions that perform asynchronous actions, for example the new datasette-template-sql plugin which allows custom templates to directly execute SQL queries and render their results. (#628)
https://datasette.readthedocs.io/en/latest/changelog.html#v0-32
Published by simonw almost 5 years ago
https://datasette.readthedocs.io/en/latest/changelog.html#v0-31-2
Published by simonw almost 5 years ago
datasette publish
now use python:3.8
base Docker image (#629)https://datasette.readthedocs.io/en/latest/changelog.html#v0-31-1
Published by simonw almost 5 years ago
This version adds compatibility with Python 3.8 and breaks compatibility with Python 3.5.
Full release notes: https://datasette.readthedocs.io/en/stable/changelog.html#v0-31
Published by simonw almost 5 years ago
Published by simonw almost 5 years ago
Published by simonw almost 5 years ago
Published by simonw about 5 years ago