pull_requests
436 rows where repo = 107914493 sorted by closed_at
This data as json, CSV (advanced)
closed_at (date) >30 ✖
- 2019-05-03 9
- 2020-05-04 9
- 2021-10-13 7
- 2021-03-29 6
- 2022-03-06 6
- 2021-05-22 5
- 2023-03-29 5
- 2019-11-11 4
- 2019-11-12 4
- 2021-10-14 4
- 2021-11-30 4
- 2022-09-05 4
- 2023-08-07 4
- 2023-08-29 4
- 2019-07-03 3
- 2019-10-14 3
- 2019-11-13 3
- 2020-02-25 3
- 2020-10-14 3
- 2020-10-29 3
- 2021-04-29 3
- 2021-06-02 3
- 2021-08-25 3
- 2022-07-18 3
- 2022-09-06 3
- 2022-12-08 3
- 2022-12-13 3
- 2023-09-06 3
- 2019-02-06 2
- 2019-05-01 2
- …
id | node_id | number | state | locked | title | user | body | created_at | updated_at | closed_at ▼ | merged_at | merge_commit_sha | assignee | milestone | draft | head | base | author_association | repo | url | merged_by | auto_merge |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
250628275 | MDExOlB1bGxSZXF1ZXN0MjUwNjI4Mjc1 | 407 | closed | 0 | Heroku --include-vcs-ignore | simonw 9599 | Should mean `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:06:20Z | 2019-02-06T04:31:30Z | 2019-02-06T04:15:47Z | 2019-02-06T04:15:46Z | 195a5b36349d0d24a6bbb758cebb719b6de303b6 | 0 | 01978ddb9682c828cafddaf9ca625e08ba3ba3a4 | 436b8bc1d17c2ab415800ab209204f94e7f7929e | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/407 | ||||
165029807 | MDExOlB1bGxSZXF1ZXN0MTY1MDI5ODA3 | 182 | closed | 0 | Add db filesize next to download link | raynae 3433657 | Took a stab at #172, will this do the trick? | 2018-01-25T04:58:56Z | 2019-03-22T13:50:57Z | 2019-02-06T04:59:38Z | a8d9e69872dec9a551b25cd609ffdbf3896045bd | 0 | b62835205a830472abb66c708822c2dcdf4ab027 | 56623e48da5412b25fb39cc26b9c743b684dd968 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/182 | |||||
255725057 | MDExOlB1bGxSZXF1ZXN0MjU1NzI1MDU3 | 413 | closed | 0 | Update spatialite.rst | joelondon 28597217 | a line of sql added to create the idx_<table_name> in the python recipe | 2019-02-25T00:08:35Z | 2019-03-15T05:06:45Z | 2019-03-15T05:06:45Z | 2019-03-15T05:06:45Z | 9e8c36793bfbb17c2f67371cc7f9aa8b9202fdc4 | 0 | e87565604a169a34eadadfc99e96a8f503123e8c | 1f91065b20cbc691f464bccfd8eef7d1ce4b14a8 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/413 | ||||
261418285 | MDExOlB1bGxSZXF1ZXN0MjYxNDE4Mjg1 | 416 | closed | 0 | URL hashing now optional: turn on with --config hash_urls:1 (#418) | simonw 9599 | 2019-03-15T04:26:06Z | 2019-03-17T22:55:04Z | 2019-03-17T22:55:04Z | 2019-03-17T22:55:04Z | 6f6d0ff2b41f1cacaf42287b1b230b646bcba9ee | 0 | 0d02a99c9665669540aebff981246d8c743072b3 | afe9aa3ae03c485c5d6652741438d09445a486c1 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/416 | |||||
269364924 | MDExOlB1bGxSZXF1ZXN0MjY5MzY0OTI0 | 426 | closed | 0 | Upgrade to Jinja2==2.10.1 | simonw 9599 | https://nvd.nist.gov/vuln/detail/CVE-2019-10906 This is only a security issue of concern if evaluating templates from untrusted sources, which isn't something I would ever expect a Datasette user to do. | 2019-04-10T23:03:08Z | 2019-04-22T21:23:22Z | 2019-04-10T23:13:31Z | 2019-04-10T23:13:31Z | 9cd3b44277e6a8ea9273bf659379ff0414e0b8ae | 0 | 629453383c7f911eddfc891f22c39b7d6e9661aa | 78e45ead4d771007c57b307edf8fc920101f8733 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/426 | ||||
270191084 | MDExOlB1bGxSZXF1ZXN0MjcwMTkxMDg0 | 430 | closed | 0 | ?_where= parameter on table views, closes #429 | simonw 9599 | 2019-04-13T01:15:09Z | 2019-04-13T01:37:23Z | 2019-04-13T01:37:23Z | 2019-04-13T01:37:23Z | bc6a9b45646610f362b4287bc4110440991aa4d6 | 0 | 3ee087c7b60da7ec3e5d2f73611fc6ea99ff82fc | e11cb4c66442abca2a6b6159521a6cf4da8739c1 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/430 | |||||
266035382 | MDExOlB1bGxSZXF1ZXN0MjY2MDM1Mzgy | 424 | closed | 0 | Column types in inspected metadata | russss 45057 | This PR does two things: * Adds the sqlite column type for each column to the inspected table info. * Stops binary columns from being rendered to HTML, unless a plugin handles it. There's a bit more detail in the changeset descriptions. These changes are intended as a precursor to a plugin which adds first-class support for Spatialite geographic primitives, and perhaps more useful geo-stuff. | 2019-03-31T18:46:33Z | 2019-04-29T18:30:50Z | 2019-04-29T18:30:46Z | a332d4e0b3fed7165a22880430664f1c3a00963d | 0 | 92e7b8c67fe5bcd484f19576f20c9235aca9050b | 0209a0a344503157351e625f0629b686961763c9 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/424 | |||||
274313625 | MDExOlB1bGxSZXF1ZXN0Mjc0MzEzNjI1 | 439 | closed | 0 | [WIP] Add primary key to the extra_body_script hook arguments | russss 45057 | This allows the row to be identified on row pages. The context here is that I want to access the row's data to plot it on a map. I considered passing the entire template context through to the hook function. This would expose the actual row data and potentially avoid a further fetch request in JS, but it does make the plugin API a lot more leaky. (At any rate, using the selected row data is tricky in my case because of Spatialite's infuriating custom binary representation...) | 2019-04-29T10:08:23Z | 2019-05-01T09:58:32Z | 2019-05-01T09:58:30Z | b3cbcfef4d11d2741cf00861734d726a4730afe5 | 0 | 76b2c8fa406063b436155a7d8995e07b7e718c13 | 11b352b4d52fd02a422776edebb14f12e4994d3b | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/439 | |||||
274468836 | MDExOlB1bGxSZXF1ZXN0Mjc0NDY4ODM2 | 441 | closed | 0 | Add register_output_renderer hook | russss 45057 | This changeset refactors out the JSON renderer and then adds a hook and dispatcher system to allow custom output renderers to be registered. The CSV output renderer is untouched because supporting streaming renderers through this system would be significantly more complex, and probably not worthwhile. We can't simply allow hooks to be called at request time because we need a list of supported file extensions when the request is being routed in order to resolve ambiguous database/table names. So, renderers need to be registered at startup. I've tried to make this API independent of Sanic's request/response objects so that this can remain stable during the switch to ASGI. I'm using dictionaries to keep it simple and to make adding additional options in the future easy. Fixes #440 | 2019-04-29T18:03:21Z | 2019-05-01T23:01:57Z | 2019-05-01T23:01:57Z | 2019-05-01T23:01:57Z | cf406c075433882b656e340870adf7757976fa4c | 0 | c9f941f06eb0268841de49407725917c74a8a2dc | 11b352b4d52fd02a422776edebb14f12e4994d3b | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/441 | ||||
270251021 | MDExOlB1bGxSZXF1ZXN0MjcwMjUxMDIx | 432 | closed | 0 | Refactor facets to a class and new plugin, refs #427 | simonw 9599 | WIP for #427 | 2019-04-13T20:04:45Z | 2019-05-03T00:04:24Z | 2019-05-03T00:04:24Z | b78bc19269ed83b054a60c79c4fe08f4ca943942 | 0 | 5c198f7ca5d2aff49180820271ba8d06b79aefb1 | 9c77e6e355ec718d76178a7607721d10a66b6aef | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/432 | |||||
275558612 | MDExOlB1bGxSZXF1ZXN0Mjc1NTU4NjEy | 445 | closed | 0 | Extract facet code out into a new plugin hook, closes #427 | simonw 9599 | Datasette previously only supported one type of faceting: exact column value counting. With this change, faceting logic is extracted out into one or more separate classes which can implement other patterns of faceting - this is discussed in #427, but potential upcoming facet types include facet-by-date, facet-by-JSON-array, facet-by-many-2-many and more. A new plugin hook, register_facet_classes, can be used by plugins to add in additional facet classes. Each class must implement two methods: suggest(), which scans columns in the table to decide if they might be worth suggesting for faceting, and facet_results(), which executes the facet operation and returns results ready to be displayed in the UI. | 2019-05-03T00:02:41Z | 2019-05-03T18:17:18Z | 2019-05-03T00:11:27Z | 2019-05-03T00:11:27Z | ea66c45df96479ef66a89caa71fff1a97a862646 | 0 | 1b47d4d8736627c260eb4e8303e552b0e9620a01 | efc93b8ab5a21e3802f75f08d5e41409f5684b5d | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/445 | ||||
275281307 | MDExOlB1bGxSZXF1ZXN0Mjc1MjgxMzA3 | 444 | closed | 0 | Add a max-line-length setting for flake8 | russss 45057 | This stops my automatic editor linting from flagging lines which are too long. It's been lingering in my checkout for ages. 160 is an arbitrary large number - we could alter it if we have any opinions (but I find the line length limit to be my least favourite part of PEP8). | 2019-05-02T08:58:57Z | 2019-05-04T09:44:48Z | 2019-05-03T13:11:28Z | 2019-05-03T13:11:28Z | 470cf0b05d4fda0d2563f81c7e32af13fe346ccc | 0 | 4f0d265951d7e95920298b46eff39bb9cc783984 | efc93b8ab5a21e3802f75f08d5e41409f5684b5d | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/444 | ||||
275275610 | MDExOlB1bGxSZXF1ZXN0Mjc1Mjc1NjEw | 443 | closed | 0 | Pass view_name to extra_body_script hook | russss 45057 | At the moment it's not easy to tell whether the hook is being called in (for example) the row or table view, as in both cases the `database` and `table` parameters are provided. This passes the `view_name` added in #441 to the `extra_body_script` hook. | 2019-05-02T08:38:36Z | 2019-05-03T13:12:20Z | 2019-05-03T13:12:20Z | 2019-05-03T13:12:20Z | bf229c9bd88179c8ec16bd65fd4fb28ab4241c2e | 0 | 83b6b82d4787b30d34eb26c22ad1ff9c5c118134 | efc93b8ab5a21e3802f75f08d5e41409f5684b5d | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/443 | ||||
271338405 | MDExOlB1bGxSZXF1ZXN0MjcxMzM4NDA1 | 434 | closed | 0 | "datasette publish cloudrun" command to publish to Google Cloud Run | rprimet 10352819 | This is a very rough draft to start a discussion on a possible datasette cloud run publish plugin (see issue #400). The main change was to dynamically set the listening port in `make_dockerfile` to satisfy cloud run's [requirements](https://cloud.google.com/run/docs/reference/container-contract). This was done by running `datasette` through `sh` to get environment variable substitution. Not sure if that's the right approach? | 2019-04-17T14:41:18Z | 2019-05-03T21:50:44Z | 2019-05-03T13:59:02Z | 2019-05-03T13:59:02Z | 75a21fc2a136ccfc9da7bbf521cf288e63c9707f | 0 | 74c20d0d2eac13892ac20db0e66fcb3437544aa6 | bf229c9bd88179c8ec16bd65fd4fb28ab4241c2e | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/434 | ||||
274478761 | MDExOlB1bGxSZXF1ZXN0Mjc0NDc4NzYx | 442 | closed | 0 | Suppress rendering of binary data | russss 45057 | Binary columns (including spatialite geographies) get shown as ugly binary strings in the HTML by default. Nobody wants to see that mess. Show the size of the column in bytes instead. If you want to decode the binary data, you can use a plugin to do it. | 2019-04-29T18:36:41Z | 2019-05-03T18:26:48Z | 2019-05-03T16:44:49Z | 2019-05-03T16:44:49Z | d555baf508de71a5e3dc9a9aed2c13f6f202956d | 0 | bbbd9ea5ad774f088bd963106fa5756bfd77c799 | 11b352b4d52fd02a422776edebb14f12e4994d3b | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/442 | ||||
275801463 | MDExOlB1bGxSZXF1ZXN0Mjc1ODAxNDYz | 447 | closed | 0 | Use dist: xenial and python: 3.7 on Travis | simonw 9599 | 2019-05-03T18:07:07Z | 2019-05-03T18:17:05Z | 2019-05-03T18:16:53Z | 2019-05-03T18:16:53Z | 553314dcd699a84aa7cc806377150ca0d57a6024 | 0 | cd22e389d09b4fd5ed28205ba38a20faf1ed14f1 | 01b3de5b66742f0f661183e9e2ef66be3600e831 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/447 | |||||
226315513 | MDExOlB1bGxSZXF1ZXN0MjI2MzE1NTEz | 368 | closed | 0 | Update installation instructions | jaap3 48517 | I was writing this as a response to your tweet, but decided I might just make it a pull request. I feel like it might be confusing to those unfamiliar with Python's `-m` flag and the built-in `venv` module to omit the space between the flag and its argument. By adding a space and prefixing the second occurrence of `venv` with a `./` it's maybe a bit clearer what the arguments are and what they do. By also using `python3 -m pip` it becomes even clearer that `-m` is a special flag that makes the python executable do neat things. | 2018-10-27T18:52:31Z | 2019-05-03T18:18:43Z | 2019-05-03T18:18:42Z | 2019-05-03T18:18:42Z | f853d5592ec7f901a50381de22a26a9ab098f885 | 0 | 8f8d6072820a13e2c698d9c326998b63810779c6 | 553314dcd699a84aa7cc806377150ca0d57a6024 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/368 | ||||
226314862 | MDExOlB1bGxSZXF1ZXN0MjI2MzE0ODYy | 367 | closed | 0 | Mark codemirror files as vendored | jaap3 48517 | GitHub lists datasette as a Javascript project, primarily because of the vendored codemirror files. This is somewhat confusing when you're looking for datasette, knowing it's written in Python. Luckily it's possible exclude certain files from GitHub's code statistics: https://github.com/github/linguist#using-gitattributes | 2018-10-27T18:41:25Z | 2019-05-03T21:12:09Z | 2019-05-03T21:11:20Z | 2019-05-03T21:11:20Z | 66c87cee0c7344c7877373c60b180c766c206101 | 0 | 8e23e4548eedd58b0ff0e69c9a5010fc1a0136d5 | 6b398c2971801d9a20cfdb7998f59020d5534e22 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/367 | ||||
275861559 | MDExOlB1bGxSZXF1ZXN0Mjc1ODYxNTU5 | 449 | closed | 0 | Apply black to everything | simonw 9599 | I've been hesitating on this for literally months, because I'm not at all excited about the giant diff that will result. But I've been using black on many of my other projects (most actively [sqlite-utils](https://github.com/simonw/sqlite-utils)) and the productivity boost is undeniable: I don't have to spend a single second thinking about code formatting any more! So it's worth swallowing the one-off pain and moving on in a new, black-enabled world. | 2019-05-03T21:57:26Z | 2019-05-04T02:17:14Z | 2019-05-04T02:15:15Z | 2019-05-04T02:15:15Z | 35d6ee2790e41e96f243c1ff58be0c9c0519a8ce | 0 | 9683aeb2394a4b7e44499b8a0240af3baafda832 | 66c87cee0c7344c7877373c60b180c766c206101 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/449 | ||||
277524072 | MDExOlB1bGxSZXF1ZXN0Mjc3NTI0MDcy | 458 | closed | 0 | setup: add tests to package exclusion | hellerve 7725188 | This PR fixes #456 by adding `tests` to the package exclusion list. Cheers | 2019-05-09T19:47:21Z | 2020-07-21T01:14:42Z | 2019-05-10T01:54:51Z | 2019-05-10T01:54:51Z | 9f8d9fe262866ff3463f8e61214dcc6897bd5a9c | 0 | 9c65ff1ba8c855e4ade5bc7ae29a69215b3979d0 | f825e2012109247fa246e2b938f8174069e574f1 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/458 | ||||
275909197 | MDExOlB1bGxSZXF1ZXN0Mjc1OTA5MTk3 | 450 | closed | 0 | Coalesce hidden table count to 0 | russss 45057 | For some reason I'm hitting a `None` here with a FTS table. I'm not entirely sure why but this makes the logic work the same as with non-hidden tables. | 2019-05-04T09:37:10Z | 2019-05-11T18:10:09Z | 2019-05-11T18:10:09Z | 5918489a2a2f14b58c5c71773a9d4fb6bb0e3e0a | 0 | f81d9df985e8d054fc16ab91f72878fe71656354 | 55643430f7ac8d27e99b00e7cf79db741003e811 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/450 | |||||
280204276 | MDExOlB1bGxSZXF1ZXN0MjgwMjA0Mjc2 | 479 | closed | 0 | doc typo fix | IgnoredAmbience 98555 | Fix typo in performance doc page | 2019-05-19T22:54:25Z | 2019-05-20T16:42:29Z | 2019-05-20T16:42:29Z | 2019-05-20T16:42:29Z | 70d2858067d3c4da0e17c1d39e03de89190e94b6 | 0 | 708e13ab87f8c8620796c3e8f2b0aa1b2fc26875 | e513a80afba30bca9eeebd71c5e6aa6d8a811f33 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/479 | ||||
284390197 | MDExOlB1bGxSZXF1ZXN0Mjg0MzkwMTk3 | 497 | closed | 0 | Upgrade pytest to 4.6.1 | simonw 9599 | 2019-06-03T01:45:34Z | 2019-06-03T02:06:32Z | 2019-06-03T02:06:27Z | 2019-06-03T02:06:27Z | 5e8fbf7f6fbc0b63d0479da3806dd9ccd6aaa945 | 0 | bf2ab0306e6d3ce7524fecf015e2cec7ae45e994 | 803f750309bf0cd5b7501228c1efcf9a35686d74 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/497 | |||||
284743794 | MDExOlB1bGxSZXF1ZXN0Mjg0NzQzNzk0 | 500 | closed | 0 | Fix typo in install step: should be install -e | tmcw 32314 | 2019-06-03T21:50:51Z | 2019-06-11T18:48:43Z | 2019-06-11T18:48:40Z | 2019-06-11T18:48:40Z | aa911122feab13f8e65875c98edb00fd3832b7b8 | 0 | ff98f44d7f10ff65fc172df9155c77f169ab4c7f | 5e8fbf7f6fbc0b63d0479da3806dd9ccd6aaa945 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/500 | |||||
290897104 | MDExOlB1bGxSZXF1ZXN0MjkwODk3MTA0 | 518 | closed | 0 | Port Datasette from Sanic to ASGI + Uvicorn | simonw 9599 | Most of the code here was fleshed out in comments on #272 (Port Datasette to ASGI) - this pull request will track the final pieces: - [x] Update test harness to more correctly simulate the `raw_path` issue - [x] Use `raw_path` so table names containing `/` can work correctly - [x] Bug: JSON not served with correct content-type - [x] Get ?_trace=1 working again - [x] Replacement for `@app.listener("before_server_start")` - [x] Bug: `/fixtures/table%2Fwith%2Fslashes.csv?_format=json` downloads as CSV - [x] Replace Sanic request and response objects with my own classes, so I can remove Sanic dependency - [x] Final code tidy-up before merging to master | 2019-06-23T15:18:42Z | 2019-06-24T13:42:50Z | 2019-06-24T03:13:09Z | 2019-06-24T03:13:09Z | ba8db9679f3bd2454c9e76e7e6c352126848b57a | simonw 9599 | Datasette 1.0 3268330 | 0 | b794554a26ddc81bd772c4422d80d5ee863e92b0 | 35429f90894321eda7f2db31b9ea7976f31f73ac | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/518 | ||
274174614 | MDExOlB1bGxSZXF1ZXN0Mjc0MTc0NjE0 | 437 | closed | 0 | Add inspect and prepare_sanic hooks | russss 45057 | This adds two new plugin hooks: The `inspect` hook allows plugins to add data to the inspect dictionary. The `prepare_sanic` hook allows plugins to hook into the web router. I've attached a warning to this hook in the docs in light of #272 but I want this hook now... On quick inspection, I don't think it's worthwhile to try and make this hook independent of the web framework (but it looks like Starlette would make the hook implementation a bit nicer). Ref #14 | 2019-04-28T11:53:34Z | 2019-06-24T16:38:57Z | 2019-06-24T16:38:56Z | 7aeaac7c478acf572bda61bdaa6ac3247dc15811 | 0 | f33a0a63a7442f0b665320ac3e2eb55de315f1f7 | 11b352b4d52fd02a422776edebb14f12e4994d3b | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/437 | |||||
291534596 | MDExOlB1bGxSZXF1ZXN0MjkxNTM0NTk2 | 529 | closed | 0 | Use keyed rows - fixes #521 | nathancahill 1383872 | Supports template syntax like this: ``` {% for row in display_rows %} <h2 class="scientist">{{ row["First_Name"] }} {{ row["Last_Name"] }}</h2> ... ``` | 2019-06-25T12:33:48Z | 2019-06-25T12:35:07Z | 2019-06-25T12:35:07Z | 3be9759418fdfe4a8ae8aec46fc2a937d45332d2 | 0 | 312e3394bd9f3eaef606fbe37eb409ec7462baaf | 9e97b725f11be3f4dca077fe5569078a62ec2761 | NONE | datasette 107914493 | https://github.com/simonw/datasette/pull/529 | |||||
293962405 | MDExOlB1bGxSZXF1ZXN0MjkzOTYyNDA1 | 533 | closed | 0 | Support cleaner custom templates for rows and tables, closes #521 | simonw 9599 | - [x] Rename `_rows_and_columns.html` to `_table.html` - [x] Unit test - [x] Documentation | 2019-07-03T00:40:18Z | 2019-07-03T03:23:06Z | 2019-07-03T03:23:06Z | 2019-07-03T03:23:06Z | b9ede4c1898616512b5d204f9c941deff473cbe4 | 0 | 1add905532b7bc4f681318b8f22b9b74cca2b2a0 | 76882830548e16905348ee75acb0044cb8e1fd20 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/533 | ||||
293992382 | MDExOlB1bGxSZXF1ZXN0MjkzOTkyMzgy | 535 | closed | 0 | Added asgi_wrapper plugin hook, closes #520 | simonw 9599 | 2019-07-03T03:58:00Z | 2019-07-03T04:06:26Z | 2019-07-03T04:06:26Z | 2019-07-03T04:06:26Z | 4d2fdafe39159c9a8aa83f7e9bfe768bbbbb56a3 | 0 | 93bfa26bfd25a3cc911d637596e364d3474325bd | b9ede4c1898616512b5d204f9c941deff473cbe4 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/535 | |||||
293994443 | MDExOlB1bGxSZXF1ZXN0MjkzOTk0NDQz | 536 | closed | 0 | Switch to ~= dependencies, closes #532 | simonw 9599 | 2019-07-03T04:12:16Z | 2019-07-03T04:32:55Z | 2019-07-03T04:32:55Z | 2019-07-03T04:32:55Z | f0d32da0a9af87bcb15e34e35424f0c0053be83a | 0 | 391d109dc3f9230dc4ee4afd20041e480e90e739 | 4d2fdafe39159c9a8aa83f7e9bfe768bbbbb56a3 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/536 | |||||
294400446 | MDExOlB1bGxSZXF1ZXN0Mjk0NDAwNDQ2 | 539 | closed | 0 | Secret plugin configuration options | simonw 9599 | Refs #538 | 2019-07-04T03:21:20Z | 2019-07-04T05:36:45Z | 2019-07-04T05:36:45Z | 2019-07-04T05:36:45Z | a2d45931935f6bb73605a94afedf9e78308c95d6 | 0 | fd6164b03ebe450a9a00df2e5be2dc7bbfbd9a3f | f0d32da0a9af87bcb15e34e35424f0c0053be83a | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/539 | ||||
294992578 | MDExOlB1bGxSZXF1ZXN0Mjk0OTkyNTc4 | 542 | closed | 0 | extra_template_vars plugin hook | simonw 9599 | Refs #541 | 2019-07-05T22:19:17Z | 2019-07-06T00:05:57Z | 2019-07-06T00:05:56Z | 2019-07-06T00:05:56Z | fcfcae21e67cc15090942b1d2a47b5f016279337 | 0 | e81c7abb40c8ecf8d9d23cbcdde045e0a3b4ab14 | a18e0964ecd04593f227616538a80dee08768057 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/542 | ||||
280205502 | MDExOlB1bGxSZXF1ZXN0MjgwMjA1NTAy | 480 | closed | 0 | Split pypi and docker travis tasks | glasnt 813732 | Resolves #478 This *should* work, but because this is a change that'll only really be testable on a) this repo, b) master branch, this might fail fast if I didn't get the configurations right. Looking at #478 it should just be as simple as splitting out the docker and pypi processes into separate jobs, but it might end up being more complicated than that, depending on what pre-processes the pypi deployment needs, and how travisci treats deployment steps without scripts in general. | 2019-05-19T23:14:37Z | 2019-07-07T20:03:20Z | 2019-07-07T20:03:20Z | 2019-07-07T20:03:20Z | d95048031edb02bbc9892879507f55a4f29c5459 | Datasette 0.29 4471010 | 0 | 8b667898b6c2dd57fa68310c6d3c62d77b68f321 | 4246e138f9512686413e97878659ef953337e57b | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/480 | |||
295065796 | MDExOlB1bGxSZXF1ZXN0Mjk1MDY1Nzk2 | 544 | closed | 0 | --plugin-secret option | simonw 9599 | Refs #543 - [x] Zeit Now v1 support - [x] Solve escaping of ENV in Dockerfile - [x] Heroku support - [x] Unit tests - [x] Cloud Run support - [x] Documentation | 2019-07-06T22:18:20Z | 2019-07-08T02:06:31Z | 2019-07-08T02:06:31Z | 2019-07-08T02:06:31Z | 973f8f139df6ad425354711052cfc2256de2e522 | Datasette 0.29 4471010 | 0 | ccf80604e931fba1893b5bab11de386fed82009e | fcfcae21e67cc15090942b1d2a47b5f016279337 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/544 | |||
295748268 | MDExOlB1bGxSZXF1ZXN0Mjk1NzQ4MjY4 | 556 | closed | 0 | Add support for running datasette as a module | abdusco 3243482 | This PR allows running datasette using `python -m datasette` command in addition to just running the executable. This function is quite useful when debugging a plugin in a project because IDEs like PyCharm can easily start a debug session when datasette is run as a module in contrast to trying to attach a debugger to a running process. ![image](https://user-images.githubusercontent.com/3243482/60890448-fc4ede80-a263-11e9-8b42-d2a3db8d1a59.png) | 2019-07-09T13:13:30Z | 2019-07-11T16:07:45Z | 2019-07-11T16:07:44Z | 2019-07-11T16:07:44Z | 9ca860e54fe480d0a365c0c1d8d085926d12be1e | 0 | 056a7eac9480cb814d9c453b983e6b2b831e0ca1 | 81fa8b6cdc5457b42a224779e5291952314e8d20 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/556 | ||||
295711504 | MDExOlB1bGxSZXF1ZXN0Mjk1NzExNTA0 | 554 | closed | 0 | Fix static mounts using relative paths and prevent traversal exploits | abdusco 3243482 | While debugging why my static mounts using a relative path (`--static mystatic:rel/path/to/dir`) not working, I noticed that the requests fail no matter what, returning 404 errors. The reason is that datasette tries to prevent traversal exploits by checking if the path is relative to its registered directory. This check fails when the mount is a relative directory, because `/abs/dir/file` obviously not under `dir/file`. https://github.com/simonw/datasette/blob/81fa8b6cdc5457b42a224779e5291952314e8d20/datasette/utils/asgi.py#L303-L306 This also has the consequence of returning any requested file, because when `/abs/dir/../../evil.file` resolves `aiofiles` happily returns it to the client after it resolves the path itself. The solution is to make sure we're checking relativity of paths after they're fully resolved. I've implemented the mentioned changes and also updated the tests. | 2019-07-09T11:32:02Z | 2019-07-11T16:29:26Z | 2019-07-11T16:13:19Z | 2019-07-11T16:13:19Z | 74ecf8a7cc45cabf369e510c7214f5ed85c8c6d8 | 0 | fa7ddea3ea6c9378bee7d5f5c93fe05d735a0afb | 81fa8b6cdc5457b42a224779e5291952314e8d20 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/554 | ||||
297243073 | MDExOlB1bGxSZXF1ZXN0Mjk3MjQzMDcz | 559 | closed | 0 | Bump to uvicorn 0.8.4 | simonw 9599 | https://github.com/encode/uvicorn/commits/0.8.4 Query strings will now be included in log files: https://github.com/encode/uvicorn/pull/384 | 2019-07-12T22:30:29Z | 2019-07-13T22:34:58Z | 2019-07-13T22:34:58Z | 2019-07-13T22:34:58Z | d224ee2c98ac39c2c6e21a0ac0c62e5c3e1ccd11 | 0 | 029e3d53634cc38690d5b56427a3c87851a61b09 | f2006cca80040871439055ae6ccbc14e589bdf4b | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/559 | ||||
298962551 | MDExOlB1bGxSZXF1ZXN0Mjk4OTYyNTUx | 561 | closed | 0 | Fix typos | minho42 15278512 | 2019-07-18T15:13:35Z | 2019-07-26T10:25:45Z | 2019-07-26T10:25:45Z | 2019-07-26T10:25:45Z | 27cb29365c9f5f6f1492968d1268497193ed75a2 | 0 | 41341195075adc5093d33633d980657ecdac043c | a9453c4dda70bbf5122835e68f63db6ecbe1a6fc | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/561 | |||||
313384926 | MDExOlB1bGxSZXF1ZXN0MzEzMzg0OTI2 | 571 | closed | 0 | detect_fts now works with alternative table escaping | simonw 9599 | Fixes #570 | 2019-09-03T00:23:39Z | 2019-09-03T00:32:28Z | 2019-09-03T00:32:28Z | 2019-09-03T00:32:28Z | 2dc5c8dc259a0606162673d394ba8cc1c6f54428 | 0 | a85239f69261c10f1a9f90514c8b5d113cb94585 | f04deebec4f3842f7bd610cd5859de529f77d50e | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/571 | ||||
327279818 | MDExOlB1bGxSZXF1ZXN0MzI3Mjc5ODE4 | 592 | closed | 0 | Offer SQL formatting | rixx 2657547 | SQL code will be formatted on page load, and can additionally be formatted by clicking the "Format SQL" button. Closes #136 | 2019-10-11T16:35:49Z | 2019-10-14T08:57:12Z | 2019-10-14T03:46:13Z | 2019-10-14T03:46:13Z | af2e6a5cf186a7200d76cb67ac30fa59cc24d84e | 0 | b46195af65846ca30c6006520cc778eeed052324 | fffd69ec031b83f46680f192ba57a27f0d1f0b8a | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/592 | ||||
327188087 | MDExOlB1bGxSZXF1ZXN0MzI3MTg4MDg3 | 591 | closed | 0 | Sort databases on homepage by argument order | rixx 2657547 | Closes #585 | 2019-10-11T12:57:38Z | 2019-10-14T08:57:50Z | 2019-10-14T03:52:34Z | 2019-10-14T03:52:34Z | 908fc3999e06f3ccd3bb8ad0539490bbc7809748 | 0 | 5a8e52fa60f2c2c93f10b9c6c126f31b02d647b0 | fffd69ec031b83f46680f192ba57a27f0d1f0b8a | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/591 | ||||
327169748 | MDExOlB1bGxSZXF1ZXN0MzI3MTY5NzQ4 | 589 | closed | 0 | Display metadata footer on custom SQL queries | rixx 2657547 | Closes #408 | 2019-10-11T12:10:28Z | 2019-10-14T08:58:23Z | 2019-10-14T03:53:22Z | 2019-10-14T03:53:22Z | 12cec411cae73ba7211429da12cd32c551fe17b1 | 0 | 5627fe8d58e791e004b89b5614007d5e64a5c8e2 | fffd69ec031b83f46680f192ba57a27f0d1f0b8a | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/589 | ||||
329890320 | MDExOlB1bGxSZXF1ZXN0MzI5ODkwMzIw | 599 | closed | 0 | Fix for /foo v.s. /foo-bar issue in #597 | simonw 9599 | Refs #597 | 2019-10-18T19:22:55Z | 2019-10-18T22:51:07Z | 2019-10-18T22:51:07Z | 2019-10-18T22:51:07Z | b647b5efc29300f715ba656e41b0591f342938e1 | 0 | 8cc5a8dc35371f7d4353a4206b2d079f520c61cd | b6ad1fdc7068cb8248787843e7438d1f19fa2e3a | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/599 | ||||
329947180 | MDExOlB1bGxSZXF1ZXN0MzI5OTQ3MTgw | 601 | closed | 0 | Don't auto-format SQL on page load | simonw 9599 | Refs #600 | 2019-10-18T22:37:39Z | 2019-10-20T02:29:49Z | 2019-10-18T23:56:45Z | 2019-10-18T23:56:45Z | e877b1cb12076946fdbec7ca2fbfbfc75c1c2a28 | 0 | 3a963734590caa3ad69bfe64c31690f3e4de61a4 | b6ad1fdc7068cb8248787843e7438d1f19fa2e3a | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/601 | ||||
330129358 | MDExOlB1bGxSZXF1ZXN0MzMwMTI5MzU4 | 603 | closed | 0 | always pop as_format off args dict | chris48s 6025893 | closes #563 | 2019-10-20T15:44:22Z | 2019-10-30T19:12:22Z | 2019-10-21T02:03:09Z | 2019-10-21T02:03:09Z | f4c0830529a9513a83437a9e1550bbe27ebc5c64 | 0 | 39d044502590224e4f07c05e02fc8a4d312255c1 | 8050f9e1ece9afd0236ad38c6458c12a4ad917e6 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/603 | ||||
334448258 | MDExOlB1bGxSZXF1ZXN0MzM0NDQ4MjU4 | 609 | closed | 0 | Update to latest black | simonw 9599 | 2019-10-30T18:42:35Z | 2019-10-30T18:49:01Z | 2019-10-30T18:49:01Z | 2019-10-30T18:49:01Z | 5dd4d2b2d3abcfd507a6df47e7c2fbad3c552fd8 | 0 | 6f57e5e77bac29ac88d51271fd0c785859a820ce | f4c0830529a9513a83437a9e1550bbe27ebc5c64 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/609 | |||||
330076263 | MDExOlB1bGxSZXF1ZXN0MzMwMDc2MjYz | 602 | closed | 0 | Offer to format readonly SQL | rixx 2657547 | Following discussion in #601, this PR adds a "Format SQL" button to read-only SQL (if the SQL actually differs from the formatting result). It also removes a console error on readonly SQL queries. | 2019-10-20T02:29:32Z | 2019-11-04T07:29:33Z | 2019-11-04T02:39:56Z | 2019-11-04T02:39:56Z | ee330222f4c3ee66c2fe41ebc76fed56b9cb9a00 | 0 | 266c3dafb9bf3b12204b6152d7b48e94a131584a | 8050f9e1ece9afd0236ad38c6458c12a4ad917e6 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/602 | ||||
327172545 | MDExOlB1bGxSZXF1ZXN0MzI3MTcyNTQ1 | 590 | closed | 0 | Handle spaces in DB names | rixx 2657547 | Closes #503 | 2019-10-11T12:18:22Z | 2019-11-04T23:16:31Z | 2019-11-04T23:16:30Z | 2019-11-04T23:16:30Z | 931bfc66613aa3e22f8314df5c0d0758baf31f38 | 0 | 0c306e89e4f97f64921e4f6d1fe7bab52fad6ade | 52fa79c6075f0830ff635b81d957c64d877a05aa | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/590 | ||||
163561830 | MDExOlB1bGxSZXF1ZXN0MTYzNTYxODMw | 181 | closed | 0 | add "format sql" button to query page, uses sql-formatter | bsmithgall 1957344 | Cool project! This fixes #136 using the suggested [sql formatter](https://github.com/zeroturnaround/sql-formatter) library. I included the minified version in the bundle and added the relevant scripts to the codemirror includes instead of adding new files, though I could also add new files. I wanted to keep it all together, since the result of the format needs access to the editor in order to properly update the codemirror instance. | 2018-01-17T21:50:04Z | 2019-11-11T03:08:25Z | 2019-11-11T03:08:25Z | a9ac208088e536043890e0f7ff8a182398576a51 | 0 | 86ac746cfcbf2fa86863f8fab528494600eac1ae | a290f28caae61b47e76e825c06984f22fc41a694 | NONE | datasette 107914493 | https://github.com/simonw/datasette/pull/181 | |||||
285698310 | MDExOlB1bGxSZXF1ZXN0Mjg1Njk4MzEw | 501 | closed | 0 | Test against Python 3.8-dev using Travis | simonw 9599 | 2019-06-06T08:37:53Z | 2019-11-11T03:23:29Z | 2019-11-11T03:23:29Z | 1aac0cf0ab962060dd5cff19b8b179bb7fa0f00b | 0 | a5defb684fcc734f6325ca08beef9f49c3e7a298 | 5e8fbf7f6fbc0b63d0479da3806dd9ccd6aaa945 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/501 | ||||||
339236647 | MDExOlB1bGxSZXF1ZXN0MzM5MjM2NjQ3 | 623 | closed | 0 | Test against Python 3.8 in Travis | simonw 9599 | Needed for #622 | 2019-11-11T03:24:54Z | 2019-11-11T03:45:35Z | 2019-11-11T03:45:35Z | 2019-11-11T03:45:35Z | 1c063fae9dba70f70244db010d55a18846640f07 | 0 | 877dda2d287ed3b1772f051dffd295a69c3ecd27 | 28c4a6db5b5e512db630d7ba6127196185de67c7 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/623 | ||||
339244888 | MDExOlB1bGxSZXF1ZXN0MzM5MjQ0ODg4 | 624 | closed | 0 | Bump pint to 0.9 | simonw 9599 | 2019-11-11T04:07:07Z | 2019-11-11T04:19:02Z | 2019-11-11T04:19:02Z | 2019-11-11T04:19:02Z | 42ee3e16a9ba7cc513b8da944cc1609a5407cf42 | 0 | ed17117a2ad675cbf2430f28069bb1854846a6f0 | 1c063fae9dba70f70244db010d55a18846640f07 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/624 | |||||
327541046 | MDExOlB1bGxSZXF1ZXN0MzI3NTQxMDQ2 | 595 | closed | 0 | bump uvicorn to 0.9.0 to be Python-3.8 friendly | stonebig 4312421 | as uvicorn-0.9 is needed to get websockets-8.0.2, which is needed to have Python-3.8 compatibility | 2019-10-13T10:00:04Z | 2019-11-12T04:46:48Z | 2019-11-12T04:46:48Z | 5a7185bcd15aab28e86338b3771c25af13a94a4c | 0 | e1d92ea94ca8f14879ef280cb7dadab7eed76e9c | fffd69ec031b83f46680f192ba57a27f0d1f0b8a | NONE | datasette 107914493 | https://github.com/simonw/datasette/pull/595 | |||||
247923347 | MDExOlB1bGxSZXF1ZXN0MjQ3OTIzMzQ3 | 404 | closed | 0 | Experiment: run Jinja in async mode | simonw 9599 | See http://jinja.pocoo.org/docs/2.10/api/#async-support Tests all pass. Have not checked performance difference yet. Creating pull request to run tests in Travis. This is not ready to merge - I'm not yet sure if this is a good idea. | 2019-01-27T00:28:44Z | 2019-11-12T05:02:18Z | 2019-11-12T05:02:13Z | 773bcac907d17b16eef604ad943837da39a10090 | 0 | dd7f24a47f660e2f0fc1e97a13d28908c28dc245 | 909cc8fbdfc9c05e447f40e9a73489809602c3cd | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/404 | |||||
339722790 | MDExOlB1bGxSZXF1ZXN0MzM5NzIyNzkw | 627 | closed | 0 | Support Python 3.8, stop supporting Python 3.5 | simonw 9599 | Refs #622 | 2019-11-12T04:36:33Z | 2020-04-05T10:23:58Z | 2019-11-12T05:09:12Z | 2019-11-12T05:09:12Z | cf7776d36fbacefa874cbd6e5fcdc9fff7661203 | 0 | 18cc795b5c6ec9223a5cbc4f30b19710c17f7eaa | 42ee3e16a9ba7cc513b8da944cc1609a5407cf42 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/627 | ||||
339742432 | MDExOlB1bGxSZXF1ZXN0MzM5NzQyNDMy | 630 | closed | 0 | Use python:3.8 base Docker image | simonw 9599 | Closes #629 | 2019-11-12T06:02:37Z | 2019-11-12T06:03:10Z | 2019-11-12T06:03:10Z | 2019-11-12T06:03:10Z | d977fbadf70a96bf2eea1407d01f99d98e092dec | 0 | 53180ec09483bd4eef00346a39b302aeb3039e7d | f554be39fc14ddc18921ca29d3920d55aad03d46 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/630 | ||||
340211149 | MDExOlB1bGxSZXF1ZXN0MzQwMjExMTQ5 | 631 | closed | 0 | bugfix issue 572 | qwo 3683993 | closes bugfix issue #572 | 2019-11-13T02:46:50Z | 2019-11-13T04:28:43Z | 2019-11-13T04:28:42Z | 2019-11-13T04:28:42Z | 848dec4deb0d3c140a4e0394cac45fbb2593349b | 0 | ca43966e5aa832a377e4db5d411b6cc8b1c5b3ac | bbd00e903cdd49067ecdbdb60a4d225833a44b05 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/631 | ||||
322529381 | MDExOlB1bGxSZXF1ZXN0MzIyNTI5Mzgx | 578 | closed | 0 | Added support for multi arch builds | heussd 887095 | Minor changes in Dockerfile and new Makefile to support Docker multi architecture builds. `make`will build one image per architecture and push them as one Docker manifest to Docker Hub. Feel free to change `IMAGE_NAME ` to `datasetteproject/datasette` to update your official Docker Hub image(s). | 2019-09-29T18:43:03Z | 2019-11-13T19:13:15Z | 2019-11-13T19:13:15Z | ae1aa0929b9e62a413ec9b4a40588e6aafe50573 | 0 | ce6372bc6210ae52ac1951647b8fbaee40d64fc1 | 0fc8afde0eb5ef677f4ac31601540d6168c8208d | NONE | datasette 107914493 | https://github.com/simonw/datasette/pull/578 | |||||
232172106 | MDExOlB1bGxSZXF1ZXN0MjMyMTcyMTA2 | 389 | closed | 0 | Bump dependency versions | simonw 9599 | 2018-11-20T02:23:12Z | 2019-11-13T19:13:41Z | 2019-11-13T19:13:41Z | 9194c0165aef411e0784ba49939b1005306f1f38 | 0 | f8349b45916e68d2f89c57694bd0e6afaf1bd508 | 5e3a432a0caa23837fa58134f69e2f82e4f632a6 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/389 | ||||||
340743220 | MDExOlB1bGxSZXF1ZXN0MzQwNzQzMjIw | 635 | closed | 0 | Use Jinja async mode | simonw 9599 | Refs #628. Still needs documentation. | 2019-11-14T01:20:57Z | 2019-11-14T23:14:23Z | 2019-11-14T23:14:23Z | 2019-11-14T23:14:22Z | 8c642f04e0608bf537fdd1f76d64c2367fb04d57 | 0 | 0e8f8be1dbf89a6f689a5eea4a0534199a0028f6 | b51f258d00bb3c3b401f15d46a1fbd50394dbe1c | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/635 | ||||
365218391 | MDExOlB1bGxSZXF1ZXN0MzY1MjE4Mzkx | 660 | closed | 0 | gcloud run is now GA, s/beta// | glasnt 813732 | 2020-01-21T10:08:38Z | 2020-01-22T03:41:09Z | 2020-01-21T23:28:12Z | 2020-01-21T23:28:12Z | 34d77d780f68b778fd9d6ebbaf69f250436f055f | 0 | 894e96026b838288f926f62914123a1f86139793 | 3c861f363df02a59a67c59036278338e4760d2ed | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/660 | |||||
368734500 | MDExOlB1bGxSZXF1ZXN0MzY4NzM0NTAw | 663 | closed | 0 | -p argument for datasette package, plus tests - refs #661 | simonw 9599 | 2020-01-29T19:47:49Z | 2020-01-29T22:46:43Z | 2020-01-29T22:46:43Z | 2020-01-29T22:46:43Z | 67fc9c5720ed1fcd62b116481f70d4e80b403a22 | 0 | 8adfc9db7f15e36fed677be4a9c833ff2cdec0bc | 34d77d780f68b778fd9d6ebbaf69f250436f055f | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/663 | |||||
370675007 | MDExOlB1bGxSZXF1ZXN0MzcwNjc1MDA3 | 664 | closed | 0 | Datasette.render_template() method | simonw 9599 | Refs #577 | 2020-02-04T06:53:59Z | 2020-02-04T20:26:18Z | 2020-02-04T20:26:18Z | 2020-02-04T20:26:18Z | 70b915fb4bc214f9d064179f87671f8a378aa127 | 0 | 19d4406f562aca291fef04363802093672620220 | 286ed286b68793532c2a38436a08343b45cfbc91 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/664 | ||||
356004242 | MDExOlB1bGxSZXF1ZXN0MzU2MDA0MjQy | 653 | closed | 0 | allow leading comments in SQL input field | jaywgraves 418191 | this changes the SQL validation to allow for lines that are commented out my main use case for this is that I like to write a succession of queries when trying to solve a problem. In most native SQL clients there is a key binding that will run just the current highlighted query or the program is smart enough to run just the query that the cursor is in if it's properly delimited with a ';'. Typically my workflow will start with a single simple query and I'll copy/paste it to a new query below when I want to make big changes while debugging. This makes it easy to go back to a working version above when the query doesn't work. Since datasette sends the whole query to the DB I have to comment out the older queries by prefixing each line with `--`. This gets caught by the validators when I use my typical strategy of copy/pasting each successive query below the last one. so this is just a simple fix to allow for a query to be sent to the DB with leading comments. | 2019-12-21T14:19:52Z | 2020-02-05T02:35:41Z | 2020-02-05T02:13:25Z | 2020-02-05T02:13:25Z | 33a12c8ae526afb40a7819c9ca411c9d3c41219b | 0 | 3a4cb551b9a217d5798e3e9ad5d4b06234a81885 | d6b6c9171f3fd945c4e5e4144923ac831c43c208 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/653 | ||||
373775788 | MDExOlB1bGxSZXF1ZXN0MzczNzc1Nzg4 | 669 | closed | 0 | fix db-to-sqlite command in ecosystem doc page | adipasquale 883348 | the `--connection` parameter has become positional | 2020-02-11T17:05:41Z | 2020-02-22T02:32:18Z | 2020-02-22T02:32:17Z | 2020-02-22T02:32:17Z | be2265b0e811d0ac2875c2f748125c17b0f9289e | 0 | 6eb0e8cd90be82eff0a5152b0985c2a3cb7a44a8 | 30b6f71b306a43605c99bef79302ed5cb22d1924 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/669 | ||||
379192258 | MDExOlB1bGxSZXF1ZXN0Mzc5MTkyMjU4 | 683 | closed | 0 | .execute_write() and .execute_write_fn() methods on Database | simonw 9599 | See #682 - [x] Come up with design for `.execute_write()` and `.execute_write_fn()` - [x] Build some quick demo plugins to exercise the design - [x] Write some unit tests - [x] Write the documentation | 2020-02-24T19:51:58Z | 2020-05-30T18:40:20Z | 2020-02-25T04:45:08Z | 2020-02-25T04:45:08Z | a093c5f79fa034a97d2ad8b606745dd3b80365af | Datasette 1.0 3268330 | 0 | ec6e2edfe18446c9d77e3f30efbc299d27ea5c1b | 411056c4c43e74f2b3d0e3bc1175e7998516b1b3 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/683 | |||
379378780 | MDExOlB1bGxSZXF1ZXN0Mzc5Mzc4Nzgw | 686 | closed | 0 | ?_searchmode=raw option | simonw 9599 | Closes #676 | 2020-02-25T05:45:50Z | 2020-02-25T05:56:09Z | 2020-02-25T05:56:04Z | 2020-02-25T05:56:04Z | 6cb65555f46456eb31b62e855e21b1d8c809b1a2 | 0 | abc782cb342c21b565142e44e70502e61ac6756b | a093c5f79fa034a97d2ad8b606745dd3b80365af | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/686 | ||||
372763906 | MDExOlB1bGxSZXF1ZXN0MzcyNzYzOTA2 | 666 | closed | 0 | Use inspect-file, if possible, for total row count | kevindkeogh 13896256 | For large tables, counting the number of rows in the table can take a signficant amount of time. Instead, where an inspect-file is provided for an immutable database, look up the row-count for a plain count(*). | 2020-02-08T22:10:35Z | 2020-03-09T02:47:15Z | 2020-02-25T20:19:29Z | 2020-02-25T20:19:29Z | 3041c6b6412bbe317f8b9afd6529a15954f2c47e | 0 | 8947a60404b8242a03f9ebabc5f957d75f4dfe04 | b031fe97636b80b05fec409ee1dffb7d044fd4e9 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/666 | ||||
381666777 | MDExOlB1bGxSZXF1ZXN0MzgxNjY2Nzc3 | 688 | closed | 0 | Don't count rows on homepage for DBs > 100MB | simonw 9599 | Closes #649. | 2020-02-29T01:01:06Z | 2020-02-29T01:08:30Z | 2020-02-29T01:08:29Z | 2020-02-29T01:08:29Z | 7f5a330377fd7db1f6d1efa5686d183bcaf89217 | 0 | 025fdd46f77822c0cbeb7856611c0a65a9b83057 | 0f8e91c68f2d2ad48efc8324b12762bf8b58facd | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/688 | ||||
354869391 | MDExOlB1bGxSZXF1ZXN0MzU0ODY5Mzkx | 652 | closed | 0 | Quick (and uninformed and perhaps misguided) attempt to add a <base> url for hosting datasette at a particular host/URI | terrycojones 132978 | As usual, I don't really know what I'm doing... so this is just a suggested approach. I've not written tests, I've not run the tests, I don't know if I've missed some absolute URLs that would need to have the leading slash dropped. BUT, I tested it with `--config base_url:http://127.0.0.1:8001/` on the command line and from what little I know about datasette it's at least working in some obvious cases. My changes are based on what I saw in https://github.com/simonw/datasette/commit/8da2db4b71096b19e7a9ef1929369b8483d448bf (thanks!) I'm happy to be more thorough on this if you think it's worth pursuing. Fixes #394 (he said, optimistically). | 2019-12-18T23:37:16Z | 2020-03-24T22:14:50Z | 2020-03-24T22:14:50Z | 8e674de58c17c89c8a4a90bc3ec6e02151b354e5 | 0 | eaa636841e38d40360a74596ef1a0df50f6a86a5 | a498d0fe6590f9bdbc4faf9e0dd5faeb3b06002c | NONE | datasette 107914493 | https://github.com/simonw/datasette/pull/652 | |||||
393274433 | MDExOlB1bGxSZXF1ZXN0MzkzMjc0NDMz | 708 | closed | 0 | base_url configuration setting, refs #394 | simonw 9599 | Pull request implementing #394 | 2020-03-24T21:52:00Z | 2020-03-25T00:18:44Z | 2020-03-25T00:18:44Z | 2020-03-25T00:18:44Z | 7656fd64d8b6a32ebc34d89c1b8711cc5ea240f7 | Datasette 0.39 5234079 | 0 | b1f953b5de1bef239ddb1d133f9b2e19f8e3438a | a498d0fe6590f9bdbc4faf9e0dd5faeb3b06002c | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/708 | |||
397749653 | MDExOlB1bGxSZXF1ZXN0Mzk3NzQ5NjUz | 714 | closed | 0 | --metadata accepts YAML as well as JSON | simonw 9599 | Refs #713. Still needs tests and documentation. | 2020-04-02T18:36:02Z | 2020-04-02T19:30:54Z | 2020-04-02T19:30:54Z | 2020-04-02T19:30:54Z | 6717c719dd36dc2adc0f9da38a8c8e08129e96b4 | 0 | 5170c31adc44f6ef14b21782ba6f8ecb46dd9450 | 2aaad72789c427875426673c1a43e67c86fc970e | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/714 | ||||
409123897 | MDExOlB1bGxSZXF1ZXN0NDA5MTIzODk3 | 737 | closed | 0 | Custom pages mechanism, refs #648 | simonw 9599 | Refs #648. TODO: - [x] Pass a `view_name` to `render_template()` - [x] Mechanism for custom status code / headers / redirect - [x] Documentation | 2020-04-26T17:31:41Z | 2020-04-26T18:46:43Z | 2020-04-26T18:46:43Z | 2020-04-26T18:46:43Z | 304e7b1d9fd904ae1c35600bc03662eb90eeeae0 | 0 | b5bbf1bd88f67a26eb34902bc11f2da7692c7af2 | 227bb3e91fe34811a9374150798643a5af98ed79 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/737 | ||||
409153870 | MDExOlB1bGxSZXF1ZXN0NDA5MTUzODcw | 739 | closed | 0 | Configuration directory mode | simonw 9599 | Refs #731 TODO: - [x] Decide how to combine explicit command-line options with items detected from the directory structure - [x] Add unit tests - [x] Implement `inspect-data.json` mechanism for populating `immutables` - [x] Add documentation | 2020-04-26T20:37:46Z | 2020-04-27T16:30:25Z | 2020-04-27T16:30:25Z | 2020-04-27T16:30:25Z | 25014ca25eb70b4c1217558ebd14db2845973bfb | 0 | 0d8fa53fab672fcf16b6a75aa55b07ccd243fb96 | 1b7b66c465e44025ec73421bd69752e42f108321 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/739 | ||||
410469272 | MDExOlB1bGxSZXF1ZXN0NDEwNDY5Mjcy | 746 | closed | 0 | shutil.Error, not OSError | simonw 9599 | Refs #744 | 2020-04-29T03:30:51Z | 2020-04-29T07:07:24Z | 2020-04-29T07:07:23Z | e4e8b51b50e51b2515c6d8874d16c4607f79b80a | 0 | af3a5b91503f5d74aa111bbcd1ee531ee00f9ed7 | 89c4ddd4828623888e91a1d2cb396cba12d4e7b4 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/746 | |||||
406677205 | MDExOlB1bGxSZXF1ZXN0NDA2Njc3MjA1 | 730 | closed | 0 | Update pytest-asyncio requirement from ~=0.10.0 to >=0.10,<0.12 | dependabot-preview[bot] 27856297 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/1026c39495a963ff3e5fee7da2ae9f3a5d21fb83"><code>1026c39</code></a> 0.11.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/ab2b14048a691479fa9f8811aaa558018c6db6e3"><code>ab2b140</code></a> Test on Python 3.8, drop 3.3 and 3.4</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/6397a2255e3e9ef858439b164018438a8106f454"><code>6397a22</code></a> plugin: Use pytest 5.4.0 new Function API</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/21a0f9476be84ca0c84af60057f0f24c5fb2fd71"><code>21a0f94</code></a> Replace yield_fixture() by fixture()</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/964b295ba280a6e217159706279b67f8f4cbb5f4"><code>964b295</code></a> Added min hypothesis version so that bugfix for <a href="https://github.com/Hypothesis">https://github.com/Hypothesis</a>...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/4a11a206fbcf88ee18cbed2d01041e61c20a9a48"><code>4a11a20</code></a> Add max supported pytest version to < 5.4.0 to prevent fails until <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/141">#141</a> is fi...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b3055940db49cc17e36b66631e3d863e15fe34e4"><code>b305594</code></a> Change event_loop to module scope in hypothesis tests, fixing <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/145">#145</a>.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/d5a0f4789e7fecb58d509409e2c537b206c4fde2"><code>d5a0f47</code></a> Enable test_subprocess to be run on win, by changing to ProactorEventLoop in ...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/d07cd2d447cf313446c4e00e25a35cb2adcb2c63"><code>d07cd2d</code><… | 2020-04-21T13:32:35Z | 2020-05-04T13:27:24Z | 2020-05-04T13:27:23Z | 460708c7107a7cf15971a9aa1040635f6bc1be6d | 0 | 11c67f82cdccc6e34cbff717e673451ac6172ef4 | 15e232180427e988174fdf88440c84b91d2d98d1 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/730 | |||||
402645984 | MDExOlB1bGxSZXF1ZXN0NDAyNjQ1OTg0 | 725 | closed | 0 | Update aiofiles requirement from ~=0.4.0 to >=0.4,<0.6 | dependabot-preview[bot] 27856297 | Updates the requirements on [aiofiles](https://github.com/Tinche/aiofiles) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Tinche/aiofiles/commit/9a2141e6c51013995ed8b72b121e4e0a27af77b5"><code>9a2141e</code></a> 0.5.0</li> <li><a href="https://github.com/Tinche/aiofiles/commit/479b7eea2c54a9daadb26d1073770e5a50f9ca27"><code>479b7ee</code></a> Update README</li> <li><a href="https://github.com/Tinche/aiofiles/commit/6c247a2cfd1e12f8359aeff04bfe3510f5ef0dc2"><code>6c247a2</code></a> Modernize tests</li> <li><a href="https://github.com/Tinche/aiofiles/commit/eec75d3f425d53306b6aaa8a6005344e56350312"><code>eec75d3</code></a> Switch to async def wherever possible</li> <li><a href="https://github.com/Tinche/aiofiles/commit/786c3e9293a37f63ae1c72b115498d038b5828a0"><code>786c3e9</code></a> Prepare for 3.8</li> <li><a href="https://github.com/Tinche/aiofiles/commit/145107595fe72b877005fb4ebf9d77ffb754689a"><code>1451075</code></a> Update README.rst</li> <li><a href="https://github.com/Tinche/aiofiles/commit/5db1e380e307d0f96177d18db778f82ea0ef87ce"><code>5db1e38</code></a> Add several async os functions</li> <li><a href="https://github.com/Tinche/aiofiles/commit/a60f19bb7b6bd5b063f853d8cae2c41a6878841f"><code>a60f19b</code></a> Add async remove function</li> <li><a href="https://github.com/Tinche/aiofiles/commit/9cf2ac8f9d43446ecdf71c95d05ad6a95bec7377"><code>9cf2ac8</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Tinche/aiofiles/issues/53">#53</a> from graingert/patch-1</li> <li><a href="https://github.com/Tinche/aiofiles/commit/b88912c6a7a13597b8c5ac93093d7eef86ab1ebb"><code>b88912c</code></a> <strong>all</strong> should be a List[str]</li> <li>Additional commits viewable in <a href="https://github.com/Tinche/aiofiles/compare/v0.4.0...v0.5.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@… | 2020-04-13T13:32:47Z | 2020-05-04T18:16:54Z | 2020-05-04T16:17:49Z | 2020-05-04T16:17:49Z | 985e59493e44d6fcebf7a30f693f4edecee3e90d | 0 | a7053e8d17559a6ebb4265c0783b84cc6aaff7e2 | d349d57cdf3d577afb62bdf784af342a4d5be660 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/725 | ||||
406067019 | MDExOlB1bGxSZXF1ZXN0NDA2MDY3MDE5 | 728 | closed | 0 | Update mergedeep requirement from ~=1.1.1 to >=1.1.1,<1.4.0 | dependabot-preview[bot] 27856297 | Updates the requirements on [mergedeep](https://github.com/clarketm/mergedeep) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clarketm/mergedeep/commit/3d6e7b4c9c25b64eba0834da6f54c8dd309767ea"><code>3d6e7b4</code></a> v1.3.0 - support additive merging of <code>Counter</code> types</li> <li><a href="https://github.com/clarketm/mergedeep/commit/56a258a0b58366aa205322476db1b3f84aac65d9"><code>56a258a</code></a> v1.2.1 - tidy docs and variable names</li> <li><a href="https://github.com/clarketm/mergedeep/commit/61ab21382ba20d7973a848c942eb36bd33bc7cd0"><code>61ab213</code></a> v1.2.0 - support both TYPESAFE_REPLACE and TYPESAFE_ADDITIVE merge strategies...</li> <li><a href="https://github.com/clarketm/mergedeep/commit/b331bb5f1580d8290dcf5c6e7690fd3b9708b5cd"><code>b331bb5</code></a> cleanup Makefile</li> <li><a href="https://github.com/clarketm/mergedeep/commit/6f577bf29750c073f6764ffbea29ab6d6759a8d3"><code>6f577bf</code></a> officially label support for python3.8</li> <li><a href="https://github.com/clarketm/mergedeep/commit/84faf37d2da81d4356a4ade4c015fc3964262585"><code>84faf37</code></a> use pipenv for managing dev dependencies</li> <li><a href="https://github.com/clarketm/mergedeep/commit/3a8761a736c8cb7a324bd9e6f4d50a58898a3ba9"><code>3a8761a</code></a> Update README.md</li> <li>See full diff in <a href="https://github.com/clarketm/mergedeep/compare/v1.1.1...v1.3.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge th… | 2020-04-20T13:33:23Z | 2020-05-04T16:45:58Z | 2020-05-04T16:45:49Z | 2020-05-04T16:45:49Z | e232f77055880b38cc0b738607cd50cde9188eaf | 0 | b584fbc4215d92df08360937916ffe128f11f72e | 985e59493e44d6fcebf7a30f693f4edecee3e90d | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/728 | ||||
407929128 | MDExOlB1bGxSZXF1ZXN0NDA3OTI5MTI4 | 734 | closed | 0 | Update janus requirement from ~=0.4.0 to >=0.4,<0.6 | dependabot-preview[bot] 27856297 | Updates the requirements on [janus](https://github.com/aio-libs/janus) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/janus/blob/master/CHANGES.rst">janus's changelog</a>.</em></p> <blockquote> <h1>0.5.0 (2020-04-23)</h1> <ul> <li>Remove explicit loop arguments and forbid creating queues outside event loops <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/246">#246</a></li> </ul> <h1>0.4.0 (2018-07-28)</h1> <ul> <li>Add <code>py.typed</code> macro <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/89">#89</a></li> <li>Drop python 3.4 support and fix minimal version python3.5.3 <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/88">#88</a></li> <li>Add property with that indicates if queue is closed <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/86">#86</a></li> </ul> <h1>0.3.2 (2018-07-06)</h1> <ul> <li>Fixed python 3.7 support <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/97">#97</a></li> </ul> <h1>0.3.1 (2018-01-30)</h1> <ul> <li>Fixed bug with join() in case tasks are added by sync_q.put() <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/75">#75</a></li> </ul> <h1>0.3.0 (2017-02-21)</h1> <ul> <li>Expose unfinished_tasks property <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/34">#34</a></li> </ul> <h1>0.2.4 (2016-12-05)</h1> <ul> <li>Restore tarball deploying</li> </ul> <h1>0.2.3 (2016-07-12)</h1> <ul> <li>Fix exception type</li> </ul> <h1>0.2.2 (2016-07-11)</h1> <ul> <li>Update asyncio.async() to use asyncio.ensure_future() <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/6">#6</a></li> </ul> <h1>0.2.1 (2016-03-24)</h1> <ul> <li>Fix python setup.py test command <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/4">#4</a></li> </ul> <h1>0.2.0 (2015-09-20)</h1> </tr></table> ... (truncated) </blockquote> </details> <details> <summary>Commits</summ… | 2020-04-23T13:43:45Z | 2020-05-04T16:48:14Z | 2020-05-04T16:48:04Z | 2020-05-04T16:48:04Z | 109c5a430d53fe38b1300e0daa20f5cef047a08e | 0 | 281b2c1acf1a2ef39c784dc73f1eb184d898d369 | e232f77055880b38cc0b738607cd50cde9188eaf | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/734 | ||||
400579136 | MDExOlB1bGxSZXF1ZXN0NDAwNTc5MTM2 | 722 | closed | 0 | Update jinja2 requirement from ~=2.10.3 to >=2.10.3,<2.12.0 | dependabot-preview[bot] 27856297 | Updates the requirements on [jinja2](https://github.com/pallets/jinja) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/releases">jinja2's releases</a>.</em></p> <blockquote> <h2>2.11.1</h2> <p>This fixes an issue in async environment when indexing the result of an attribute lookup, like <code>{{ data.items[1:] }}</code>.</p> <ul> <li>Changes: <a href="https://jinja.palletsprojects.com/en/2.11.x/changelog/#version-2-11-1">https://jinja.palletsprojects.com/en/2.11.x/changelog/#version-2-11-1</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/blob/master/CHANGES.rst">jinja2's changelog</a>.</em></p> <blockquote> <h1>Version 2.11.1</h1> <p>Released 2020-01-30</p> <ul> <li>Fix a bug that prevented looking up a key after an attribute (<code>{{ data.items[1:] }}</code>) in an async template. 1141</li> </ul> <h1>Version 2.11.0</h1> <p>Released 2020-01-27</p> <ul> <li>Drop support for Python 2.6, 3.3, and 3.4. This will be the last version to support Python 2.7 and 3.5.</li> <li>Added a new <code>ChainableUndefined</code> class to support getitem and getattr on an undefined object. 977</li> <li>Allow <code>{%+</code> syntax (with NOP behavior) when <code>lstrip_blocks</code> is disabled. 748</li> <li>Added a <code>default</code> parameter for the <code>map</code> filter. 557</li> <li>Exclude environment globals from meta.find_undeclared_variables. 931</li> <li>Float literals can be written with scientific notation, like 2.56e-3. 912, 922</li> <li>Int and float literals can be written with the '_' separator for legibility, like 12_345. 923</li> <li>Fix a bug causing deadlocks in <code>LRUCache.setdefault</code>. 1000</li> <li>The <code>trim</code> filter takes an optional string of characters to trim. 828</li> <li>A new <code>jinja2.ext.debug</code> extension adds a <code>{% debug %}</code> tag to quickly dump the current context and available filte… | 2020-04-08T01:25:24Z | 2020-05-04T17:13:26Z | 2020-05-04T17:13:16Z | 2020-05-04T17:13:16Z | aa064de3f400899dbf61f2d33a035fba4017596c | 0 | 0a503b7fdb0cce1bb82e18c4552a4f92808fe41f | d55fe8cdfc2ce7bc6960bf2507766c1fcd1d31a7 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/722 | ||||
400579077 | MDExOlB1bGxSZXF1ZXN0NDAwNTc5MDc3 | 721 | closed | 0 | Update pytest requirement from ~=5.2.2 to >=5.2.2,<5.5.0 | dependabot-preview[bot] 27856297 | Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>5.4.1</h2> <h1>pytest 5.4.1 (2020-03-13)</h1> <h2>Bug Fixes</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6909">#6909</a>: Revert the change introduced by <a href="https://github-redirect.dependabot.com/pytest-dev/pytest/pull/6330">#6330</a>, which required all arguments to <code>@pytest.mark.parametrize</code> to be explicitly defined in the function signature.</p> <p>The intention of the original change was to remove what was expected to be an unintended/surprising behavior, but it turns out many people relied on it, so the restriction has been reverted.</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6910">#6910</a>: Fix crash when plugins return an unknown stats while using the <code>--reportlog</code> option.</p> </li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/blob/master/CHANGELOG.rst">pytest's changelog</a>.</em></p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest/commit/3d0f3baa2bb89257dfff25ae6ebabd565287240e"><code>3d0f3ba</code></a> Preparing release version 5.4.1</li> <li><a href="https://github.com/pytest-dev/pytest/commit/b9e2cd0a81e043bdb409e7078db9af4c4d38da54"><code>b9e2cd0</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6914">#6914</a> from nicoddemus/revert-6330</li> <li><a href="https://github.com/pytest-dev/pytest/commit/a84fcbf5b2fc007a1630a1ddd60b0a2438b61642"><code>a84fcbf</code></a> Revert "[parametrize] enforce explicit argnames declaration (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6330">#6330</a>… | 2020-04-08T01:25:04Z | 2020-05-04T17:13:49Z | 2020-05-04T17:13:41Z | 2020-05-04T17:13:41Z | c91fb9e3d4f0632d4ef25a21165739ab88a9d491 | 0 | 54ea56285f9512c991e343ffad9d848d551977de | d55fe8cdfc2ce7bc6960bf2507766c1fcd1d31a7 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/721 | ||||
399166433 | MDExOlB1bGxSZXF1ZXN0Mzk5MTY2NDMz | 719 | closed | 0 | asgi: check raw_path is not None | cldellow 193185 | The ASGI spec (https://asgi.readthedocs.io/en/latest/specs/www.html#http) seems to imply that `None` is a valid value, so we need to check the value itself, not just whether the key is present. In particular, the [mangum](https://github.com/erm/mangum) adapter passes `None` for this key's value. This change permits mangum to be used to front datasette in Amazon API Gateway + AWS Lambda deployments. | 2020-04-05T16:53:58Z | 2020-05-04T17:14:26Z | 2020-05-04T17:14:26Z | 2020-05-04T17:14:26Z | dbd2d70b3819a7041bb36a527033d77c85683c05 | 0 | 161f61d73800a605354b4ac44a3c989e19bbc77a | e0e7a0facfc935a835cd73c720bc46661462f0b1 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/719 | ||||
400578979 | MDExOlB1bGxSZXF1ZXN0NDAwNTc4OTc5 | 720 | closed | 0 | Update beautifulsoup4 requirement from ~=4.8.1 to >=4.8.1,<4.10.0 | dependabot-preview[bot] 27856297 | Updates the requirements on [beautifulsoup4](http://www.crummy.com/software/BeautifulSoup/bs4/) to permit the latest version. Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- **Note:** This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit. You can always request more updates by clicking `Bump now` in your [Dependabot dashboard](https://app.dependabot.com). <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot u… | 2020-04-08T01:24:38Z | 2020-05-04T17:14:51Z | 2020-05-04T17:14:46Z | 2020-05-04T17:14:46Z | 707fe039947b3e48f2b6dcfe8e577d76b617f2a5 | 0 | ab76bf88f597e61668dc6fc750502f8db207bd9c | d55fe8cdfc2ce7bc6960bf2507766c1fcd1d31a7 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/720 | ||||
412951191 | MDExOlB1bGxSZXF1ZXN0NDEyOTUxMTkx | 753 | closed | 0 | Update pytest-asyncio requirement from ~=0.10.0 to >=0.10,<0.13 | dependabot-preview[bot] 27856297 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b8e2a45e152a196cef7fdb6ddcf3e2d67a0f01ca"><code>b8e2a45</code></a> 0.12.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/06580c6413e905c5fddcc57c2895e9d3d2913847"><code>06580c6</code></a> Update changelog</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b45de23c0de0acc843c3f871985ba16fdfb1d5fd"><code>b45de23</code></a> Fixed failing test case, 'test_asyncio_marker_without_loop'.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/238ccedde8a196c16007a8a2b1ea1eeeb8db86a3"><code>238cced</code></a> Put event_loop first among the fixtures of asyncio tests, fixes <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/154">#154</a>.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/e5e3dc7a90685a56747a2d4c3c770d74d573c497"><code>e5e3dc7</code></a> Added unittests for issue <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/154">#154</a>.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/a7e5795335b823b4d58bb6b38b6e653f0e0d35b0"><code>a7e5795</code></a> 0.12.0 open for business!</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/1026c39495a963ff3e5fee7da2ae9f3a5d21fb83"><code>1026c39</code></a> 0.11.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/ab2b14048a691479fa9f8811aaa558018c6db6e3"><code>ab2b140</code></a> Test on Python 3.8, drop 3.3 and 3.4</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/6397a2255e3e9ef858439b164018438a8106f454"><code>6397a22</code></a> plugin: Use pytest 5.4.0 new Function API</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/21a0f9476be84ca0c84af60057f0f24c5fb2fd71"><code>21a0f94</code></a> Replace yield_fixture() by fixture()</li>… | 2020-05-04T13:27:19Z | 2020-05-04T17:41:01Z | 2020-05-04T17:40:49Z | 2020-05-04T17:40:49Z | b314e088c59425122fb2b2abde8741010d9d274a | 0 | 877fb569d2ae460ce845c7c855b02e0cdac23b68 | 707fe039947b3e48f2b6dcfe8e577d76b617f2a5 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/753 | ||||
415286105 | MDExOlB1bGxSZXF1ZXN0NDE1Mjg2MTA1 | 763 | closed | 0 | Documentation + improvements for db.execute() and Results class | simonw 9599 | Refs #685 Still TODO: - [x] Implement `results.first()` - [x] Implement `results.single_value()` - [x] Unit tests for the above | 2020-05-08T15:16:02Z | 2020-06-11T16:05:48Z | 2020-05-08T16:05:46Z | 2020-05-08T16:05:46Z | 4433306c1855ad69840cc76cbd41086137572be2 | 0 | 1ea62c77221d07cd121367f1c6b620f8bde0716a | 69e3a855dd7e5a77409d70b18c45ae3c1a145a75 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/763 | ||||
421491810 | MDExOlB1bGxSZXF1ZXN0NDIxNDkxODEw | 768 | closed | 0 | Use dirs_exist_ok=True | simonw 9599 | Refs #744 | 2020-05-21T17:53:44Z | 2020-05-27T20:21:56Z | 2020-05-21T17:53:51Z | 2020-05-21T17:53:51Z | cee671a58f417f827d1735b1abaa40716534ea67 | Datasette 0.43 5471110 | 0 | f2e0a558238a34dc482803762de2509474a178c6 | faea5093b865031f650da7da6539430f732f511a | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/768 | |||
424032445 | MDExOlB1bGxSZXF1ZXN0NDI0MDMyNDQ1 | 769 | closed | 0 | Backport of Python 3.8 shutil.copytree | simonw 9599 | Closes #744 | 2020-05-27T18:17:15Z | 2020-05-27T20:21:56Z | 2020-05-27T18:17:44Z | 2020-05-27T18:17:44Z | 2d099ad9c657d2cab59de91cdb8bfed2da236ef6 | Datasette 0.43 5471110 | 0 | 6f80757f27e4651e6533856ea87b676dbc0d9c37 | cee671a58f417f827d1735b1abaa40716534ea67 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/769 | |||
424085264 | MDExOlB1bGxSZXF1ZXN0NDI0MDg1MjY0 | 772 | closed | 0 | Test that plugin hooks are unit tested | simonw 9599 | Refs #771 | 2020-05-27T20:01:32Z | 2020-05-27T20:21:56Z | 2020-05-27T20:16:03Z | 2020-05-27T20:16:02Z | da87e963bff24e47878a5bc2025c8bfc63d4bc93 | Datasette 0.43 5471110 | 0 | 173b6947521f1c1b47a119f62f379bf4278c87c9 | 41a0cd7b6afe0397efbbf27ad822679fc574811a | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/772 | |||
425531205 | MDExOlB1bGxSZXF1ZXN0NDI1NTMxMjA1 | 783 | closed | 0 | Authentication: plugin hooks plus default --root auth mechanism | simonw 9599 | See #699 | 2020-05-30T22:25:47Z | 2020-06-01T01:16:44Z | 2020-06-01T01:16:43Z | 2020-06-01T01:16:43Z | 57cf5139c552cb7feab9947daa949ca434cc0a66 | 0 | 116a26ce2d4af26c928e361e1b24dd6a6bb14eca | c4fbe50676929b512940aab90de590a78ac5d7fc | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/783 | ||||
391924509 | MDExOlB1bGxSZXF1ZXN0MzkxOTI0NTA5 | 703 | closed | 0 | WIP implementation of writable canned queries | simonw 9599 | Refs #698. | 2020-03-21T22:23:51Z | 2020-06-03T00:08:14Z | 2020-06-02T23:57:35Z | 80c5a74a947e63673389604de12e80fa27305454 | 1 | 61e40e917efc43a8aea5298a22badbb6eaea3fa1 | 89c4ddd4828623888e91a1d2cb396cba12d4e7b4 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/703 | |||||
426891471 | MDExOlB1bGxSZXF1ZXN0NDI2ODkxNDcx | 796 | closed | 0 | New WIP writable canned queries | simonw 9599 | Refs #698. Replaces #703 Still todo: - [x] Unit tests - ~~Figure out `.json` mode~~ - [x] Flash message solution - ~~CSRF protection~~ - [x] Better error message display on errors - [x] Documentation - ~~Maybe widgets?~~ I'll do these later | 2020-06-03T00:08:00Z | 2020-06-03T15:16:52Z | 2020-06-03T15:16:50Z | 2020-06-03T15:16:50Z | aa82d0370463580f2cb10d9617f1bcbe45cc994a | Datasette 1.0 3268330 | 0 | e164939de719b5930ca4972e20490c9b2fd37f6d | 9690ce606823bbfceb0c50d59e03adf7bb1a8475 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/796 | |||
428212421 | MDExOlB1bGxSZXF1ZXN0NDI4MjEyNDIx | 798 | closed | 0 | CSRF protection | simonw 9599 | Refs #793 | 2020-06-05T04:22:35Z | 2020-06-06T00:43:41Z | 2020-06-05T19:05:58Z | 2020-06-05T19:05:57Z | 84a9c4ff75460f91c049bd30bba3cee1fd89d9e2 | Datasette 0.44 5512395 | 0 | fe43963376b1c44ec23a213277bcb33d98e4aef9 | d96ac1d52cacf34bae09705eb8f9a0e3f81c426b | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/798 | |||
429366641 | MDExOlB1bGxSZXF1ZXN0NDI5MzY2NjQx | 803 | closed | 0 | Canned query permissions | simonw 9599 | Refs #800. Closes #786 | 2020-06-06T18:20:00Z | 2020-06-06T19:40:21Z | 2020-06-06T19:40:20Z | 2020-06-06T19:40:20Z | 415ccd7cbdeebfb52f514a0387221023aa8b4d91 | 0 | 3359d54a4eb9c9725c27a85437661b5180c4099a | 9c563d6aed072f14d3d25f58e84659f9caa1a243 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/803 | ||||
431478724 | MDExOlB1bGxSZXF1ZXN0NDMxNDc4NzI0 | 819 | closed | 0 | register_routes() plugin hook | simonw 9599 | Refs #215 | 2020-06-09T01:20:44Z | 2020-06-09T03:12:08Z | 2020-06-09T03:12:07Z | 2020-06-09T03:12:07Z | f5e79adf26d0daa3831e3fba022f1b749a9efdee | Datasette 0.44 5512395 | 0 | 18127f074efc1b0148d1098da063e51ccea7797c | 647c5ff0f3e8140f40d7f41f0874ce4e1f4df65c | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/819 | |||
429613893 | MDExOlB1bGxSZXF1ZXN0NDI5NjEzODkz | 809 | closed | 0 | Publish secrets | simonw 9599 | Refs #787. Will need quite a bit of manual testing since this involves code which runs against Heroku and Cloud Run. | 2020-06-07T02:00:31Z | 2020-06-11T16:02:13Z | 2020-06-11T16:02:03Z | 2020-06-11T16:02:03Z | 98632f0a874b7b9dac6abf0abb9fdb7e2839a4d3 | Datasette 0.44 5512395 | 0 | abdac31328646705a957d58429b88d185ef43ded | ce4958018ede00fbdadf0c37a99889b6901bfb9b | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/809 | |||
434055752 | MDExOlB1bGxSZXF1ZXN0NDM0MDU1NzUy | 844 | closed | 0 | Action to run tests and upload coverage report | simonw 9599 | Refs #843 | 2020-06-13T20:52:47Z | 2020-06-13T21:36:52Z | 2020-06-13T21:36:50Z | 2020-06-13T21:36:50Z | cf7a2bdb404734910ec07abc7571351a2d934828 | 0 | 1210d9f41841bdca450f85a2342cdb0ff339c1b4 | 80c18a18fc444b89cc12b73599d56e091f3a3c87 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/844 | ||||
439203808 | MDExOlB1bGxSZXF1ZXN0NDM5MjAzODA4 | 866 | closed | 0 | Update pytest-asyncio requirement from <0.13,>=0.10 to >=0.10,<0.15 | dependabot-preview[bot] 27856297 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/53f3da7aefc719e62cbaa89e57ab68a7e12cc3c3"><code>53f3da7</code></a> Prepare for release</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/e99569de645c37fc048964ab4c5073529080fd86"><code>e99569d</code></a> A line is added to the changelog.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/4099b6351793611acabd8b26d93aabd44ce200c5"><code>4099b63</code></a> One import is not needed</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/68513b33616ff2ef93972acf1b992e7b1a18c4d1"><code>68513b3</code></a> Clarify names and comments, according to yanlend comments 26 May</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/907e8f24b9444f50cb30f17265665706882bc01f"><code>907e8f2</code></a> FIX new test_cases on python 3.5 & 3.6</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/51d986cec83fdbc14fa08015424c79397afc7ad9"><code>51d986c</code></a> To solve test cases that fail:</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/f97e900f1fcb51a572a1b861c95ac49e69bbfdf9"><code>f97e900</code></a> 1) Test case (test_async_fixtures_with_finalizer) refactoring to pass on pyth...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/c1131f8b5313189508dc81d7ef1937ccb136658b"><code>c1131f8</code></a> 1) A new test case that fails with 0.12.0, and pass with this commit.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/7a255bc4cf82aba7aa4b213c1a97c81d532c1e85"><code>7a255bc</code></a> 0.13.0 open for business</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b8e2a45e152a196cef7fdb6ddcf3e2d67a0f01ca"><code>b8e2a45</code></a> 0.12.0</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-asyncio/compare/v0.10.0...v0.14.0… | 2020-06-24T13:21:47Z | 2020-06-24T18:50:57Z | 2020-06-24T18:50:56Z | 2020-06-24T18:50:56Z | 1bb33dab49fd25f77b9f8e7ab7ee23b3d64c123c | 0 | fb64dda76dda7354a77cb50c5864aff67a6fef8d | 1a5b7d318fa923edfcefd3df8f64dae2e9c49d3f | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/866 | ||||
440946817 | MDExOlB1bGxSZXF1ZXN0NDQwOTQ2ODE3 | 869 | closed | 0 | Magic parameters for canned queries | simonw 9599 | Implementation for #842 TODO: - [x] Add tests for built-in magic parameters - [x] Magic parameters should not show up as blank form fields on the query page - [x] Update documentation for new `_request_X` (now called `_header_X`) implementation where X is a key from the ASGI scope - [x] Make sure these only work for canned queries, not for arbitrary SQL queries (security issue) - [x] Add test for the `register_magic_parameters` plugin hook - [x] Add documentation for the `register_magic_parameters` plugin hook | 2020-06-27T18:37:21Z | 2020-06-28T02:58:18Z | 2020-06-28T02:58:17Z | 2020-06-28T02:58:17Z | 563f5a2d3ab30ad08daee38f5ec3ed6429ac9206 | Datasette 0.45 5533512 | 0 | 9e693a7aae3b4a0882881e3a1c182e1c0c753efd | 4b142862f237f95a731cb8263a293eda70d13c82 | OWNER | datasette 107914493 | https://github.com/simonw/datasette/pull/869 | |||
434085235 | MDExOlB1bGxSZXF1ZXN0NDM0MDg1MjM1 | 848 | closed | 0 | Reload support for config_dir mode. | amjith 49260 | A reference implementation for adding support to reload when datasette is in the config_dir mode. This implementation is flawed since it is watching the entire directory and any changes to the database will reload the server and adding unrelated files to the directory will also reload the server. | 2020-06-14T02:34:46Z | 2020-07-03T02:44:54Z | 2020-07-03T02:44:53Z | 888538efdbf545c0df524ca590a17fb6c6fa2419 | 0 | 0d100d15aca93fae200b3bc2e29dfd60aaa4b384 | 57879dc8b346a435804a9e45ffaacbf2a0228bc6 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/848 | |||||
443823040 | MDExOlB1bGxSZXF1ZXN0NDQzODIzMDQw | 890 | closed | 0 | Load only python files from plugins-dir. | amjith 49260 | The current behavior for `--plugins-dir` is to load every file in that folder as a python module. This can result in errors if there are non-python files in the plugins dir (such as .mypy_cache). This PR restricts the module loading to only python files. | 2020-07-03T02:47:32Z | 2020-07-03T03:08:33Z | 2020-07-03T03:08:33Z | 2020-07-03T03:08:33Z | ea99a4431ce5bc2d65a3496da5b38e1986550a96 | 0 | 745af3b72d95d91f3ccd703f4fab819bc9f4b6a4 | 57879dc8b346a435804a9e45ffaacbf2a0228bc6 | CONTRIBUTOR | datasette 107914493 | https://github.com/simonw/datasette/pull/890 |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [pull_requests] ( [id] INTEGER PRIMARY KEY, [node_id] TEXT, [number] INTEGER, [state] TEXT, [locked] INTEGER, [title] TEXT, [user] INTEGER REFERENCES [users]([id]), [body] TEXT, [created_at] TEXT, [updated_at] TEXT, [closed_at] TEXT, [merged_at] TEXT, [merge_commit_sha] TEXT, [assignee] INTEGER REFERENCES [users]([id]), [milestone] INTEGER REFERENCES [milestones]([id]), [draft] INTEGER, [head] TEXT, [base] TEXT, [author_association] TEXT, [repo] INTEGER REFERENCES [repos]([id]), [url] TEXT, [merged_by] INTEGER REFERENCES [users]([id]) , [auto_merge] TEXT); CREATE INDEX [idx_pull_requests_merged_by] ON [pull_requests] ([merged_by]); CREATE INDEX [idx_pull_requests_repo] ON [pull_requests] ([repo]); CREATE INDEX [idx_pull_requests_milestone] ON [pull_requests] ([milestone]); CREATE INDEX [idx_pull_requests_assignee] ON [pull_requests] ([assignee]); CREATE INDEX [idx_pull_requests_user] ON [pull_requests] ([user]);