issues
2,098 rows where repo = 107914493 sorted by updated_at descending
This data as json, CSV (advanced)
id | node_id | number | title | user | state | locked | assignee | milestone | comments | created_at | updated_at ▲ | closed_at | author_association | pull_request | body | repo | type | active_lock_reason | performed_via_github_app | reactions | draft | state_reason |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1525815985 | I_kwDOBm6k_c5a8hqx | 1983 | Make CustomJSONEncoder a documented public API | simonw 9599 | open | 0 | 3 | 2023-01-09T15:27:05Z | 2023-01-09T15:35:58Z | OWNER | It's used by |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1983/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1426080014 | I_kwDOBm6k_c5VAEEO | 1867 | /db/table/-/rename API (also allows atomic replace) | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 1 | 2022-10-27T18:13:23Z | 2023-01-09T15:34:12Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1866#issuecomment-1293893789 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1867/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
710650633 | MDU6SXNzdWU3MTA2NTA2MzM= | 979 | Default table view JSON should include CREATE TABLE | simonw 9599 | closed | 0 | 3 | 2020-09-28T23:54:58Z | 2023-01-09T15:32:39Z | 2023-01-09T15:32:22Z | OWNER | https://latest.datasette.io/fixtures/facetable.json doesn't currently include the CREATE TABLE statement for the page, even though it's available on the HTML version at https://latest.datasette.io/fixtures/facetable |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/979/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1082584499 | I_kwDOBm6k_c5Ahu2z | 1558 | Redesign `facet_results` JSON structure prior to Datasette 1.0 | simonw 9599 | open | 0 | Datasette 1.0 3268330 | 3 | 2021-12-16T19:45:10Z | 2023-01-09T15:31:17Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/625#issuecomment-996130862 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1558/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1522778923 | I_kwDOBm6k_c5aw8Mr | 1978 | Document datasette.urls.row and row_blob | eyeseast 25778 | closed | 0 | 2 | 2023-01-06T15:45:51Z | 2023-01-09T14:30:00Z | 2023-01-09T14:30:00Z | CONTRIBUTOR | These are in the codebase but not in documentation. I think everything else in this class is documented. ```python class Urls: ... def row(self, database, table, row_path, format=None): path = f"{self.table(database, table)}/{row_path}" if format is not None: path = path_with_format(path=path, format=format) return PrefixedUrlString(path)
``` |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1978/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
not_planned | ||||||
1522552817 | PR_kwDOBm6k_c5G0XxH | 1977 | Bump sphinx from 5.3.0 to 6.1.1 | dependabot[bot] 49699333 | closed | 0 | 2 | 2023-01-06T13:02:12Z | 2023-01-09T13:06:17Z | 2023-01-09T13:06:14Z | CONTRIBUTOR | simonw/datasette/pulls/1977 | Bumps sphinx from 5.3.0 to 6.1.1. Release notesSourced from sphinx's releases.
ChangelogSourced from sphinx's changelog.
... (truncated) Commits
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 commands and optionsYou can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) :books: Documentation preview :books:: https://datasette--1977.org.readthedocs.build/en/1977/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1977/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1524983536 | I_kwDOBm6k_c5a5Wbw | 1981 | Canned query field labels truncated | simonw 9599 | open | 0 | 1 | 2023-01-09T06:04:24Z | 2023-01-09T06:05:44Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1981/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||||
1524867951 | I_kwDOBm6k_c5a46Nv | 1980 | "Cannot sort table by id" when sortable_columns is used | simonw 9599 | open | 0 | 2 | 2023-01-09T03:21:33Z | 2023-01-09T03:23:53Z | OWNER | I had an instance with this in
It sent me to
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1980/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1524076587 | I_kwDOBm6k_c5a15Ar | 1979 | More useful error message if enable_load_extension is not available | simonw 9599 | closed | 0 | 5 | 2023-01-07T19:13:19Z | 2023-01-08T00:21:23Z | 2023-01-08T00:21:23Z | OWNER | I get this from:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1979/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
957310278 | MDU6SXNzdWU5NTczMTAyNzg= | 1409 | `default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 10 | 2021-07-31T19:48:56Z | 2023-01-07T18:06:01Z | 2023-01-05T00:51:31Z | OWNER | In 49d6d2f7b0f6cb02e25022e1c9403811f1fa0a7c as part of #813 I removed the I don't think this was the right decision. Disabling custom SQL is an important security capability, and explaining how to do it using permissions is significantly more complex than letting people know they can add So I want to bring that setting back - maybe with a different, better name - and have it modify the default for that option if the permissions system doesn't have an opinion. That way people can still use the setting but then use permissions to allow specific signed-in users access to execute SQL. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1409/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1520712722 | PR_kwDOBm6k_c5GuDBN | 1976 | Bump sphinx from 5.3.0 to 6.1.0 | dependabot[bot] 49699333 | closed | 0 | 2 | 2023-01-05T13:02:37Z | 2023-01-06T13:02:17Z | 2023-01-06T13:02:15Z | CONTRIBUTOR | simonw/datasette/pulls/1976 | Bumps sphinx from 5.3.0 to 6.1.0. Release notesSourced from sphinx's releases.
ChangelogSourced from sphinx's changelog.
... (truncated) Commits
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 commands and optionsYou can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) :books: Documentation preview :books:: https://datasette--1976.org.readthedocs.build/en/1976/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1976/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1516376583 | PR_kwDOBm6k_c5GfPJL | 1974 | Bump sphinx from 5.3.0 to 6.0.0 | dependabot[bot] 49699333 | closed | 0 | 2 | 2023-01-02T13:04:26Z | 2023-01-05T13:02:42Z | 2023-01-05T13:02:40Z | CONTRIBUTOR | simonw/datasette/pulls/1974 | Bumps sphinx from 5.3.0 to 6.0.0. Release notesSourced from sphinx's releases.
ChangelogSourced from sphinx's changelog.
... (truncated) Commits
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 commands and optionsYou can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) :books: Documentation preview :books:: https://datasette--1974.org.readthedocs.build/en/1974/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1974/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1516815571 | I_kwDOBm6k_c5aaMTT | 1975 | _col=id can cause id column to export twice in CSV export | simonw 9599 | open | 0 | 0 | 2023-01-03T00:25:15Z | 2023-01-03T00:25:21Z | OWNER |
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1975/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1515182998 | I_kwDOBm6k_c5aT9uW | 1970 | Path "None" in _internal database table | simonw 9599 | closed | 0 | 2 | 2022-12-31T18:51:05Z | 2022-12-31T19:22:58Z | 2022-12-31T18:52:49Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1970/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||||
1503010009 | PR_kwDOBm6k_c5FyT3c | 1967 | Add favicon to documentation | choldgraf 1839645 | closed | 0 | 2 | 2022-12-19T14:01:04Z | 2022-12-31T19:15:51Z | 2022-12-31T19:00:31Z | CONTRIBUTOR | simonw/datasette/pulls/1967 | I've been browsing the datasette documentation and found it hard to quickly locate tabs with many of them open, because it does not ship a favicon. So this PR:
[^1]: I also learned that Chrome can fetch favicons as an internal service! See |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1967/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1501900064 | I_kwDOBm6k_c5ZhS0g | 1966 | Broken link to live demo in Getting started docs | lbellomo 7551922 | closed | 0 | 1 | 2022-12-18T13:17:00Z | 2022-12-31T19:15:19Z | 2022-12-31T19:15:10Z | NONE | The link in Play with a live demo in Getting started to https://fivethirtyeight.datasettes.com/fivethirtyeight is broken and the datasette is no longer working (maybe due to the end of the free tier). |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1966/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1515186569 | I_kwDOBm6k_c5aT-mJ | 1972 | Fix Sphinx warning about extlink extension | simonw 9599 | closed | 0 | 0 | 2022-12-31T19:12:04Z | 2022-12-31T19:13:26Z | 2022-12-31T19:13:26Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1971#issuecomment-1368266904 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1972/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1115435536 | I_kwDOBm6k_c5CfDIQ | 1614 | Try again with SQLite codemirror support | simonw 9599 | open | 0 | 1 | 2022-01-26T20:05:20Z | 2022-12-23T21:27:10Z | OWNER | I tried and failed to implement autocomplete a while ago. Relevant code: Sounds like upgrading to CodeMirror 6 ASAP would be worthwhile since it has better accessibility and touch screen support: https://codemirror.net/6/ |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1614/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1501843596 | PR_kwDOBm6k_c5FuaJm | 1965 | Detect server start/stop more reliably. | janl 11321 | closed | 0 | 2 | 2022-12-18T10:03:42Z | 2022-12-20T19:08:26Z | 2022-12-18T16:01:51Z | CONTRIBUTOR | simonw/datasette/pulls/1965 | This is useful, especially in testing, since your test hosts might not reliabliy start the server within two seconds, so we do a definite check before progressing. By the same token, after Since now the script can end prematurely, I also added a cleanup function to make sure the temporary certs are removed in any case. n.b. this could also be done with the use of :books: Documentation preview :books:: https://datasette--1965.org.readthedocs.build/en/1965/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1965/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1504352503 | I_kwDOBm6k_c5Zqpj3 | 1968 | Allow to hide some queries in metadata.yml | CharlesNepote 562352 | open | 0 | 0 | 2022-12-20T10:45:41Z | 2022-12-20T10:45:41Z | NONE | By default all queries are displayed. But there are many cases where it would be interesting to hide the queries by default: * the website is targeting non-tech people * the query is veeeeeery long (eg.) * reading the query is not important for the users, they only want to see the result Of course, the user still could have the option to see the query. It could be an option in the metadata file:
The priority could be: * no option in the metadata and nothing in the URL: query displayed * hide_sql in the metadata and nothing in the URL: query displayed as asked in the metadata * hide_sql in the metadata and &_hide_sql= in the URL: query as asked in the URL See also: #1824 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1968/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1496652622 | I_kwDOBm6k_c5ZNRtO | 1955 | invoke_startup() is not run in some conditions, e.g. gunicorn/uvicorn workers, breaking lots of things | Rik-de-Kort 32839123 | closed | 0 | 36 | 2022-12-14T13:39:56Z | 2022-12-19T04:34:16Z | 2022-12-18T02:45:18Z | NONE | In the past (pre-september 14, #1809) I had a running deployment of Datasette on Azure WebApps by emulating the call in cli.py to Gunicorn: My most recent deployment, however, fails loudly by shouting that One additional option is:
* Use Gunicorn's server hooks to call In my current deployment setup, it does not appear to be possible to use Questions for the maintainers: * Is this intended behaviour/will not support/etc.? If so, I'd be happy to add a PR with a couple lines in the documentation. * if this is not intended behaviour, what is a good way to fix it? I could have a go at the ASGI spec thing (I think the Azure Functions thing is related) and provide a PR with the wrapper here, but I'm all ears! Almost forgot, minimal reproducer: ```python from datasette import Datasette ds = Datasette(files=['./global-power-plants.db'])] app = ds.app() ``` Save as app.py in the same folder as global-power-plants.db, and then try running
Opening the resulting Datasette instance in the browser will show the error message. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1955/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1447050738 | I_kwDOBm6k_c5WQD3y | 1886 | Call for birthday presents: if you're using Datasette, let us know how you're using it here | simonw 9599 | open | 0 | 13 | 2022-11-13T19:25:51Z | 2022-12-18T17:34:20Z | OWNER | Datasette is 5 years old today. To celebrate, I'm asking the community for birthday presents: https://simonwillison.net/2022/Nov/13/datasette-birthday/
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1886/reactions", "total_count": 2, "+1": 0, "-1": 0, "laugh": 0, "hooray": 2, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1501778647 | I_kwDOBm6k_c5Zg1LX | 1964 | Cog menu is not keyboard accessible (also no ARIA) | simonw 9599 | open | 0 | 1 | 2022-12-18T06:36:28Z | 2022-12-18T06:37:28Z | OWNER | This menu here: https://latest.datasette.io/fixtures/attraction_characteristic You can tab to it (see the outline) and hit space or enter to open it, but you can't then navigate the items in the open menu using the keyboard. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1964/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1306984363 | I_kwDOBm6k_c5N5v-r | 1771 | minor a11y: <select> has no visual indicator when tabbed to | mustafa0x 1473102 | closed | 0 | 5 | 2022-07-17T04:30:14Z | 2022-12-18T06:34:20Z | 2022-12-18T06:28:12Z | NONE | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1771/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||||
1501713288 | I_kwDOBm6k_c5ZglOI | 1963 | 0.63.3 bugfix release | simonw 9599 | closed | 0 | 2 | 2022-12-18T02:48:15Z | 2022-12-18T03:26:55Z | 2022-12-18T03:26:55Z | OWNER | I'm going to ship a release which back-ports these two fixes: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1963/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
806849424 | MDU6SXNzdWU4MDY4NDk0MjQ= | 1221 | Support SSL/TLS directly | simonw 9599 | closed | 0 | 4 | 2021-02-12T00:18:29Z | 2022-12-18T02:39:04Z | 2021-02-12T00:52:18Z | OWNER | This should be pretty easy because Uvicorn supports them already. Need a good mechanism for testing it - https://pypi.org/project/trustme/ looks ideal. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1221/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1408757705 | I_kwDOBm6k_c5T9-_J | 1843 | Intermittent "Too many open files" error running tests | simonw 9599 | open | 0 | 16 | 2022-10-14T04:45:01Z | 2022-12-17T22:02:41Z | OWNER | Partial stack trace from one of them: ``` /Users/simon/.local/share/virtualenvs/datasette-AWNrQs95/lib/python3.10/site-packages/jinja2/loaders.py:200: in get_source f = open_if_exists(filename) filename = '/Users/simon/Dropbox/Development/datasette/datasette/templates/error.html', mode = 'rb'
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1843/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
reopened | |||||||
1499081664 | I_kwDOBm6k_c5ZWivA | 1959 | Refactor test suite to use mostly `async def` tests | simonw 9599 | closed | 0 | 9 | 2022-12-15T21:02:54Z | 2022-12-17T21:49:37Z | 2022-12-17T21:49:36Z | OWNER | I got blocked working on this issue due to weird and hard-to-debug test suite problems:
The test suite has needed a major upgrade for several years now. It has a LOT of Hopefully I can get more of the tests to use in-memory named databases too, ideally so I can fix this consistent problem:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1959/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1499150951 | PR_kwDOBm6k_c5FlZmG | 1960 | Port as many tests as possible to async def tests against ds_client | simonw 9599 | closed | 0 | 29 | 2022-12-15T21:45:53Z | 2022-12-17T21:47:56Z | 2022-12-17T21:47:55Z | OWNER | simonw/datasette/pulls/1960 | Refs: - #1959 :books: Documentation preview :books:: https://datasette--1960.org.readthedocs.build/en/1960/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1960/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1500636982 | I_kwDOBm6k_c5Zcec2 | 1962 | Alternative, async-friendly pattern for `make_app_client()` and similar - fully retire `TestClient` | simonw 9599 | open | 0 | 1 | 2022-12-16T17:56:51Z | 2022-12-16T21:55:29Z | OWNER | In this issue I replaced a whole bunch of places that used the non-async But I didn't get everything, and a lot of tests are still using the old The main work here is replacing all of the This requires some careful thought. I need to come up with a really nice pattern for creating variants on the
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1962/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1497909798 | I_kwDOBm6k_c5ZSEom | 1958 | datasette --root running in Docker doesn't reliably show the magic URL | davidhaley 11729897 | closed | 0 | 11 | 2022-12-13T16:29:13Z | 2022-12-16T00:59:12Z | 2022-12-16T00:55:19Z | NONE | I followed these steps:
Visited: http://127.0.0.1:8001/-/plugins Visited: http://localhost:8001/-/upload-csvs I may have missed a step? Thank you. Ubuntu 22.04.1 LTS |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1958/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1499387139 | PR_kwDOBm6k_c5FmNXs | 1961 | Use click.echo() instead of print() for --root option | simonw 9599 | closed | 0 | 0 | 2022-12-16T00:54:56Z | 2022-12-16T00:55:19Z | 2022-12-16T00:55:18Z | OWNER | simonw/datasette/pulls/1961 | This ensures the URL is output correctly when running under Docker. Closes #1958 :books: Documentation preview :books:: https://datasette--1961.org.readthedocs.build/en/1961/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1961/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1495821607 | I_kwDOBm6k_c5ZKG0n | 1953 | Release notes for Datasette 1.0a2 | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 2 | 2022-12-14T06:26:40Z | 2022-12-15T02:02:15Z | 2022-12-15T02:01:08Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1953/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1473411197 | I_kwDOBm6k_c5X0nh9 | 1927 | ignore:true/replace:true options for /db/-/create API | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 5 | 2022-12-02T20:32:30Z | 2022-12-15T01:47:01Z | 2022-12-08T01:43:01Z | OWNER | See also: - #1924 It turns out I want to be able to call As such I find myself wanting support for the Still TODO:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1927/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1493471221 | I_kwDOBm6k_c5ZBI_1 | 1949 | `.json` errors should be returned as JSON | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 10 | 2022-12-13T06:14:12Z | 2022-12-15T00:46:27Z | OWNER | Eg the error in this issue: - #1945 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1949/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1490576818 | I_kwDOBm6k_c5Y2GWy | 1943 | `/-/permissions` should list available permissions | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 1 | 2022-12-11T23:38:03Z | 2022-12-15T00:41:37Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1939#issuecomment-1345691103 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1943/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1497577017 | I_kwDOBm6k_c5ZQzY5 | 1957 | Reconsider row value truncation on query page | simonw 9599 | open | 0 | 1 | 2022-12-14T23:49:47Z | 2022-12-14T23:50:50Z | OWNER | Consider this example: https://ripgrep.datasette.io/repos?sql=select+json_group_array%28full_name%29+from+repos
My intention here was to get a string of JSON I can copy and paste elsewhere - see: https://til.simonwillison.net/sqlite/compare-before-after-json The truncation isn't helping here. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1957/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
855296937 | MDU6SXNzdWU4NTUyOTY5Mzc= | 1295 | Errors should have links to further information | simonw 9599 | open | 0 | 2 | 2021-04-11T12:39:12Z | 2022-12-14T23:28:49Z | OWNER | Inspired by this tweet: https://twitter.com/willmcgugan/status/1381186384510255104
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1295/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1483320357 | I_kwDOBm6k_c5Yaawl | 1937 | /db/-/create API should require insert-rows permission to use row: or rows: option | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 2 | 2022-12-08T01:33:09Z | 2022-12-14T20:21:26Z | 2022-12-14T20:21:26Z | OWNER | Otherwise someone with |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1937/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1497288666 | I_kwDOBm6k_c5ZPs_a | 1956 | Handle abbreviations properly in permission_allowed_actor_restrictions | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 2 | 2022-12-14T19:54:21Z | 2022-12-14T20:04:29Z | 2022-12-14T20:04:28Z | OWNER | This code currently assumes abbreviations are:
That's no longer correct, they are now registered by the new plugin hook: - #1939 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1956/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1495716243 | I_kwDOBm6k_c5ZJtGT | 1952 | Improvements to /-/create-token restrictions interface | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 1 | 2022-12-14T05:22:39Z | 2022-12-14T05:23:13Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1947#issuecomment-1350414402 Also, DO show the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1952/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1493390939 | I_kwDOBm6k_c5ZA1Zb | 1947 | UI to create reduced scope tokens from the `/-/create-token` page | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 22 | 2022-12-13T05:10:48Z | 2022-12-14T05:22:00Z | 2022-12-14T05:13:24Z | OWNER | Split from: - #1855 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1947/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1495431932 | I_kwDOBm6k_c5ZInr8 | 1951 | `datasette.create_token(...)` method for creating signed API tokens | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 6 | 2022-12-14T01:25:34Z | 2022-12-14T02:43:45Z | 2022-12-14T02:42:05Z | OWNER | I need this for: - #1947 And I can refactor this to use it too: - #1855 By making this a documented internal API it can be used by other plugins too. It's also going to be really useful for writing tests. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1951/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1423336089 | I_kwDOBm6k_c5U1mKZ | 1855 | `datasette create-token` ability to create tokens with a reduced set of permissions | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 19 | 2022-10-26T02:20:52Z | 2022-12-14T01:24:49Z | 2022-12-13T05:20:24Z | OWNER | Initial design ideas: https://github.com/simonw/datasette/issues/1852#issuecomment-1289733483
Remaining tasks
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1855/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1495241162 | I_kwDOBm6k_c5ZH5HK | 1950 | Bad ?_sort returns a 500 error, should be a 400 | simonw 9599 | closed | 0 | 2 | 2022-12-13T22:08:16Z | 2022-12-13T22:23:22Z | 2022-12-13T22:23:22Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1950/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||||
1468689139 | I_kwDOBm6k_c5Ximrz | 1914 | Finalize design of JSON for Datasette 1.0 | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 1 | 2022-11-29T20:59:10Z | 2022-12-13T06:15:54Z | OWNER | Tracking issue.
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1914/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1468495358 | I_kwDOBm6k_c5Xh3X- | 1910 | Check incoming column types on various write APIs | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 0 | 2022-11-29T18:09:10Z | 2022-12-13T05:29:09Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1863#issuecomment-1331089156 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1910/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1428630253 | I_kwDOBm6k_c5VJyrt | 1873 | Ensure insert API has good tests for rowid and compound primark key tables | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 11 | 2022-10-30T06:22:17Z | 2022-12-13T05:29:08Z | OWNER | Following: - #1866 I need to design and implement various edge-cases or primary keys:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1873/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
reopened | ||||||
1430797211 | I_kwDOBm6k_c5VSDub | 1875 | Figure out design for JSON errors (consider RFC 7807) | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 7 | 2022-11-01T03:14:15Z | 2022-12-13T05:29:08Z | OWNER | https://datatracker.ietf.org/doc/draft-ietf-httpapi-rfc7807bis/ is a brand new standard. Since I need a neat, predictable format for my JSON errors, maybe I should use this one? |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1875/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1447465004 | I_kwDOBm6k_c5WRpAs | 1889 | Ability to create new tokens via the API | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 0 | 2022-11-14T06:21:36Z | 2022-12-13T05:29:08Z | OWNER | Refs: - #1850 Initially I decided that the API shouldn't be able to create new tokens at all - I don't like the idea of an API token holder creating themselves additional tokens. Then I realized that two of the API features are specifically more useful if you can generate fresh tokens via the API:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1889/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1216436131 | I_kwDOBm6k_c5IgVej | 1721 | Implement plugin hooks: `register_table_extras`, `register_row_extras`, `register_query_extras` | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 0 | 2022-04-26T20:21:49Z | 2022-12-13T05:29:07Z | OWNER | Designed in: - #1720 Part of: - #262 - #1709 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1721/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1219385669 | I_kwDOBm6k_c5IrllF | 1729 | Implement ?_extra and new API design for TableView | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 12 | 2022-04-28T22:28:14Z | 2022-12-13T05:29:07Z | OWNER | Part of: - #262 - #1518 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1729/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1200649124 | I_kwDOBm6k_c5HkHOk | 1708 | Datasette 1.0 alpha upcoming release notes | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 2 | 2022-04-11T22:57:12Z | 2022-12-13T05:29:06Z | OWNER | I'm going to try writing the release notes first, to see if that helps unblock me. ⚠️ Any release notes in this issue are a draft, and should not be treated as the real thing ⚠️ |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1708/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1200649502 | I_kwDOBm6k_c5HkHUe | 1709 | Redesigned JSON API with ?_extra= parameters | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 1 | 2022-04-11T22:57:49Z | 2022-12-13T05:29:06Z | OWNER | This will be the single biggest breaking change for the 1.0 release. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1709/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1200650491 | I_kwDOBm6k_c5HkHj7 | 1711 | Template context powered entirely by the JSON API format | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 1 | 2022-04-11T22:59:27Z | 2022-12-13T05:29:06Z | OWNER | Datasette 1.0 will have a stable template context. I'm going to achieve this by refactoring the templates to work only with keys returned by the API (or some of its extras) - then the API documentation will double up as template documentation. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1711/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1197926598 | I_kwDOBm6k_c5HZujG | 1705 | How to upgrade your plugin for 1.0 documentation | simonw 9599 | open | 0 | Datasette 1.0a-next 8755003 | 1 | 2022-04-08T23:16:47Z | 2022-12-13T05:29:05Z | OWNER | Among other things, needed by: - #1704 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1705/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1491840863 | PR_kwDOBm6k_c5FMKSG | 1944 | Bump black from 22.10.0 to 22.12.0 | dependabot[bot] 49699333 | closed | 0 | 0 | 2022-12-12T13:05:11Z | 2022-12-13T05:23:31Z | 2022-12-13T05:23:30Z | CONTRIBUTOR | simonw/datasette/pulls/1944 | Bumps black from 22.10.0 to 22.12.0. Release notesSourced from black's releases.
ChangelogSourced from black's changelog.
Commits
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 commands and optionsYou can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1944/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1485488236 | PR_kwDOBm6k_c5E1iJG | 1938 | "permissions" blocks in metadata.json/yaml | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 3 | 2022-12-08T22:07:36Z | 2022-12-13T05:23:18Z | 2022-12-13T05:23:18Z | OWNER | simonw/datasette/pulls/1938 | Refs #1636
:books: Documentation preview :books:: https://datasette--1938.org.readthedocs.build/en/1938/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1938/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||
1493404423 | I_kwDOBm6k_c5ZA4sH | 1948 | 500 error on permission debug page when testing actors with _r | simonw 9599 | open | 0 | 1 | 2022-12-13T05:22:03Z | 2022-12-13T05:22:19Z | OWNER | The 500 error is silent unless you are looking at the DevTools network pane. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1948/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1493339206 | I_kwDOBm6k_c5ZAoxG | 1946 | `datasette --get` mechanism for sending tokens | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 2 | 2022-12-13T04:25:05Z | 2022-12-13T04:36:57Z | 2022-12-13T04:36:57Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1855#issuecomment-1347731288 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1946/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1493306655 | I_kwDOBm6k_c5ZAg0f | 1945 | `view-instance` should not be checked for /-/actor.json | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 0 | 2022-12-13T04:01:46Z | 2022-12-13T04:11:56Z | 2022-12-13T04:11:56Z | OWNER | Spotted this while testing:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1945/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1138008042 | I_kwDOBm6k_c5D1J_q | 1636 | "permissions" propery in metadata for configuring arbitrary permissions | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 14 | 2022-02-15T00:25:59Z | 2022-12-13T02:40:50Z | 2022-12-13T02:40:50Z | OWNER | The |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1636/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1485757511 | I_kwDOBm6k_c5YjtxH | 1939 | register_permissions(datasette) plugin hook | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 20 | 2022-12-09T01:33:25Z | 2022-12-13T02:07:50Z | 2022-12-13T02:05:56Z | OWNER | A plugin hook that adds more named permissions to the list which is initially populated here: Originally imagined this hook in this comment: I need this for a few reasons:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1939/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1486011362 | PR_kwDOBm6k_c5E3XqB | 1940 | register_permissions() plugin hook | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 6 | 2022-12-09T05:09:28Z | 2022-12-13T02:05:55Z | 2022-12-13T02:05:54Z | OWNER | simonw/datasette/pulls/1940 | Refs #1939 From this comment: https://github.com/simonw/datasette/issues/1939#issuecomment-1343872168
:books: Documentation preview :books:: https://datasette--1940.org.readthedocs.build/en/1940/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1940/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||
1384549993 | I_kwDOBm6k_c5Sho5p | 1818 | Setting to turn off table row counts entirely | simonw 9599 | open | 0 | 4 | 2022-09-24T06:39:22Z | 2022-12-11T02:03:09Z | OWNER | There are situations - such as loading SQLite files remotely using HTTP range headers - where counting all of the rows in a table should be avoided entirely.
Originally posted by @simonw in https://github.com/simonw/datasette-lite/issues/49#issuecomment-1256880715 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1818/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1487738738 | I_kwDOBm6k_c5YrRdy | 1942 | Option for plugins to request that JSON be served on the page | simonw 9599 | open | 0 | Datasette 1.0 3268330 | 1 | 2022-12-10T01:08:53Z | 2022-12-10T01:11:30Z | OWNER | Idea came from a conversation with @hydrosquall - what if a Datasette plugin could say "I'd like the JSON for a page to be included in a variable on the HTML page"?
This idea fits with my overall goals to unify the JSON and HTML context too. Refs: - #1711 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1942/reactions", "total_count": 1, "+1": 0, "-1": 0, "laugh": 0, "hooray": 1, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1198822563 | I_kwDOBm6k_c5HdJSj | 1706 | [feature] immutable mode for a directory, not just individual sqlite file | hydrosquall 9020979 | open | 0 | 4 | 2022-04-10T00:50:57Z | 2022-12-09T19:11:40Z | CONTRIBUTOR | Motivation
ProposalImmutable flag works for both single files and directories
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1706/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1486036269 | I_kwDOBm6k_c5Ykx0t | 1941 | Mechanism for supporting key rotation for DATASETTE_SECRET | simonw 9599 | open | 0 | 1 | 2022-12-09T05:24:53Z | 2022-12-09T05:25:20Z | OWNER | Currently if you change Adding support for key rotation would allow keys to be rotated on a semi-regular basis without logging everyone out / invalidating every API token instantly. Can model this on how Django does it: https://github.com/django/django/commit/0dcd549bbe36c060f536ec270d34d9e7d4b8e6c7 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1941/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1434094365 | I_kwDOBm6k_c5Veosd | 1881 | Tool for simulating permission checks against actors | simonw 9599 | closed | 0 | 9 | 2022-11-03T04:43:20Z | 2022-12-09T01:38:21Z | 2022-11-04T00:13:05Z | OWNER | In working on this issue: - #1855 I realized that if I'm going to make actors more complicated (the proposed |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1881/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1473664029 | PR_kwDOBm6k_c5ELz0u | 1930 | Typo in JSON API `Updating a row` documentation | davidbgk 3556 | closed | 0 | 2 | 2022-12-03T02:22:31Z | 2022-12-08T21:12:35Z | 2022-12-08T21:12:35Z | CONTRIBUTOR | simonw/datasette/pulls/1930 | :books: Documentation preview :books:: https://datasette--1930.org.readthedocs.build/en/1930/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1930/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1481875485 | PR_kwDOBm6k_c5EouZs | 1935 | Bump furo from 2022.9.29 to 2022.12.7 | dependabot[bot] 49699333 | closed | 0 | 1 | 2022-12-07T13:02:57Z | 2022-12-08T21:12:08Z | 2022-12-08T21:12:07Z | CONTRIBUTOR | simonw/datasette/pulls/1935 | Bumps furo from 2022.9.29 to 2022.12.7. ChangelogSourced from furo's changelog.
... (truncated) Commits
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 commands and optionsYou can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) :books: Documentation preview :books:: https://datasette--1935.org.readthedocs.build/en/1935/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1935/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1483250004 | I_kwDOBm6k_c5YaJlU | 1936 | Fix /db/table/-/upsert in the API explorer | simonw 9599 | open | 0 | Datasette 1.0 3268330 | 2 | 2022-12-08T00:59:34Z | 2022-12-08T01:36:02Z | OWNER | Split from: - #1931 - #1878 This is a bit tricky because the code needs to figure out what the primary keys are for an item, and whether or not |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1936/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1432013704 | I_kwDOBm6k_c5VWsuI | 1878 | /db/table/-/upsert API | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 8 | 2022-11-01T20:01:18Z | 2022-12-08T01:12:18Z | 2022-12-08T01:12:17Z | OWNER | Equivalent to |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1878/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1473814539 | PR_kwDOBm6k_c5EMVug | 1931 | /db/table/-/upsert | simonw 9599 | closed | 0 | Datasette 1.0a2 8711695 | 8 | 2022-12-03T07:01:44Z | 2022-12-08T01:12:17Z | 2022-12-08T01:12:16Z | OWNER | simonw/datasette/pulls/1931 | Refs #1878 Still todo:
- [x] Support :books: Documentation preview :books:: https://datasette--1931.org.readthedocs.build/en/1931/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1931/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||
1473659191 | I_kwDOBm6k_c5X1kE3 | 1929 | Incorrect link from the API explorer to the JSON API documentation | davidbgk 3556 | closed | 0 | 4 | 2022-12-03T02:08:58Z | 2022-12-06T19:36:23Z | 2022-12-06T19:34:20Z | CONTRIBUTOR | I installed When I go to http://127.0.0.1:8001/-/api I have a link: I'm not sure where it has to be fixed, should it link to the stable page https://docs.datasette.io/en/stable/json_api.html , the latest one https://docs.datasette.io/en/latest/json_api.html#the-json-write-api or would it be more appropriated to deploy documentation for the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1929/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1479920517 | I_kwDOBm6k_c5YNcuF | 1934 | Return number of ignored/replaced items from /-/insert | simonw 9599 | open | 0 | Datasette 1.0 3268330 | 0 | 2022-12-06T19:01:58Z | 2022-12-06T19:02:03Z | OWNER | Idea from here: - https://github.com/simonw/sqlite-utils/issues/516 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1934/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1473481262 | I_kwDOBm6k_c5X04ou | 1928 | Hacker News Datasette write demo | simonw 9599 | closed | 0 | 7 | 2022-12-02T21:17:41Z | 2022-12-02T23:47:11Z | 2022-12-02T21:43:19Z | OWNER | Idea is to have my existing scraper at https://github.com/simonw/scrape-hacker-news-by-domain also write to my private Datasette Cloud account, then create an atom feed from it. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1928/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1175690070 | I_kwDOBm6k_c5GE5tW | 1676 | Reconsider ensure_permissions() logic, can it be less confusing? | simonw 9599 | open | 0 | Datasette 1.0 3268330 | 3 | 2022-03-21T17:14:57Z | 2022-12-02T01:23:40Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1675#issuecomment-1074177827 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1676/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
|||||||
1471969984 | I_kwDOBm6k_c5XvHrA | 1926 | Release notes for 1.0a1 (and release it) | simonw 9599 | closed | 0 | Datasette 1.0a1 7867486 | 1 | 2022-12-01T21:18:12Z | 2022-12-01T22:06:13Z | 2022-12-01T22:06:12Z | OWNER | Mainly CORS support and a few small bug fixes. Changes: https://github.com/simonw/datasette/compare/1.0a0...99da46f7258225fc6fd8e94ddc20859ccccc4109 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1926/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1214859703 | I_kwDOBm6k_c5IaUm3 | 1719 | Refactor `RowView` and remove `RowTableShared` | simonw 9599 | closed | 0 | 3 | 2022-04-25T18:06:24Z | 2022-12-01T21:15:19Z | 2022-04-25T18:33:44Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1715#issuecomment-1108875068 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1719/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1215174094 | I_kwDOBm6k_c5IbhXO | 1720 | Design plugin hook for extras | simonw 9599 | closed | 0 | 14 | 2022-04-26T00:08:10Z | 2022-12-01T21:15:19Z | 2022-04-26T20:20:27Z | OWNER | Refs: - #262 - #1709 I realized that this is a really natural plugin hook - and if I design it as a hook I can implement Datasette's core extras as default plugins. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1720/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1212823665 | I_kwDOBm6k_c5ISjhx | 1715 | Refactor TableView to use asyncinject | simonw 9599 | closed | 0 | 13 | 2022-04-22T21:43:39Z | 2022-12-01T21:15:18Z | 2022-04-28T22:26:56Z | OWNER | I've been working on a dependency injection mechanism in a separate library: I think it's ready to try out with Datasette to see if it's a pattern that will work here. I'm going to attempt to refactor
Stretch goal is to get this working with streaming data too, see:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1715/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1469973742 | I_kwDOBm6k_c5XngTu | 1922 | Make sure CORS works for write APIs | simonw 9599 | closed | 0 | Datasette 1.0a1 7867486 | 13 | 2022-11-30T17:15:55Z | 2022-12-01T18:47:00Z | 2022-12-01T18:47:00Z | OWNER | Split from: - #1850 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1922/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1470509936 | I_kwDOBm6k_c5XpjNw | 1924 | Docs for replace:true and ignore:true options for insert API | simonw 9599 | closed | 0 | Datasette 1.0a1 7867486 | 4 | 2022-12-01T01:33:25Z | 2022-12-01T18:15:15Z | 2022-12-01T02:08:02Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1924/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1469821027 | I_kwDOBm6k_c5Xm7Bj | 1921 | Document methods to get canned queries | eyeseast 25778 | open | 0 | 0 | 2022-11-30T15:26:33Z | 2022-11-30T23:34:21Z | CONTRIBUTOR | Two methods will get canned queries for a Datasette instance:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1921/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1470320227 | I_kwDOBm6k_c5Xo05j | 1923 | latest.datasette.io Cloud Run deploys failing | simonw 9599 | closed | 0 | 3 | 2022-11-30T22:49:34Z | 2022-11-30T23:04:56Z | 2022-11-30T23:04:56Z | OWNER | https://github.com/simonw/datasette/actions/runs/3587402085/jobs/6038106719v
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1923/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1469796454 | I_kwDOBm6k_c5Xm1Bm | 1920 | Document Datasette.metadata() method | eyeseast 25778 | open | 0 | 0 | 2022-11-30T15:10:36Z | 2022-11-30T15:10:36Z | CONTRIBUTOR | Code is here: https://github.com/simonw/datasette/blob/main/datasette/app.py#L503 This will be the official way to access metadata from plugins. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1920/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1108671952 | I_kwDOBm6k_c5CFP3Q | 1605 | Scripted exports | eyeseast 25778 | open | 0 | 10 | 2022-01-19T23:45:55Z | 2022-11-30T15:06:38Z | CONTRIBUTOR | Posting this while I'm thinking about it: I mentioned at the end of this thread that I'm usually doing I used to use a tool called datafreeze to do scripted exports, but that project looks dead now. The ergonomics of it are pretty nice, though, and the This is related to the idea for |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1605/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1469044738 | I_kwDOBm6k_c5Xj9gC | 1918 | API explorer should list mutable databases first | simonw 9599 | closed | 0 | Datasette 1.0a1 7867486 | 1 | 2022-11-30T04:53:33Z | 2022-11-30T05:22:07Z | 2022-11-30T05:07:56Z | OWNER | https://latest.datasette.io/-/api hides Related: - #1915 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1918/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1469062686 | I_kwDOBm6k_c5XkB4e | 1919 | Intermittent `test_delete_row` test failure | simonw 9599 | open | 0 | 1 | 2022-11-30T05:18:46Z | 2022-11-30T05:20:56Z | OWNER | https://github.com/simonw/datasette/actions/runs/3580503393/jobs/6022689591 ``` delete_response = await ds_write.client.post( "/data/{}/{}/-/delete".format(table, delete_path), headers={ "Authorization": "***".format(write_token(ds_write)), }, )
/home/runner/work/datasette/datasette/tests/test_api_write.py:396: AssertionError =========================== short test summary info ============================ FAILED tests/test_api_write.py::test_delete_row[compound_pk_table-row_for_create2-pks2-article,k] - assert 404 == 200 + where 404 = <Response [404 Not Found]>.status_code ``` This passes most of the time, but very occasionally fails - in this case in Python 3.7 It seems to only fail for the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1919/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1469015001 | I_kwDOBm6k_c5Xj2PZ | 1916 | GET requests against POST endpoints should not 500 error | simonw 9599 | closed | 0 | Datasette 1.0a1 7867486 | 1 | 2022-11-30T04:04:43Z | 2022-11-30T05:15:19Z | 2022-11-30T05:15:19Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1916/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1469043836 | I_kwDOBm6k_c5Xj9R8 | 1917 | Don't allow writable API to edit the `_memory` database | simonw 9599 | closed | 0 | Datasette 1.0a1 7867486 | 2 | 2022-11-30T04:51:59Z | 2022-11-30T05:07:56Z | 2022-11-30T05:07:55Z | OWNER | It shows up on https://latest.datasette.io/-/api (once you are signed in as root) - but there's no point in creating tables in it because they likely won't persist from one request to the next, as it's not a shared named database. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1917/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1468709531 | I_kwDOBm6k_c5Xirqb | 1915 | Interactive demo of Datasette 1.0 write APIs | simonw 9599 | closed | 0 | 6 | 2022-11-29T21:16:03Z | 2022-11-30T04:05:46Z | 2022-11-30T04:05:46Z | OWNER | I'm going to try to get this working on https://latest.datasette.io/ - it already has a way for people to sign in as root, but none of the databases there are writable. So I'm going to build a plugin which adds a writable named in-memory database. And some kind of mechanism for clearing out that database on a regular basis - maybe tables in that database get deleted automatically an hour after they are created? (Would be neat to display their time-left-until-deleted too) |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1915/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1421529723 | I_kwDOBm6k_c5UutJ7 | 1850 | Write API in Datasette core | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 13 | 2022-10-24T22:13:24Z | 2022-11-29T20:11:20Z | 2022-11-29T20:11:20Z | OWNER | I need this for Datasette Cloud, and in thinking it through I realized that it's really time Datasette grew a default write API as well. I'm going to mostly model this off I want this for Datasette 1.0. I'm going to be building it in the new 1.0-dev branch, which is automatically deployed to https://latest-1-0-dev.datasette.io/ running on Cloud Run. API features to build:
Bumped to later on:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1850/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1468603401 | I_kwDOBm6k_c5XiRwJ | 1913 | Release Datasette 1.0a0 | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 9 | 2022-11-29T19:41:42Z | 2022-11-29T20:10:35Z | 2022-11-29T20:10:35Z | OWNER | I attempted the release just now - https://github.com/simonw/datasette/releases/tag/1.0a0 - and got an unexpected test failure: https://github.com/simonw/datasette/actions/runs/3577355358/attempts/1 ```
/home/runner/work/datasette/datasette/tests/test_api_write.py:396: AssertionError =========================== short test summary info ============================ FAILED tests/test_api_write.py::test_delete_row[compound_pk_table-row_for_create2-pks2-article,k] - assert 404 == 200 + where 404 = <Response [404 Not Found]>.status_code ``` I hit "retry" on that test but I expect it to fail again. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1913/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1432012302 | I_kwDOBm6k_c5VWsYO | 1877 | Refactor and tidy up final write API code | simonw 9599 | closed | 0 | 1 | 2022-11-01T20:00:11Z | 2022-11-29T19:44:16Z | 2022-11-29T19:44:07Z | OWNER |
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1877/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1450312343 | I_kwDOBm6k_c5WcgKX | 1892 | Merge 1.0-dev branch back to main | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 3 | 2022-11-15T20:04:25Z | 2022-11-29T19:40:23Z | 2022-11-29T19:40:23Z | OWNER | I'm committed enough to the 1.0 work now that I'm ready for the If I need to make any dot-releases against 0.63 I can do those from a branch. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1892/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1468592292 | PR_kwDOBm6k_c5D6nzE | 1912 | Merge 1.0-dev (with initial write API) back into main | simonw 9599 | closed | 0 | 1 | 2022-11-29T19:31:21Z | 2022-11-29T19:39:37Z | 2022-11-29T19:39:36Z | OWNER | simonw/datasette/pulls/1912 | See: - #1892 :books: Documentation preview :books:: https://datasette--1912.org.readthedocs.build/en/1912/ |
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1912/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1450303205 | I_kwDOBm6k_c5Wcd7l | 1891 | 1.0a0 release notes | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 4 | 2022-11-15T19:58:20Z | 2022-11-29T19:23:41Z | 2022-11-29T19:23:41Z | OWNER | This release will mainly help preview the new Datasette write API: - #1850 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1891/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1425029275 | I_kwDOBm6k_c5U8Dib | 1864 | Delete a single record from an existing table | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 4 | 2022-10-27T04:53:22Z | 2022-11-29T18:54:04Z | 2022-11-29T18:54:04Z | OWNER | API design:
Permission: Still needed:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1864/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [issues] ( [id] INTEGER PRIMARY KEY, [node_id] TEXT, [number] INTEGER, [title] TEXT, [user] INTEGER REFERENCES [users]([id]), [state] TEXT, [locked] INTEGER, [assignee] INTEGER REFERENCES [users]([id]), [milestone] INTEGER REFERENCES [milestones]([id]), [comments] INTEGER, [created_at] TEXT, [updated_at] TEXT, [closed_at] TEXT, [author_association] TEXT, [pull_request] TEXT, [body] TEXT, [repo] INTEGER REFERENCES [repos]([id]), [type] TEXT , [active_lock_reason] TEXT, [performed_via_github_app] TEXT, [reactions] TEXT, [draft] INTEGER, [state_reason] TEXT); CREATE INDEX [idx_issues_repo] ON [issues] ([repo]); CREATE INDEX [idx_issues_milestone] ON [issues] ([milestone]); CREATE INDEX [idx_issues_assignee] ON [issues] ([assignee]); CREATE INDEX [idx_issues_user] ON [issues] ([user]);