Wykres commitów

598 Commity (include-vcs-ignore)

Autor SHA1 Wiadomość Data
Simon Willison 00ab954300
Added CSS class rows-and-columns to main table 2018-04-23 18:31:32 -07:00
Simon Willison f3f4295712
label_column now defined on the table-being-linked-to, fixes #234 2018-04-22 13:46:18 -07:00
Simon Willison f27cabbaf3
label_column option in metadata.json - closes #234 2018-04-22 10:53:16 -07:00
Simon Willison ea0a761303
Link to documentation from README 2018-04-20 17:20:56 -07:00
lsb a971718d2a Fix a typo (#232) 2018-04-20 17:19:07 -07:00
Simon Willison 05bdf53358
Added missing hyphen 2018-04-20 14:15:13 -07:00
Simon Willison ae02e9f4ac
Added datasette-cluster-map blog entry to news 2018-04-20 14:14:35 -07:00
Simon Willison 3a5d7951ce
Added Datasette 0.20 to news 2018-04-20 07:36:29 -07:00
Simon Willison 72a7ae6859
Datasette 0.20: static assets and templates for plugins 2018-04-20 07:32:02 -07:00
Simon Willison e2750c7cc0
Add col-X classes to HTML table on custom query page 2018-04-19 08:36:14 -07:00
Simon Willison 1e4c295012
Fixed out-dated template in documentation 2018-04-18 22:57:31 -07:00
Simon Willison b52171db1e
Plugins can now bundle custom templates, closes #224
Refs #14
2018-04-18 22:50:27 -07:00
Simon Willison b55809a1e2
Added /-/metadata /-/plugins /-/inspect, closes #225 2018-04-18 22:25:22 -07:00
Simon Willison 6e28ed447f
Thanks to #214 JavaScript is no longer 'soon' 2018-04-18 08:17:20 -07:00
Simon Willison 7581320823
Documentation for --install option, refs #223 2018-04-18 08:05:06 -07:00
Simon Willison 404fa2252b
datasette publish/package --install option, closes #223
Allows you to specify one or more additional packages to be installed,
useful for deploying plugins.
2018-04-18 07:55:36 -07:00
Simon Willison 2b344f6a34
Ran black against datasette/cli.py
https://pypi.org/project/black/

cli.py was getting a bit untidy due to all of the heavily annotated
click function methods - used black to clean it up and make it
easier to read.
2018-04-18 07:52:17 -07:00
Simon Willison f8f818711b
Formatting tweak 2018-04-17 21:30:58 -07:00
Simon Willison 4be6deb947
Fix for plugins in Python 3.5 (#222)
ModuleNotFoundError is not a thing in Python 3.5, so catch KeyError/ImportError instead.
2018-04-17 20:24:20 -07:00
Simon Willison 1c36d07dd4
New plugin hooks: extra_css_urls() and extra_js_urls()
Closes #214
2018-04-17 20:12:21 -07:00
Simon Willison ca588b6a30
Fixed example HTML in CSS docs 2018-04-17 19:35:03 -07:00
Simon Willison 0bb483ca5b
/-/static-plugins/PLUGIN_NAME/ now serves static/ from plugins
Refs #214
2018-04-17 19:32:48 -07:00
Simon Willison a5792a8c61
<th> now gets class="col-X" - plus added col-X documentation
Refs #209
2018-04-17 19:11:54 -07:00
Simon Willison dfb87d012c
Use to_css_class for table cell column classes
This ensures that columns with spaces in the name will still
generate usable CSS class names. Refs #209
2018-04-17 18:19:21 -07:00
Russ Garrett 136a70d887 Add column name classes to <td>s, make PK bold 2018-04-17 18:13:02 -07:00
Russ Garrett 0f782dd8df Additional test asserts 2018-04-17 18:13:02 -07:00
Russ Garrett 4586aa506a Don't duplicate simple primary keys in the link column
When there's a simple (single-column) primary key, it looks weird to
duplicate it in the link column.

This change removes the second PK column and treats the link column as
if it were the PK column from a header/sorting perspective.
2018-04-17 18:13:02 -07:00
Russ Garrett b231d4243d Correct escaping for HTML display of row links 2018-04-17 18:13:02 -07:00
Simon Willison aaf59db570
Longer time limit for test_paginate_compound_keys
It was failing intermittently in Travis - see #209
2018-04-17 18:09:48 -07:00
Simon Willison 5ebc7137d7
Use application/octet-stream for downloadable databses
I'd also like to send the Content-Length here but that's not currently
possible in Sanic - see bug report here:

https://github.com/channelcat/sanic/issues/1194
2018-04-17 17:31:54 -07:00
Simon Willison 1f384e662b
Updated PyPI classifiers 2018-04-17 17:30:46 -07:00
Simon Willison bf5ec2d611
Updated PyPI link to pypi.org 2018-04-16 19:24:36 -07:00
Simon Willison ba9bfa5831
Datasette 0.19: plugin preview (with release notes) 2018-04-16 19:12:21 -07:00
Simon Willison e7c769ef30
Working implementation of #216 which passes the tests
Reverted commit 5364fa7f33 (where I removed the
code that didn't work).

Added primary keys to order-by clause for sorting to get tests to pass
2018-04-16 18:41:55 -07:00
Simon Willison 5364fa7f33
Revert #216 until I can get tests to pass in Travis
Revert "Fix for _sort_desc=sortable_with_nulls test, refs #216"

This reverts commit 07fc2d113e.

Revert "Fixed #216 - paginate correctly when sorting by nullable column"

This reverts commit 2abe539a0f.
2018-04-16 17:53:37 -07:00
Simon Willison 07fc2d113e
Fix for _sort_desc=sortable_with_nulls test, refs #216 2018-04-16 17:05:03 -07:00
Simon Willison 2abe539a0f
Fixed #216 - paginate correctly when sorting by nullable column 2018-04-16 16:52:50 -07:00
Simon Willison 1652a9707e
Apache 2.0 license badge 2018-04-16 16:10:12 -07:00
Simon Willison 10a34f995c
Removed rogue print() call 2018-04-16 08:38:09 -07:00
Simon Willison 904f1c75a3
Initial documentation for plugins, closes #213
https://datasette.readthedocs.io/en/latest/plugins.html
2018-04-16 08:12:09 -07:00
Simon Willison b2955d9065
New --plugins-dir=plugins/ option (#212)
* New --plugins-dir=plugins/ option

New option causing Datasette to load and evaluate all of the Python files in
the specified directory and register any plugins that are defined in those
files.

This new option is available for the following commands:

    datasette serve mydb.db --plugins-dir=plugins/
    datasette publish now/heroku mydb.db --plugins-dir=plugins/
    datasette package mydb.db --plugins-dir=plugins/

* Unit tests for --plugins-dir=plugins/

Closes #211
2018-04-15 22:22:01 -07:00
Simon Willison 92396ae5ba
Better fix for setup.py version 2018-04-15 21:38:04 -07:00
Simon Willison 33c7c53ff8
Start of the plugin system, based on pluggy (#210)
Uses https://pluggy.readthedocs.io/ originally created for the py.test project

We're starting with two plugin hooks:

prepare_connection(conn)

This is called when a new SQLite connection is created. It can be used to register custom SQL functions.

prepare_jinja2_environment(env)

This is called with the Jinja2 environment. It can be used to register custom template tags and filters.

An example plugin which uses these two hooks can be found at https://github.com/simonw/datasette-plugin-demos or installed using `pip install datasette-plugin-demos`

Refs #14
2018-04-15 17:56:15 -07:00
Russ Garrett efbb4e8337 Return HTTP 405 on InvalidUsage rather than 500
This also stops it filling up the logs. This happens for HEAD requests
at the moment - which perhaps should be handled better, but that's a
different issue.
2018-04-14 11:00:38 -07:00
Simon Willison 8d394586f5
Added 0.18 to news 2018-04-14 09:04:38 -07:00
Simon Willison 43ae15c0d1
Releasing v0.18 - support for units!
Refs #203
2018-04-14 08:36:10 -07:00
Simon Willison 932e0a3f91
Don't attempt to deploy new tags to PyPI
This isn't working through Travis at the moment, so I'm disabling it and switching back to manual deploys.
2018-04-14 08:21:37 -07:00
Simon Willison c857608738
Merge "Support filtering with units" from #205 2018-04-14 08:17:09 -07:00
Simon Willison dd4491dd81
Update number of expected tables 2018-04-14 08:16:54 -07:00
Simon Willison 6b15a53cd3
Unit test for unlabelled foreign keys from #207 2018-04-14 08:00:54 -07:00