{"sha": "2fd871a9063fd0e1bc60ddb11756c6954460dfc0", "message": "Drop support for Python 3.7, refs #2097", "author_date": "2023-07-08T18:40:19Z", "committer_date": "2023-07-08T18:40:19Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3001eec66a7ec2ba91f5c0acd7cf3c0b79ab2c00", "message": "ds_client for test_csv.py and test_canned_queries.py, refs #1959", "author_date": "2022-12-15T22:24:39Z", "committer_date": "2022-12-17T21:47:55Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "30255055150d7bc0affc8156adc18295495020ff", "message": "functools.wraps to help investigate #1517", "author_date": "2021-11-19T03:19:43Z", "committer_date": "2021-11-19T03:19:43Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "303c6c733d95a6133558ec1b468f5bea5827d0d2", "message": "Fix for incorrectly handled _facet_size=max, refs #1804", "author_date": "2022-09-06T18:05:00Z", "committer_date": "2022-09-06T18:05:00Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "304e7b1d9fd904ae1c35600bc03662eb90eeeae0", "message": "Mechanism for creating custom pages using templates\n\nCloses #648", "author_date": "2020-04-26T18:46:43Z", "committer_date": "2020-04-26T18:46:43Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "306e1c6ac4f00cc25d676a6ee660938f5b27427c", "message": "Broke up test_app into test_api and test_html", "author_date": "2017-12-15T12:04:17Z", "committer_date": "2017-12-15T12:08:24Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "308bcc8805236b8eb5a08d8045c84f68bd0ddf0e", "message": "Fixed test_permissions_debug", "author_date": "2020-06-12T00:25:12Z", "committer_date": "2020-06-12T00:25:12Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "309d7191a1e4e321b4f44345105a696001d65593", "message": "Fixed broken rST link", "author_date": "2020-08-12T05:11:08Z", "committer_date": "2020-08-12T05:11:08Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "30a8132d58a89fed0e034e058b62fab5180fae0f", "message": "Docs for authentication + canned query permissions, refs #800\n\nCloses #786", "author_date": "2020-06-06T18:18:46Z", "committer_date": "2020-06-06T18:18:46Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "30b28c8367a9c6870386ea10a202705b40862457", "message": "Release 1.0a5\n\nRefs #2093, #2102, #2153, #2156, #2157", "author_date": "2023-08-29T17:17:54Z", "committer_date": "2023-08-29T17:17:54Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "30b6f71b306a43605c99bef79302ed5cb22d1924", "message": "Updated release notes with #653", "author_date": "2020-02-05T02:17:30Z", "committer_date": "2020-02-05T02:17:47Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "30b98e4d2955073ca2bca92ca7b3d97fcd0191bf", "message": "Single, not double quotes - refs #940", "author_date": "2020-09-14T02:47:21Z", "committer_date": "2020-09-14T02:47:21Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "30c18576d603366dc3bd83ba50de1b7e70844430", "message": "register_commands() plugin hook, closes #1449", "author_date": "2021-08-28T01:39:42Z", "committer_date": "2021-08-28T01:39:42Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "30e5f0e67c38054a8087a2a4eae3fc4d1779af90", "message": "Documented internals used by datasette-hashed-urls\n\nCloses #1663", "author_date": "2022-03-17T21:30:02Z", "committer_date": "2022-03-17T21:30:02Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "30e64c8d3b3728a86c3ca42a75322cc3feb5b0c8", "message": "Use f-strings in place of .format()\n\nCode transformed like so:\r\n\r\n pip install flynt\r\n flynt .\r\n black .", "author_date": "2020-11-15T23:24:22Z", "committer_date": "2020-11-15T23:24:22Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "30f1a0705bc9ca09411479f4cf0103d591c2cc44", "message": "ds_client for test_plugins.py, refs #1959", "author_date": "2022-12-16T17:25:37Z", "committer_date": "2022-12-17T21:47:55Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "310c3a3e059b89d05a38e373744928c1b54e54db", "message": "New datasette.urls URL builders, refs #904", "author_date": "2020-10-20T00:33:59Z", "committer_date": "2020-10-20T00:33:59Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3159263f05ac4baf968929d59384d9223a539071", "message": "New --setting to replace --config, closes #992", "author_date": "2020-11-24T20:01:47Z", "committer_date": "2020-11-24T20:01:47Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "31a5d8fa77be68d4f837f0a80a611675dce49f4b", "message": "Bump aiohttp to fix compatibility with Python 3.7\n\nTests failed here: https://travis-ci.org/simonw/datasette/jobs/403223333", "author_date": "2018-07-12T17:41:20Z", "committer_date": "2018-07-12T18:07:37Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "2946d096d0cdefdc017559e6b57e87658736e843", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "31d5c4ec05e27165283f0f0004c32227d8b78df8", "message": "Contraction - Google and Microsoft styleguides like it\n\nI was trying out https://github.com/errata-ai/vale", "author_date": "2023-09-06T02:43:01Z", "committer_date": "2023-09-06T02:43:01Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "31d6a0bc5e0b8641b67c85ae6b7b5e0719acf2fe", "message": "Applied Black, refs #1922", "author_date": "2022-11-30T23:17:39Z", "committer_date": "2022-11-30T23:17:39Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "31f36e1b97ccc3f4387c80698d018a69798b6228", "message": "Added some guidelines\n\nMainly to remind me that master needs to be releasable at all times!", "author_date": "2019-04-20T18:32:40Z", "committer_date": "2019-04-20T18:32:40Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "31f63d1672a9214962cd7335a2daeabab7c0000e", "message": "Fixed bug with keyset pagination over compound primary keys\n\nCloses #190", "author_date": "2018-03-30T05:10:09Z", "committer_date": "2018-03-30T05:11:02Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "31fb006a9b05067a8eb2f774ad3a3b15b4565924", "message": "Added datasette.get_database() method\n\nRefs #576", "author_date": "2020-05-30T14:28:29Z", "committer_date": "2020-05-30T14:29:59Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "32963018e7edfab1233de7c7076c428d0e5c7813", "message": "Updated documentation to remove hash_urls, refs #1661", "author_date": "2022-03-19T00:33:06Z", "committer_date": "2022-03-19T00:33:06Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "32cf5a4a72c1c8d46dd302566fdcbf4793f2f927", "message": "New datasette skeleton command for generating metadata.json\n\nCloses #164", "author_date": "2017-12-07T06:20:37Z", "committer_date": "2017-12-07T06:20:37Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "33251d04e78d575cca62bb59069bb43a7d924746", "message": "Canned query write counters demo, refs #2134", "author_date": "2023-08-10T00:56:27Z", "committer_date": "2023-08-10T00:56:27Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3359d54a4eb9c9725c27a85437661b5180c4099a", "message": "Use cookies when accessing csrftoken_from", "author_date": "2020-06-06T19:33:08Z", "committer_date": "2020-06-06T19:33:08Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "335f26a0f7f00134f02ae0f001946580b0edecf5", "message": "/fixtures/magic_parameters demo, refs #842", "author_date": "2020-06-28T03:11:01Z", "committer_date": "2020-06-28T03:11:01Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "33eadb8782d5b3e179df7dfa08f6d376ded2acd3", "message": "config.json is now settings.json, closes #1104", "author_date": "2020-11-24T20:37:29Z", "committer_date": "2020-11-24T20:37:29Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "349e262bb1c8f225cf86a5e8542253282809a0eb", "message": "Renamed ?_sql_time_limit_ms= to ?_timelimit, closes #242", "author_date": "2018-05-02T00:11:46Z", "committer_date": "2018-05-02T00:20:39Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "2946d096d0cdefdc017559e6b57e87658736e843", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "34ad574baccfb3e732c6cb7eee6f55c63775ba3b", "message": "Don't hard-code permissions in permission_allowed_actor_restrictions, refs #1855", "author_date": "2022-12-13T05:14:40Z", "committer_date": "2022-12-13T05:14:40Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "34cffff02a79dc4f90fe5c8ff0d6f6fc5ae5351d", "message": "Refactor _headers() for write API tests", "author_date": "2022-12-08T01:39:07Z", "committer_date": "2022-12-08T01:39:07Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "34defdc10aa293294ca01cfab70780755447e1d7", "message": "Browse the plugins directory", "author_date": "2022-09-29T00:39:36Z", "committer_date": "2022-09-29T00:39:36Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "34e292d24dc2b8376236472bec3cce1c556ddfe5", "message": "Porting Datasette to ASGI, and Turtles all the way down", "author_date": "2019-06-24T05:28:37Z", "committer_date": "2019-06-24T05:28:37Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "3508bf7875f8d62b2725222f3b07747974d54b97", "message": "--nolock mode to ignore locked files, closes #1744", "author_date": "2022-05-17T19:40:05Z", "committer_date": "2022-05-17T19:40:25Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "35429f90894321eda7f2db31b9ea7976f31f73ac", "message": "Revert \"New encode/decode_path_component functions\"\n\nRefs #272\n\nThis reverts commit 9fdb47ca952b93b7b60adddb965ea6642b1ff523.\n\nNow that ASGI supports raw_path we don't need our own encoding scheme!", "author_date": "2019-06-19T00:22:26Z", "committer_date": "2019-06-19T00:23:27Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "359140cedaf69242d6356479fb8a9d3aa591e618", "message": "Datasette() constructor no longer requires files=, closes #1563", "author_date": "2021-12-18T02:09:00Z", "committer_date": "2021-12-18T02:09:00Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "35aee82c60b2c9a0185b934db5528c8bd11830f2", "message": "Fixed 500 error with /favicon.ico, closes #874", "author_date": "2020-06-29T04:27:11Z", "committer_date": "2020-06-29T04:27:11Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "35b12746ba2bf9f254791bddac03d25b19be9b77", "message": "Fixed CSV test I broke in #1525", "author_date": "2021-11-30T06:37:22Z", "committer_date": "2021-11-30T06:37:22Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "35d6ee2790e41e96f243c1ff58be0c9c0519a8ce", "message": "Apply black to everything, enforce via unit tests (#449)\n\nI've run the black code formatting tool against everything:\r\n\r\n black tests datasette setup.py\r\n\r\nI also added a new unit test, in tests/test_black.py, which will fail if the code does not\r\nconform to black's exacting standards.\r\n\r\nThis unit test only runs on Python 3.6 or higher, because black itself doesn't run on 3.5.", "author_date": "2019-05-04T02:15:14Z", "committer_date": "2019-05-04T02:15:14Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "3651eedf20b86ad30f510bf762fb25790bb3560c", "message": "Show 'many rows' if count times out, refs #420", "author_date": "2019-05-02T05:20:24Z", "committer_date": "2019-05-02T05:20:24Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3652b7472aaa963a8f28d5e6bb1ca21df067b0e1", "message": "Applied prettier, refs #1890", "author_date": "2022-11-15T06:41:10Z", "committer_date": "2022-11-15T06:41:10Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3655bb49a464bcc8004e491cc4d4de292f1acd62", "message": "Better default help text, closes #1450", "author_date": "2021-08-28T00:48:54Z", "committer_date": "2021-08-28T00:49:03Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "36573638b0948174ae237d62e6369b7d55220d7f", "message": "Apply Black to code examples in documentation, refs #1718\n\nUses blacken-docs. This has a deliberate error which I hope will fail CI.", "author_date": "2022-04-24T15:50:43Z", "committer_date": "2022-04-24T15:50:43Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3658e57ac2de0bec0ea5de36e3ddd09784ecf65e", "message": "Fixed bug with table title element, closes #1560", "author_date": "2022-01-13T22:20:07Z", "committer_date": "2022-01-13T22:20:07Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3664ddd400062123e99500d28b160c7944408c1a", "message": "Replace update-docs-help.py with cog, closes #1598", "author_date": "2022-01-14T00:47:53Z", "committer_date": "2022-01-14T00:47:53Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "36701c85928b1eb785527ffd11cd941b31087ea3", "message": "datasette build now takes --load-extension", "author_date": "2017-11-26T23:01:53Z", "committer_date": "2017-11-26T23:02:01Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3683a6b626b2e79f4dc9600d45853ca4ae8de11a", "message": "Docs + example of canned SQL query using || concatenation\n\nCloses #321", "author_date": "2018-06-21T04:54:36Z", "committer_date": "2018-06-21T04:54:36Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "368638555160fb9ac78f462d0f79b1394163fa30", "message": "Ran black source formatting tool against new views/ and app.py", "author_date": "2018-05-13T12:55:15Z", "committer_date": "2018-05-14T03:04:23Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "2946d096d0cdefdc017559e6b57e87658736e843", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "368be14c8bbb4cec607b89dcf677d089d743b649", "message": "Link to annotated release notes", "author_date": "2020-09-16T00:01:11Z", "committer_date": "2020-09-16T00:01:11Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "36a44bffbf5185a58fcd2548e8de94e9490a7aea", "message": "Validation for --port, closes #1226", "author_date": "2021-02-18T18:05:27Z", "committer_date": "2021-02-18T18:05:27Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "36b596e3832f6126bb0e4e90cf9257b9e9c9a55e", "message": "Framework :: Datasette Trove classifier", "author_date": "2021-12-07T19:41:56Z", "committer_date": "2021-12-07T19:41:56Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "36bd6558b00be027bb4b7dba0c8d200da0ca95df", "message": "expandable_columns() no longer uses inspect, refs #420", "author_date": "2019-04-07T03:46:08Z", "committer_date": "2019-04-07T03:46:08Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "36e77e100632573e1cf907aba9462debac7928e9", "message": "Move plugin hooks docs to plugin_hooks.rst, refs #687", "author_date": "2020-06-22T00:33:48Z", "committer_date": "2020-06-22T00:34:10Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "371170eee8d1659437e42c8ee267cb4b2abcffb5", "message": "publish heroku now deploys with Python 3.8.3", "author_date": "2020-06-11T15:44:44Z", "committer_date": "2020-06-11T15:44:44Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "37adf3229038137de82a4e7331075212e7e94367", "message": "Changelog for 0.27.1", "author_date": "2019-05-11T18:34:13Z", "committer_date": "2019-05-11T18:34:13Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "37d18a5bce08c9ee53c080f613bae84fc2ccc853", "message": "datasette publish cloudrun --apt-get-install, closes #1110", "author_date": "2020-11-25T03:05:35Z", "committer_date": "2020-11-25T03:05:35Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "37f8361c6f7b3eeaa351c0cd93b6db1fdd2744ab", "message": "Initial documentation on using SpatiaLite\n\nhttps://datasette.readthedocs.io/en/latest/spatialite.html", "author_date": "2018-05-26T18:04:09Z", "committer_date": "2018-05-26T18:04:09Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "37f87b5e52e7f8ddd1c4ffcf368bd7a62a406a6d", "message": "Support for generated columns, closes #1116", "author_date": "2020-11-30T20:01:15Z", "committer_date": "2020-11-30T20:01:15Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3817152e310e2cdb67908686bac730ab802f037d", "message": "Rename default error template to error.html, refs #965", "author_date": "2020-09-14T18:30:31Z", "committer_date": "2020-09-14T18:30:31Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "382e9ecd1d429102417b17a1bd75f066cb904e24", "message": "Removed a rogue full-stop", "author_date": "2021-01-25T17:35:06Z", "committer_date": "2021-01-25T17:35:06Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "386fb11d42767039bb2b389ce98996673d780a42", "message": "?_filter_column=col&_filter_op=op&_filter_value=value redirect\n\nPart of implementing the filters UI (refs #86) - the following:\n\n /trees/Trees?_filter_column=SiteOrder&_filter_op=gt&_filter_value=2\n\nNow redirects to this;\n\n /trees/Trees?SiteOrder__gt=2", "author_date": "2017-11-19T20:25:29Z", "committer_date": "2017-11-19T20:25:29Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "387b471b88788069191bc845224b7712d92e9c0b", "message": "Release 0.52.5\n\nRefs #1134", "author_date": "2020-12-09T20:03:44Z", "committer_date": "2020-12-09T20:13:14Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "38d28dd958c41e5e7fde3788ba3fdaf2e09eff70", "message": "Revert \"Try running every test at once, refs #1955\"\n\nThis reverts commit 51ee8caa4a697fa3f4120e93b1c205b714a6cdc7.", "author_date": "2022-12-15T21:05:33Z", "committer_date": "2022-12-15T21:05:33Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "38dc1ef73b13e5ae9f05ca5e7c86fa3eb639e628", "message": "Show linked foreign key in table cells", "author_date": "2017-11-23T04:43:27Z", "committer_date": "2017-11-23T04:43:27Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "38fcc96e67f8a77cd09d13c96f2abf7cd822ebb4", "message": "Removed duplicate imports, refs #1153", "author_date": "2023-07-08T17:09:26Z", "committer_date": "2023-07-08T17:09:26Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "393f1b49d70e9f58bc193c6a28afff4ec9459a2e", "message": "Updated nav in pattern portfolio", "author_date": "2020-10-30T20:12:01Z", "committer_date": "2020-10-30T20:12:01Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "39426ff0e43a406f42c03692d3dc9d4a1b7b9d52", "message": "Added /-/limits and /-/limits.json, closes #270", "author_date": "2018-05-18T06:16:28Z", "committer_date": "2018-05-18T06:16:28Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3955771feaf47ddb6d281bba28ca2d6281551ed7", "message": "Unit tests for advanced export box HTML, closes #320", "author_date": "2018-07-24T03:38:31Z", "committer_date": "2018-07-24T03:38:31Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "398d29c2873ad22a8e779fab12e65bdbf598f823", "message": "Don't link to #export on custom query results\n\nThe advanced CSV export options don't work for custom SQL queries.\n\nRefs #266", "author_date": "2018-06-18T06:14:48Z", "committer_date": "2018-06-18T06:14:48Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a0cae4d7f77b5c2a103ea74ca7fa7a0d9ff2e66", "message": "Fix bug introduced by refactor in c35b84a2aabe2f14aeacf6cda4110ae1e94d6059", "author_date": "2021-12-18T02:19:09Z", "committer_date": "2021-12-18T02:19:09Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a0f7d64889cd79d5d00d3251e8ab77ff52de60d", "message": "Fixed hidden form fields bug #1527", "author_date": "2022-01-14T00:27:21Z", "committer_date": "2022-01-14T00:27:21Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a208a41d4dce35b97eca8b25f37055c3fda5aed", "message": "TableView.data() no longer uses .inspect, refs #420\n\nBUT... it does a count(*) against the whole table which may take unbounded time.\n\nFixing this is part of #422", "author_date": "2019-04-07T03:47:10Z", "committer_date": "2019-04-07T03:47:10Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a2ed6300d2d31972a5ac633f4e1e9561e163e29", "message": "Run tests on 3.10 during publish, refs #1482", "author_date": "2021-10-24T22:37:43Z", "committer_date": "2021-10-24T22:37:43Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a3de76009ea482911c22f921c3f48cb1337e01a", "message": "Release 0.54.1\n\nRefs #1214", "author_date": "2021-02-02T21:23:39Z", "committer_date": "2021-02-02T21:24:05Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a46d5e3c4278e74c3694f36995ea134bff800bc", "message": "Removed docker -e flag\n\ndocker -e flag is now deprecated: https://docs.docker.com/engine/deprecated/#-e-and---email-flags-on-docker-login", "author_date": "2018-07-24T04:48:36Z", "committer_date": "2018-07-24T04:48:36Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "3a4c8ed36aa97211e46849d32a09f2f386f342dd", "message": "Added columns argument to various extra_ plugin hooks, closes #938", "author_date": "2020-08-16T18:09:53Z", "committer_date": "2020-08-16T18:09:53Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a500155663a07720a8a7baa04acda8c4c937692", "message": "datasette-publish-now is now called datasette-publish-vercel", "author_date": "2021-06-23T19:51:19Z", "committer_date": "2021-06-23T19:51:19Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "3a5d7951ce8f35118ffdd7f8d86e09b909e1218c", "message": "Added Datasette 0.20 to news", "author_date": "2018-04-20T14:36:24Z", "committer_date": "2018-04-20T14:36:29Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3a79ad98eafb9da527a3b9d9d8fbeb81936b02e7", "message": "Basic CSV export, refs #266\n\nTables and custom SQL query results can now be exported as CSV.\n\nThe easiest way to do this is to use the .csv extension, e.g.\n\n\t/test_tables/facet_cities.csv\n\nBy default this is served as Content-Type: text/plain so you can see it in\nyour browser. If you want to download the file (using text/csv and with an\nappropriate Content-Disposition: attachment header) you can do so like this:\n\n\t/test_tables/facet_cities.csv?_dl=1\n\nWe link to the CSV and downloadable CSV URLs from the table and query pages.\n\nThe links use ?_size=max and so by default will return 1,000 rows.\n\nAlso fixes #303 - table names ending in .json or .csv are now detected and\nURLs are generated that look like this instead:\n\n\t/test_tables/table%2Fwith%2Fslashes.csv?_format=csv\n\nThe ?_format= option is available for everything else too, but we link to the\n.csv / .json versions in most cases because they are aesthetically pleasing.", "author_date": "2018-06-15T06:51:23Z", "committer_date": "2018-06-15T06:51:23Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3aa87eeaf21083e32d9e02bd857fd44707dc4113", "message": "Documentation no loger suggests that actor[\"id\"] is required, closes #823", "author_date": "2020-06-09T14:58:12Z", "committer_date": "2020-06-09T14:58:12Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3ac21c749881d0fb1c35b0f9b7a819e29f61c5c1", "message": "Unit test confirming all plugin hooks are documented", "author_date": "2018-07-26T04:09:33Z", "committer_date": "2018-07-26T04:09:59Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3af313e165215696af899e772f47bf7c27873ae3", "message": "Fix for Sphinx extlinks warning, closes #1972", "author_date": "2022-12-31T19:12:38Z", "committer_date": "2022-12-31T19:13:14Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3b336d8071fb5707bd006de1d614f701d20246a3", "message": "Utility function for cog for generating YAML/JSON tabs, refs #1153", "author_date": "2023-07-08T16:37:47Z", "committer_date": "2023-07-08T16:37:47Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3b3cb3e8df243408ab4c03b0ea75cadd02bd65dc", "message": "Added example plugins to plugin hooks docs, closes #709", "author_date": "2020-03-24T22:29:34Z", "committer_date": "2020-03-24T22:29:34Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3b53eea38267420bb78a2a604e23e5f816eccce2", "message": "Fixed incorrect display of compound primary keys with foreign key references\n\nCloses #319", "author_date": "2018-06-21T14:56:28Z", "committer_date": "2018-06-21T14:56:28Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3b68314d8f59d92fe7b2150cf747a082192ef9b7", "message": "Unit tests for publish now/heroku - closes #348", "author_date": "2018-07-26T05:45:47Z", "committer_date": "2018-07-26T05:45:47Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3bb6409a6cb8eaee32eb572423d9c0485a1dd917", "message": "render_cell() can now return an awaitable, refs", "author_date": "2021-08-08T23:04:42Z", "committer_date": "2021-08-08T23:05:00Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3bc2461c77ecba3e1a95301dd440a9bef56b1283", "message": "Refactored AsgiView into BaseView, refs #870", "author_date": "2020-06-28T23:06:30Z", "committer_date": "2020-06-28T23:06:30Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3bd05b854ac4cb3208e3c430734a90ae66310719", "message": "-e/--expires-after in create-token docs", "author_date": "2022-12-30T13:50:15Z", "committer_date": "2022-12-31T18:52:37Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3c1a60589e14849344acd8aa6da0a60b40fbfc60", "message": "Consistent capitalization of SpatiaLite in the docs", "author_date": "2020-05-28T18:27:24Z", "committer_date": "2020-05-28T18:27:44Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3c33b421320c0be81a625ca7307b2e4416a9ed5b", "message": "Documenting both false and {} for \"deny all\" is confusing\n\nRefs #906", "author_date": "2020-07-25T21:44:42Z", "committer_date": "2020-07-25T21:44:42Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "3c352b7132ef09b829abb69a0da0ad00be5edef9", "message": "Applied Black, refs #782", "author_date": "2022-12-31T21:17:54Z", "committer_date": "2022-12-31T21:17:54Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3c5afaeb231c94a55309f1c0187ff6dedd5b5fb8", "message": "Re-arranged internals documentation\n\nRequest is more useful to most people than Database.", "author_date": "2020-05-30T18:06:13Z", "committer_date": "2020-05-30T18:06:13Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3c5e4f266dfa07bd0bbb530d17019207f787d806", "message": "Added messages to pattern portfolio, refs #790", "author_date": "2020-06-02T22:34:50Z", "committer_date": "2020-06-02T22:34:50Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3c861f363df02a59a67c59036278338e4760d2ed", "message": "_search= queries now correctly escaped, fixes #651\n\nQueries with reserved words or characters according to the SQLite\nFTS5 query language could cause errors.\n\nQueries are now escaped like so:\n\n dog cat => \"dog\" \"cat\"", "author_date": "2019-12-29T18:48:13Z", "committer_date": "2019-12-29T18:48:30Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3c9f889715249d7b0b3bc014529073066a1d478d", "message": "Custom templates for canned queries\n\nCloses #170", "author_date": "2017-12-09T21:34:46Z", "committer_date": "2017-12-09T21:34:46Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3ca290e0db03bb4747e24203c445873f74512107", "message": "Fixed dumb error", "author_date": "2019-10-30T19:00:21Z", "committer_date": "2019-10-30T19:00:21Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3cd06729f457d690603b6060dc552b535517ab09", "message": "Ability to over-ride templates for individual tables/databases\n\nIt is now possible to over-ride templates on a per-database / per-row or per-\ntable basis.\n\nWhen you access e.g. /mydatabase/mytable Datasette will look for the following:\n\n - table-mydatabase-mytable.html\n - table.html\n\nIf you provided a --template-dir argument to datasette serve it will look in\nthat directory first.\n\nThe lookup rules are as follows:\n\n Index page (/):\n index.html\n\n Database page (/mydatabase):\n database-mydatabase.html\n database.html\n\n Table page (/mydatabase/mytable):\n table-mydatabase-mytable.html\n table.html\n\n Row page (/mydatabase/mytable/id):\n row-mydatabase-mytable.html\n row.html\n\nIf a table name has spaces or other unexpected characters in it, the template\nfilename will follow the same rules as our custom CSS classes\nintroduced in 8ab3a169d42d096f - for example, a table called \"Food Trucks\"\nwill attempt to load the following templates:\n\n table-mydatabase-Food-Trucks-399138.html\n table.html\n\nIt is possible to extend the default templates using Jinja template\ninheritance. If you want to customize EVERY row template with some additional\ncontent you can do so by creating a row.html template like this:\n\n {% extends \"default:row.html\" %}\n\n {% block content %}\n

EXTRA HTML AT THE TOP OF THE CONTENT BLOCK

\n

This line renders the original block:

\n {{ super() }}\n {% endblock %}\n\nCloses #12, refs #153", "author_date": "2017-11-30T16:30:10Z", "committer_date": "2017-11-30T16:38:16Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 107914493, "label": "datasette"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}}