issues
60 rows where milestone = 3268330 and state = "closed" sorted by updated_at descending
This data as json, CSV (advanced)
Suggested facets: user, comments, author_association, created_at (date), updated_at (date), closed_at (date)
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
449886319 | MDU6SXNzdWU0NDk4ODYzMTk= | 493 | Rename metadata.json to config.json | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 7 | 2019-05-29T15:48:03Z | 2023-08-23T01:29:21Z | 2023-08-23T01:29:20Z | OWNER | It is increasingly being useful configuration options, when it started out as purely metadata. Could cause confusion with the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/493/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1823393475 | I_kwDOBm6k_c5srsbD | 2119 | database color shows only on index page, not other pages | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2023-07-27T00:19:39Z | 2023-08-11T05:25:45Z | 2023-08-11T05:16:24Z | OWNER | I think this has been a bug for a long time. https://latest.datasette.io/ currently shows: Those colors are based on a hash of the database name. But when you click through to https://latest.datasette.io/fixtures It's red on all sub-pages too. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/2119/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 | |||||
639072811 | MDU6SXNzdWU2MzkwNzI4MTE= | 849 | Rename master branch to main | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 10 | 2020-06-15T19:05:54Z | 2022-10-27T13:57:08Z | 2020-09-15T20:37:14Z | OWNER | I was waiting for consensus to form around this (and kind-of hoping for I've seen convincing arguments against |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/849/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
642297505 | MDU6SXNzdWU2NDIyOTc1MDU= | 857 | Comprehensive documentation for variables made available to templates | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 1 | 2020-06-20T03:19:43Z | 2022-10-26T02:58:17Z | 2022-10-26T02:58:17Z | OWNER | Needed for the Datasette 1.0 release, so template authors can trust that Datasette is unlikely to break their templates. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/857/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 | |||||
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 | |||||
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 | |||||
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 | |||||
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 | |||||
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 | |||||
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 | |||||
1174162781 | I_kwDOBm6k_c5F_E1d | 1666 | Refactor URL routing to enable testing | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2022-03-19T03:52:29Z | 2022-03-19T16:32:03Z | 2022-03-19T16:32:03Z | OWNER | I ran into some bugs earlier with URL routing - having more robust testing around this (especially since they are defined using regular expressions) would be really useful.
Related: - #1660 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1666/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
531755959 | MDU6SXNzdWU1MzE3NTU5NTk= | 647 | Move hashed URL mode out to a plugin | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 9 | 2019-12-03T06:29:03Z | 2022-03-19T11:56:05Z | 2022-03-15T23:13:06Z | OWNER | They used to be the default until #418. Since making them optional I haven't felt the need to use them even once. That suggests to me that they should be removed. I think their effect could be entirely handled by an ASGI wrapping plugin. https://datasette.readthedocs.io/en/0.32/performance.html#hashed-url-mode |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/647/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1161584460 | I_kwDOBm6k_c5FPF9M | 1651 | Get rid of the no-longer necessary ?_format=json hack for tables called x.json | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 8 | 2022-03-07T15:40:42Z | 2022-03-19T04:04:50Z | 2022-03-15T18:25:42Z | OWNER | Tidy up from: - #1439 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1651/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 | |||||
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 | |||||
1108235694 | I_kwDOBm6k_c5CDlWu | 1603 | A proper favicon | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 19 | 2022-01-19T15:24:55Z | 2022-03-19T04:04:49Z | 2022-01-20T06:07:31Z | OWNER | Tips here: https://adamj.eu/tech/2022/01/18/how-to-add-a-favicon-to-your-django-site/ - I think a PNG served at Relevant code: https://github.com/simonw/datasette/blob/cb29119db9115b1f40de2fb45263ed77e3bfbb3e/datasette/app.py#L182-L183 I can reuse the icon for https://datasette.io/desktop |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1603/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1114147905 | I_kwDOBm6k_c5CaIxB | 1612 | Move canned queries closer to the SQL input area | jsfenfen 639012 | closed | 0 | Datasette 1.0 3268330 | 5 | 2022-01-25T17:06:39Z | 2022-03-19T04:04:49Z | 2022-01-25T18:34:21Z | CONTRIBUTOR | Original title: Consider placing example queries above the sql input? Hi! Have been enjoying deploying ad hoc datasettes for collaborators to pick over! I keep finding myself manually "fixing" the database.html template so that the "example queries" (canned queries) appear directly over the sql box? So they are sorta more a suggestion for collaborators who aren't inclined to write their own queries? My sense is any time I go to the trouble of writing canned queries my users should see 'em? (( I have also considered a client-side reactive-ish option where selecting a query just places the raw SQL in the box and doesn't execute it, but this seems to end up being an inconvenience, rather than a teaching tool. )) |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1612/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1122413719 | I_kwDOBm6k_c5C5qyX | 1621 | Test against Python 3.11 dev version | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 0 | 2022-02-02T21:38:57Z | 2022-03-19T04:04:49Z | 2022-02-02T21:58:54Z | OWNER | To avoid another surprise like we got with 3.10: https://simonwillison.net/2021/Oct/9/finding-and-reporting-a-bug/ From a quick GitHub code search it looks like |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1621/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1122416919 | I_kwDOBm6k_c5C5rkX | 1623 | /-/patterns returns link: alternate JSON header to 404 | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 2 | 2022-02-02T21:42:49Z | 2022-03-19T04:04:49Z | 2022-02-02T21:48:56Z | OWNER | Bug from: - #1620
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1623/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1126604194 | I_kwDOBm6k_c5DJp2i | 1632 | datasette one.db one.db opens database twice, as one and one_2 | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 6 | 2022-02-07T23:14:47Z | 2022-03-19T04:04:49Z | 2022-02-07T23:50:01Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette-publish-fly/pull/12#issuecomment-1032029874 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1632/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 | |||||
973139047 | MDU6SXNzdWU5NzMxMzkwNDc= | 1439 | Rethink how .ext formats (v.s. ?_format=) works before 1.0 | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 48 | 2021-08-17T23:32:51Z | 2022-03-15T20:51:26Z | 2022-03-15T20:51:26Z | OWNER | Datasette currently has surprising special behaviour for if a table name ends in https://latest.datasette.io/fixtures/table%2Fwith%2Fslashes.csv illustrates this behaviour: it links to
Where normally Datasette would add the The problem with this mechanism is that it's pretty surprising. Anyone writing external code to Datasette who wants to get back the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1439/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 | |||||
1160750713 | I_kwDOBm6k_c5FL6Z5 | 1650 | Implement redirects from old % encoding to new dash encoding | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 5 | 2022-03-06T23:40:02Z | 2022-03-07T19:26:15Z | 2022-03-07T19:26:14Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1439#issuecomment-1060044007 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1650/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1109783030 | I_kwDOBm6k_c5CJfH2 | 1607 | More detailed information about installed SpatiaLite version | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 2 | 2022-01-20T21:28:03Z | 2022-02-09T06:42:02Z | 2022-02-09T06:32:28Z | OWNER | https://www.gaia-gis.it/gaia-sins/spatialite-sql-5.0.0.html#version has a whole bunch of interesting functions for things like These could be shown on the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1607/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
779691739 | MDU6SXNzdWU3Nzk2OTE3Mzk= | 1176 | Policy on documenting "public" datasette.utils functions | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 13 | 2021-01-05T22:55:25Z | 2022-02-07T06:43:32Z | 2022-02-07T06:42:58Z | OWNER | https://github.com/simonw/datasette-css-properties starts like this:
Would be good to figure out a policy on this, and maybe promote some of them to "documented" status. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1176/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
688622148 | MDU6SXNzdWU2ODg2MjIxNDg= | 957 | Simplify imports of common classes | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 7 | 2020-08-29T23:44:04Z | 2022-02-06T06:36:41Z | 2022-02-06T06:34:37Z | OWNER | There are only a few classes that plugins need to import. It would be nice if these imports were as short and memorable as possible. For example:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/957/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1087181951 | I_kwDOBm6k_c5AzRR_ | 1576 | Traces should include SQL executed by subtasks created with `asyncio.gather` | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 12 | 2021-12-22T20:52:02Z | 2022-02-05T05:21:35Z | 2022-02-05T05:19:53Z | OWNER | I tried running some parallel SQL queries using I realized that was because traces are keyed against the current task ID, which changes when a sub-task is run using The faceting and suggest faceting queries are missing from this trace:
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1518#issuecomment-999870993 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1576/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1121618041 | I_kwDOBm6k_c5C2oh5 | 1620 | Link: rel="alternate" to JSON for queries too | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2022-02-02T08:02:42Z | 2022-02-02T21:53:02Z | 2022-02-02T21:33:00Z | OWNER | Following: - #1533 I implemented it for tables and rows but I should have done queries as well. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1620/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1065431383 | I_kwDOBm6k_c4_gTFX | 1533 | Add `Link: rel="alternate"` header pointing to JSON for a table/query | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 4 | 2021-11-28T20:43:25Z | 2022-02-02T07:56:51Z | 2022-02-02T07:49:33Z | OWNER | Originally explored in https://github.com/simonw/datasette-notebook/issues/2#issuecomment-980789406 - I wanted an efficient way to scan a list of URLs and figure out which if any of those corresponded to Datasette tables, canned queries or SQL output that could be represented as a table on a page. It looks like a neat way to do that is with
I can put a |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1533/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1087913724 | I_kwDOBm6k_c5A2D78 | 1577 | Drop support for Python 3.6 | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 6 | 2021-12-23T18:17:03Z | 2022-01-25T23:30:03Z | 2022-01-20T04:31:41Z | OWNER | Original title: Decide when to drop support for Python 3.6
Originally posted by @simonw in https://github.com/simonw/datasette/issues/1576#issuecomment-999878907 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1577/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1057996111 | I_kwDOBm6k_c4_D71P | 1517 | Let `register_routes()` over-ride default routes within Datasette | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 2 | 2021-11-19T00:22:15Z | 2021-11-19T03:20:00Z | 2021-11-19T03:07:27Z | OWNER | See https://github.com/simonw/datasette/issues/878#issuecomment-973554024_ - right now It would be neat if plugins could do this - especially if there was a neat documented way for them to then re-dispatch to the original route code after making some kind of modification. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1517/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
440222719 | MDU6SXNzdWU0NDAyMjI3MTk= | 448 | _facet_array should work against views | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 12 | 2019-05-03T21:08:04Z | 2021-11-16T01:32:05Z | 2021-11-16T01:19:40Z | OWNER | I created this view: https://json-view-facet-bug-demo-j7hipcg4aq-uc.a.run.app/russian-ads-8dbda00/ads_with_targets
When I try to apply faceting by array it appears to work at first: https://json-view-facet-bug-demo-j7hipcg4aq-uc.a.run.app/russian-ads/ads_with_targets?_facet_array=target_names But actually it's doing the wrong thing - the SQL for the facets uses rowid, but rowid is not present on views at all! These results are incorrect, and clicking to select a facet will fail to produce any rows: https://json-view-facet-bug-demo-j7hipcg4aq-uc.a.run.app/russian-ads/ads_with_targets?_facet_array=target_names&target_names__arraycontains=people_who_match%3Ainterests%3AAfrican-American+Civil+Rights+Movement+%281954%E2%80%9468%29 Here's the SQL it should be using when you select a facet (note that it does not use a rowid): https://json-view-facet-bug-demo-j7hipcg4aq-uc.a.run.app/russian-ads?sql=select+*+from+ads_with_targets+where+id+in+%28%0D%0A++++++++++++select+ads_with_targets.id+from+ads_with_targets%2C+json_each%28ads_with_targets.target_names%29+j%0D%0A++++++++++++where+j.value+%3D+%3Ap0%0D%0A++++++++%29+limit+101&p0=people_who_match%3Ainterests%3ABlack+%28Color%29 So we need to do something a lot smarter here. I'm not sure what the fix will look like, or even if it's feasible given that views don't have a rowid to hook into so the JSON faceting SQL may have to be completely rewritten.
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/448/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
459590021 | MDU6SXNzdWU0NTk1OTAwMjE= | 519 | Decide what goes into Datasette 1.0 | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 4 | 2019-06-23T15:47:41Z | 2021-11-15T23:26:11Z | 2021-11-15T23:26:11Z | OWNER | Datasette ASGI #272 is a big part of it... but 1.0 will generally be an indicator that Datasette is a stable platform for developers to write plugins and custom templates against. So lots to think about. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/519/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
576722115 | MDU6SXNzdWU1NzY3MjIxMTU= | 696 | Single failing unit test when run inside the Docker image | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 2 | 2020-03-06T06:16:36Z | 2021-03-29T17:04:19Z | 2021-03-07T07:41:18Z | OWNER |
It was for
Originally posted by @simonw in https://github.com/simonw/datasette/issues/695#issuecomment-595614469 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/696/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
718259202 | MDU6SXNzdWU3MTgyNTkyMDI= | 1005 | Remove xfail tests when new httpx is released | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2020-10-09T16:00:19Z | 2021-02-28T22:41:08Z | 2021-02-28T22:41:08Z | OWNER |
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1005/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
793027837 | MDU6SXNzdWU3OTMwMjc4Mzc= | 1205 | Rename /:memory: to /_memory | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2021-01-25T05:04:56Z | 2021-01-28T22:55:02Z | 2021-01-28T22:51:42Z | OWNER | For consistency with This change would need to be in before Datasette 1.0. I could land it earlier and set up redirects from the old URLs though. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1205/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
497170355 | MDU6SXNzdWU0OTcxNzAzNTU= | 576 | Documented internals API for use in plugins | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 10 | 2019-09-23T15:28:50Z | 2021-01-05T23:12:51Z | 2021-01-05T23:12:37Z | OWNER | Quite a few of the plugin hooks make a This means it should provide a documented, stable API so that plugin authors can rely on it. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/576/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
770436876 | MDU6SXNzdWU3NzA0MzY4NzY= | 1150 | Maintain an in-memory SQLite table of connected databases and their tables | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 32 | 2020-12-17T23:02:13Z | 2020-12-27T14:51:39Z | 2020-12-18T22:34:12Z | OWNER | I want Datasette to have its own internal metadata about connected tables, to power features like a paginated searchable homepage in #461. I want this to be a SQLite table. This could also be part of the directory scanning mechanism prototyped in #672 - where Datasette can be set to continually scan a directory for new database files that it can serve. Also relevant to the Datasette Library concept in #417. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1150/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
456568880 | MDU6SXNzdWU0NTY1Njg4ODA= | 509 | Support opening multiple databases with the same stem | simonw 9599 | closed | 0 | simonw 9599 | Datasette 1.0 3268330 | 4 | 2019-06-15T19:32:00Z | 2020-12-22T20:04:35Z | 2020-12-22T20:04:35Z | OWNER | e.g. I should be able to do this:
This currently errors because you can't have two databases taking the Instead, how about in this particular case assigning the second database |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/509/reactions", "total_count": 2, "+1": 2, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||
398011658 | MDU6SXNzdWUzOTgwMTE2NTg= | 398 | Ensure downloading a 100+MB SQLite database file works | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2019-01-10T20:57:52Z | 2020-12-05T19:36:27Z | 2020-12-05T19:36:27Z | OWNER | I've seen attempted downloads of large files fail after about ten seconds. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/398/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
444746021 | MDU6SXNzdWU0NDQ3NDYwMjE= | 468 | Pagination for the database index page | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 1 | 2019-05-16T04:13:56Z | 2020-10-16T23:20:26Z | 2020-10-16T23:20:22Z | OWNER | Some databases have a LOT of tables. Now that we often calculate table row counts dynamically we could really speed things up by paginating the database index page, e.g. http://fivethirtyeight-datasette.herokuapp.com/fivethirtyeight If we're paginating, having a filter-search-for-table widget (similar to the search-for-database widget I'm planning for the homepage) would make sense. Related: pagination for homepage #461 and Datasette Library #417 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/468/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
440134714 | MDU6SXNzdWU0NDAxMzQ3MTQ= | 446 | Define mechanism for plugins to return structured data | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 7 | 2019-05-03T17:00:16Z | 2020-10-02T00:08:54Z | 2020-10-02T00:08:47Z | OWNER | Several plugin hooks now expect plugins to return data in a specific shape - notably the new output format hook and the custom facet hook. These use Python dictionaries right now but that's quite error prone: it would be good to have a mechanism that supported a more structured format. Full list of current hooks is here: https://datasette.readthedocs.io/en/latest/plugins.html#plugin-hooks |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/446/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
542553350 | MDU6SXNzdWU1NDI1NTMzNTA= | 655 | Copy and paste doesn't work reliably on iPhone for SQL editor | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 3 | 2019-12-26T13:15:10Z | 2020-09-30T20:36:12Z | 2020-08-30T17:51:40Z | OWNER | I'm having a lot of trouble copying and pasting from the codemirror editor on my iPhone. |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/655/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
449854604 | MDU6SXNzdWU0NDk4NTQ2MDQ= | 492 | Facets not correctly persisted in hidden form fields | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 4 | 2019-05-29T14:49:39Z | 2020-09-15T20:12:29Z | 2020-09-15T20:12:29Z | OWNER | Steps to reproduce: visit https://2a4b892.datasette.io/fixtures/roadside_attractions?_facet_m2m=attraction_characteristic and click "Apply" Result is a 500: The error occurs because of this hidden HTML input:
This should be:
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/492/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
529429214 | MDU6SXNzdWU1Mjk0MjkyMTQ= | 642 | Provide a cookiecutter template for creating new plugins | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 6 | 2019-11-27T15:46:36Z | 2020-06-20T03:20:33Z | 2020-06-20T03:20:25Z | OWNER | See this conversation: https://twitter.com/psychemedia/status/1199707352540368896 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/642/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
631932926 | MDU6SXNzdWU2MzE5MzI5MjY= | 801 | allow_by_query setting for configuring permissions with a SQL statement | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 6 | 2020-06-05T20:30:19Z | 2020-06-11T18:58:56Z | 2020-06-11T18:58:49Z | OWNER |
Originally posted by @simonw in https://github.com/simonw/datasette/issues/698#issuecomment-639787304 See also #800 |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/801/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
570301333 | MDU6SXNzdWU1NzAzMDEzMzM= | 684 | Add documentation on Database introspection methods to internals.rst | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 4 | 2020-02-25T04:20:24Z | 2020-06-04T18:56:15Z | 2020-05-30T18:40:39Z | OWNER |
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/684/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
629595228 | MDExOlB1bGxSZXF1ZXN0NDI2ODkxNDcx | 796 | New WIP writable canned queries | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 9 | 2020-06-03T00:08:00Z | 2020-06-03T15:16:52Z | 2020-06-03T15:16:50Z | OWNER | simonw/datasette/pulls/796 | Refs #698. Replaces #703 Still todo:
|
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/796/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||
629535669 | MDU6SXNzdWU2Mjk1MzU2Njk= | 794 | Show hooks implemented by each plugin on /-/plugins | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 2 | 2020-06-02T21:44:38Z | 2020-06-02T22:30:17Z | 2020-06-02T21:50:10Z | OWNER | e.g.
|
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/794/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
570101428 | MDExOlB1bGxSZXF1ZXN0Mzc5MTkyMjU4 | 683 | .execute_write() and .execute_write_fn() methods on Database | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 14 | 2020-02-24T19:51:58Z | 2020-05-30T18:40:20Z | 2020-02-25T04:45:08Z | OWNER | simonw/datasette/pulls/683 | See #682
|
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/683/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||
570309546 | MDU6SXNzdWU1NzAzMDk1NDY= | 685 | Document (and reconsider design of) Database.execute() and Database.execute_against_connection_in_thread() | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 15 | 2020-02-25T04:49:44Z | 2020-05-30T13:20:50Z | 2020-05-08T17:42:18Z | OWNER | In #683 I started a new section of internals documentation covering the I decided not to document |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/685/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
585633142 | MDU6SXNzdWU1ODU2MzMxNDI= | 706 | Documentation for the "request" object | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 6 | 2020-03-22T02:55:50Z | 2020-05-30T13:20:00Z | 2020-05-27T22:31:22Z | OWNER | Since that object is passed to the I could also start passing it to the |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/706/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
626078521 | MDU6SXNzdWU2MjYwNzg1MjE= | 774 | Consolidate request.raw_args and request.args | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 8 | 2020-05-27T22:30:59Z | 2020-05-29T23:27:35Z | 2020-05-29T23:22:38Z | OWNER |
I use it in a few places in other projects though, so I'll have to fix those first: https://github.com/search?q=user%3Asimonw+raw_args&type=Code |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/774/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
497171390 | MDU6SXNzdWU0OTcxNzEzOTA= | 577 | Utility mechanism for plugins to render templates | simonw 9599 | closed | 0 | Datasette 1.0 3268330 | 7 | 2019-09-23T15:30:36Z | 2020-02-04T20:26:20Z | 2020-02-04T20:26:19Z | OWNER | Sometimes a plugin will need to render a template for some custom UI. We need a documented API for doing this, which ensures that everything will work correctly if you extend base.html etc. See also #576. This could be a |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/577/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
459587155 | MDExOlB1bGxSZXF1ZXN0MjkwODk3MTA0 | 518 | Port Datasette from Sanic to ASGI + Uvicorn | simonw 9599 | closed | 0 | simonw 9599 | Datasette 1.0 3268330 | 12 | 2019-06-23T15:18:42Z | 2019-06-24T13:42:50Z | 2019-06-24T03:13:09Z | OWNER | simonw/datasette/pulls/518 | Most of the code here was fleshed out in comments on #272 (Port Datasette to ASGI) - this pull request will track the final pieces:
|
datasette 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/518/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||
324188953 | MDU6SXNzdWUzMjQxODg5NTM= | 272 | Port Datasette to ASGI | simonw 9599 | closed | 0 | simonw 9599 | Datasette 1.0 3268330 | 42 | 2018-05-17T21:16:32Z | 2019-06-24T04:54:15Z | 2019-06-24T03:33:06Z | OWNER | Datasette doesn't take much advantage of Sanic, and I'm increasingly having to work around parts of it because of idiosyncrasies that are specific to Datasette - caring about the exact order of querystring arguments for example. Since Datasette is GET-only our needs from a web framework are actually pretty slim. This becomes more important as I expand the plugins #14 framework. Am I sure I want the plugin ecosystem to depend on a Sanic if I might move away from it in the future? If Datasette wasn't all about async/await I would use WSGI, but today it makes more sense to use ASGI. I'd like to be confident that switching to ASGI would still give me the excellent performance that Sanic provides. https://github.com/django/asgiref/blob/master/specs/asgi.rst |
datasette 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/272/reactions", "total_count": 1, "+1": 1, "-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]);