229 rows where raw_author = "2946d096d0cdefdc017559e6b57e87658736e843" sorted by author_date descending

View and edit SQL

Suggested facets: raw_committer, committer, author_date (date), committer_date (date)

repo

author

sha message author_date ▲ committer_date raw_author raw_committer repo author committer
bc6a9b45646610f362b4287bc4110440991aa4d6 ?_where= parameter on table views, closes #429 From pull request #430 2019-04-13T01:37:22Z 2019-04-13T01:37:22Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
9cd3b44277e6a8ea9273bf659379ff0414e0b8ae Upgrade to Jinja2==2.10.1 (#426) 2019-04-10T23:13:30Z 2019-04-10T23:13:30Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
6f6d0ff2b41f1cacaf42287b1b230b646bcba9ee URL hashing is now off by default - closes #418 Prior to this commit Datasette would calculate the content hash of every database and redirect to a URL containing that hash, like so: https://v0-27.datasette.io/fixtures => https://v0-27.datasette.io/fixtures-dd88475 This assumed that all databases were opened in immutable mode and were not expected to change. This will be changing as a result of #419 - so this commit takes the first step in implementing that change by changing this default behaviour. Datasette will now only redirect hash-free URLs under two circumstances: * The new `hash_urls` config option is set to true (it defaults to false). * The user passes `?_hash=1` in the URL 2019-03-17T22:55:04Z 2019-03-17T22:55:04Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
e615d22c5564ea1f32abb086088b2700110be10a Support for numpy types, closes #11 (#12) 2019-02-24T04:02:19Z 2019-02-24T04:02:19Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f sqlite-utils 140912432 simonw 9599 web-flow 19864447
195a5b36349d0d24a6bbb758cebb719b6de303b6 Heroku --include-vcs-ignore (#407) Means `datasette publish heroku` can work under Travis, unlike this failure: https://travis-ci.org/simonw/fivethirtyeight-datasette/builds/488047550 ``` 2.25s$ datasette publish heroku fivethirtyeight.db -m metadata.json -n fivethirtyeight-datasette tar: unrecognized option '--exclude-vcs-ignores' Try 'tar --help' or 'tar --usage' for more information. ▸ Command failed: tar cz -C /tmp/tmpuaxm7i8f --exclude-vcs-ignores --exclude ▸ .git --exclude .gitmodules . > ▸ /tmp/f49440e0-1bf3-4d3f-9eb0-fbc2967d1fd4.tar.gz ▸ tar: unrecognized option '--exclude-vcs-ignores' ▸ Try 'tar --help' or 'tar --usage' for more information. ▸ The command "datasette publish heroku fivethirtyeight.db -m metadata.json -n fivethirtyeight-datasette" exited with 0. ``` The fix for that issue is to call the heroku command like this: heroku builds:create -a app_name --include-vcs-ignore 2019-02-06T04:15:46Z 2019-02-06T04:15:46Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
3a944d0c077c203277f13dd69387eb84b5c88d3e Run Travis tests against Python 3.8-dev (#5) 2019-01-26T02:37:54Z 2019-01-26T02:37:54Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f sqlite-utils 140912432 simonw 9599 web-flow 19864447
42b2b4b785e3163371e92a9cc085bc47e7c83107 Upgrade sqlite3 in Travis so we can test against FTS5 Using recipe from https://linuxhint.com/install-sqlite-ubuntu-linux-mint/ 2019-01-25T06:54:32Z 2019-01-25T06:54:32Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f sqlite-utils 140912432 simonw 9599 web-flow 19864447
a2bfcfc1b1c60dac3526364af17c2fa2f3d41a0a Fix some regex DeprecationWarnings (#392) 2018-12-29T02:22:27Z 2018-12-29T02:22:27Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
aae49fef3b75848628d824077ec063834e3e5167 Import pysqlite3 if available, closes #360 (#361) 2018-08-16T00:58:56Z 2018-08-16T00:58:56Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
8e2a313c1e831c465392c5cb1502d0f153d39431 Fixed failing FTS5 test, release as 0.6.1 2018-08-13T00:48:43Z 2018-08-13T00:48:43Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
594b25ef9f633dabdaca98b46dea9fbb82628166 Started a changelog, releasing 0.6 2018-08-13T00:46:22Z 2018-08-13T00:46:22Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
d1209a2c453311432dcc41966a81a39d895e9fae Use FTS4 when running the tests Because the version of sqlite3 running in Travis CI does not have FTS5 2018-08-13T00:33:13Z 2018-08-13T00:33:13Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
9fdf2c169caf544d56f6317afbed6879082be8b9 Documented Database(filepath) and in-memory database creation 2018-08-13T00:31:02Z 2018-08-13T00:31:02Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
fcc38b9ff2e4dbb680a4429002767f6df855674b Moved fixtures into conftest.py 2018-08-13T00:24:11Z 2018-08-13T00:25:39Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
02862be04c51e8ec6e29517d3c28b030627bb179 Default to FTS5 2018-08-13T00:21:55Z 2018-08-13T00:21:55Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
34a5c0e1e8d1e7e685b0ba73803d153552033aac Documented insert_all() and upsert() and upsert_all() Also re-titled main docs page to 'Python API' 2018-08-13T00:17:14Z 2018-08-13T00:17:14Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
9eacd30b1d6e3f1bd138fb330cfea4830197cb1d New column_order= parameter for setting column order 2018-08-08T23:06:49Z 2018-08-08T23:06:49Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
e1db8194e8c1d7f361fd0c1c3fc1b91d6aa920e5 Bump versions of pytest, pluggy and beautifulsoup4 (#358) 2018-08-08T01:11:12Z 2018-08-08T01:11:12Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
72644b6e3fc78ecf55b386854943ec3ad39f97bd Support method chaining, added .last_id for accessing lastrowid Also shipping as 0.5 2018-08-06T01:42:43Z 2018-08-06T01:42:43Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
4ac913224061f2dc4f673efab1a5ac6bc748854f render_cell(value) plugin hook, closes #352 New plugin hook for customizing the way cells values are rendered in HTML. The first full example of this hook in use is https://github.com/simonw/datasette-json-html 2018-08-05T00:14:56Z 2018-08-05T00:14:56Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
19e1057ead0c4434f456bafb4812de2812d51bf5 Documentation for create_view() 2018-08-02T15:26:38Z 2018-08-02T15:26:38Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
a86c3ee832e0b608f9881e40425d294f31802bc0 Added db.create_view(name, sql) method 2018-08-02T15:24:16Z 2018-08-02T15:24:16Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
741e8f7fe563e18fe9a12ac1ce38157e8c903505 Make .indexes compatible with older SQLite versions (#1) Older SQLite versions return a different set of columns from the PRAGMA we are using. 2018-08-02T15:17:29Z 2018-08-02T15:17:29Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f sqlite-utils 140912432 simonw 9599 web-flow 19864447
0aa28293adedc488eb9107dc52b5e9a124887fbd Fix compatibility with SQLite prior to 3.16.0 pragma_index_info() and pragma_index_list() were introduced in 3.16.0 but the version of SQLite running in Travis CI is earlier than that, hence the test failures: https://travis-ci.com/simonw/sqlite-utils/jobs/137617744 2018-08-01T15:29:53Z 2018-08-01T15:29:53Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
4427d2d96f7197e25acee85643bcf02e758b8b1e table.create_index(columns, index_name) method 2018-08-01T15:20:44Z 2018-08-01T15:20:44Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
70e1f831a00ec97b724187025e35338becd2309a Typo 2018-08-01T01:32:03Z 2018-08-01T01:32:03Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
c611ed80d2e9f721fc7848fd74e6e6baebe5adde .indexes property for introspecting indexes 2018-08-01T01:31:29Z 2018-08-01T01:31:29Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
e04f509c518af01db5f3174ed662c3ac50320f58 Added docs on storing JSON 2018-08-01T00:48:32Z 2018-08-01T00:48:32Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
515d362ad60c3dc16272c4fdca932cf0a0e9dafa .table_names and .tables properties plus expanded docs 2018-08-01T00:35:36Z 2018-08-01T00:35:36Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
f4907f6df58d822dfb67660b982a9081b39a06fb enable_fts(), populate_fts() and search() methods 2018-07-31T16:19:05Z 2018-07-31T16:19:20Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
c446e22f34eb56a454c57edf93824d2615b83c0e Moved fixtures to fixtures.py, added .schema test 2018-07-31T15:55:24Z 2018-07-31T15:55:24Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
f5418e13f2e435a42cd3611b28ec3c9ac02481da Release 0.3.1 to publish updated README to PyPI 2018-07-31T15:39:43Z 2018-07-31T15:39:43Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
e888bb122dadfbd937fc3893444a2edcb0b5b499 Added .schema property, improved docs, release 0.3 2018-07-31T15:33:52Z 2018-07-31T15:33:52Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
5deb65f0623bff03421f50d3c61f699b981ae18b Now you just 'from sqlite_utils import Database' Plus fixed ad_id in the Russian ads example in the docs 2018-07-31T03:30:23Z 2018-07-31T03:30:23Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
b69f8b6c856adff577fe6a1816359bb00e82ffd1 table.count property, plus made a start on table documentation 2018-07-31T03:24:35Z 2018-07-31T03:24:35Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
0d63128c40aec15a958dddf181c13e0db1c7908b Preparing v0.2, first release to PyPI 2018-07-29T00:42:41Z 2018-07-29T00:42:41Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
29c897bb5649c35463618a32d095f72755aae8c6 Started the docs with a meaty example 2018-07-28T23:52:07Z 2018-07-28T23:52:07Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
e51f36d3ebb28378d0938aabb80a432720269bce Added table.foreign_keys property, fixed bug in foreign key creation 2018-07-28T22:41:18Z 2018-07-28T22:41:18Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
95bce37ad3447d3c265316fa029fc09b7bbdae11 Store list/dict/tuple values as JSON strings 2018-07-28T22:20:29Z 2018-07-28T22:20:29Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
acea54877ca65f08cef4f7260bd7f7fcabe31b90 Create table now works for pure m2m where both rows are foreign keys 2018-07-28T22:06:59Z 2018-07-28T22:06:59Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
56e29158fe5174a5b06d0a58090da7fb4624ed60 Don't run black test on Python 3.7 It breaks on that version - see https://github.com/ambv/black/issues/425 But that's OK, we only need it to run onder one version anyway. 2018-07-28T18:18:40Z 2018-07-28T18:18:40Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
501618d0d519f808e54210f3c54420e5559a9343 Ensure black is correctly installed for tests 2018-07-28T14:36:43Z 2018-07-28T14:36:43Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
3c50a3600d0975b84d98c93bb2336a790afc6aca Unit test for black-approved coding style 2018-07-28T14:29:20Z 2018-07-28T14:29:20Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
03e3f7d6486123bf3eb852ad007d9761475f138c Configured Travis CI 2018-07-28T13:48:53Z 2018-07-28T13:48:53Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
bd71be32abead38ec0b69695347219024efea0fe Initial project layout + database table creation tools 2018-07-28T13:43:18Z 2018-07-28T13:46:17Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
dbbe707841973b50a76d2703003ae2c40e7ad1fd publish_subcommand hook + default plugins mechanism, used for publish heroku/now (#349) This change introduces a new plugin hook, publish_subcommand, which can be used to implement new subcommands for the "datasette publish" command family. I've used this new hook to refactor out the "publish now" and "publish heroku" implementations into separate modules. I've also added unit tests for these two publishers, mocking the subprocess.call and subprocess.check_output functions. As part of this, I introduced a mechanism for loading default plugins. These are defined in the new "default_plugins" list inside datasette/app.py Closes #217 (Plugin support for datasette publish) Closes #348 (Unit tests for "datasette publish") Refs #14, #59, #102, #103, #146, #236, #347 2018-07-26T05:15:59Z 2018-07-26T05:15:59Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
2f34da0ab2594d917e14fd0dd90ad07872941b8d Initial 2018-07-14T03:56:21Z 2018-07-14T03:56:21Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 sqlite-utils 140912432 simonw 9599 simonw 9599
47e689a89b3f5f0969595b17d2ec59ea3caffb3b Speed up Travis by reusing pip wheel cache across builds (#324) * Cache pip wheels between runs in Travis, refs #323 * Run pytest manually - "python setup.py test" appeared to still download a bunch of stuff: https://travis-ci.org/simonw/datasette/jobs/395306188 * Use extras_require so pip can install test dependencies: https://github.com/pypa/pip/issues/1197#issuecomment-228939212 2018-06-24T01:03:46Z 2018-06-24T01:03:46Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
fc3660cfad7668dbce6ead12766e048fc1f78b11 Streaming mode for downloading all rows as a CSV (#315) * table.csv?_stream=1 to download all rows - refs #266 This option causes Datasette to serve ALL rows in the table, by internally following the _next= pagination links and serving everything out as a stream. Also added new config option, allow_csv_stream, which can be used to disable this feature. * New config option max_csv_mb limiting size of CSV export 2018-06-18T03:21:02Z 2018-06-18T03:21:02Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
28a52fcffb869f5e83ca2fad53738dc25eec425d Set theme jekyll-theme-architect 2018-05-24T16:56:21Z 2018-05-24T16:56:21Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
3d9baf3c2f2f745e6949973f18480092f189116c Set theme jekyll-theme-leap-day 2018-05-24T16:55:19Z 2018-05-24T16:55:19Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
7f44d31782260f859af1de68ac9db29f72cc6d84 Link to register-of-members-interests tutorial 2018-04-25T17:40:48Z 2018-04-25T17:40:48Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
ea0a761303d84bd73f54a1acedc45b01c38b2da0 Link to documentation from README 2018-04-21T00:20:56Z 2018-04-21T00:20:56Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
05bdf53358ec6ea81a7dce17290f3db0cd94d23d Added missing hyphen 2018-04-20T21:15:13Z 2018-04-20T21:15:13Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
ae02e9f4acc77019075c0eac9c3a0e96e50c195f Added datasette-cluster-map blog entry to news 2018-04-20T21:14:35Z 2018-04-20T21:14:35Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
f8f818711b622ec0ac11834a11e214f19c1590c5 Formatting tweak 2018-04-18T04:30:58Z 2018-04-18T04:30:58Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
4be6deb94776744071311777f0b18efb993c0cfa Fix for plugins in Python 3.5 (#222) ModuleNotFoundError is not a thing in Python 3.5, so catch KeyError/ImportError instead. 2018-04-18T03:24:20Z 2018-04-18T03:24:20Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
bf5ec2d61148f9852441934dd206b3b1c07a512f Updated PyPI link to pypi.org 2018-04-17T02:24:36Z 2018-04-17T02:24:36Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
1652a9707e325b387ab9550e78eefd48029be44f Apache 2.0 license badge 2018-04-16T23:10:12Z 2018-04-16T23:10:12Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
b2955d9065ea019500c7d072bcd9d49d1967f051 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-16T05:22:01Z 2018-04-16T05:22:01Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
33c7c53ff87c25445c68088ede49d062d9c31fe8 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-16T00:56:15Z 2018-04-16T00:56:15Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
8d394586f55bc4b8ab70476968d08fb6ec8339e5 Added 0.18 to news 2018-04-14T16:04:38Z 2018-04-14T16:04:38Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
932e0a3f91e4cee92b0e30c528300ec1d348d26c 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-14T15:21:37Z 2018-04-14T15:21:37Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
dd4491dd8112d70d96d73f8f1d12b58cb42fe1bd Update number of expected tables 2018-04-14T15:03:41Z 2018-04-14T15:16:54Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 13ae486343ea6454a93114c6f558ffea2f2c6874 datasette 107914493 simonw 9599 simonw 9599
bfb4e45a7bcb880758dbc18f66258de26c1d1904 Datasette Publish in readme 2018-04-11T14:43:28Z 2018-04-11T14:43:28Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
67982b6ecb89485ce26d684f2d038aad4d954d7c Added Datasette 0.15 to news 2018-04-09T16:01:03Z 2018-04-09T16:01:03Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
0abd3abacb309a2bd5913a7a2df4e9256585b1bb New ?_shape=objects/object/lists param for JSON API (#192) New _shape= parameter replacing old .jsono extension Now instead of this: /database/table.jsono We use the _shape parameter like this: /database/table.json?_shape=objects Also introduced a new _shape called 'object' which looks like this: /database/table.json?_shape=object Returning an object for the rows key: ... "rows": { "pk1": { ... }, "pk2": { ... } } Refs #122 2018-04-03T14:52:54Z 2018-04-03T14:52:54Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
0e5f51adfeff24a120bbdf0e5ac5669b18124400 Three more news items 2018-03-30T07:03:45Z 2018-03-30T07:03:45Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
56623e48da5412b25fb39cc26b9c743b684dd968 News: Datasette Publish 2018-01-17T15:50:10Z 2018-01-17T15:50:10Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
4f08fc092f59b434c11f77b6fb2d29b3255227e5 Updated news 2017-12-12T16:52:19Z 2017-12-12T16:52:19Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
702829f808994d49f11612b35035cfa6842cd91b Added Datasette 0.14: customization edition to news 2017-12-10T02:10:30Z 2017-12-10T02:10:30Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
6bdfcf60760c27e29ff34692d06e62b36aeecc56 Added Heroku to README, updated --help output examples Refs #157 2017-12-09T18:50:08Z 2017-12-09T18:50:08Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
06645f2e267b16d0c193bb1d1b7ca0cb67227c43 Formatting tweak 2017-12-09T18:41:20Z 2017-12-09T18:41:20Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
3459ab91665d956ff6a25f8e94dcb9c325dd10e5 Formatting fixes 2017-12-09T18:33:14Z 2017-12-09T18:33:14Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
2cc14a236c601ee2a6b81d8580e70989574baec9 Ditched short form options for --static and --template-dir The -t clashes with the package --tag option 2017-12-09T03:47:50Z 2017-12-09T03:47:50Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
446f4b832272b2286f6f65af19714eb64afb7aa6 Upgrade to Sanic 0.7.0 (#168) https://github.com/channelcat/sanic/releases/tag/0.7.0 2017-12-09T03:00:33Z 2017-12-09T03:00:33Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
67ad77a307c7c264c68d768fa8290997e3b75e77 Re-ordered docs index page 2017-12-06T18:27:50Z 2017-12-06T18:27:50Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
f9c32e717f67b55e5d51bb896adc2dcec4489c2d Linked to csvs-to-sqlite 2017-12-06T15:09:56Z 2017-12-06T15:09:56Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
f2dece01dba6355a91214ca163561a451941499f Documented _sql_time_limit_ms querystring argument Closes #163 2017-12-06T15:06:56Z 2017-12-06T15:06:56Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
1ecac1a4389b85f7acfad513bf6ab20899862d0b Fix display of select boxes in Firefox 2017-12-02T20:53:08Z 2017-12-02T20:53:08Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
23a45758185c99b6c3b8cf07d687aa5281282196 Added News section to Readme 2017-11-25T21:40:43Z 2017-11-25T21:40:43Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
efb82da927386a217ec3d4464251eb65efe3924c datasette => Datasette 2017-11-25T03:46:24Z 2017-11-25T03:46:24Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
0d3479ba320e5a5d15f029838744c5219a9e2987 Release notes for 0.13 2017-11-25T03:32:24Z 2017-11-25T03:32:24Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
f96e55bce55d26c4d5b198edc536e1b8e9bbea43 Fix pytest version conflict https://travis-ci.org/simonw/datasette/jobs/305929426 pkg_resources.VersionConflict: (pytest 3.2.1 (/home/travis/virtualenv/python3.5.3/lib/python3.5/site-packages), Requirement.parse('pytest==3.2.3')) 2017-11-22T20:15:29Z 2017-11-22T20:17:51Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
fa8eb0bf1b113ab17ede9cd107b7c3bd5cde39c3 Run unit tests against both Python 3.5 and 3.6 2017-11-22T17:43:52Z 2017-11-22T17:43:52Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
e47117ce1d15f11246a3120aa49de70205713d05 Add publish to heroku support (merge pull request #104 from jacobian) datasette publish heroku mydb.db 2017-11-21T20:55:04Z 2017-11-21T20:55:04Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
1b04662585ea1539014bfbd616a8112b650d5699 Table views now show expanded foreign key references, if possible If a table has foreign key columns, and those foreign key tables have label_columns, the TableView will now query those other tables for the corresponding values and display those values as links in the corresponding table cells. label_columns are currently detected by the inspect() function, which looks for any table that has just two columns - an ID column and one other - and sets the label_column to be that second non-ID column. 2017-11-18T03:09:32Z 2017-11-18T03:15:49Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
6a007f632258e6cfd3c5e9e229683deb0efd87be Row pages show incoming foreign key relationships 2017-11-17T18:15:44Z 2017-11-18T03:15:49Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
7feb746efe8c5ed80f477475acc546370bae89e4 Fixed bug where 0 values were showing up blank 2017-11-17T18:14:01Z 2017-11-18T03:15:49Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
0b702f3679a2ffd4e3efb5c34b9fe30221172ccb Fixed weird edge-case with foreign key detection It turns out it is possible for a SQLite table to define a foreign key relationship to a table that does not actually exist We should still be able to handle these databases. 2017-11-17T16:18:26Z 2017-11-17T16:18:26Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
45e502aace6cc1198cc5f9a04d61b4a1860a012b Added unit tests for inspect() foreign key detection Used them to fix a bug with it. Refs #85 2017-11-17T16:08:11Z 2017-11-17T16:08:11Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
e16ca1169cc49fbb5b0325564d248becad3a4b7f Refactored table column/row display logic Simplified the template and made the way for upcoming foreign key work. Refs #85 Also fixed   bug on database page - closes #113 2017-11-17T15:39:36Z 2017-11-17T15:39:36Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
084350b0f1343d988928cae63cfedbeb6205e25e Switched to gather_request=False for Sanic tests Gets rid of those ugly _, response = lines. 2017-11-17T14:53:37Z 2017-11-17T14:53:37Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
f3445e2d13e2c38bfbf75f35c2aa3e50df0040f1 Install python3-dev rothar than python-dev 2017-11-17T14:18:49Z 2017-11-17T14:18:49Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
1a6cfcc10f9abcc743b45437996c7264cc2a57b2 Added a .dockerignore Figured this would be useful while testing out 03572ae3557 2017-11-17T14:18:23Z 2017-11-17T14:18:23Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
03572ae35573c2ea802a540624ce116f540ba1ac Allow --load-extension to be set via environment variable I tesed this by first building and running a container using the new Dockerfile from #114: docker build . docker run -it -p 8001:8001 6c9ca7e29181 /bin/sh Then I ran this inside the container itself: apt update && apt-get install wget -y \ && wget http://www.gaia-gis.it/spatialite-2.3.1/test-2.3.sqlite.gz \ && gunzip test-2.3.sqlite.gz \ && mv test-2.3.sqlite test23.sqlite \ && datasette -h 0.0.0.0 test23.sqlite I visited this URL to confirm I got an error due to spatialite not being loaded: http://localhost:8001/test23-c88bc35?sql=select+ST_AsText%28Geometry%29+from+HighWays+limit+1 Then I checked that loading it with `--load-extension` worked correctly: datasette -h 0.0.0.0 test23.sqlite \ --load-extension=/usr/lib/x86_64-linux-gnu/mod_spatialite.so Then, finally, I tested it with the new environment variable option: SQLITE_EXTENSIONS=/usr/lib/x86_64-linux-gnu/mod_spatialite.so \ datasette -h 0.0.0.0 test23.sqlite Running it with an invalid environment variable option shows an error: $ SQLITE_EXTENSIONS=/usr/lib/x86_64-linux-gnu/blah.so datasette \ -h 0.0.0.0 test23.sqlite Usage: datasette -h [OPTIONS] [FILES]... Error: Invalid value for "--load-extension": Path "/usr/lib/x86_64-linux-gnu/blah.so" does not exist. Closes #112 2017-11-17T14:13:35Z 2017-11-17T14:13:35Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
b9af49be6c68d6e551c1ae23132711f22cb7c63c Fix case for Sanic dependency On PyPI it has a capital letter: https://pypi.python.org/pypi/Sanic I think this is why the list of "Requires Distributions" on https://pypi.python.org/pypi/datasette links to all of the other dependencies but does not link to Sanic. 2017-11-17T13:26:05Z 2017-11-17T13:26:05Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
b7c4165346ee8b6a6fbd72d6ba2275a24a8a8ae3 Added --load-extension argument to datasette serve Allows loading of SQLite extensions. Refs #110. 2017-11-16T16:46:04Z 2017-11-16T16:48:49Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599
5bfb23b949a7f01e4dfc1d7ac698a6ec8e8c97fd Added Read The Docs badge Closes #109 2017-11-16T16:13:55Z 2017-11-16T16:13:55Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 GitHub cd792325681cbad9f663f2879d8b69f1edbb678f datasette 107914493 simonw 9599 web-flow 19864447
9e27b2a0ba45d92e198fcbac8641da41a62236b8 Add example of named parameter UI to the release notes 2017-11-16T16:09:07Z 2017-11-16T16:46:25Z Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 Simon Willison 2946d096d0cdefdc017559e6b57e87658736e843 datasette 107914493 simonw 9599 simonw 9599

Next page

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [commits] (
   [sha] TEXT PRIMARY KEY,
   [message] TEXT,
   [author_date] TEXT,
   [committer_date] TEXT,
   [raw_author] TEXT REFERENCES [raw_authors]([id]),
   [raw_committer] TEXT REFERENCES [raw_authors]([id]),
   [repo] INTEGER REFERENCES [repos]([id]),
   [author] INTEGER REFERENCES [users]([id]),
   [committer] INTEGER REFERENCES [users]([id])
);
CREATE INDEX [idx_commits_committer]
                ON [commits] ([committer]);
CREATE INDEX [idx_commits_author]
                ON [commits] ([author]);
CREATE INDEX [idx_commits_repo]
                ON [commits] ([repo]);
CREATE INDEX [idx_commits_raw_committer]
                ON [commits] ([raw_committer]);
CREATE INDEX [idx_commits_raw_author]
                ON [commits] ([raw_author]);