issues
1,617 rows where state = "closed" and user = 9599 sorted by node_id
This data as json, CSV (advanced)
repo 12
state 1
- closed · 1,557 ✖
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1174404647 | I_kwDOBm6k_c5F__4n | 1669 | Release 0.61 alpha | simonw 9599 | closed | 0 | 2 | 2022-03-20T00:35:35Z | 2022-03-20T01:24:36Z | 2022-03-20T01:24:36Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1668#issuecomment-1073136896 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1669/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1174306154 | I_kwDOBm6k_c5F_n1q | 1668 | Introduce concept of a database `route`, separate from its name | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 20 | 2022-03-19T16:48:28Z | 2022-03-20T16:43:16Z | 2022-03-20T16:43:16Z | OWNER | Some issues came up in the new
All three of these could be addressed by making the "path" concept for a database (the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1668/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1174302994 | I_kwDOBm6k_c5F_nES | 1667 | Make route matched pattern groups more consistent | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2022-03-19T16:32:35Z | 2022-03-19T20:37:42Z | 2022-03-19T20:37:41Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1666#issuecomment-1073039670 Part of: - #1660 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1667/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1168995756 | I_kwDOBm6k_c5FrXWs | 1657 | Tilde encoding: use ~ instead of - for dash-encoding | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 12 | 2022-03-14T22:55:17Z | 2022-03-15T18:25:11Z | 2022-03-15T18:01:58Z | OWNER | Refs #1439 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1657/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1169840669 | I_kwDOBm6k_c5Fulod | 1658 | Revert main to version that passes tests | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 1 | 2022-03-15T15:37:02Z | 2022-03-19T04:04:50Z | 2022-03-15T15:42:58Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1657#issuecomment-1068125636 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1658/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1170144879 | I_kwDOBm6k_c5Fvv5v | 1660 | Refactor and simplify Datasette routing and views | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 8 | 2022-03-15T19:56:56Z | 2022-03-21T19:19:12Z | 2022-03-21T19:19:01Z | OWNER | While working on: - https://github.com/simonw/datasette/issues/1657 - https://github.com/simonw/datasette/issues/1439 It became very clear that the least maintainable part of Datasette at the moment is the way routing to the database, table and row views work - in particular the subclassing mechanism with BaseView and DataView, but also the complex variety of ways in which the URL routes capture different named regular expression groups. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1660/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1170355774 | I_kwDOBm6k_c5FwjY- | 1661 | Remove Hashed URL mode | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 10 | 2022-03-15T23:13:56Z | 2022-03-19T00:37:37Z | 2022-03-19T00:37:36Z | OWNER | It's now handled by a plugin instead: - #647 - https://github.com/simonw/datasette-hashed-urls/issues/3 https://github.com/simonw/datasette-hashed-urls Sub-tasks:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1661/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1170554975 | I_kwDOBm6k_c5FxUBf | 1663 | Document the internals that were used in datasette-hashed-urls | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 2 | 2022-03-16T05:17:08Z | 2022-03-19T04:04:50Z | 2022-03-17T21:32:38Z | OWNER | The https://github.com/simonw/datasette-hashed-urls used a couple of currently undocumented features:
- |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1663/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1190828163 | I_kwDOBm6k_c5G-piD | 1698 | Add a warning about bots and Cloud Run | simonw 9599 | closed | 0 | 1 | 2022-04-03T05:57:17Z | 2022-04-03T06:10:24Z | 2022-04-03T06:10:24Z | OWNER | Recommend the https://github.com/simonw/datasette-block-robots plugin if you are going to run a large database in Cloud Run (one with a lot of rows). |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1698/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1189113609 | I_kwDOBm6k_c5G4G8J | 1697 | `Request.fake(..., url_vars={})` | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 1 | 2022-04-01T01:48:40Z | 2022-04-01T02:02:18Z | 2022-04-01T02:02:10Z | OWNER | I just created an alternative
``` |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1697/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1174423568 | I_kwDOBm6k_c5GAEgQ | 1670 | Ship Datasette 0.61 | simonw 9599 | closed | 0 | 6 | 2022-03-20T02:47:54Z | 2022-03-23T18:32:32Z | 2022-03-23T18:32:03Z | OWNER | Let the alpha bake for a while, since #1668 is a big last-minute change. After shipping, release a new |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1670/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1175694248 | I_kwDOBm6k_c5GE6uo | 1677 | Remove `check_permission()` from `BaseView` | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 1 | 2022-03-21T17:18:18Z | 2022-03-21T18:45:04Z | 2022-03-21T18:45:03Z | OWNER | Follow-on from: - #1675 Refs: - #1660 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1677/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1175648453 | I_kwDOBm6k_c5GEvjF | 1675 | Extract out `check_permissions()` from `BaseView | simonw 9599 | closed | 0 | 7 | 2022-03-21T16:39:46Z | 2022-03-21T17:14:31Z | 2022-03-21T17:13:21Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1660#issuecomment-1074136176 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1675/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1175715988 | I_kwDOBm6k_c5GFACU | 1678 | Make `check_visibility()` a documented API | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 1 | 2022-03-21T17:30:34Z | 2022-03-21T19:04:03Z | 2022-03-21T19:01:46Z | OWNER | Spotted this while working on: - #1677 https://github.com/simonw/datasette/blob/e627510b760198ccedba9e5af47a771e847785c9/datasette/utils/init.py#L1005-L1021 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1678/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1175854982 | I_kwDOBm6k_c5GFh-G | 1679 | Research: how much overhead does the n=1 time limit have? | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 11 | 2022-03-21T19:27:46Z | 2022-03-21T21:55:57Z | 2022-03-21T21:55:56Z | OWNER | https://github.com/simonw/datasette/blob/1a7750eb29fd15dd2eea3b9f6e33028ce441b143/datasette/utils/init.py#L181-L200 ```python @contextmanager def sqlite_timelimit(conn, ms): deadline = time.perf_counter() + (ms / 1000) # n is the number of SQLite virtual machine instructions that will be # executed between each check. It's hard to know what to pick here. # After some experimentation, I've decided to go with 1000 by default and # 1 for time limits that are less than 50ms n = 1000 if ms < 50: n = 1
``` How often do I set a time limit of 50 or less? How much slower does it go thanks to this code? |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1679/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1178521513 | I_kwDOBm6k_c5GPs-p | 1682 | SQL queries against databases with different routes are broken | simonw 9599 | closed | 0 | 1 | 2022-03-23T18:42:57Z | 2022-03-23T18:48:16Z | 2022-03-23T18:48:16Z | OWNER | 500 error on https://datasette-hashed-urls-preview.vercel.app/fixtures-09f8f95?sql=select+*+from+facetable Here's the trace:
Originally posted by @simonw in https://github.com/simonw/datasette-hashed-urls/issues/13#issuecomment-1076693667 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1682/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1179928510 | I_kwDOBm6k_c5GVEe- | 1683 | allow_facet: False should be respected by column cog menu | simonw 9599 | closed | 0 | 0 | 2022-03-24T19:05:06Z | 2022-03-24T19:16:36Z | 2022-03-24T19:16:36Z | OWNER | The column cog menu currently shows "Facet by this" even if faceting is disabled for the Datasette instance. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1683/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1182065616 | I_kwDOBm6k_c5GdOPQ | 1689 | datasette.add_message() documentation is incorrect | simonw 9599 | closed | 0 | 1 | 2022-03-26T20:49:42Z | 2022-03-26T21:35:57Z | 2022-03-26T20:51:21Z | OWNER |
But in the code it's: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1689/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1182143895 | I_kwDOBm6k_c5GdhWX | 1691 | Bug in pytest-httpx example | simonw 9599 | closed | 0 | 0 | 2022-03-26T22:45:30Z | 2022-03-26T22:46:09Z | 2022-03-26T22:46:09Z | OWNER |
https://github.com/Colin-b/pytest_httpx/blob/v0.20.0/README.md#reply-with-custom-body |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1691/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1194790504 | I_kwDOBm6k_c5HNw5o | 1701 | Use + for spaces instead of ~20 | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 0 | 2022-04-06T15:40:48Z | 2022-04-06T15:55:10Z | 2022-04-06T15:55:05Z | OWNER | Tilde encoding introduced in #1657 means that database files with spaces in the name - e.g. the Apple Mail
I think this would be prettier:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1701/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1200649889 | I_kwDOBm6k_c5HkHah | 1710 | Guide for plugin authors to upgrade their plugins for 1.0 | simonw 9599 | closed | 0 | 1 | 2022-04-11T22:58:25Z | 2022-04-11T23:04:01Z | 2022-04-11T23:03:25Z | OWNER | I'll also encourage testing against both Datasette 0.x and Datasette 1.0 using a GitHub Actions matrix. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1710/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1202227104 | I_kwDOBm6k_c5HqIeg | 1712 | Make "<Binary: 2427344 bytes>" easier to read | simonw 9599 | closed | 0 | 3 | 2022-04-12T18:17:07Z | 2022-04-12T19:12:22Z | 2022-04-12T18:44:20Z | OWNER |
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1712/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1223234932 | I_kwDOBm6k_c5I6RV0 | 1733 | Get Datasette compatible with Pyodide | simonw 9599 | closed | 0 | 9 | 2022-05-02T19:01:58Z | 2022-05-04T15:14:01Z | 2022-05-02T20:15:27Z | OWNER | I've already got this working as a prototype. Here are the changes I had to make:
TODO:
Goal is to be able to do the following directly in https://pyodide.org/en/stable/console.html
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1733/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1223241647 | I_kwDOBm6k_c5I6S-v | 1734 | Remove python-baseconv dependency | simonw 9599 | closed | 0 | 3 | 2022-05-02T19:08:37Z | 2022-05-02T23:25:49Z | 2022-05-02T19:39:20Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1733#issuecomment-1115258737 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1734/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1223263540 | I_kwDOBm6k_c5I6YU0 | 1735 | Datasette setting to disable threading (for Pyodide) | simonw 9599 | closed | 0 | 1 | 2022-05-02T19:31:08Z | 2022-05-02T23:25:49Z | 2022-05-02T20:13:52Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1733#issuecomment-1115278325 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1735/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1223459734 | I_kwDOBm6k_c5I7IOW | 1737 | Automated test for Pyodide compatibility | simonw 9599 | closed | 0 | 4 | 2022-05-02T23:24:25Z | 2022-05-02T23:40:50Z | 2022-05-02T23:40:50Z | OWNER | Refs: - #1733 Need something in the test suite such that if Datasette breaks against Pyodide in the future we hear about it. I'm thinking this is an opportunity to use shot-scraper javascript. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1737/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1223527226 | I_kwDOBm6k_c5I7Ys6 | 1738 | "Cannot use _sort and _sort_desc at the same time" | simonw 9599 | closed | 0 | Datasette 0.62 8303187 | 2 | 2022-05-03T01:06:24Z | 2022-08-14T16:13:55Z | 2022-08-14T16:13:55Z | OWNER | Triggered this error while playing with the sort desc checkbox and the apply button that are only visible on this page at mobile screen width: https://latest.datasette.io/fixtures/compound_three_primary_keys?_sort_desc=pk1 Navigate to that page (with the browser narrow enough to show the box), un-check the box and click Apply: Also notable: I managed to get to a page with |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1738/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1223699280 | I_kwDOBm6k_c5I8CtQ | 1739 | .db downloads should be served with an ETag | simonw 9599 | closed | 0 | 6 | 2022-05-03T05:11:21Z | 2022-05-04T18:21:18Z | 2022-05-03T14:59:51Z | OWNER | I noticed that my Pyodide Datasette prototype is downloading the same database file every single time rather than browser caching it: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1739/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 | ||||||
1212838949 | I_kwDOBm6k_c5ISnQl | 1716 | Configure git blame to ignore Black commit | simonw 9599 | closed | 0 | 1 | 2022-04-22T21:56:37Z | 2022-04-22T22:02:19Z | 2022-04-22T22:02:19Z | OWNER | GitHub can support this in blame views now too: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1716/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1213683988 | I_kwDOBm6k_c5IV1kU | 1718 | Code examples in the documentation should be formatted with Black | simonw 9599 | closed | 0 | 12 | 2022-04-24T15:22:50Z | 2022-04-24T16:24:14Z | 2022-04-24T16:18:03Z | OWNER | For example on this page: https://docs.datasette.io/en/stable/writing_plugins.html#packaging-a-plugin I wonder if there's an easy way for me to enforce this for Sphinx documentation? |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1718/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 | ||||||
1216508080 | I_kwDOBm6k_c5IgnCw | 1723 | Research running SQL in table view in parallel using `asyncio.gather()` | simonw 9599 | closed | 0 | 5 | 2022-04-26T21:42:48Z | 2022-04-27T18:53:44Z | 2022-04-26T22:19:09Z | OWNER | Spun off from: - #1715 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1723/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1216619276 | I_kwDOBm6k_c5IhCMM | 1724 | ?_trace=1 doesn't work on Global Power Plants demo | simonw 9599 | closed | 0 | 3 | 2022-04-27T00:15:02Z | 2022-04-27T06:15:14Z | 2022-04-27T00:18:30Z | OWNER | https://global-power-plants.datasettes.com/global-power-plants/global-power-plants?_trace=1 is not showing the trace JSON at the bottom of the page. Confirmed that Possibly related: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1724/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1239008850 | I_kwDOBm6k_c5J2cZS | 1744 | `--nolock` feature for opening locked databases | simonw 9599 | closed | 0 | 7 | 2022-05-17T18:25:16Z | 2022-05-17T19:46:38Z | 2022-05-17T19:40:30Z | OWNER | The getting started docs currently suggest you try this to browse your Chrome history:
But if Chrome is running you will likely get this error:
Turns out there's a workaround for this which I just spotted on the SQLite forum:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1744/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1239080102 | I_kwDOBm6k_c5J2tym | 1745 | Documentation on running cog | simonw 9599 | closed | 0 | 1 | 2022-05-17T19:41:06Z | 2022-05-17T19:45:51Z | 2022-05-17T19:43:45Z | OWNER | Noticed that |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1745/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1243498298 | I_kwDOBm6k_c5KHkc6 | 1746 | Switch documentation theme to Furo | simonw 9599 | closed | 0 | 21 | 2022-05-20T18:42:17Z | 2022-05-20T21:28:29Z | 2022-05-20T21:28:29Z | OWNER | https://github.com/pradyunsg/furo I just did this for |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1746/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1243512344 | I_kwDOBm6k_c5KHn4Y | 1747 | Add tutorials to the getting started guide | simonw 9599 | closed | 0 | 1 | 2022-05-20T19:01:52Z | 2022-05-20T19:12:30Z | 2022-05-20T19:05:34Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1747/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||||
1243517592 | I_kwDOBm6k_c5KHpKY | 1748 | Add copy buttons next to code examples in the documentation | simonw 9599 | closed | 0 | 2 | 2022-05-20T19:09:00Z | 2022-05-20T19:15:00Z | 2022-05-20T19:11:32Z | OWNER | Similar to the ones in |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1748/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1306492437 | I_kwDOBm6k_c5N334V | 1770 | `handle_exception` plugin hook for custom error handling | simonw 9599 | closed | 0 | Datasette 0.62 8303187 | 14 | 2022-07-15T20:52:49Z | 2022-08-14T15:25:51Z | 2022-08-14T15:25:51Z | OWNER | I need this for a couple of plugins, both of which are broken at the moment: - https://github.com/simonw/datasette-sentry/issues/1 - https://github.com/simonw/datasette-show-errors/issues/2 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1770/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1292370469 | I_kwDOBm6k_c5NCAIl | 1765 | Document plugins providing new plugin hook- | simonw 9599 | closed | 0 | 1 | 2022-07-03T17:05:14Z | 2023-08-31T23:08:24Z | 2023-08-31T23:06:31Z | OWNER | I've used this pattern twice now: https://til.simonwillison.net/datasette/register-new-plugin-hooks - in |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1765/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1296222572 | I_kwDOBm6k_c5NQsls | 1768 | Upgrade to 3.10.6-slim-bullseye Docker base image | simonw 9599 | closed | 0 | Datasette 0.62 8303187 | 5 | 2022-07-06T18:37:49Z | 2022-08-14T15:54:36Z | 2022-08-14T15:54:11Z | OWNER | For the package published to Docker Hub and also the containers used by |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1768/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1318907685 | I_kwDOBm6k_c5OnO8l | 1773 | 500 error if sorted by a column not in the ?_col= list | simonw 9599 | closed | 0 | Datasette 0.62 8303187 | 4 | 2022-07-27T01:20:27Z | 2022-08-14T16:06:25Z | 2022-08-14T15:44:05Z | OWNER | For example: https://latest.datasette.io/fixtures/sortable?_sort_desc=sortable&_col=sortable_with_nulls That's |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1773/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1338137350 | I_kwDOBm6k_c5PwlsG | 1781 | Ensure Datasette Lite is promoted in docs and README | simonw 9599 | closed | 0 | Datasette 0.62 8303187 | 1 | 2022-08-14T05:12:35Z | 2022-08-14T15:24:40Z | 2022-08-14T15:24:40Z | OWNER | As of 0.62 https://lite.datasette.io is a supported piece of the overall Datasette ecosystem. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1781/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1338278056 | I_kwDOBm6k_c5PxICo | 1782 | Release notes for Datasette 0.62 | simonw 9599 | closed | 0 | Datasette 0.62 8303187 | 2 | 2022-08-14T15:26:45Z | 2022-08-14T17:40:45Z | 2022-08-14T17:32:54Z | OWNER | I've written a lot of these already for the alphas: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1782/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1342430983 | I_kwDOBm6k_c5QA98H | 1786 | Adjust height of textarea for no JS case | simonw 9599 | closed | 0 | 4 | 2022-08-18T01:15:15Z | 2022-10-27T21:50:12Z | 2022-08-18T16:06:09Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1786/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||||
1343422749 | I_kwDOBm6k_c5QEwEd | 1787 | Move "datasette --get" from Getting Started to CLI Reference | simonw 9599 | closed | 0 | 5 | 2022-08-18T17:53:39Z | 2022-08-18T21:57:09Z | 2022-08-18T21:56:21Z | OWNER | It really shouldn't be here: https://docs.datasette.io/en/0.62/getting_started.html#datasette-get |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1787/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1343732788 | I_kwDOBm6k_c5QF7w0 | 1788 | Make it more obvious that Datasette publish can publish multiple databases | simonw 9599 | closed | 0 | 0 | 2022-08-18T22:57:51Z | 2022-08-18T23:06:16Z | 2022-08-18T23:06:16Z | OWNER | Feedback initially for |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1788/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1355148385 | I_kwDOBm6k_c5Qxexh | 1796 | Research an upgrade to CodeMirror 6 | simonw 9599 | closed | 0 | 4 | 2022-08-30T04:27:46Z | 2023-07-03T04:58:21Z | 2023-07-03T04:58:21Z | OWNER | There are still a bunch of bugs in CodeMirror 5 that affect various mobile browsers - see Datasette Discord report here: https://discord.com/channels/823971286308356157/823971286941302908/1013878624992108645 https://user-images.githubusercontent.com/9599/187349269-7b7c0c8c-3894-4810-82f0-de7c1eb940b3.mp4 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1796/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1373595927 | I_kwDOBm6k_c5R32kX | 1809 | `prepare_jinja2_environment()` hook should take `datasette` argument | simonw 9599 | closed | 0 | 11 | 2022-09-14T21:15:46Z | 2022-09-17T03:39:05Z | 2022-09-17T03:38:33Z | OWNER | That plugin hook's current signature is: As a result in the first alpha release of
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1809/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1362363685 | I_kwDOBm6k_c5RNAUl | 1800 | Remove upper bound dependencies as a default policy | simonw 9599 | closed | 0 | 3 | 2022-09-05T18:23:45Z | 2022-09-05T18:39:52Z | 2022-09-05T18:35:41Z | OWNER | https://iscinumpy.dev/post/bound-version-constraints/ has convinced me not to use upper bound dependencies unless I'm certain they are needed. Relevant PR: - https://github.com/simonw/datasette/pull/1799 Also: https://github.com/simonw/datasette/blob/ba35105eee2d3ba620e4f230028a02b2e2571df2/setup.py#L45-L46 https://github.com/simonw/datasette/blob/ba35105eee2d3ba620e4f230028a02b2e2571df2/setup.py#L48-L49 https://github.com/simonw/datasette/blob/ba35105eee2d3ba620e4f230028a02b2e2571df2/setup.py#L51-L55 https://github.com/simonw/datasette/blob/ba35105eee2d3ba620e4f230028a02b2e2571df2/setup.py#L57-L59 https://github.com/simonw/datasette/blob/ba35105eee2d3ba620e4f230028a02b2e2571df2/setup.py#L75-L78 https://github.com/simonw/datasette/blob/ba35105eee2d3ba620e4f230028a02b2e2571df2/setup.py#L81-L82 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1800/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1362402998 | I_kwDOBm6k_c5RNJ62 | 1802 | Tests reliably failing on Python 3.7 | simonw 9599 | closed | 0 | 15 | 2022-09-05T19:21:16Z | 2022-09-06T00:40:20Z | 2022-09-06T00:40:20Z | OWNER | https://github.com/simonw/datasette/runs/8194907739?check_suite_focus=true I thought this might be an intermittent failure but attempts to re-run the tests have not made it pass. End of that trace is: ``` /home/runner/work/datasette/datasette/datasette/app.py:234: in init self._refresh_schemas_lock = asyncio.Lock() /opt/hostedtoolcache/Python/3.7.13/x64/lib/python3.7/asyncio/locks.py:161: in init self._loop = events.get_event_loop() self = <asyncio.unix_events._UnixDefaultEventLoopPolicy object at 0x7fb1fc799fd0>
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1802/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1363440999 | I_kwDOBm6k_c5RRHVn | 1804 | Ability to set a custom facet_size per table | simonw 9599 | closed | 0 | 6 | 2022-09-06T15:11:40Z | 2022-09-07T00:21:56Z | 2022-09-06T18:06:53Z | OWNER | Suggestion from Discord: https://discord.com/channels/823971286308356157/823971286941302908/1016725586351247430
This is a really good idea, it could be done in |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1804/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1368030952 | I_kwDOBm6k_c5Rin7o | 1808 | Database() constructor currently defaults is_mutable to False | simonw 9599 | closed | 0 | 5 | 2022-09-09T16:02:41Z | 2022-09-09T16:37:57Z | 2022-09-09T16:19:25Z | OWNER | This is surprising. It caused a bug in
Originally posted by @simonw in https://github.com/simonw/datasette-upload-dbs/issues/6#issuecomment-1242150394 Code in question: https://github.com/simonw/datasette/blob/bf8d84af5422606597be893cedd375020cb2b369/datasette/database.py#L29-L32 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1808/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1378640768 | I_kwDOBm6k_c5SLGOA | 1816 | Validate settings.json on startup in configuration directory mode | simonw 9599 | closed | 0 | 2 | 2022-09-19T23:35:18Z | 2022-09-20T01:15:48Z | 2022-09-20T01:15:48Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1814#issuecomment-1251677554 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1816/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1386734383 | I_kwDOBm6k_c5Sp-Mv | 1821 | Release Datasette 0.63a0 | simonw 9599 | closed | 0 | 1 | 2022-09-26T21:15:27Z | 2022-09-26T22:06:39Z | 2022-09-26T22:06:39Z | OWNER |
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1821/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1393903845 | I_kwDOBm6k_c5TFUjl | 1828 | word-wrap: anywhere resulting in weird display | simonw 9599 | closed | 0 | 2 | 2022-10-02T21:25:03Z | 2022-10-02T23:01:17Z | 2022-10-02T23:01:17Z | OWNER | e.g. on https://github-to-sqlite.dogsheep.net/github/commits This is from a change introduced here: https://github.com/simonw/datasette/commit/bf8d84af5422606597be893cedd375020cb2b369 in #1805 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1828/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1396948693 | I_kwDOBm6k_c5TQ77V | 1829 | Table/database that is private due to inherited permissions does not show padlock | simonw 9599 | closed | 0 | 8 | 2022-10-04T23:14:16Z | 2022-10-24T02:23:46Z | 2022-10-24T02:11:37Z | OWNER | I noticed that a table page that is private because the database or instance is private, e.g. this one: Is not displaying the padlock icon that indicates the table is not visible to the public. Same issue for the database page too, which in this case is private due to |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1829/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1397193691 | I_kwDOBm6k_c5TR3vb | 1832 | __bool__ method on Results | simonw 9599 | closed | 0 | 2 | 2022-10-05T04:18:12Z | 2022-10-05T04:32:33Z | 2022-10-05T04:32:33Z | OWNER | Wrote this code today: https://github.com/simonw/datasette-public/blob/1401bfae50e71c1dfd2bfb6954f2e86d5a7ab21b/datasette_public/init.py#L41
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1832/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1397084281 | I_kwDOBm6k_c5TRdB5 | 1831 | If user can see table but NOT database/instance nav links should not display | simonw 9599 | closed | 0 | 10 | 2022-10-05T02:16:31Z | 2022-10-13T21:52:04Z | 2022-10-13T21:52:04Z | OWNER | Spotted this bug while building this plugin: - https://github.com/simonw/datasette-public This is a public table, but the two links in the nav go to forbidden pages: Those nav links shouldn't be shown at all. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1831/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1425682079 | I_kwDOBm6k_c5U-i6f | 1865 | Stop syncing main to master | simonw 9599 | closed | 0 | 1 | 2022-10-27T13:55:38Z | 2022-10-27T13:58:27Z | 2022-10-27T13:56:13Z | OWNER | I think it's been long enough now that I can drop the code that syncs the main branch to master. I originally added this for people who might be using |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1865/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1422973111 | I_kwDOBm6k_c5U0Ni3 | 1854 | Flaky test: test_serve_localhost_http | simonw 9599 | closed | 0 | 3 | 2022-10-25T19:37:35Z | 2022-10-25T19:53:02Z | 2022-10-25T19:53:02Z | OWNER | Failing on Python 3.10 at the moment: https://github.com/simonw/datasette/actions/runs/3323629947/jobs/5494340302 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1854/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1423336122 | I_kwDOBm6k_c5U1mK6 | 1856 | allow_signed_tokens setting for disabling API signed token mechanism | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 3 | 2022-10-26T02:20:55Z | 2022-11-15T19:57:05Z | 2022-10-26T02:58:35Z | OWNER | Had some design thoughts here: https://github.com/simonw/datasette/issues/1852#issuecomment-1291272280 I liked this option the most:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1856/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 | |||||
1423347412 | I_kwDOBm6k_c5U1o7U | 1857 | Prevent API tokens from using /-/create-token to create more tokens | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 1 | 2022-10-26T02:38:09Z | 2022-11-15T19:57:11Z | 2022-10-26T02:57:26Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1850#issuecomment-1291417100 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1857/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1423364990 | I_kwDOBm6k_c5U1tN- | 1858 | `max_signed_tokens_ttl` setting for a maximum duration on API tokens | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 4 | 2022-10-26T03:05:53Z | 2022-11-15T19:58:52Z | 2022-10-27T03:15:05Z | OWNER | It's currently possible to use Some administrators may wish to have a maximum expiry instead. I should support that with a setting. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1858/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1423369494 | I_kwDOBm6k_c5U1uUW | 1859 | datasette create-token CLI command | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 3 | 2022-10-26T03:12:59Z | 2022-11-15T19:59:00Z | 2022-10-26T04:31:39Z | OWNER | The CLI equivalent of the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1859/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1425011030 | I_kwDOBm6k_c5U7_FW | 1862 | Create a new table from one or more records, `sqlite-utils` style | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 5 | 2022-10-27T04:25:02Z | 2022-11-15T19:59:47Z | 2022-11-15T06:42:09Z | OWNER | It's interesting to also think about what the form-based UI for this could look like - since that would involve users creating new columns of different types on the fly. Will need the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1862/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1425029242 | I_kwDOBm6k_c5U8Dh6 | 1863 | Update a single record in an existing table | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 16 | 2022-10-27T04:53:17Z | 2022-11-29T18:08:53Z | 2022-11-29T18:06:37Z | OWNER | API design:
Maybe this is the wrong design though? The design for insert currently looks like this:
I think I'll go with this:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1863/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 | |||||
1409679008 | I_kwDOBm6k_c5UBf6g | 1844 | Update screenshots in documentation to match latest designs | simonw 9599 | closed | 0 | 18 | 2022-10-14T18:01:18Z | 2022-10-14T23:51:46Z | 2022-10-14T19:57:17Z | OWNER | https://docs.datasette.io/en/0.62/full_text_search.html has this out-of-date screenshot: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1844/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1426001541 | I_kwDOBm6k_c5U_w6F | 1866 | API for bulk inserting records into a table | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 12 | 2022-10-27T17:19:25Z | 2022-11-15T19:59:34Z | 2022-10-30T06:04:07Z | OWNER | Similar to https://github.com/simonw/datasette-insert/blob/0.8/README.md#inserting-data-and-creating-tables I expect this to become by far the most common way that data gets into a Datasette instance - more so than the individual row API in: - #1851 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1866/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1420055377 | I_kwDOBm6k_c5UpFNR | 1847 | Both _local_metadata and _metadata_local? | simonw 9599 | closed | 0 | 2 | 2022-10-24T01:43:08Z | 2022-10-24T01:53:13Z | 2022-10-24T01:53:13Z | OWNER | Spotted this in the debugger against the
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1847/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1420090659 | I_kwDOBm6k_c5UpN0j | 1848 | Private database page should show padlock on every table | simonw 9599 | closed | 0 | 3 | 2022-10-24T02:28:38Z | 2022-10-24T02:50:29Z | 2022-10-24T02:42:34Z | OWNER | Following: - #1829 https://latest.datasette.io/_internal looks like this: But those queries and tables are private too, and should also show the padlock icon. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1848/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1420174670 | I_kwDOBm6k_c5UpiVO | 1849 | NoneType' object has no attribute 'actor' | simonw 9599 | closed | 0 | 5 | 2022-10-24T04:02:15Z | 2022-10-26T21:13:40Z | 2022-10-26T21:13:40Z | OWNER |
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1849/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 | |||||
1421544654 | I_kwDOBm6k_c5UuwzO | 1851 | API to insert a single record into an existing table | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 22 | 2022-10-24T22:24:21Z | 2022-11-15T19:59:18Z | 2022-10-28T00:59:25Z | OWNER | Controlled by a new |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1851/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1421552095 | I_kwDOBm6k_c5Uuynf | 1852 | Default API token authentication mechanism | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 30 | 2022-10-24T22:31:07Z | 2022-11-15T19:57:00Z | 2022-10-26T02:19:54Z | OWNER | API authentication will be via I'm inclined to add a default token mechanism to Datasette based on tokens that are signed with the Plugins can then define alternative ways of creating tokens, such as the existing https://datasette.io/plugins/datasette-auth-tokens plugin. Originally posted by @simonw in https://github.com/simonw/datasette/issues/1850#issuecomment-1289706439 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1852/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1422915587 | I_kwDOBm6k_c5Uz_gD | 1853 | Upgrade Datasette Docker to Python 3.11 | simonw 9599 | closed | 0 | 7 | 2022-10-25T18:44:31Z | 2022-10-25T19:28:56Z | 2022-10-25T19:05:16Z | OWNER | Related: - #1768 I think this base image looks right: 3.11.0-slim-bullseye |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1853/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1426195437 | I_kwDOBm6k_c5VAgPt | 1868 | Design URLs for the write API | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 5 | 2022-10-27T19:55:30Z | 2022-11-15T19:59:14Z | 2022-10-27T20:07:01Z | OWNER | My original design for this issue: - #1851 Was |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1868/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1426253476 | I_kwDOBm6k_c5VAuak | 1869 | Release 0.63 | simonw 9599 | closed | 0 | 3 | 2022-10-27T20:53:01Z | 2022-10-27T22:24:38Z | 2022-10-27T22:11:33Z | OWNER | Most of the release notes are already written: - https://github.com/simonw/datasette/releases/tag/0.63a0 - https://github.com/simonw/datasette/releases/tag/0.63a1 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1869/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1427293909 | I_kwDOBm6k_c5VEsbV | 1871 | API explorer tool | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 24 | 2022-10-28T13:49:11Z | 2022-11-15T19:59:05Z | 2022-11-14T04:59:59Z | OWNER | The API will be much easier to develop if there's a page that helps you execute JSON POSTs against it. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1871/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1429030341 | I_kwDOBm6k_c5VLUXF | 1874 | API to drop a table | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 4 | 2022-10-30T21:55:11Z | 2022-11-15T19:59:53Z | 2022-11-14T05:45:06Z | OWNER |
Require |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1874/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1431786951 | I_kwDOBm6k_c5VV1XH | 1876 | SQL query should wrap on SQL interrupted screen | simonw 9599 | closed | 0 | 2 | 2022-11-01T17:14:01Z | 2022-11-01T17:22:33Z | 2022-11-01T17:22:33Z | OWNER | Just saw this: |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1876/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 | ||||||
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 | |||||
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 | ||||||
1435294468 | I_kwDOBm6k_c5VjNsE | 1882 | `/db/-/create` API for creating tables | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 12 | 2022-11-03T21:44:32Z | 2022-11-15T19:59:43Z | 2022-11-15T06:00:41Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1862#issuecomment-1299073433 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1882/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1447388809 | I_kwDOBm6k_c5WRWaJ | 1887 | Add a confirm step to the drop table API | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 2 | 2022-11-14T04:59:53Z | 2022-11-15T19:59:59Z | 2022-11-14T05:18:51Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1871#issuecomment-1313097057 Added drop table API in: - #1874 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1887/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1447439985 | I_kwDOBm6k_c5WRi5x | 1888 | API explorer should take immutability into account | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 1 | 2022-11-14T06:00:14Z | 2022-11-15T19:59:10Z | 2022-11-14T06:04:48Z | OWNER | Refs: - #1871 I noticed the API explorer doesn't show any links on https://latest-1-0-dev.datasette.io/-/api because the It should still show read examples there. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1888/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
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 | |||||
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 | |||||
1452364777 | I_kwDOBm6k_c5WkVPp | 1896 | Extract logic for resolving a URL to a database / table / row | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 4 | 2022-11-16T22:25:20Z | 2022-11-18T22:57:47Z | 2022-11-18T22:56:55Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1863#issuecomment-1317755263 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1896/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1452457263 | I_kwDOBm6k_c5Wkr0v | 1897 | Serve schema JSON to the SQL editor to enable autocomplete | simonw 9599 | closed | 0 | 9 | 2022-11-16T23:47:45Z | 2022-11-18T05:33:20Z | 2022-11-18T02:54:43Z | OWNER | datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1897/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||||
1455932972 | I_kwDOBm6k_c5Wx8Ys | 1904 | Datasette Lite tests failing due to httpx upgrade | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 0 | 2022-11-18T22:49:31Z | 2022-11-18T22:57:48Z | 2022-11-18T22:52:22Z | OWNER | Same problem as this one: - https://github.com/simonw/datasette-lite/issues/56 Caused this failure: https://github.com/simonw/datasette/actions/runs/3500765964 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1904/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1456012874 | I_kwDOBm6k_c5WyP5K | 1905 | `publish heroku` failing due to old Python version | simonw 9599 | closed | 0 | 4 | 2022-11-19T00:01:45Z | 2022-11-19T01:12:05Z | 2022-11-19T00:52:29Z | OWNER | Reported on Discord: https://discord.com/channels/823971286308356157/823971286941302908/1042814317118115901 ``` -----> Building on the Heroku-22 stack -----> Determining which buildpack to use for this app -----> Python app detected -----> Using Python version specified in runtime.txt ! Requested runtime 'python-3.8.10' is not available for this stack (heroku-22). ! For supported versions, see: https://devcenter.heroku.com/articles/python-support ! Push rejected, failed to compile Python app. ! Push failed ▸ Build failed ``` |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1905/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
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 | ||||||
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 | |||||
1468519699 | I_kwDOBm6k_c5Xh9UT | 1911 | `/db/-/create` should support creating tables with compound primary keys | simonw 9599 | closed | 0 | Datasette 1.0a0 8658075 | 2 | 2022-11-29T18:30:47Z | 2022-11-29T18:50:58Z | 2022-11-29T18:48:05Z | OWNER | Found myself needing this to write the tests for: - #1864 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1911/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]);