github
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
163561830 | MDExOlB1bGxSZXF1ZXN0MTYzNTYxODMw | 181 | closed | 0 | add "format sql" button to query page, uses sql-formatter | 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 | 107914493 | https://github.com/simonw/datasette/pull/181 | |||||
165029807 | MDExOlB1bGxSZXF1ZXN0MTY1MDI5ODA3 | 182 | closed | 0 | Add db filesize next to download link | 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 | 107914493 | https://github.com/simonw/datasette/pull/182 | |||||
181247568 | MDExOlB1bGxSZXF1ZXN0MTgxMjQ3NTY4 | 202 | closed | 0 | Raise 404 on nonexistent table URLs | 45057 | Currently they just 500. Also cleaned the logic up a bit, I hope I didn't miss anything. This is issue #184. | 2018-04-12T15:47:06Z | 2018-04-13T19:22:56Z | 2018-04-13T18:19:15Z | 134150933ade84327cfd97a88d536f5bff37a136 | 0 | 71bbf4e4be8a9ab7bcc4ddfb33760c7d902f4a34 | bfb4e45a7bcb880758dbc18f66258de26c1d1904 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/202 | |||||
181642114 | MDExOlB1bGxSZXF1ZXN0MTgxNjQyMTE0 | 205 | closed | 0 | Support filtering with units and more | 45057 | The first commit: * Adds units to exported JSON * Adds units key to metadata skeleton * Adds some docs for units The second commit adds filtering by units by the first method I mentioned in #203: ![image](https://user-images.githubusercontent.com/45057/38767463-7193be16-3fd9-11e8-8a5f-ac4159415c6d.png) [Try it here](https://wtr-api.herokuapp.com/wtr-663ea99/license_frequency?frequency__gt=50GHz&height__lt=50ft). I think it integrates pretty neatly. The third commit adds support for registering custom units with Pint from metadata.json. Probably pretty niche, but I need decibels! | 2018-04-14T10:47:51Z | 2018-04-14T15:24:04Z | 2018-04-14T15:24:04Z | ed059c70e87a2930206652621e23a55167aa57c1 | 0 | eb3a37c34813ecbbfdae015305fec1f2a4ec27a5 | 6b15a53cd3cd40880a5e2d38827d5fac10e4bb5f | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/205 | |||||
187770345 | MDExOlB1bGxSZXF1ZXN0MTg3NzcwMzQ1 | 258 | closed | 0 | Add new metadata key persistent_urls which removes the hash from all database urls | 247131 | Add new metadata key "persistent_urls" which removes the hash from all database urls when set to "true" This PR is just to gauge if this, or something like it, is something you would consider merging? I understand the reason why the substring of the hash is included in the url but there are some use cases where the urls should persist across deployments. For bookmarks for example or for scripts that use the JSON API. This is the initial commit for this feature. Tests and documentation updates to follow. | 2018-05-14T09:39:18Z | 2018-05-21T07:38:15Z | 2018-05-21T07:38:15Z | 457fcdfc82a0260db543d49006d49f8486f233b5 | 0 | 0d77a896ccb16b34c86fdeef7738f2d056e27e02 | 2b79f2bdeb1efa86e0756e741292d625f91cb93d | NONE | 107914493 | https://github.com/simonw/datasette/pull/258 | |||||
189860052 | MDExOlB1bGxSZXF1ZXN0MTg5ODYwMDUy | 281 | closed | 0 | Reduces image size using Alpine + Multistage (re: #278) | 487897 | Hey Simon! I got the image size down from 256MB to 110MB. Seems to be working okay, but you might want to test it a bit more. Example output of `docker run --rm -it <my-tag> datasette` ``` Serve! files=() on port 8001 [2018-05-23 05:23:08 +0000] [1] [INFO] Goin' Fast @ http://127.0.0.1:8001 [2018-05-23 05:23:08 +0000] [1] [INFO] Starting worker [1] ``` Related: https://github.com/simonw/datasette/issues/278 | 2018-05-23T05:27:05Z | 2018-05-26T02:10:38Z | 2018-05-26T02:10:38Z | 0d6c8fa841ae5d28e151e4ba43370289d1e2e22c | 0 | 3af65075c430d94647f8a1b1f215e82f563bc46f | 49f317752cfe89c5641165a490eef49e025752a7 | NONE | 107914493 | https://github.com/simonw/datasette/pull/281 | |||||
190901429 | MDExOlB1bGxSZXF1ZXN0MTkwOTAxNDI5 | 293 | closed | 0 | Support for external database connectors | 11912854 | I think it would be nice that Datasette could work with other file formats that aren't SQLite, like files with PyTables format. I've tried to accomplish that using external connectors published with entry points. These external connectors must have a structure similar to the structure [PyTables Datasette connector](https://github.com/PyTables/datasette-pytables) has. | 2018-05-28T11:02:45Z | 2018-09-11T14:32:45Z | 2018-09-11T14:32:45Z | ad2cb12473025ffab738d4df6bb47cd8b2e27859 | 0 | 59c94be46f9ccd806dd352fa28a6dba142d5ab82 | b7257a21bf3dfa7353980f343c83a616da44daa7 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/293 | |||||
193361341 | MDExOlB1bGxSZXF1ZXN0MTkzMzYxMzQx | 307 | closed | 0 | Initial sketch of custom URL routing, refs #306 | 9599 | See #306 for background on this. | 2018-06-07T15:26:48Z | 2018-06-07T15:29:54Z | 2018-06-07T15:29:41Z | 8c6663d3cc8043fc6f5c796275e80b0445bdff12 | 0 | 018af454f286120452e33d2568dd40908474a8a8 | a246f476b4fe490f5450836b22961bc607e6b4b0 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/307 | |||||
195339111 | MDExOlB1bGxSZXF1ZXN0MTk1MzM5MTEx | 311 | closed | 0 | ?_labels=1 to expand foreign keys (in csv and json), refs #233 | 9599 | Output looks something like this: { "rowid": 233, "TreeID": 121240, "qLegalStatus": { "value" 2, "label": "Private" } "qSpecies": { "value": 16, "label": "Sycamore" } "qAddress": "91 Commonwealth Ave", ... } | 2018-06-16T16:31:12Z | 2018-06-16T22:20:31Z | 2018-06-16T22:20:31Z | 9fe59e54ad65eb1c8239b1a78edb5219d3ab8ab0 | 0 | 40287b1ba09d6e75f0db1458fe78d8c055f128af | d0a578c0fc07b9d9208cd9de981bdf7385a26c49 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/311 | |||||
196526861 | MDExOlB1bGxSZXF1ZXN0MTk2NTI2ODYx | 322 | closed | 0 | Feature/in operator | 2691848 | 2018-06-21T17:41:51Z | 2018-06-21T17:45:25Z | 2018-06-21T17:45:25Z | 80b7bcefa1c07202779d98c9e2214f3ebad704e3 | 0 | 1acc562a2f60a7289438df657db8fd6dd3a7391d | e7566cc59d4b02ef301054fd35fdde6c925a8e38 | NONE | 107914493 | https://github.com/simonw/datasette/pull/322 | ||||||
211860706 | MDExOlB1bGxSZXF1ZXN0MjExODYwNzA2 | 363 | open | 0 | Search all apps during heroku publish | 436032 | Adds the `-A` option to include apps from all organizations when searching app names for publish. | 2018-08-29T19:25:10Z | 2018-08-31T14:39:45Z | b684b04c30f6b8779a3d11f7599329092fb152f3 | 0 | 2dd363e01fa73b24ba72f539c0a854bc901d23a7 | b7257a21bf3dfa7353980f343c83a616da44daa7 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/363 | ||||||
214653641 | MDExOlB1bGxSZXF1ZXN0MjE0NjUzNjQx | 364 | open | 0 | Support for other types of databases using external connectors | 11912854 | This PR is related to #293, but now all commits have been merged. The purpose is to support other file formats that aren't SQLite, like files with PyTables format. I've tried to accomplish that using external connectors published with entry points. The modifications in the original datasette code are minimal and many are in a separated file. | 2018-09-11T14:31:47Z | 2018-09-11T14:31:47Z | d84f3b1f585cb52b58aed0401c34214de2e8b47b | 0 | 592fd05f685859b271f0305c2fc8cdb7da58ebfb | b7257a21bf3dfa7353980f343c83a616da44daa7 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/364 | ||||||
232172106 | MDExOlB1bGxSZXF1ZXN0MjMyMTcyMTA2 | 389 | closed | 0 | Bump dependency versions | 9599 | 2018-11-20T02:23:12Z | 2019-11-13T19:13:41Z | 2019-11-13T19:13:41Z | 9194c0165aef411e0784ba49939b1005306f1f38 | 0 | f8349b45916e68d2f89c57694bd0e6afaf1bd508 | 5e3a432a0caa23837fa58134f69e2f82e4f632a6 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/389 | ||||||
247923347 | MDExOlB1bGxSZXF1ZXN0MjQ3OTIzMzQ3 | 404 | closed | 0 | Experiment: run Jinja in async mode | 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 | 107914493 | https://github.com/simonw/datasette/pull/404 | |||||
266035382 | MDExOlB1bGxSZXF1ZXN0MjY2MDM1Mzgy | 424 | closed | 0 | Column types in inspected metadata | 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 | 107914493 | https://github.com/simonw/datasette/pull/424 | |||||
270251021 | MDExOlB1bGxSZXF1ZXN0MjcwMjUxMDIx | 432 | closed | 0 | Refactor facets to a class and new plugin, refs #427 | 9599 | WIP for #427 | 2019-04-13T20:04:45Z | 2019-05-03T00:04:24Z | 2019-05-03T00:04:24Z | b78bc19269ed83b054a60c79c4fe08f4ca943942 | 0 | 5c198f7ca5d2aff49180820271ba8d06b79aefb1 | 9c77e6e355ec718d76178a7607721d10a66b6aef | OWNER | 107914493 | https://github.com/simonw/datasette/pull/432 | |||||
274174614 | MDExOlB1bGxSZXF1ZXN0Mjc0MTc0NjE0 | 437 | closed | 0 | Add inspect and prepare_sanic hooks | 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 | 107914493 | https://github.com/simonw/datasette/pull/437 | |||||
274313625 | MDExOlB1bGxSZXF1ZXN0Mjc0MzEzNjI1 | 439 | closed | 0 | [WIP] Add primary key to the extra_body_script hook arguments | 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 | 107914493 | https://github.com/simonw/datasette/pull/439 | |||||
275909197 | MDExOlB1bGxSZXF1ZXN0Mjc1OTA5MTk3 | 450 | closed | 0 | Coalesce hidden table count to 0 | 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 | 107914493 | https://github.com/simonw/datasette/pull/450 | |||||
275923066 | MDExOlB1bGxSZXF1ZXN0Mjc1OTIzMDY2 | 452 | open | 0 | SQL builder utility classes | 45057 | This adds a straightforward set of classes to aid in the construction of SQL queries. My plan for this was to allow plugins to manipulate the Datasette-generated SQL in a more structured way. I'm not sure that's going to work, but I feel like this is still a step forward - it reduces the number of intermediate variables in `TableView.data` which aids readability, and also factors out a lot of the boring string concatenation. There are a fair number of minor structure changes in here too as I've tried to make the ordering of `TableView.data` a bit more logical. As far as I can tell, I haven't broken anything... | 2019-05-04T13:57:47Z | 2019-05-04T14:03:04Z | 45e7460d78c3f87c01f2e9e142cb7f646b23b156 | 0 | c63762280d3bd66ad6ea24933dafe218861efef2 | 55643430f7ac8d27e99b00e7cf79db741003e811 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/452 | ||||||
285698310 | MDExOlB1bGxSZXF1ZXN0Mjg1Njk4MzEw | 501 | closed | 0 | Test against Python 3.8-dev using Travis | 9599 | 2019-06-06T08:37:53Z | 2019-11-11T03:23:29Z | 2019-11-11T03:23:29Z | 1aac0cf0ab962060dd5cff19b8b179bb7fa0f00b | 0 | a5defb684fcc734f6325ca08beef9f49c3e7a298 | 5e8fbf7f6fbc0b63d0479da3806dd9ccd6aaa945 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/501 | ||||||
290971295 | MDExOlB1bGxSZXF1ZXN0MjkwOTcxMjk1 | 524 | closed | 0 | Sort commits using isort, refs #516 | 9599 | Also added a lint unit test to ensure they stay sorted. #516 | 2019-06-24T05:04:48Z | 2023-08-23T01:31:08Z | 2023-08-23T01:31:08Z | 4e92ebe00a058e02b2d7543cff60ac2f78aa97c7 | 0 | dafae70ee7f74ce79b541a94385172be3ad0de83 | cdd24f3eaa207f67d948c1876725b0f84654a623 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/524 | |||||
291534596 | MDExOlB1bGxSZXF1ZXN0MjkxNTM0NTk2 | 529 | closed | 0 | Use keyed rows - fixes #521 | 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 | 107914493 | https://github.com/simonw/datasette/pull/529 | |||||
295127213 | MDExOlB1bGxSZXF1ZXN0Mjk1MTI3MjEz | 546 | open | 0 | Facet by delimiter | 9599 | Refs #510 | 2019-07-07T20:06:05Z | 2019-11-18T23:46:01Z | 68a6fb1a576a747b868771d00a10753f35aaa0cf | 0 | 47ac6c6e46da16716d295d7cda8f79cd0663ca5e | a9909c29ccac771c23c2ef22b89d10697b5256b9 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/546 | ||||||
296735320 | MDExOlB1bGxSZXF1ZXN0Mjk2NzM1MzIw | 557 | closed | 0 | Get tests running on Windows using Travis CI | 9599 | Refs #511 | 2019-07-11T16:36:57Z | 2021-07-10T23:39:48Z | 2021-07-10T23:39:48Z | cddb9a9fecfa25147d80df05f1a6d6e1686ca30d | 0 | 47b5ab43be87217c4e40ad93b8aa2e9639fa371f | f2006cca80040871439055ae6ccbc14e589bdf4b | OWNER | 107914493 | https://github.com/simonw/datasette/pull/557 | |||||
301483613 | MDExOlB1bGxSZXF1ZXN0MzAxNDgzNjEz | 564 | open | 0 | First proof-of-concept of Datasette Library | 9599 | Refs #417. Run it like this: datasette -d ~/Library Uses a new plugin hook - available_databases() | 2019-07-26T10:22:26Z | 2023-02-07T15:14:11Z | 4f425d2b39d1be10d7ef5c146480a3eb494d5086 | 1 | 947645d84710677ea50762016081a9fbc6b014a8 | a9453c4dda70bbf5122835e68f63db6ecbe1a6fc | OWNER | 107914493 | https://github.com/simonw/datasette/pull/564 | ||||||
322529381 | MDExOlB1bGxSZXF1ZXN0MzIyNTI5Mzgx | 578 | closed | 0 | Added support for multi arch builds | 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 | 107914493 | https://github.com/simonw/datasette/pull/578 | |||||
323983732 | MDExOlB1bGxSZXF1ZXN0MzIzOTgzNzMy | 579 | open | 0 | New connection pooling | 9599 | See #569 | 2019-10-02T23:22:19Z | 2019-11-15T22:57:21Z | 025b4024b1b43ea034b7fd331c30740165ff75f2 | 0 | 32cbfd2acd28bcefb97c442ac8e3ee2c07401e19 | a9909c29ccac771c23c2ef22b89d10697b5256b9 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/579 | ||||||
327541046 | MDExOlB1bGxSZXF1ZXN0MzI3NTQxMDQ2 | 595 | closed | 0 | bump uvicorn to 0.9.0 to be Python-3.8 friendly | 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 | 107914493 | https://github.com/simonw/datasette/pull/595 | |||||
347179081 | MDExOlB1bGxSZXF1ZXN0MzQ3MTc5MDgx | 644 | closed | 0 | Validate metadata json on startup | 6025893 | This PR adds a sanity check which builds up a marshmallow schema on-the-fly based on the structure of the database(s) on startup and then validates the metadata json against it. In case of invalid data, this will raise with a descriptive error e.g: ``` marshmallow.exceptions.ValidationError: {'databases': {'fixtures': {'tables': {'not_a_table': ['Unknown field.']}}}} ``` Closes #260 --- This was intended to be fairly self-contained, but then while I was working on it, I hit some problems getting the tests to pass in the context of the test suite as a whole. My tests passed in isolation, but then failed while doing a full test suite run. That's when the worms started coming out of the can :bug: After some sleuthing, it turned out this was essentially the result of several issues intersecting: * There are certain events in the application lifecycle where the metadata schema can be modified after it is loaded e.g: https://github.com/simonw/datasette/blob/a562f2965552fb2dbbbd74df245c9965ee23d886/datasette/app.py#L299-L320 This means that sometimes what goes in isn't always exactly what comes out when you call `/-/metadata`. * Because the test fixtures use session scope for performance reasons if one unit test performs an action which mutates the metadata, that can impact on other unit tests which run after it using the same fixture. * Because the `self._metadata` property was being set with a simple assignment `self._metadata = metadata`, that created an object reference to the test fixture data, so operating on `self._metadata` was actually modifying the test fixture `METADATA` meaning that depending on when it was loaded in the test suite lifecycle, `METADATA` had different content, which was somewhat unexpected. As such, I've added some band-aids in 3552024 and 6859fd8: * Switching the metadata object to a `deepcopy` of the input prevents us directly mutating the input fixture. * I've switched some of the tests to use a fixture with function scope instead of session scope so we're workin… | 2019-11-30T00:32:15Z | 2021-07-28T17:58:45Z | 2021-07-28T17:58:45Z | e71b642474d54f986bc8857346103d8a10d84e6d | 0 | 6859fd8c5eef26f397aa949dc4edf3747e8ab0a5 | a562f2965552fb2dbbbd74df245c9965ee23d886 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/644 | |||||
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 | 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 | 107914493 | https://github.com/simonw/datasette/pull/652 | |||||
375180832 | MDExOlB1bGxSZXF1ZXN0Mzc1MTgwODMy | 672 | open | 0 | --dirs option for scanning directories for SQLite databases | 9599 | Refs #417. | 2020-02-14T02:25:52Z | 2020-03-27T01:03:53Z | 0e0e544f1f23451f04d7ca576ace5b18ce168e6f | 0 | ee718b98b793df2a15b125cbf20816c9864bf7e9 | 6aa516d82dea9885cb4db8d56ec2ccfd4cd9b840 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/672 | ||||||
391924509 | MDExOlB1bGxSZXF1ZXN0MzkxOTI0NTA5 | 703 | closed | 0 | WIP implementation of writable canned queries | 9599 | Refs #698. | 2020-03-21T22:23:51Z | 2020-06-03T00:08:14Z | 2020-06-02T23:57:35Z | 80c5a74a947e63673389604de12e80fa27305454 | 1 | 61e40e917efc43a8aea5298a22badbb6eaea3fa1 | 89c4ddd4828623888e91a1d2cb396cba12d4e7b4 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/703 | |||||
406677205 | MDExOlB1bGxSZXF1ZXN0NDA2Njc3MjA1 | 730 | closed | 0 | Update pytest-asyncio requirement from ~=0.10.0 to >=0.10,<0.12 | 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 | 107914493 | https://github.com/simonw/datasette/pull/730 | |||||
410469272 | MDExOlB1bGxSZXF1ZXN0NDEwNDY5Mjcy | 746 | closed | 0 | shutil.Error, not OSError | 9599 | Refs #744 | 2020-04-29T03:30:51Z | 2020-04-29T07:07:24Z | 2020-04-29T07:07:23Z | e4e8b51b50e51b2515c6d8874d16c4607f79b80a | 0 | af3a5b91503f5d74aa111bbcd1ee531ee00f9ed7 | 89c4ddd4828623888e91a1d2cb396cba12d4e7b4 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/746 | |||||
434085235 | MDExOlB1bGxSZXF1ZXN0NDM0MDg1MjM1 | 848 | closed | 0 | Reload support for config_dir mode. | 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 | 107914493 | https://github.com/simonw/datasette/pull/848 | |||||
440735814 | MDExOlB1bGxSZXF1ZXN0NDQwNzM1ODE0 | 868 | open | 0 | initial windows ci setup | 702729 | Picking up the work done on #557 with a new PR. Seeing if I can get this working. | 2020-06-26T18:49:13Z | 2021-07-10T23:41:43Z | b99adb1720a0b53ff174db54d0e4a67357b47f33 | 0 | c99cabae638958ef057438a92cb9a182ba4f8188 | 180c7a5328457aefdf847ada366e296fef4744f1 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/868 | ||||||
442505088 | MDExOlB1bGxSZXF1ZXN0NDQyNTA1MDg4 | 883 | open | 0 | Skip counting hidden tables | 3243482 | Potential fix for https://github.com/simonw/datasette/issues/859. Disabling table counts for hidden tables speeds up database page quite a bit. In my setup it reduced load time by 2/3 (~300 -> ~90ms) | 2020-07-01T07:38:08Z | 2020-07-02T00:25:44Z | 527624338acd38b97bb33b0a0b913d80e8345fee | 0 | 251884f58895faf8056b3dfdeae3bb92c5bc58ac | 676bb64c877d73f8ff496cef4632f5a8a5a9283c | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/883 | ||||||
474703007 | MDExOlB1bGxSZXF1ZXN0NDc0NzAzMDA3 | 952 | closed | 0 | Update black requirement from ~=19.10b0 to >=19.10,<21.0 | 27856297 | Updates the requirements on [black](https://github.com/psf/black) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/psf/black/blob/master/CHANGES.md">black's changelog</a>.</em></p> <blockquote> <h3>20.8b1</h3> <h4><em>Packaging</em></h4> <ul> <li>explicitly depend on Click 7.1.2 or newer as <code>Black</code> no longer works with versions older than 7.0</li> </ul> <h3>20.8b0</h3> <h4><em>Black</em></h4> <ul> <li> <p>re-implemented support for explicit trailing commas: now it works consistently within any bracket pair, including nested structures (<a href="https://github-redirect.dependabot.com/psf/black/issues/1288">#1288</a> and duplicates)</p> </li> <li> <p><code>Black</code> now reindents docstrings when reindenting code around it (<a href="https://github-redirect.dependabot.com/psf/black/issues/1053">#1053</a>)</p> </li> <li> <p><code>Black</code> now shows colored diffs (<a href="https://github-redirect.dependabot.com/psf/black/issues/1266">#1266</a>)</p> </li> <li> <p><code>Black</code> is now packaged using 'py3' tagged wheels (<a href="https://github-redirect.dependabot.com/psf/black/issues/1388">#1388</a>)</p> </li> <li> <p><code>Black</code> now supports Python 3.8 code, e.g. star expressions in return statements (<a href="https://github-redirect.dependabot.com/psf/black/issues/1121">#1121</a>)</p> </li> <li> <p><code>Black</code> no longer normalizes capital R-string prefixes as those have a community-accepted meaning (<a href="https://github-redirect.dependabot.com/psf/black/issues/1244">#1244</a>)</p> </li> <li> <p><code>Black</code> now uses exit code 2 when specified configuration file doesn't exit (<a href="https://github-redirect.dependabot.com/psf/black/issues/1361">#1361</a>)</p> </li> <li> <p><code>Black</code> now works on AWS Lambda (<a href="https://github-redirect.dependabot.com/psf/black/issues/1141">#1141</a>)</p> </li> <li> <p>added <code>--force-exclude</code> argument (<a href="https://github-redirect.dependabot.com/p… | 2020-08-27T13:31:36Z | 2020-09-02T22:26:17Z | 2020-09-02T22:26:16Z | 37f8531b321855bdbc58960281957febaa59e4b9 | 0 | 7b1354706467136f5030504fe799201b13333a95 | 86aefc39c5aca01b00dbc57ba386a6743c21fb46 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/952 | |||||
496298180 | MDExOlB1bGxSZXF1ZXN0NDk2Mjk4MTgw | 986 | closed | 0 | Allow facet by primary keys, fixes #985 | 39452697 | Hello! This PR makes it possible to facet by primary keys. Did I get it right that just removing the condition on UI side is enough? From testing it works fine with primary keys, just as with normal keys. If so, should I also remove unused `data-is-pk`? | 2020-10-01T14:18:55Z | 2020-10-01T16:51:45Z | 2020-10-01T16:51:45Z | 58906c597f1217381f5d746726bcb8bdfa8f52f8 | 0 | 76f7094bd33f037a1c689a173f0dbbb988e6dcdd | 141544613f9e76ddb74eee38d6f8ee1e0e70f833 | NONE | 107914493 | https://github.com/simonw/datasette/pull/986 | |||||
500798091 | MDExOlB1bGxSZXF1ZXN0NTAwNzk4MDkx | 1008 | open | 0 | Add json_loads and json_dumps jinja2 filters | 649467 | 2020-10-09T20:11:34Z | 2020-12-15T02:30:28Z | e33e91ca7c9b2fdeab9d8179ce0d603918b066aa | 0 | 40858989d47043743d6b1c9108528bec6a317e43 | 1bdbc8aa7f4fd7a768d456146e44da86cb1b36d1 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1008 | |||||||
505453900 | MDExOlB1bGxSZXF1ZXN0NTA1NDUzOTAw | 1030 | open | 0 | Make `package` command deal with a configuration directory argument | 299380 | Currently if we run `datasette package` on a configuration directory we'll get an exception when we try to hard link to the directory. This PR copies the tree and makes the Dockerfile run inspect on all *.db files. | 2020-10-18T11:07:02Z | 2020-10-19T08:01:51Z | 124142e4d2710525b09ff2bd2a7a787cbed163a4 | 0 | e0825334692967fec195e104cb6aa11095807a8e | c37a0a93ecb847e66cfe7b6f9452ba210fcae91b | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1030 | ||||||
505769462 | MDExOlB1bGxSZXF1ZXN0NTA1NzY5NDYy | 1031 | closed | 0 | Fallback to databases in inspect-data.json when no -i options are passed | 299380 | Currenlty `Datasette.__init__` checks immutables against None to decide whether to fallback to inspect-data.json. This patch modifies the serve command to pass None when no -i options are passed so this fallback works correctly. | 2020-10-19T07:51:06Z | 2021-03-29T01:46:45Z | 2021-03-29T00:23:41Z | 3ee6b39e96ef684e1ac393bb269d804e957fee1d | 0 | 7e7eaa4e712b01de0b5a8a1b90145bdc1c3cd731 | c37a0a93ecb847e66cfe7b6f9452ba210fcae91b | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1031 | |||||
509590205 | MDExOlB1bGxSZXF1ZXN0NTA5NTkwMjA1 | 1049 | closed | 0 | Add template block prior to extra URL loaders | 82988 | To handle packages that require Javascript state setting prior to loading a package (eg [`thebelab`](https://thebelab.readthedocs.io/en/latest/examples/minimal_example.html), provide a template block before the URLs are loaded. | 2020-10-25T13:08:55Z | 2020-10-29T09:20:52Z | 2020-10-29T09:20:34Z | 99f994b14e2dbe22fda18b67dd5c824d359443fb | 0 | 50a743ad35684f09d3c3880f6af2019e59271237 | 42f4851e3e7885f1092f104d6c883cea40b12f02 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1049 | |||||
532348919 | MDExOlB1bGxSZXF1ZXN0NTMyMzQ4OTE5 | 1130 | open | 0 | Fix footer not sticking to bottom in short pages | 3243482 | Fixes https://github.com/simonw/datasette/issues/1129 | 2020-12-04T07:29:01Z | 2021-06-15T13:27:48Z | af3aa34786f134af8073342a3c4bb74b968750fd | 0 | 8d4c69c6fb0ef741a19070f5172017ea3522e83c | 49d8fc056844d5a537d6cfd96dab0dd5686fe718 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1130 | ||||||
545264436 | MDExOlB1bGxSZXF1ZXN0NTQ1MjY0NDM2 | 1159 | open | 0 | Improve the display of facets information | 552629 | This PR changes the display of facets to hopefully make them more readable. Before | After ---|--- ![image](https://user-images.githubusercontent.com/552629/103084609-b1ec2980-45df-11eb-85bc-68ab8df3e8d9.png) | ![image](https://user-images.githubusercontent.com/552629/103085220-620e6200-45e1-11eb-8189-5dd5d3e2569e.png) | 2020-12-24T11:01:47Z | 2023-07-31T18:57:59Z | 0276c5609da34bfb660f65212e1a367e637979d7 | 3268330 | 0 | c820abd0bcb34d1ea5a03be64a2158ae7c42920c | a882d679626438ba0d809944f06f239bcba8ee96 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1159 | |||||
560760145 | MDExOlB1bGxSZXF1ZXN0NTYwNzYwMTQ1 | 1204 | open | 0 | WIP: Plugin includes | 9599 | Refs #1191 Next steps: - [ ] Get comfortable that this pattern is the right way to go - [ ] Implement it for all of the other pages, not just the table page - [ ] Add a new set of plugin tests that exercise ALL of these new hook locations - [ ] Document, then ship | 2021-01-25T03:59:06Z | 2021-12-17T07:10:49Z | 98f06a766317a40035962416cf3211d7a374866a | 1 | 05258469ae39bcaad17beb57c5b7eeab0d58a589 | 07e163561592c743e4117f72102fcd350a600909 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1204 | ||||||
588601627 | MDExOlB1bGxSZXF1ZXN0NTg4NjAxNjI3 | 1254 | closed | 0 | Update Docker Spatialite version to 5.0.1 + add support for Spatialite topology functions | 3200608 | This requires adding the RT Topology library (Spatialite changed to RT Topology from LWGEOM between 4.4 and 5.0), as well as upgrading the GEOS version (which is the reason for switching to `python:3.7.10-slim-buster` as the base image.) `autoconf` and `libtool` are added to build RT Topology, and Spatialite is now built with `--disable-minizip` (minizip wasn't an option in 4.4 and I didn't want to add another dependency) and `--disable-dependency-tracking` which, according to Spatialite, "speeds up one-time builds" | 2021-03-09T20:49:08Z | 2021-03-10T18:27:45Z | 2021-03-09T22:04:23Z | bc09c84d6af4721b32f01f4d9186a6fbf9863081 | 0 | b103204155c2396d353fa195a320cee6aca258cf | d0fd833b8cdd97e1b91d0f97a69b494895d82bee | NONE | 107914493 | https://github.com/simonw/datasette/pull/1254 | |||||
592548103 | MDExOlB1bGxSZXF1ZXN0NTkyNTQ4MTAz | 1260 | closed | 0 | Fix: code quality issues | 25361949 | ### Description Hi :wave: I work at [DeepSource](https://deepsource.io), I ran DeepSource analysis on the forked copy of this repo and found some interesting [code quality issues](https://deepsource.io/gh/withshubh/datasette/issues/?category=recommended) in the codebase, opening this PR so you can assess if our platform is right and helpful for you. ### Summary of changes - Replaced ternary syntax with if expression - Removed redundant `None` default - Used `is` to compare type of objects - Iterated dictionary directly - Removed unnecessary lambda expression - Refactored unnecessary `else` / `elif` when `if` block has a `return` statement - Refactored unnecessary `else` / `elif` when `if` block has a `raise` statement - Added .deepsource.toml to continuously analyze and detect code quality issues | 2021-03-14T13:56:10Z | 2021-03-29T00:22:41Z | 2021-03-29T00:22:41Z | bc868ae8c8152a25bcab7adb490c5b89411bdf3a | 0 | 90f5fb6d2fb36ddffc49acee924d042f2d5d1d58 | 8e18c7943181f228ce5ebcea48deb59ce50bee1f | NONE | 107914493 | https://github.com/simonw/datasette/pull/1260 | |||||
598213565 | MDExOlB1bGxSZXF1ZXN0NTk4MjEzNTY1 | 1271 | open | 0 | Use SQLite conn.interrupt() instead of sqlite_timelimit() | 9599 | Refs #1270, #1268, #1249 Before merging this I need to do some more testing (to make sure that expensive queries really are properly cancelled). I also need to delete a bunch of code relating to the old mechanism of cancelling queries. [See comment below: this doesn't actually cancel the query due to a thread-local confusion] | 2021-03-22T17:34:20Z | 2021-03-22T21:49:27Z | a4fd7e5a761523881c031b4fee266a366e1c97bd | 1 | fb2ad7ada0b86a7fe4a576fe23236757c41eb05e | c4f1ec7f33fd7d5b93f0f895dafb5351cc3bfc5b | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1271 | ||||||
613178968 | MDExOlB1bGxSZXF1ZXN0NjEzMTc4OTY4 | 1296 | open | 0 | Dockerfile: use Ubuntu 20.10 as base | 82332573 | This PR changes the main Dockerfile to use ubuntu:20.10 as base image instead of python:3.9.2-slim-buster (itself based on debian:buster-slim). The Dockerfile is essentially the one from https://github.com/simonw/datasette/issues/1249#issuecomment-803698983 with some additional cleanups to slim it down. This fixes a couple of issues: 1. The SQLite version in Debian Buster (2.6.0) doesn't support generated columns 2. Installing SpatiaLite from the Debian sid repositories has the side effect of also installing updates to libc and libstdc++ from sid. As a bonus, the Docker image becomes smaller: ``` $ docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE datasette 0.56-ubuntu f7aca255140a 5 hours ago 212MB datasetteproject/datasette 0.56 efb3b282f390 13 days ago 258MB ``` ### Reproduction of the first issue ``` $ curl -O https://latest.datasette.io/fixtures.db % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 260k 0 260k 0 0 489k 0 --:--:-- --:--:-- --:--:-- 489k $ docker run -v `pwd`:/mnt datasetteproject/datasette:0.56 datasette /mnt/fixtures.db Traceback (most recent call last): File "/usr/local/bin/datasette", line 8, in <module> sys.exit(cli()) File "/usr/local/lib/python3.9/site-packages/click/core.py", line 829, in __call__ return self.main(*args, **kwargs) File "/usr/local/lib/python3.9/site-packages/click/core.py", line 782, in main rv = self.invoke(ctx) File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1259, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1066, in invoke return ctx.invoke(self.callback, **ctx.params) File "/usr/local/lib/python3.9/site-packages/click/core.py", line 610, in invoke return callback(*args, … | 2021-04-12T00:23:32Z | 2021-07-20T08:52:13Z | 2ba522dbd7168a104a33621598c5a2460aae3e74 | 0 | 8f00c312f6b8ab5cecbb8a698ab4ad659aabf4ef | c73af5dd72305f6a01ea94a2c76d52e5e26de38b | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1296 | ||||||
624635440 | MDExOlB1bGxSZXF1ZXN0NjI0NjM1NDQw | 1309 | closed | 0 | Bump black from 20.8b1 to 21.4b0 | 27856297 | Bumps [black](https://github.com/psf/black) from 20.8b1 to 21.4b0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>21.4b0</h2> <h4><em>Black</em></h4> <ul> <li> <p>Fixed a rare but annoying formatting instability created by the combination of optional trailing commas inserted by <code>Black</code> and optional parentheses looking at pre-existing "magic" trailing commas. This fixes issue <a href="https://github-redirect.dependabot.com/psf/black/issues/1629">#1629</a> and all of its many many duplicates. (<a href="https://github-redirect.dependabot.com/psf/black/issues/2126">#2126</a>)</p> </li> <li> <p><code>Black</code> now processes one-line docstrings by stripping leading and trailing spaces, and adding a padding space when needed to break up """". (<a href="https://github-redirect.dependabot.com/psf/black/issues/1740">#1740</a>)</p> </li> <li> <p><code>Black</code> now cleans up leading non-breaking spaces in comments (<a href="https://github-redirect.dependabot.com/psf/black/issues/2092">#2092</a>)</p> </li> <li> <p><code>Black</code> now respects <code>--skip-string-normalization</code> when normalizing multiline docstring quotes (<a href="https://github-redirect.dependabot.com/psf/black/issues/1637">#1637</a>)</p> </li> <li> <p><code>Black</code> no longer removes all empty lines between non-function code and decorators when formatting typing stubs. Now <code>Black</code> enforces a single empty line. (<a href="https://github-redirect.dependabot.com/psf/black/issues/1646">#1646</a>)</p> </li> <li> <p><code>Black</code> no longer adds an incorrect space after a parenthesized assignment expression in if/while statements (<a href="https://github-redirect.dependabot.com/psf/black/issues/1655">#1655</a>)</p> </li> <li> <p>Added <code>--skip-magic-trailing-comma</code> / <code>-C</code> to avoid using trailing commas as a reason to split lines (<a href="https://github-redire… | 2021-04-27T20:28:11Z | 2021-04-28T18:26:06Z | 2021-04-28T18:26:04Z | 1220c60d8a6bb8e621543ef78d669a2bccc2a3c8 | 0 | 20fc3fe2797b81a23cd464c1450d13086d53ea7f | a4bb2abce0764d49d255e5379f9e9c70981834ca | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1309 | |||||
625457579 | MDExOlB1bGxSZXF1ZXN0NjI1NDU3NTc5 | 1311 | closed | 0 | Bump black from 20.8b1 to 21.4b1 | 27856297 | Bumps [black](https://github.com/psf/black) from 20.8b1 to 21.4b1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>21.4b1</h2> <h4><em>Black</em></h4> <ul> <li> <p>Fix crash on docstrings ending with "\ ". (<a href="https://github-redirect.dependabot.com/psf/black/issues/2142">#2142</a>)</p> </li> <li> <p>Fix crash when atypical whitespace is cleaned out of dostrings (<a href="https://github-redirect.dependabot.com/psf/black/issues/2120">#2120</a>)</p> </li> <li> <p>Reflect the <code>--skip-magic-trailing-comma</code> and <code>--experimental-string-processing</code> flags in the name of the cache file. Without this fix, changes in these flags would not take effect if the cache had already been populated. (<a href="https://github-redirect.dependabot.com/psf/black/issues/2131">#2131</a>)</p> </li> <li> <p>Don't remove necessary parentheses from assignment expression containing assert / return statements. (<a href="https://github-redirect.dependabot.com/psf/black/issues/2143">#2143</a>)</p> </li> </ul> <h4><em>Packaging</em></h4> <ul> <li>Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling</li> </ul> <h2>21.4b0</h2> <h4><em>Black</em></h4> <ul> <li> <p>Fixed a rare but annoying formatting instability created by the combination of optional trailing commas inserted by <code>Black</code> and optional parentheses looking at pre-existing "magic" trailing commas. This fixes issue <a href="https://github-redirect.dependabot.com/psf/black/issues/1629">#1629</a> and all of its many many duplicates. (<a href="https://github-redirect.dependabot.com/psf/black/issues/2126">#2126</a>)</p> </li> <li> <p><code>Black</code> now processes one-line docstrings by stripping leading and trailing spaces, and adding a padding space when needed to break up """". (<a href="https://github-redirect.dependabot.com/psf/black/issues/1740">#1740</a>)</p> </li> <li> <p><code>… | 2021-04-28T18:25:58Z | 2021-04-29T13:58:11Z | 2021-04-29T13:58:09Z | a8e260b47e0fb951790f155780354c8f8df88bc8 | 0 | baf303063a76800ec97abee46cd5f264e6a6447a | a4bb2abce0764d49d255e5379f9e9c70981834ca | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1311 | |||||
630578735 | MDExOlB1bGxSZXF1ZXN0NjMwNTc4NzM1 | 1318 | closed | 0 | Bump black from 21.4b2 to 21.5b0 | 49699333 | Bumps [black](https://github.com/psf/black) from 21.4b2 to 21.5b0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>21.5b0</h2> <h4><em>Black</em></h4> <ul> <li>Set <code>--pyi</code> mode if <code>--stdin-filename</code> ends in <code>.pyi</code> (<a href="https://github-redirect.dependabot.com/psf/black/issues/2169">#2169</a>)</li> <li>Stop detecting target version as Python 3.9+ with pre-PEP-614 decorators that are being called but with no arguments (<a href="https://github-redirect.dependabot.com/psf/black/issues/2182">#2182</a>)</li> </ul> <h4><em>Black-Primer</em></h4> <ul> <li>Add <code>--no-diff</code> to black-primer to suppress formatting changes (<a href="https://github-redirect.dependabot.com/psf/black/issues/2187">#2187</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/psf/black/blob/master/CHANGES.md">black's changelog</a>.</em></p> <blockquote> <h3>21.5b0</h3> <h4><em>Black</em></h4> <ul> <li>Set <code>--pyi</code> mode if <code>--stdin-filename</code> ends in <code>.pyi</code> (<a href="https://github-redirect.dependabot.com/psf/black/issues/2169">#2169</a>)</li> <li>Stop detecting target version as Python 3.9+ with pre-PEP-614 decorators that are being called but with no arguments (<a href="https://github-redirect.dependabot.com/psf/black/issues/2182">#2182</a>)</li> </ul> <h4><em>Black-Primer</em></h4> <ul> <li>Add <code>--no-diff</code> to black-primer to suppress formatting changes (<a href="https://github-redirect.dependabot.com/psf/black/issues/2187">#2187</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/psf/black/commits">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-versi… | 2021-05-05T13:07:51Z | 2021-05-11T13:12:32Z | 2021-05-11T13:12:31Z | e864f5420abb7a5d135f8fe470183786b577ce9a | 0 | e06c09911be52202940808d7a08df2e9b71b3af2 | 1b697539f5b53cec3fe13c0f4ada13ba655c88c7 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1318 | |||||
655726387 | MDExOlB1bGxSZXF1ZXN0NjU1NzI2Mzg3 | 1347 | closed | 0 | Test docker platform blair only | 10801138 | 2021-05-28T02:47:09Z | 2021-05-28T02:47:28Z | 2021-05-28T02:47:28Z | e755dd8c8cf7149046a8b5fd44aec07c4b2416d3 | 0 | f730725fd260ba6578c472c344269d5d5df4e650 | 7b106e106000713bbee31b34d694b3dadbd4818c | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1347 | ||||||
655741428 | MDExOlB1bGxSZXF1ZXN0NjU1NzQxNDI4 | 1348 | open | 0 | DRAFT: add test and scan for docker images | 10801138 | **NOTE: I don't think this PR is ready, since the arm/v6 and arm/v7 images are failing pytest due to missing dependencies (gcc and friends). But it's pretty close.** Closes https://github.com/simonw/datasette/issues/1344 . Using a build-matrix for the platforms and [this test](https://github.com/simonw/datasette/issues/1344#issuecomment-849820019), we test all the platforms in parallel. I also threw in container scanning. ### Switch `pip install` to use either tags or commit shas Notably! This also [changes the Dockerfile](https://github.com/blairdrummond/datasette/blob/7fe5315d68e04fce64b5bebf4e2d7feec44f8546/Dockerfile#L20) so that it accepts tags or commit-shas. ``` # It's backwards compatible with tags, but also lets you use shas root@712071df17af:/# pip install git+git://github.com/simonw/datasette.git@0.56 Collecting git+git://github.com/simonw/datasette.git@0.56 Cloning git://github.com/simonw/datasette.git (to revision 0.56) to /tmp/pip-req-build-u6dhm945 Running command git clone -q git://github.com/simonw/datasette.git /tmp/pip-req-build-u6dhm945 Running command git checkout -q af5a7f1c09f6a902bb2a25e8edf39c7034d2e5de Collecting Jinja2<2.12.0,>=2.10.3 Downloading Jinja2-2.11.3-py2.py3-none-any.whl (125 kB) ``` This le… | 2021-05-28T03:02:12Z | 2021-05-28T03:06:16Z | eeea7cb835be0f0319cafccf50dffa6ad26826c5 | 0 | 56cba8fb837cd938c2f9d7423ee43d62a81c8f7c | 7b106e106000713bbee31b34d694b3dadbd4818c | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1348 | ||||||
678459554 | MDExOlB1bGxSZXF1ZXN0Njc4NDU5NTU0 | 1385 | closed | 0 | Fix + improve get_metadata plugin hook docs | 2670795 | This fixes documentation inaccuracies and adds a disclaimer about the signature of the `get_metadata` hook. Addresses the following comments: - https://github.com/simonw/datasette/issues/1384#issuecomment-869069926 - https://github.com/simonw/datasette/issues/1384#issuecomment-869075368 | 2021-06-27T05:43:20Z | 2021-09-13T18:53:11Z | 2021-09-13T18:53:11Z | d283ef6806aabcd749623ffe4e69011879f7bfad | 0 | 8d78c8c22ddfa10c041f7b5dd9118d4c8674729f | 67cbf0ae7243431bf13702e6e3ba466b619c4d6f | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1385 | |||||
692557381 | MDExOlB1bGxSZXF1ZXN0NjkyNTU3Mzgx | 1399 | open | 0 | Multiple sort | 87192257 | Closes #197. I have added support for sorting by multiple parameters as mentioned in the issue above, and together with that, a suggestion on how to implement such sorting in the user interface. | 2021-07-19T12:20:14Z | 2021-07-19T12:20:14Z | 3161cd1202824921054cf78d82c1d8c07b140451 | 0 | 739697660382e4d2974619b4a5605baef87d233a | c73af5dd72305f6a01ea94a2c76d52e5e26de38b | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1399 | ||||||
712412883 | MDExOlB1bGxSZXF1ZXN0NzEyNDEyODgz | 1434 | open | 0 | Enrich arbitrary query results with foreign key links and column descriptions | 9599 | Refs #1293, follows #942. | 2021-08-13T14:43:01Z | 2021-08-19T21:18:58Z | d4d4f5566b1d43075cb52ded5d19a9dcf4350761 | 0 | 281c0872d5b8a462c9d7b2b2d77a924da4ed25a7 | 2883098770fc66e50183b2b231edbde20848d4d6 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1434 | ||||||
722480542 | MDExOlB1bGxSZXF1ZXN0NzIyNDgwNTQy | 1453 | closed | 0 | Bump black from 21.7b0 to 21.8b0 | 49699333 | Bumps [black](https://github.com/psf/black) from 21.7b0 to 21.8b0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>21.8b0</h2> <h3><em>Black</em></h3> <ul> <li>Add support for formatting Jupyter Notebook files (<a href="https://github-redirect.dependabot.com/psf/black/issues/2357">#2357</a>)</li> <li>Move from <code>appdirs</code> dependency to <code>platformdirs</code> (<a href="https://github-redirect.dependabot.com/psf/black/issues/2375">#2375</a>)</li> <li>Present a more user-friendly error if .gitignore is invalid (<a href="https://github-redirect.dependabot.com/psf/black/issues/2414">#2414</a>)</li> <li>The failsafe for accidentally added backslashes in f-string expressions has been hardened to handle more edge cases during quote normalization (<a href="https://github-redirect.dependabot.com/psf/black/issues/2437">#2437</a>)</li> <li>Avoid changing a function return type annotation's type to a tuple by adding a trailing comma (<a href="https://github-redirect.dependabot.com/psf/black/issues/2384">#2384</a>)</li> <li>Parsing support has been added for unparenthesized walruses in set literals, set comprehensions, and indices (<a href="https://github-redirect.dependabot.com/psf/black/issues/2447">#2447</a>).</li> <li>Pin <code>setuptools-scm</code> build-time dependency version (<a href="https://github-redirect.dependabot.com/psf/black/issues/2457">#2457</a>)</li> <li>Exclude typing-extensions version 3.10.0.1 due to it being broken on Python 3.10 (<a href="https://github-redirect.dependabot.com/psf/black/issues/2460">#2460</a>)</li> </ul> <h3><em>Blackd</em></h3> <ul> <li>Replace sys.exit(-1) with raise ImportError as it plays more nicely with tools that scan installed packages (<a href="https://github-redirect.dependabot.com/psf/black/issues/2440">#2440</a>)</li> </ul> <h3>Integrations</h3> <ul> <li>The provided pre-commit hooks no longer specify <code>language_version</code> to avoid overriding <co… | 2021-08-30T13:13:39Z | 2021-09-14T13:10:40Z | 2021-09-14T13:10:38Z | 41e89206c9421f58bbc49b9a3f43439c351595a9 | 0 | 4f492a79aec631904e3302857a0ab5ea10cbf1af | 67cbf0ae7243431bf13702e6e3ba466b619c4d6f | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1453 | |||||
729704537 | MDExOlB1bGxSZXF1ZXN0NzI5NzA0NTM3 | 1465 | open | 0 | add support for -o --get /path | 51016 | Fixes https://github.com/simonw/datasette/issues/1459 Adds support for `--open --get /path` to be used in combination. If `--open` is provided alone, datasette will open a web page to a default URL. If `--get <url>` is provided alone, datasette will output the result of doing a GET to that URL and then exit. If `--open --get <url>` are provided together, datasette will open a web page to that URL. TODO items: - [ ] update documentation - [ ] print out error message when `--root --open --get <url>` is used - [ ] adjust code to require that `<url>` start with a `/` when `-o --get <url>` is used - [ ] add test(s) note, '@CTB' is used in this PR to flag code that needs revisiting. | 2021-09-08T14:30:42Z | 2021-09-08T14:31:45Z | 064e9511923fc4e50566bf9430b4a5b26f169357 | 1 | 9b66a7d9ba55bad8a3b409ede8855f4b4fff1f88 | d57ab156b35ec642549fb69d08279850065027d2 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1465 | ||||||
730020867 | MDExOlB1bGxSZXF1ZXN0NzMwMDIwODY3 | 1467 | closed | 0 | Add Authorization header when CORS flag is set | 3058200 | This PR adds the [`Access-Control-Allow-Headers`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers) flag when CORS mode is enabled. This would fix https://github.com/simonw/datasette-auth-tokens/issues/4. When making cross-origin requests, the server must respond with all allowable HTTP headers. A Datasette instance using auth tokens must accept the `Authorization` HTTP header in order for cross-origin authenticated requests to take place. Please let me know if there's a better way of doing this! I couldn't figure out a way to change the app's response from the plugin itself, so I'm starting here. If you'd rather this logic live in the plugin, I'd love any guidance you're able to give. | 2021-09-08T22:14:41Z | 2021-10-17T02:29:07Z | 2021-10-14T18:54:18Z | 15f258735ddee555028a075c09e1e8f74069be70 | 0 | 05109e8d61dedd477c4cedfb89b1da65610f70d1 | d57ab156b35ec642549fb69d08279850065027d2 | NONE | 107914493 | https://github.com/simonw/datasette/pull/1467 | |||||
737690951 | PR_kwDOBm6k_c4r-EVH | 1475 | open | 0 | feat: allow joins using _through in both directions | 5268174 | Currently the `_through` clause can only work if the FK relationship is defined in a specific direction. I don't think there is any reason for this limitation, as an FK allows joining in both directions. This is an admittedly hacky change to implement bidirectional joins using `_through`. It does work for our use-case, but I don't know if there are other implications that I haven't thought of. Also if this change is desirable we probably want to make the code a little nicer. | 2021-09-20T15:28:20Z | 2021-09-20T15:28:20Z | aa2f1c103730c0ede4ab67978288d91bbe1e00a6 | 0 | edf3c4c3271c8f13ab4c28ad88b817e115477e41 | b28b6cd2fe97f7e193a235877abeec2c8eb0a821 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1475 | ||||||
754942128 | PR_kwDOBm6k_c4s_4Cw | 1484 | closed | 0 | GitHub Actions: Add Python 3.10 to the tests | 3709715 | 2021-10-11T06:03:03Z | 2021-10-11T06:03:31Z | 2021-10-11T06:03:28Z | 69027b8c3e0e2236acd817a6fa5d32f762e3e9aa | 0 | 02c3218ca093df8b595d8ba7d88a32a0207b6385 | 0d5cc20aeffa3537cfc9296d01ec24b9c6e23dcf | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1484 | ||||||
764281468 | PR_kwDOBm6k_c4tjgJ8 | 1495 | open | 0 | Allow routes to have extra options | 536941 | Right now, datasette routes can only be a 2-tuple of `(regex, view_fn)`. If it was possible for datasette to handle extra options, like [standard Django does](https://docs.djangoproject.com/en/3.2/topics/http/urls/#passing-extra-options-to-view-functions), it would add flexibility for plugin authors. For example, if extra options were enabled, then it would be easy to make a single table the home page (#1284). This plugin would accomplish it. ```python from datasette import hookimpl from datasette.views.table import TableView @hookimpl def register_routes(datasette): return [ (r"^/$", TableView.as_view(datasette), {'db_name': 'DB_NAME', 'table': 'TABLE_NAME'}) ] ``` | 2021-10-22T15:00:45Z | 2021-11-19T15:36:27Z | 44969c5654748fb26ad05ab37245678f245f32e5 | 0 | fe7fa14b39846b919dfed44514a7d18d67e01dfd | ff9ccfb0310501a3b4b4ca24d73246a8eb3e7914 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1495 | ||||||
770511531 | PR_kwDOBm6k_c4t7RKr | 1500 | closed | 0 | Bump black from 21.9b0 to 21.10b0 | 49699333 | Bumps [black](https://github.com/psf/black) from 21.9b0 to 21.10b0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>21.10b0</h2> <h3><em>Black</em></h3> <ul> <li>Document stability policy, that will apply for non-beta releases (<a href="https://github-redirect.dependabot.com/psf/black/issues/2529">#2529</a>)</li> <li>Add new <code>--workers</code> parameter (<a href="https://github-redirect.dependabot.com/psf/black/issues/2514">#2514</a>)</li> <li>Fixed feature detection for positional-only arguments in lambdas (<a href="https://github-redirect.dependabot.com/psf/black/issues/2532">#2532</a>)</li> <li>Bumped typed-ast version minimum to 1.4.3 for 3.10 compatiblity (<a href="https://github-redirect.dependabot.com/psf/black/issues/2519">#2519</a>)</li> <li>Fixed a Python 3.10 compatibility issue where the loop argument was still being passed even though it has been removed (<a href="https://github-redirect.dependabot.com/psf/black/issues/2580">#2580</a>)</li> <li>Deprecate Python 2 formatting support (<a href="https://github-redirect.dependabot.com/psf/black/issues/2523">#2523</a>)</li> </ul> <h3><em>Blackd</em></h3> <ul> <li>Remove dependency on aiohttp-cors (<a href="https://github-redirect.dependabot.com/psf/black/issues/2500">#2500</a>)</li> <li>Bump required aiohttp version to 3.7.4 (<a href="https://github-redirect.dependabot.com/psf/black/issues/2509">#2509</a>)</li> </ul> <h3><em>Black-Primer</em></h3> <ul> <li>Add primer support for --projects (<a href="https://github-redirect.dependabot.com/psf/black/issues/2555">#2555</a>)</li> <li>Print primer summary after individual failures (<a href="https://github-redirect.dependabot.com/psf/black/issues/2570">#2570</a>)</li> </ul> <h3>Integrations</h3> <ul> <li>Allow to pass <code>target_version</code> in the vim plugin (<a href="https://github-redirect.dependabot.com/psf/black/issues/1319">#1319</a>)</li> <li>Install build tools in docker file and use mul… | 2021-11-01T13:11:23Z | 2021-11-17T13:14:00Z | 2021-11-17T13:13:58Z | bc0c2637d3dabbbf55a1cb86df620683a2486ae5 | 0 | 1b7f679b0d732162e8841c63fd4b8b0682627c10 | 2c31d1cd9cd3b63458ccbe391866499fa3f44978 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1500 | |||||
782105066 | PR_kwDOBm6k_c4unfnq | 1512 | closed | 0 | New pattern for async view classes | 9599 | Refs #878 - starting out with the new `AsyncBase` class implementing a pytest-inspired `asyncio` parallel execution mechanism. | 2021-11-16T21:55:44Z | 2021-11-17T01:39:54Z | 2021-11-17T01:39:44Z | fb57d4474cb1fdaef260e244b1b6f470f1992e40 | 1 | 8f757da0750fe7f27b4ed3839bc3ef3650832ad9 | 0156c6b5e52d541e93f0d68e9245f20ae83bc933 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1512 | |||||
782713972 | PR_kwDOBm6k_c4up0R0 | 1514 | closed | 0 | Bump black from 21.9b0 to 21.11b0 | 49699333 | Bumps [black](https://github.com/psf/black) from 21.9b0 to 21.11b0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>21.11b0</h2> <h3><em>Black</em></h3> <ul> <li>Warn about Python 2 deprecation in more cases by improving Python 2 only syntax detection (<a href="https://github-redirect.dependabot.com/psf/black/issues/2592">#2592</a>)</li> <li>Add experimental PyPy support (<a href="https://github-redirect.dependabot.com/psf/black/issues/2559">#2559</a>)</li> <li>Add partial support for the match statement. As it's experimental, it's only enabled when <code>--target-version py310</code> is explicitly specified (<a href="https://github-redirect.dependabot.com/psf/black/issues/2586">#2586</a>)</li> <li>Add support for parenthesized with (<a href="https://github-redirect.dependabot.com/psf/black/issues/2586">#2586</a>)</li> <li>Declare support for Python 3.10 for running Black (<a href="https://github-redirect.dependabot.com/psf/black/issues/2562">#2562</a>)</li> </ul> <h3>Integrations</h3> <ul> <li>Fixed vim plugin with Python 3.10 by removing deprecated distutils import (<a href="https://github-redirect.dependabot.com/psf/black/issues/2610">#2610</a>)</li> <li>The vim plugin now parses <code>skip_magic_trailing_comma</code> from pyproject.toml (<a href="https://github-redirect.dependabot.com/psf/black/issues/2613">#2613</a>)</li> </ul> <h2>21.10b0</h2> <h3><em>Black</em></h3> <ul> <li>Document stability policy, that will apply for non-beta releases (<a href="https://github-redirect.dependabot.com/psf/black/issues/2529">#2529</a>)</li> <li>Add new <code>--workers</code> parameter (<a href="https://github-redirect.dependabot.com/psf/black/issues/2514">#2514</a>)</li> <li>Fixed feature detection for positional-only arguments in lambdas (<a href="https://github-redirect.dependabot.com/psf/black/issues/2532">#2532</a>)</li> <li>Bumped typed-ast version minimum to 1.4.3 for 3.10 compatiblity (<a href="https://git… | 2021-11-17T13:13:55Z | 2021-11-18T13:11:17Z | 2021-11-18T13:11:15Z | 348147b356cdd38cfdce412675a1d0865b93b3b1 | 0 | b02c35a00e2036ded2944890b04485213df4c8f4 | 0156c6b5e52d541e93f0d68e9245f20ae83bc933 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1514 | |||||
801798514 | PR_kwDOBm6k_c4vynly | 1554 | closed | 0 | TableView refactor | 9599 | I'm starting a PR with almost nothing in it so I can use the GitHub code commenting feature to add a bunch of comments to the code I intend to refactor. Related issues: - #617 - #715 - #870 - #1518 | 2021-12-13T23:16:04Z | 2021-12-20T23:52:11Z | 2021-12-20T23:52:04Z | a68545f9a4c3b3a68259be5c03abfc9ad7710875 | 0 | 1d08b46412410837f987c606b2307a121fa2641a | a6ff123de5464806441f6a6f95145c9a83b7f20b | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1554 | |||||
806136219 | PR_kwDOBm6k_c4wDKmb | 1574 | closed | 0 | introduce new option for datasette package to use a slim base image | 33631 | The official python images on docker hub come with a slim variant that is significantly smaller than the default. The diff does not change the default, but allows to switch to the `slim` variant with commandline switch (`--slim-base-image`) Size comparison: ``` $ datasette package some.db -t fat --install "datasette-basemap datasette-cluster-map" $ datasette package some.db -t slim --slim-base-image --install "datasette-basemap datasette-cluster-map" $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE fat latest 807b393ace0d 9 seconds ago 978MB slim latest 31bc5e63505c 8 minutes ago 191MB ``` | 2021-12-19T21:18:19Z | 2022-08-15T08:49:31Z | 2022-08-15T08:49:31Z | 92ca4a2a9fb44e4cffc71444196753ad4a75a5c8 | 0 | 8561f0343b2b4213416ca84c8071a5a290f15a42 | 8c401ee0f054de2f568c3a8302c9223555146407 | NONE | 107914493 | https://github.com/simonw/datasette/pull/1574 | |||||
811088967 | PR_kwDOBm6k_c4wWDxH | 1582 | closed | 0 | don't set far expiry if hash is '000' | 536941 | This will close #1581. I couldn't find any unit tests related to the testing hashed urls, and I know that you want to break that code out of the core application (#1561), so I'm not quite sure what you would like me to for testing. | 2021-12-28T18:16:13Z | 2022-03-24T04:07:58Z | 2022-03-24T04:07:58Z | e7249b52558b4ddcd92e68a13bd02fb54a2b92f8 | 0 | 216f3b32b88d85b33e45937ed89ac919d82c23b4 | 8c401ee0f054de2f568c3a8302c9223555146407 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1582 | |||||
820898460 | PR_kwDOBm6k_c4w7eqc | 1593 | closed | 0 | Update pytest-asyncio requirement from <0.17,>=0.10 to >=0.10,<0.18 | 49699333 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's releases</a>.</em></p> <blockquote> <h2>pytest-asyncio 0.17.0</h2> <hr /> <h2>title: 'pytest-asyncio: pytest support for asyncio'</h2> <p><a href="https://pypi.python.org/pypi/pytest-asyncio"><img src="https://img.shields.io/pypi/v/pytest-asyncio.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio/actions?workflow=CI"><img src="https://github.com/pytest-dev/pytest-asyncio/workflows/CI/badge.svg" alt="image" /></a></p> <p><a href="https://codecov.io/gh/pytest-dev/pytest-asyncio"><img src="https://codecov.io/gh/pytest-dev/pytest-asyncio/branch/master/graph/badge.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio"><img src="https://img.shields.io/pypi/pyversions/pytest-asyncio.svg" alt="Supported Python versions" /></a></p> <p><a href="https://github.com/ambv/black"><img src="https://img.shields.io/badge/code%20style-black-000000.svg" alt="image" /></a></p> <p>pytest-asyncio is an Apache2 licensed library, written in Python, for testing asyncio code with pytest.</p> <p>asyncio code is usually written in the form of coroutines, which makes it slightly more difficult to test using normal testing tools. pytest-asyncio provides useful fixtures and markers to make testing easier.</p> <pre lang="{.sourceCode" data-meta=".python}"><code>@pytest.mark.asyncio async def test_some_asyncio_code(): res = await library.do_something() assert b"expected result" == res </code></pre> <p>pytest-asyncio has been strongly influenced by <a href="https://github.com/eugeniy/pytest-tornado">pytest-tornado</a>.</p> <h1>Features</h1> <ul> <li>fixtures for creating and injecting versions of the asyncio event loop</li> <li>fixtures for injecting unused tcp/udp ports</li> <li>pytest markers for treatin… | 2022-01-13T13:11:50Z | 2022-02-07T13:13:24Z | 2022-02-07T13:13:23Z | 750b3fa430a30ce5e44f146ffaa390937090db80 | 0 | df73ebb0c9a6e1d77ec08399608eb1422d43a779 | 8c401ee0f054de2f568c3a8302c9223555146407 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1593 | |||||
838755826 | PR_kwDOBm6k_c4x_mXy | 1626 | open | 0 | Try test suite against macOS and Windows | 9599 | Refs #1625 | 2022-02-02T22:26:51Z | 2022-02-03T01:22:44Z | 83958f26a8458a108acb7c3c0a1c8aacb777586a | 0 | 4b4d0e1ff9e2ee998cbd71abd5f5806f25444ed9 | b5e6b1a9e1332fca3effe45d55dd06ee4249f163 | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1626 | ||||||
883644303 | PR_kwDOBm6k_c40q1eP | 1665 | closed | 0 | Pin setup-gcloud to v0 instead of master | 408570 | setup-gcloud will be updating the branch name from master to main in a future release. Even though GitHub will establish redirects, this will break any GitHub Actions workflows that pin to master. This PR updates your GitHub Actions workflows to pin to v0, which is the recommended best practice. | 2022-03-18T17:17:22Z | 2022-03-23T19:31:10Z | 2022-03-23T17:55:39Z | 5bd51d8eda65b25ce639a841944eb6b522768b2b | 0 | c811c2181e298a48fdf50523525813c37f99e592 | 30e5f0e67c38054a8087a2a4eae3fc4d1779af90 | NONE | 107914493 | https://github.com/simonw/datasette/pull/1665 | |||||
889476515 | PR_kwDOBm6k_c41BFWj | 1685 | closed | 0 | Update jinja2 requirement from <3.1.0,>=2.10.3 to >=2.10.3,<3.2.0 | 49699333 | 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>3.1.0</h2> <p>This is a feature release, which includes new features and removes previously deprecated features. The 3.1.x branch is now the supported bugfix branch, the 3.0.x branch has become a tag marking the end of support for that branch. We encourage everyone to upgrade, and to use a tool such as <a href="https://pypi.org/project/pip-tools/">pip-tools</a> to pin all dependencies and control upgrades. We also encourage upgrading to MarkupSafe 2.1.1, the latest version at this time.</p> <ul> <li>Changes: <a href="https://jinja.palletsprojects.com/en/3.1.x/changes/#version-3-1-0">https://jinja.palletsprojects.com/en/3.1.x/changes/#version-3-1-0</a></li> <li>Milestone: <a href="https://github.com/pallets/jinja/milestone/8?closed=1">https://github.com/pallets/jinja/milestone/8?closed=1</a></li> <li>MarkupSafe changes: <a href="https://markupsafe.palletsprojects.com/en/2.1.x/changes/#version-2-1-1">https://markupsafe.palletsprojects.com/en/2.1.x/changes/#version-2-1-1</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/blob/main/CHANGES.rst">jinja2's changelog</a>.</em></p> <blockquote> <h2>Version 3.1.0</h2> <p>Released 2022-03-24</p> <ul> <li> <p>Drop support for Python 3.6. :pr:<code>1534</code></p> </li> <li> <p>Remove previously deprecated code. :pr:<code>1544</code></p> <ul> <li><code>WithExtension</code> and <code>AutoEscapeExtension</code> are built-in now.</li> <li><code>contextfilter</code> and <code>contextfunction</code> are replaced by <code>pass_context</code>. <code>evalcontextfilter</code> and <code>evalcontextfunction</code> are replaced by <code>pass_eval_context</code>. <code>environmentfilter</code> and <code>environmentfunction</code> are replac… | 2022-03-25T13:12:13Z | 2022-09-05T18:36:49Z | 2022-09-05T18:36:48Z | 0a1124217cbfa997ae6b8976b3fc76fc443225fb | 0 | 933ce474aef535de92d89968816cbdde77c48c64 | c496f2b663ff0cef908ffaaa68b8cb63111fb5f2 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1685 | |||||
893039755 | PR_kwDOBm6k_c41OrSL | 1693 | closed | 0 | Bump black from 22.1.0 to 22.3.0 | 49699333 | Bumps [black](https://github.com/psf/black) from 22.1.0 to 22.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>22.3.0</h2> <h3>Preview style</h3> <ul> <li>Code cell separators <code>#%%</code> are now standardised to <code># %%</code> (<a href="https://github-redirect.dependabot.com/psf/black/issues/2919">#2919</a>)</li> <li>Remove unnecessary parentheses from <code>except</code> statements (<a href="https://github-redirect.dependabot.com/psf/black/issues/2939">#2939</a>)</li> <li>Remove unnecessary parentheses from tuple unpacking in <code>for</code> loops (<a href="https://github-redirect.dependabot.com/psf/black/issues/2945">#2945</a>)</li> <li>Avoid magic-trailing-comma in single-element subscripts (<a href="https://github-redirect.dependabot.com/psf/black/issues/2942">#2942</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>Do not format <code>__pypackages__</code> directories by default (<a href="https://github-redirect.dependabot.com/psf/black/issues/2836">#2836</a>)</li> <li>Add support for specifying stable version with <code>--required-version</code> (<a href="https://github-redirect.dependabot.com/psf/black/issues/2832">#2832</a>).</li> <li>Avoid crashing when the user has no homedir (<a href="https://github-redirect.dependabot.com/psf/black/issues/2814">#2814</a>)</li> <li>Avoid crashing when md5 is not available (<a href="https://github-redirect.dependabot.com/psf/black/issues/2905">#2905</a>)</li> <li>Fix handling of directory junctions on Windows (<a href="https://github-redirect.dependabot.com/psf/black/issues/2904">#2904</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Update pylint config documentation (<a href="https://github-redirect.dependabot.com/psf/black/issues/2931">#2931</a>)</li> </ul> <h3>Integrations</h3> <ul> <li>Move test to disable plugin in Vim/Neovim, which speeds up loading (<a href="https://github-redirect.dependabot.com/psf/black/issues/2896">#2896</a>)</li> </ul> <h3… | 2022-03-29T13:11:09Z | 2022-06-28T13:11:38Z | 2022-06-28T13:11:36Z | 17e058e286104e9b9180df72c61eb9218f376c4d | 0 | ec2d1e47dc39dd1db2048cd0a001aa9e4be20812 | 1d33fd03b3c211e0f48a8f3bde83880af89e4e69 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1693 | |||||
959088871 | PR_kwDOBm6k_c45Kojn | 1753 | closed | 0 | Bump furo from 2022.4.7 to 2022.6.4.1 | 49699333 | Bumps [furo](https://github.com/pradyunsg/furo) from 2022.4.7 to 2022.6.4.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pradyunsg/furo/blob/main/docs/changelog.md">furo's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <!-- raw HTML omitted --> <h2>2022.06.04.1 -- Naughty Nickel bugfix</h2> <ul> <li>Fix the URL used in the "Edit this page" for Read the Docs builds.</li> </ul> <h2>2022.06.04 -- Naughty Nickel</h2> <ul> <li>✨ Advertise Sphinx 5 compatibility.</li> <li>✨ Change to <code>basic-ng</code> as the base theme (from {pypi}<code>sphinx-basic-ng</code>).</li> <li>Document site-wide announcement banners.</li> <li>Drop the pin on pygments.</li> <li>Improve edit button, using <code>basic-ng</code>'s <code>edit-this-page</code> component.</li> <li>Tweak headings to better match what users expect.</li> <li>Tweak how Sphinx's default HTML is rendered, using docutils post-transforms (this replaces parsing+modifying it with BeautifulSoup).</li> <li>When built with docutils 0.18, footnotes are rendered differently and stylised differently in Furo.</li> </ul> <h2>2022.04.07 -- Magical Mauve</h2> <ul> <li>✨ Make sphinx-copybutton look better.</li> <li>Add margin to indentations in line blocks.</li> <li>Add styling for non-arabic list styles</li> <li>Add support for <code>html_baseurl</code>.</li> <li>Improve "Edit this page" icon to be more accessible.</li> <li>Improve <code>html_sidebars</code> example.</li> <li>Tweak positioning of back to top on desktop.</li> </ul> <h2>2022.03.04 -- Lucent Lilac</h2> <ul> <li>Improve support for print media.</li> <li>Reduce heading sizes for h3 and below.</li> <li>Don't allow selecting headerlink content.</li> <li>Improve how overflow wrapping is handled.</li> <li>Add a reference from the configuration variables to the color customisation page.</li> </ul> <h2>2022.02.23 -- Keen Kobi</h2> <ul> <li>✨ Add a "Back to Top" button that shows up when scrolling up.</li> <li>Add a URL to GitHub in Project-URLs.… | 2022-06-06T13:10:22Z | 2022-06-22T13:22:37Z | 2022-06-22T13:22:35Z | 7a9d91728ac8d15d558ffa4201ac3907f9e93905 | 0 | 23a85154e276c001f920eacb9ad266cb227f7eab | 2e9751672d4fe329b3c359d5b7b1992283185820 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1753 | |||||
964640654 | PR_kwDOBm6k_c45fz-O | 1757 | open | 0 | feat: add a wildcard for _json columns | 163156 | This allows _json to accept a wildcard for when there are many JSON columns that the user wants to convert. I hope this is useful. I've tested it on our datasette and haven't ran into any issues. I imagine on a large set of results, there could be some performance issues, but it will probably be negligible for most use cases. On a side note, I ran into an issue where I had to upgrade black on my system beyond the pinned version in setup.py. Here is the upstream issue <<https://github.com/psf/black/issues/2964> . I didn't include this in the PR yet since I didn't look into the issue too far, but I can if you would like. | 2022-06-11T01:01:17Z | 2022-09-06T00:51:21Z | f302b919cb78f1e353fc14cb449cab4a93dcedc6 | 0 | 1cdcd8894ce2bb76cf29f8ffcdadedbb6fa0dac1 | 2e9751672d4fe329b3c359d5b7b1992283185820 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1757 | ||||||
998860509 | PR_kwDOBm6k_c47iWbd | 1772 | open | 0 | Convert to setup.cfg | 89725 | Recent versions of setuptools can run most things from setup.cfg so one can have a simpler version that does not require executing code on install. The bulk of the changes were automated by running https://pypi.org/project/setup-py-upgrade/ with a few minor edits for the bits that it can not auto convert (the initial `get_long_description()` and `get_version()` can not be automatically converted) | 2022-07-18T03:39:53Z | 2022-07-18T03:39:53Z | 3abb0780f97901ae39f8a206c7c6d376f8574ffc | 0 | c1b2f539c8d4cabe0a48d07bd8ce3fd1439a8f08 | 01369176b0a8943ab45292ffc6f9c929b80a00e8 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1772 | ||||||
1037685744 | PR_kwDOBm6k_c492dPw | 1793 | closed | 0 | Added a useful resource | 111973926 | Have added a useful resource about the types of databases in SQL i.e SQLite, PostgreSQL, MySQL &, etc from the scaler topics. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1793.org.readthedocs.build/en/1793/ <!-- readthedocs-preview datasette end --> | 2022-08-26T08:41:26Z | 2022-09-06T00:41:25Z | 2022-09-06T00:41:24Z | 40c948ac58afa155bbceaff70c43e85e58434188 | 0 | 32a9224b7e107016e5ba0fc90ff86cfafad93b2f | ba35105eee2d3ba620e4f230028a02b2e2571df2 | NONE | 107914493 | https://github.com/simonw/datasette/pull/1793 | |||||
1046652968 | PR_kwDOBm6k_c4-Yqgo | 1799 | closed | 0 | Update aiofiles requirement from <0.9,>=0.4 to >=0.4,<22.2 | 49699333 | 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/9d697f5857b5e49bad485212d9d81917ce65b607"><code>9d697f5</code></a> 22.1.0</li> <li><a href="https://github.com/Tinche/aiofiles/commit/6a14491ff8fe7dd9788c62722f4f4bc7922d0c92"><code>6a14491</code></a> Update README</li> <li><a href="https://github.com/Tinche/aiofiles/commit/76f8934028d0cf490e180636f55eb381fa9343f9"><code>76f8934</code></a> Update test deps</li> <li><a href="https://github.com/Tinche/aiofiles/commit/885df353c199dd86d64424663880f0972b0c3943"><code>885df35</code></a> Min Python to 3.7</li> <li><a href="https://github.com/Tinche/aiofiles/commit/a93206be5bbc12c68a5bef753d40a8af449fa934"><code>a93206b</code></a> Bump poetry to 1.2.0</li> <li><a href="https://github.com/Tinche/aiofiles/commit/d2eda6120a813a6bd1014bd676abade70928c641"><code>d2eda61</code></a> Add missing comma</li> <li><a href="https://github.com/Tinche/aiofiles/commit/b02cf6a33872598cae3e587d233ad5404d7c7fb0"><code>b02cf6a</code></a> CI tweaks</li> <li><a href="https://github.com/Tinche/aiofiles/commit/7636eff01f2de6e2d3f94ea234eaf27380b33080"><code>7636eff</code></a> Update README.rst</li> <li><a href="https://github.com/Tinche/aiofiles/commit/9bc662aab0f735d06c54c69938ff3a828d8f91d8"><code>9bc662a</code></a> Added os scantdir with is't tests and improved the tests for listdir</li> <li><a href="https://github.com/Tinche/aiofiles/commit/2aefa1e4df8356604b5692fda45877b8a401e0df"><code>2aefa1e</code></a> Added os listdir function with it's tests</li> <li>Additional commits viewable in <a href="https://github.com/Tinche/aiofiles/compare/v0.4.0...v22.1.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) --- … | 2022-09-05T16:13:48Z | 2022-09-05T18:36:44Z | 2022-09-05T18:36:43Z | 1f3d29c2db5cbd793cd6224049cb3fe1f4a74b7e | 0 | 5abd55a273fedfb700f76b97dc88f5cc2620446e | ba35105eee2d3ba620e4f230028a02b2e2571df2 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1799 | |||||
1067479608 | PR_kwDOBm6k_c4_oHI4 | 1820 | closed | 0 | [SPIKE] Don't truncate query CSVs | 536941 | Relates to #526 This is a minimal set of changes needed for having *query* CSVs attempt to download all the rows. What's good about it is the minimalism. What's bad about it: 1. We are abusing the `_size` argument to indicate we don't want truncation, which isn't the most obvious thing. Additionally, there are various checks that make sure the "_size" URL parameter is a positive integer, which we are relying on to prevent overloading. 2. The default CSV on a table page will use the max_returned_rows argument. Changing this could be a breaking change, since that's currently a place that has some facilities for pagination. Additionally, i think there's a limit under the hood somewhere which if we removed could lead to sql timeouts 3. There are similar reasons for leaving the current streaming method alone, as the current methods could allow for downloading very large files that could have a sql timeout if we tried to get them in one go. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1820.org.readthedocs.build/en/1820/ <!-- readthedocs-preview datasette end --> | 2022-09-26T17:27:01Z | 2022-10-07T16:12:17Z | 2022-10-07T16:12:17Z | bd62037d5cdf72c06fd4d78da162cbc1526c1ab6 | 1 | 9bead2a95b74f3a2e0be2a9f1cb1f624aec22c2f | eff112498ecc499323c26612d707908831446d25 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1820 | |||||
1067890893 | PR_kwDOBm6k_c4_prjN | 1823 | open | 0 | Keyword-only arguments for a bunch of internal methods | 9599 | Refs #1822 <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1823.org.readthedocs.build/en/1823/ <!-- readthedocs-preview datasette end --> | 2022-09-27T00:44:59Z | 2022-10-05T04:37:54Z | 28068a62ad6a8b76a1c9223c4ca78099cfd2ece5 | 0 | b545b6a04ed7b407331f991adce107691ac3ab97 | 5f9f567acbc58c9fcd88af440e68034510fb5d2b | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1823 | ||||||
1079769381 | PR_kwDOBm6k_c5AW_kl | 1838 | closed | 0 | Open Datasette link in new tab | 4399499 | This is technically a Sandstorm-specific fix (as external links do not work inside the grain frame), however, I think it is an improvement to the upstream project, so I wanted to propose it here rather than patching it in our package. There's much opinions on the Internet about whether external links should open in a new tab by default or not, but I'd argue very few people who might click a "powered by" link intend to complete their interaction with the source page (a Datasette). And furthermore, users may be working within various queries or loading visualizations (navigating away when trying to plot a million GPS coordinates pretty much just resets your progress!), so linking away within the tab might be a frustrating or destructive act to one's work, even inadvertently. original report: https://github.com/ocdtrekkie/datasette-sandstorm/issues/1 <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1838.org.readthedocs.build/en/1838/ <!-- readthedocs-preview datasette end --> | 2022-10-07T01:12:20Z | 2022-10-07T16:28:41Z | 2022-10-07T02:01:07Z | 9a7745ceef270893fa76a10ee70546f62d5110bd | 0 | 7f2a3376c348e9dd9ea926ab94ae6b610194e6c1 | eff112498ecc499323c26612d707908831446d25 | NONE | 107914493 | https://github.com/simonw/datasette/pull/1838 | |||||
1081550456 | PR_kwDOBm6k_c5AdyZ4 | 1840 | closed | 0 | test commit | 102635518 | lalalalalalala <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1840.org.readthedocs.build/en/1840/ <!-- readthedocs-preview datasette end --> | 2022-10-10T05:15:26Z | 2022-10-10T09:11:50Z | 2022-10-10T09:11:50Z | 0 | 304ce7a516a0b361ae9f5f0059ce02eb675f69aa | b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9 | NONE | 107914493 | https://github.com/simonw/datasette/pull/1840 | ||||||
1102353255 | PR_kwDOBm6k_c5BtJNn | 1870 | open | 0 | don't use immutable=1, only mode=ro | 536941 | Opening db files in immutable mode sometimes leads to the file being mutated, which causes duplication in the docker image layers: see #1836, #1480 That this happens in "immutable" mode is surprising, because the sqlite docs say that setting this should open the database as read only. https://www.sqlite.org/c3ref/open.html > immutable: The immutable parameter is a boolean query parameter that indicates that the database file is stored on read-only media. When immutable is set, SQLite assumes that the database file cannot be changed, even by a process with higher privilege, and so the database is opened read-only and all locking and change detection is disabled. Caution: Setting the immutable property on a database file that does in fact change can result in incorrect query results and/or [SQLITE_CORRUPT](https://www.sqlite.org/rescode.html#corrupt) errors. See also: [SQLITE_IOCAP_IMMUTABLE](https://www.sqlite.org/c3ref/c_iocap_atomic.html). Perhaps this is a bug in sqlite? <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1870.org.readthedocs.build/en/1870/ <!-- readthedocs-preview datasette end --> | 2022-10-27T23:33:04Z | 2023-10-03T19:12:37Z | fc2d316f9e22593d48036e9d81fe972bb5973016 | 0 | 4faa4fd3b3e7f5eae758b713d0a121b960e2e261 | bf00b0b59b6692bdec597ac9db4e0b497c5a47b4 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1870 | ||||||
1154884166 | PR_kwDOBm6k_c5E1iJG | 1938 | closed | 0 | "permissions" blocks in metadata.json/yaml | 9599 | Refs #1636 - [x] Documentation - [ ] Implementation - [ ] Validate metadata to check there are no nonsensical permissions (like `debug-menu` set at the table level) - [ ] Tests <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1938.org.readthedocs.build/en/1938/ <!-- readthedocs-preview datasette end --> | 2022-12-08T22:07:36Z | 2022-12-13T05:23:19Z | 2022-12-13T05:23:18Z | 271ea3ae0c858de2d392b61a1a4a9f5837cbddf8 | 8711695 | 0 | 6e35a6b4f7ea9ba3fb6f02f45452eeb41de69786 | e539c1c024bc62d88df91d9107cbe37e7f0fe55f | OWNER | 107914493 | https://github.com/simonw/datasette/pull/1938 | ||||
1182593611 | PR_kwDOBm6k_c5GfPJL | 1974 | closed | 0 | Bump sphinx from 5.3.0 to 6.0.0 | 49699333 | Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 5.3.0 to 6.0.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/releases">sphinx's releases</a>.</em></p> <blockquote> <h2>v6.0.0</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b2</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/blob/master/CHANGES">sphinx's changelog</a>.</em></p> <blockquote> <h1>Release 6.0.0 (released Dec 29, 2022)</h1> <h2>Dependencies</h2> <ul> <li><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/10468">#10468</a>: Drop Python 3.6 support</li> <li><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/10470">#10470</a>: Drop Python 3.7, Docutils 0.14, Docutils 0.15, Docutils 0.16, and Docutils 0.17 support. Patch by Adam Turner</li> </ul> <h2>Incompatible changes</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/7405">#7405</a>: Removed the jQuery and underscore.js JavaScript frameworks.</p> <p>These frameworks are no longer be automatically injected into themes from Sphinx 6.0. If you develop a theme or extension that uses the <code>jQuery</code>, <code>$</code>, or <code>$u</code> global objects, you need to update your JavaScript to modern standards, or use the mitigation below.</p> <p>The first option is to use the sphinxcontrib.jquery_ extension, which has been developed by the Sphinx team and contributors. To use this, add <code>sphinxcontrib.jquery</code> to the <code>extensions</code> list in <code>conf.py</code>, or call <co… | 2023-01-02T13:04:26Z | 2023-01-05T13:02:42Z | 2023-01-05T13:02:40Z | 302502126c106d20af29005bbd3bc7e86ca69052 | 0 | 1e213a39f9582f881c626888d704dd3f196f6ae7 | 572bdb5b8095bbdc5ec2aa95400055e49ea028cb | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1974 | |||||
1186476109 | PR_kwDOBm6k_c5GuDBN | 1976 | closed | 0 | Bump sphinx from 5.3.0 to 6.1.0 | 49699333 | Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 5.3.0 to 6.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/releases">sphinx's releases</a>.</em></p> <blockquote> <h2>v6.1.0</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b2</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/blob/master/CHANGES">sphinx's changelog</a>.</em></p> <blockquote> <h1>Release 6.1.0 (released Jan 05, 2023)</h1> <h2>Dependencies</h2> <ul> <li> <p>Adopted the <code>Ruff</code>_ code linter.</p> <p>.. _Ruff: <a href="https://github.com/charliermarsh/ruff">https://github.com/charliermarsh/ruff</a></p> </li> </ul> <h2>Incompatible changes</h2> <ul> <li><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/10979">#10979</a>: gettext: Removed support for pluralisation in <code>get_translation</code>. This was unused and complicated other changes to <code>sphinx.locale</code>.</li> </ul> <h2>Deprecated</h2> <ul> <li> <p><code>sphinx.util</code> functions:</p> <ul> <li>Renamed <code>sphinx.util.typing.stringify()</code> to <code>sphinx.util.typing.stringify_annotation()</code></li> <li>Moved <code>sphinx.util.xmlname_checker()</code> to <code>sphinx.builders.epub3._XML_NAME_PATTERN</code></li> </ul> <p>Moved… | 2023-01-05T13:02:37Z | 2023-01-06T13:02:17Z | 2023-01-06T13:02:15Z | 21d3f3f92f1c902ba7acb267022b1c2b38a59bf3 | 0 | af76abcf2e9a6645e3d85acbc0da1f69d04e377c | c41278b46f7936b4b1a8a14bf285bed82c81c609 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1976 | |||||
1188133959 | PR_kwDOBm6k_c5G0XxH | 1977 | closed | 0 | Bump sphinx from 5.3.0 to 6.1.1 | 49699333 | Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 5.3.0 to 6.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/releases">sphinx's releases</a>.</em></p> <blockquote> <h2>v6.1.1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.1.0</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b2</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/blob/v6.1.1/CHANGES">sphinx's changelog</a>.</em></p> <blockquote> <h1>Release 6.1.1 (released Jan 05, 2023)</h1> <h2>Bugs fixed</h2> <ul> <li><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/11091">#11091</a>: Fix <code>util.nodes.apply_source_workaround</code> for <code>literal_block</code> nodes with no source information in the node or the node's parents.</li> </ul> <h1>Release 6.1.0 (released Jan 05, 2023)</h1> <h2>Dependencies</h2> <ul> <li> <p>Adopted the <code>Ruff</code>_ code linter.</p> <p>.. _Ruff: <a href="https://github.com/charliermarsh/ruff">https://github.com/charliermarsh/ruff</a></p> </li> </ul> <h2>Incompatible changes</h2> <ul> <li><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/10979">#10979</a>: gettext: Re… | 2023-01-06T13:02:12Z | 2023-01-09T13:06:17Z | 2023-01-09T13:06:14Z | 23faad99fb4d7282f6170742fa7e5ef2bbd935af | 0 | a4eebeecd723ed9bc5517fd2f05320c11df3d749 | c41278b46f7936b4b1a8a14bf285bed82c81c609 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1977 | |||||
1190763280 | PR_kwDOBm6k_c5G-ZsQ | 1982 | closed | 0 | Bump sphinx from 5.3.0 to 6.1.2 | 49699333 | Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 5.3.0 to 6.1.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/releases">sphinx's releases</a>.</em></p> <blockquote> <h2>v6.1.2</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.1.1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.1.0</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b2</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> <h2>v6.0.0b1</h2> <p>Changelog: <a href="https://www.sphinx-doc.org/en/master/changes.html">https://www.sphinx-doc.org/en/master/changes.html</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/sphinx-doc/sphinx/blob/master/CHANGES">sphinx's changelog</a>.</em></p> <blockquote> <h1>Release 6.1.2 (released Jan 07, 2023)</h1> <h2>Bugs fixed</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/11101">#11101</a>: LaTeX: <code>div.topic_padding</code> key of sphinxsetup documented at 5.1.0 was implemented with name <code>topic_padding</code></p> </li> <li> <p><a href="https://github-redirect.dependabot.com/sphinx-doc/sphinx/issues/11099">#11099</a>: LaTeX: <code>shadowrule</code> key of sphinxsetup causes PDF build to crash since Sphinx 5.1.0</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/… | 2023-01-09T13:06:11Z | 2023-01-10T02:03:21Z | 2023-01-10T02:03:19Z | 8e25eb9553a34438663c16a75d921f2ffe11b353 | 0 | 700a12848da52e1f28a892d424319364e001ed6f | 7b48664d751e59222c01c97a2739d53d6363bdda | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1982 | |||||
1201985064 | PR_kwDOBm6k_c5HpNYo | 1996 | open | 0 | Document custom json encoder | 25778 | Closes #1983 All documentation here. Edits welcome. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--1996.org.readthedocs.build/en/1996/ <!-- readthedocs-preview datasette end --> | 2023-01-18T16:54:14Z | 2023-01-19T12:55:57Z | b608768f75e8e15ee4618ebac8bcba2da47b2aa3 | 0 | 96b8b7f1ecf3abaec5921aaedee251e36eed5339 | 6a352e99ab988dbf8fd22a100049caa6ad33f1ec | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/1996 | ||||||
1215742203 | PR_kwDOBm6k_c5IdsD7 | 2003 | open | 0 | Show referring tables and rows when the referring foreign key is compound | 536941 | sqlite foreign keys can be compound, but that is not as well supported by datasette as single column foreign keys. in particular, 1. in a table view, there is not a link from the row to the referenced row if the foreign key is compound 2. in a row view, there is no listing of tables and rows that refer to the focal row if those referencing foreign keys are compound. Both of these issues are discussed in #1099. This PR only fixes the second one, because it's not clear what the right UX is for the first issue. ![Screenshot 2023-01-24 at 19-47-40 nlrb bargaining_unit](https://user-images.githubusercontent.com/536941/214454749-d53deead-4151-4329-a5d4-8a7a454de7d3.png) Some things that might not be desirable about this approach. 1. it changes the external API, by changing `column` => `columns` and `other_column` => `other_columns` (see inline comment for more discussion. 2. There are various places where the plural foreign keys have to be checked for length and discarded or transformed to singular. | 2023-01-24T21:31:31Z | 2023-01-25T18:44:42Z | fb3abeceb2785a582d2c120c7c1bf7dc3cd1de05 | 0 | 1e5b42f9d6490926300953837cbaa571ef81d772 | e4ebef082de90db4e1b8527abc0d582b7ae0bc9d | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2003 | ||||||
1216059840 | PR_kwDOBm6k_c5Ie5nA | 2004 | open | 0 | use single quotes for string literals, fixes #2001 | 193185 | This modernizes some uses of double quotes for string literals to use only single quotes, fixes simonw/datasette#2001 While developing it, I manually enabled the stricter mode by using the code snippet at https://gist.github.com/cldellow/85bba507c314b127f85563869cd94820 I think that code snippet isn't generally safe/portable, so I haven't tried to automate it in the tests. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2004.org.readthedocs.build/en/2004/ <!-- readthedocs-preview datasette end --> | 2023-01-25T05:08:45Z | 2023-02-01T06:37:18Z | f678bfc05913a4b5ecf0c4cebe9ca8329c7d4a21 | 0 | dca7634c274e71fae0d95ea4ff1dfd987b9af63c | e4ebef082de90db4e1b8527abc0d582b7ae0bc9d | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2004 | ||||||
1220379312 | PR_kwDOBm6k_c5IvYKw | 2008 | open | 0 | array facet: don't materialize unnecessary columns | 193185 | The presence of `inner.*` causes SQLite to materialize a row with all the columns. Those columns will be discarded later. Instead, we can select only the column we'll use. This lets SQLite's optimizer realize that the other columns in the CTE definition aren't needed. On a test table with 278K rows, 98K of which had an array, this speeds up the facet calculation from 4 sec to 1 sec. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2008.org.readthedocs.build/en/2008/ <!-- readthedocs-preview datasette end --> | 2023-01-28T19:33:40Z | 2023-01-29T18:17:40Z | 0eda5a57ead9bda8be4c9e5cd2fdb9f22e69222e | 0 | f529a3001d35a114d2e622dcc7913c4c25a95ed8 | 0b4a28691468b5c758df74fa1d72a823813c96bf | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2008 | ||||||
1224851890 | PR_kwDOBm6k_c5JAcGy | 2014 | closed | 0 | Bump black from 22.12.0 to 23.1.0 | 49699333 | Bumps [black](https://github.com/psf/black) from 22.12.0 to 23.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/black/releases">black's releases</a>.</em></p> <blockquote> <h2>23.1.0</h2> <h3>Highlights</h3> <p>This is the first release of 2023, and following our <a href="https://black.readthedocs.io/en/stable/the_black_code_style/index.html#stability-policy">stability policy</a>, it comes with a number of improvements to our stable style, notably improvements to empty line handling and the removal of redundant parentheses in several contexts.</p> <p>There are also many changes to the preview style; try out <code>black --preview</code> and give us feedback to help us set the stable style for next year.</p> <p>In addition to style changes, Black now automatically infers the supported Python versions from your <code>pyproject.toml</code> file, removing the need to set Black's target versions separately.</p> <h3>Stable style</h3> <!-- raw HTML omitted --> <ul> <li>Introduce the 2023 stable style, which incorporates most aspects of last year's preview style (<a href="https://github-redirect.dependabot.com/psf/black/issues/3418">#3418</a>). Specific changes: <ul> <li>Enforce empty lines before classes and functions with sticky leading comments (<a href="https://github-redirect.dependabot.com/psf/black/issues/3302">#3302</a>) (22.12.0)</li> <li>Reformat empty and whitespace-only files as either an empty file (if no newline is present) or as a single newline character (if a newline is present) (<a href="https://github-redirect.dependabot.com/psf/black/issues/3348">#3348</a>) (22.12.0)</li> <li>Correctly handle trailing commas that are inside a line's leading non-nested parens (<a href="https://github-redirect.dependabot.com/psf/black/issues/3370">#3370</a>) (22.12.0)</li> <li><code>--skip-string-normalization</code> / <code>-S</code> now prevents docstring prefixes from being normalized as expected (<a href="https://github-redirect.dependabot.com/psf/black/issues/3168">… | 2023-02-01T13:06:16Z | 2023-03-29T06:09:14Z | 2023-03-29T06:09:12Z | 38f5695c85ee073f2405dfe89d6ff798b01222f8 | 0 | c631684bc7bde78f77a564b337d2e2e6e87cfa7e | 0b4a28691468b5c758df74fa1d72a823813c96bf | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2014 | |||||
1238017010 | PR_kwDOBm6k_c5JyqPy | 2025 | open | 0 | Add database metadata to index.html template context | 9993 | Fixes #2016 <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2025.org.readthedocs.build/en/2025/ <!-- readthedocs-preview datasette end --> | 2023-02-12T11:16:58Z | 2023-02-12T11:17:14Z | a2d3bb02cf2c9b8ed7c788910fdda606108cd584 | 0 | 912ed9de92d1bb9a28f50a2e08c5e7df2b827c15 | 0b4a28691468b5c758df74fa1d72a823813c96bf | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2025 | ||||||
1243080434 | PR_kwDOBm6k_c5KF-by | 2026 | open | 0 | Avoid repeating primary key columns if included in _col args | 8513 | ...while maintaining given order. Fixes #1975 (if I'm understanding correctly). <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2026.org.readthedocs.build/en/2026/ <!-- readthedocs-preview datasette end --> | 2023-02-16T04:16:25Z | 2023-02-16T04:16:41Z | ad2bfc72186e7af2244a6f27e02754f4c2f64910 | 0 | f15adf1d6211e05250e5492826dd3f8e8e328077 | 0b4a28691468b5c758df74fa1d72a823813c96bf | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2026 | ||||||
1259276997 | PR_kwDOBm6k_c5LDwrF | 2031 | open | 0 | Expand foreign key references in row view as well | 82332573 | Unlike the table view, the single row view does not resolve foreign key references into labels. This patch extracts the foreign key reference expansion code from TableView.data() into a standalone function that is then called by both TableView.data() and RowView.data(). <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2031.org.readthedocs.build/en/2031/ <!-- readthedocs-preview datasette end --> | 2023-03-01T18:43:09Z | 2023-03-24T18:35:25Z | ee7aec6175d0934c0420002529d21a767d2a527d | 0 | ef25867492ce6eb69492aa37fcde98936a95365c | 3feed1f66e2b746f349ee56970a62246a18bb164 | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2031 | ||||||
1266742462 | PR_kwDOBm6k_c5LgPS- | 2034 | open | 0 | remove an unused `app` var in cli.py | 4370201 | this var `app` isn't actually used? unless init it does some side-effect outside of the event loop, idon't think it's necessary. Feel free to ignore this PR if the deleted line actually does something. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2034.org.readthedocs.build/en/2034/ <!-- readthedocs-preview datasette end --> | 2023-03-07T18:19:05Z | 2023-03-29T20:56:20Z | 9bd2128399e6dff33f97b3aa7adbd8f3a36daad7 | 0 | 28239c5bed362f2b9ee9e780bf23e5f31b680b5d | 1ad92a1d87d79084ebe524ed186c900ff042328c | FIRST_TIME_CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2034 | ||||||
1289104584 | PR_kwDOBm6k_c5M1izI | 2043 | closed | 0 | Bump furo from 2022.12.7 to 2023.3.23 | 49699333 | Bumps [furo](https://github.com/pradyunsg/furo) from 2022.12.7 to 2023.3.23. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pradyunsg/furo/blob/main/docs/changelog.md">furo's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <!-- raw HTML omitted --> <h2>2023.03.23 -- Sassy Saffron</h2> <ul> <li>Regenerate with newer version of sphinx-theme-builder, to fix RECORD hashes.</li> <li>Update Python version classifiers.</li> <li>Increase the icon size in mobile header.</li> <li>Increase admonition title bg opacity.</li> <li>Change the default API background to transparent.</li> <li>Transition the API background change.</li> <li>Remove the "indent" of API entries which have a background.</li> <li>Break long inline code literals.</li> </ul> <h2>2022.12.07 -- Reverent Raspberry</h2> <ul> <li>✨ Add support for Sphinx 6.</li> <li>✨ Improve footnote presentation with docutils 0.18+.</li> <li>Drop support for Sphinx 4.</li> <li>Improve documentation about what the edit button does.</li> <li>Improve handling of empty-flexboxes for better print experience on Chrome.</li> <li>Improve styling for inline signatures.</li> <li>Replace the <code>meta</code> generator tag with a comment.</li> <li>Tweak labels with icons to prevent users selecting icons as text on touch.</li> </ul> <h2>2022.09.29 -- Quaint Quartz</h2> <ul> <li>Add ability to set arbitrary URLs for edit button.</li> <li>Add support for aligning text in MyST-parser generated tables.</li> </ul> <h2>2022.09.15 -- Pragmatic Pistachio</h2> <ul> <li>Add a minimum version constraint on pygments.</li> <li>Add an explicit dependency on <code>sass</code>.</li> <li>Change right sidebar title from "Contents" to "On this page".</li> <li>Correctly position sidebars on small screens.</li> <li>Correctly select only Furo's own <code>svg</code> in related pages <code>nav</code>.</li> <li>Make numpy-style documentation headers consistent.</li> <li>Retitle the reference section.</li> <li>Update npm dependencies.</l… | 2023-03-24T13:58:08Z | 2023-03-28T13:58:24Z | 2023-03-28T13:58:21Z | eb0601c965ebb12162c76259d89fb9fe6549bcc0 | 0 | 85b9e5139980b0e802b6f0bcfaa2f7c975c30970 | 3feed1f66e2b746f349ee56970a62246a18bb164 | CONTRIBUTOR | 107914493 | https://github.com/simonw/datasette/pull/2043 |