issue_comments
8,883 rows where user = 9599 sorted by updated_at descending
This data as json, CSV (advanced)
user 1
- simonw · 5,331 ✖
id | html_url | issue_url | node_id | user | created_at | updated_at ▲ | author_association | body | reactions | issue | performed_via_github_app |
---|---|---|---|---|---|---|---|---|---|---|---|
894606843 | https://github.com/simonw/datasette/issues/1421#issuecomment-894606843 | https://api.github.com/repos/simonw/datasette/issues/1421 | IC_kwDOBm6k_c41Up37 | simonw 9599 | 2021-08-07T05:17:12Z | 2021-08-07T05:17:12Z | OWNER | Marking this blocked because I don't have a way around the needing-a-SQLite-SQL-parser problem at the moment. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"Query parameters" form shows wrong input fields if query contains "03:31" style times 959999095 | |
894606796 | https://github.com/simonw/datasette/issues/1421#issuecomment-894606796 | https://api.github.com/repos/simonw/datasette/issues/1421 | IC_kwDOBm6k_c41Up3M | simonw 9599 | 2021-08-07T05:16:39Z | 2021-08-07T05:16:39Z | OWNER | Urgh, yeah I've seen this one before. Fixing it pretty much requires writing a full SQLite SQL syntax parser in Python, which is frustratingly complicated for solving this issue! You can work around this for a canned query by using the optional |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"Query parameters" form shows wrong input fields if query contains "03:31" style times 959999095 | |
894589140 | https://github.com/simonw/datasette/issues/1422#issuecomment-894589140 | https://api.github.com/repos/simonw/datasette/issues/1422 | IC_kwDOBm6k_c41UljU | simonw 9599 | 2021-08-07T01:58:16Z | 2021-08-07T01:58:24Z | OWNER | Also need to consider this hidden field - it should pass the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Ability to default to hiding the SQL for a canned query 961367843 | |
894454644 | https://github.com/simonw/datasette/issues/1423#issuecomment-894454644 | https://api.github.com/repos/simonw/datasette/issues/1423 | IC_kwDOBm6k_c41UEt0 | simonw 9599 | 2021-08-06T18:52:49Z | 2021-08-06T18:52:49Z | OWNER | This means that the counts would be unavailable to users who cannot see tooltips (e.g. mobile users) on pages that did not have any facets that broke the 30 limit and hence displayed that "..." link. I think I'm OK with that, for the moment. May revisit in the future. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Show count of facet values if ?_facet_size=max 962391325 | |
894454087 | https://github.com/simonw/datasette/issues/1423#issuecomment-894454087 | https://api.github.com/repos/simonw/datasette/issues/1423 | IC_kwDOBm6k_c41UElH | simonw 9599 | 2021-08-06T18:51:42Z | 2021-08-06T18:51:42Z | OWNER | The invisible tooltip could say "Showing 30 items, more available" (helping save you from counting up to 20 if you know about the secret feature). The numbers could then be fully displayed on the "..." page. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Show count of facet values if ?_facet_size=max 962391325 | |
894453520 | https://github.com/simonw/datasette/issues/1423#issuecomment-894453520 | https://api.github.com/repos/simonw/datasette/issues/1423 | IC_kwDOBm6k_c41UEcQ | simonw 9599 | 2021-08-06T18:50:40Z | 2021-08-06T18:50:40Z | OWNER | Point of confusion: if only 30 options are shown, but there's a So the original idea of showing the counts only if |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Show count of facet values if ?_facet_size=max 962391325 | |
894452990 | https://github.com/simonw/datasette/issues/1423#issuecomment-894452990 | https://api.github.com/repos/simonw/datasette/issues/1423 | IC_kwDOBm6k_c41UET- | simonw 9599 | 2021-08-06T18:49:37Z | 2021-08-06T18:49:37Z | OWNER | Could display them always, like this: That's with |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Show count of facet values if ?_facet_size=max 962391325 | |
893996604 | https://github.com/simonw/datasette/issues/1423#issuecomment-893996604 | https://api.github.com/repos/simonw/datasette/issues/1423 | IC_kwDOBm6k_c41SU48 | simonw 9599 | 2021-08-06T04:43:07Z | 2021-08-06T04:43:37Z | OWNER | Problem: on a page which doesn't have quite enough facet values to trigger the display of the "..." link that links to So maybe the count should always be shown, perhaps as a non-bold light colored number? I could even hide it in a non-discoverable tooltip. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Show count of facet values if ?_facet_size=max 962391325 | |
893133496 | https://github.com/simonw/datasette/issues/1419#issuecomment-893133496 | https://api.github.com/repos/simonw/datasette/issues/1419 | IC_kwDOBm6k_c41PCK4 | simonw 9599 | 2021-08-05T03:22:44Z | 2021-08-05T03:22:44Z | OWNER | I ran into this exact same problem today! I only just learned how to use filter on aggregates: https://til.simonwillison.net/sqlite/sqlite-aggregate-filter-clauses A workaround I used is to add this to the deploy command:
This will install the https://pypi.org/project/pysqlite3-binary for package which bundles a more recent SQLite version. |
{ "total_count": 2, "+1": 2, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`publish cloudrun` should deploy a more recent SQLite version 959710008 | |
893131703 | https://github.com/simonw/datasette/issues/1422#issuecomment-893131703 | https://api.github.com/repos/simonw/datasette/issues/1422 | IC_kwDOBm6k_c41PBu3 | simonw 9599 | 2021-08-05T03:16:46Z | 2021-08-05T03:16:46Z | OWNER | The logic for this is a little bit fiddly, due to the need to switch to using
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Ability to default to hiding the SQL for a canned query 961367843 | |
893122356 | https://github.com/simonw/datasette/issues/1422#issuecomment-893122356 | https://api.github.com/repos/simonw/datasette/issues/1422 | IC_kwDOBm6k_c41O_c0 | simonw 9599 | 2021-08-05T02:52:31Z | 2021-08-05T02:52:44Z | OWNER | If you do this it should still be possible to view the SQL - which means we need a new parameter. I propose I think the configuration should use |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Ability to default to hiding the SQL for a canned query 961367843 | |
893079520 | https://github.com/simonw/datasette/issues/1420#issuecomment-893079520 | https://api.github.com/repos/simonw/datasette/issues/1420 | IC_kwDOBm6k_c41O0_g | simonw 9599 | 2021-08-05T00:54:59Z | 2021-08-05T00:54:59Z | OWNER | Just saw this error:
Which is weird because I managed to run this successfully the other day. Maybe a region difference thing? |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`datasette publish cloudrun --cpu X` option 959898166 | |
892988609 | https://github.com/simonw/sqlite-utils/issues/308#issuecomment-892988609 | https://api.github.com/repos/simonw/sqlite-utils/issues/308 | IC_kwDOCGYnMM41OezB | simonw 9599 | 2021-08-04T21:30:59Z | 2021-08-04T21:30:59Z | OWNER | OK, this works great as a proof-of-concept (though maybe I should remove the output from the cells so people have to run it themselves in the Binder environment?) Next challenge: how extensive should it be? What features should I cover? Should I do a basic tutorial and then several advanced tutorials? |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Add an interactive tutorial as a Jupyter notebook 961008507 | |
892957281 | https://github.com/simonw/sqlite-utils/issues/308#issuecomment-892957281 | https://api.github.com/repos/simonw/sqlite-utils/issues/308 | IC_kwDOCGYnMM41OXJh | simonw 9599 | 2021-08-04T20:37:00Z | 2021-08-04T20:37:00Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Add an interactive tutorial as a Jupyter notebook 961008507 | ||
892376353 | https://github.com/simonw/datasette/issues/1420#issuecomment-892376353 | https://api.github.com/repos/simonw/datasette/issues/1420 | IC_kwDOBm6k_c41MJUh | simonw 9599 | 2021-08-04T05:33:12Z | 2021-08-04T05:33:12Z | OWNER | In the Cloud Run console (before I deleted these services) when I click "Edit and deploy new revision" I see this for the default one: And this for the big one: |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`datasette publish cloudrun --cpu X` option 959898166 | |
892374253 | https://github.com/simonw/datasette/issues/1420#issuecomment-892374253 | https://api.github.com/repos/simonw/datasette/issues/1420 | IC_kwDOBm6k_c41MIzt | simonw 9599 | 2021-08-04T05:27:21Z | 2021-08-04T05:29:59Z | OWNER | I'll delete these services shortly afterwards. Right now: https://fixtures-over-provisioned-issue-1420-j7hipcg4aq-uc.a.run.app/-/psutil (deployed with ... psutil.cpu_times(True) scputimes(user=0.0, nice=0.0, system=0.0, idle=0.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0) scputimes(user=0.0, nice=0.0, system=0.0, idle=0.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0) scputimes(user=0.0, nice=0.0, system=0.0, idle=0.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0) scputimes(user=0.0, nice=0.0, system=0.0, idle=0.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0) psutil.virtual_memory()
svmem(total=2147483648, available=2092531712, percent=2.6, used=33103872, free=2092531712, active=44130304, inactive=10792960, buffers=0, cached=21848064, shared=262144, slab=0)
... psutil.cpu_times(True) scputimes(user=0.0, nice=0.0, system=0.0, idle=0.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0) scputimes(user=0.0, nice=0.0, system=0.0, idle=0.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0) psutil.virtual_memory() svmem(total=2147483648, available=2091188224, percent=2.6, used=40071168, free=2091188224, active=41586688, inactive=7983104, buffers=0, cached=16224256, shared=262144, slab=0) ``` These numbers are different enough that I assume this works as advertised. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`datasette publish cloudrun --cpu X` option 959898166 | |
892372509 | https://github.com/simonw/datasette/issues/1420#issuecomment-892372509 | https://api.github.com/repos/simonw/datasette/issues/1420 | IC_kwDOBm6k_c41MIYd | simonw 9599 | 2021-08-04T05:22:29Z | 2021-08-04T05:22:29Z | OWNER | Testing this manually with:
And for comparison:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`datasette publish cloudrun --cpu X` option 959898166 | |
892365639 | https://github.com/simonw/datasette/issues/1420#issuecomment-892365639 | https://api.github.com/repos/simonw/datasette/issues/1420 | IC_kwDOBm6k_c41MGtH | simonw 9599 | 2021-08-04T05:05:07Z | 2021-08-04T05:05:07Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`datasette publish cloudrun --cpu X` option 959898166 | ||
891984359 | https://github.com/simonw/datasette/pull/1418#issuecomment-891984359 | https://api.github.com/repos/simonw/datasette/issues/1418 | IC_kwDOBm6k_c41Kpnn | simonw 9599 | 2021-08-03T16:21:56Z | 2021-08-03T16:21:56Z | OWNER | Failed with:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Spelling corrections plus CI job for codespell 959284434 | |
891979858 | https://github.com/simonw/datasette/issues/1417#issuecomment-891979858 | https://api.github.com/repos/simonw/datasette/issues/1417 | IC_kwDOBm6k_c41KohS | simonw 9599 | 2021-08-03T16:15:30Z | 2021-08-03T16:15:30Z | OWNER | Docs: https://pypi.org/project/codespell/ There's a |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Use codespell in CI to spot spelling errors 959278472 | |
891380382 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-891380382 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41IWKe | simonw 9599 | 2021-08-02T22:39:46Z | 2021-08-02T22:39:46Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | ||
891359751 | https://github.com/simonw/sqlite-utils/issues/298#issuecomment-891359751 | https://api.github.com/repos/simonw/sqlite-utils/issues/298 | IC_kwDOCGYnMM41IRIH | simonw 9599 | 2021-08-02T21:55:16Z | 2021-08-02T21:55:16Z | OWNER | This is a feature already! You can do this:
See https://sqlite-utils.datasette.io/en/stable/cli.html#inserting-newline-delimited-json |
{ "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Read lines with JSON object 951581763 | |
891356906 | https://github.com/simonw/sqlite-utils/issues/300#issuecomment-891356906 | https://api.github.com/repos/simonw/sqlite-utils/issues/300 | IC_kwDOCGYnMM41IQbq | simonw 9599 | 2021-08-02T21:49:10Z | 2021-08-02T21:49:10Z | OWNER | I'm nervous to set this by default in the Python library because it's a global setting, so I can't isolate it to just code that is being called by a The new I like the suggestion to include this in the documentation. I'll do that! |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Returning underlying cause for User Defined Functions 956832836 | |
891352587 | https://github.com/simonw/sqlite-utils/issues/306#issuecomment-891352587 | https://api.github.com/repos/simonw/sqlite-utils/issues/306 | IC_kwDOCGYnMM41IPYL | simonw 9599 | 2021-08-02T21:39:34Z | 2021-08-02T21:39:34Z | OWNER | This older TIL would have saved me some time! https://til.simonwillison.net/sphinx/sphinx-ext-extlinks |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Configure sphinx.ext.extlinks for issues 958516743 | |
891352132 | https://github.com/simonw/datasette/issues/1227#issuecomment-891352132 | https://api.github.com/repos/simonw/datasette/issues/1227 | IC_kwDOBm6k_c41IPRE | simonw 9599 | 2021-08-02T21:38:39Z | 2021-08-02T21:38:39Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Configure sphinx.ext.extlinks for issues 810394616 | ||
891352073 | https://github.com/simonw/sqlite-utils/issues/306#issuecomment-891352073 | https://api.github.com/repos/simonw/sqlite-utils/issues/306 | IC_kwDOCGYnMM41IPQJ | simonw 9599 | 2021-08-02T21:38:32Z | 2021-08-02T21:38:32Z | OWNER | TIL about this: https://til.simonwillison.net/vscode/vs-code-regular-expressions |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Configure sphinx.ext.extlinks for issues 958516743 | |
891257730 | https://github.com/simonw/sqlite-utils/issues/304#issuecomment-891257730 | https://api.github.com/repos/simonw/sqlite-utils/issues/304 | IC_kwDOCGYnMM41H4OC | simonw 9599 | 2021-08-02T19:00:00Z | 2021-08-02T19:00:00Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`table.convert(..., where=)` and `sqlite-utils convert ... --where=` 957731178 | ||
890713185 | https://github.com/simonw/sqlite-utils/issues/305#issuecomment-890713185 | https://api.github.com/repos/simonw/sqlite-utils/issues/305 | IC_kwDOCGYnMM41FzRh | simonw 9599 | 2021-08-02T04:53:53Z | 2021-08-02T04:53:53Z | OWNER | I'm going to rename |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Python: need a way to execute a count with an extra where clause 957741820 | |
890711924 | https://github.com/simonw/sqlite-utils/issues/304#issuecomment-890711924 | https://api.github.com/repos/simonw/sqlite-utils/issues/304 | IC_kwDOCGYnMM41Fy90 | simonw 9599 | 2021-08-02T04:50:13Z | 2021-08-02T04:50:13Z | OWNER | For the Python function, the args will be |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`table.convert(..., where=)` and `sqlite-utils convert ... --where=` 957731178 | |
890704624 | https://github.com/simonw/sqlite-utils/issues/304#issuecomment-890704624 | https://api.github.com/repos/simonw/sqlite-utils/issues/304 | IC_kwDOCGYnMM41FxLw | simonw 9599 | 2021-08-02T04:28:42Z | 2021-08-02T04:28:42Z | OWNER | For the command-line version this can duplicate the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`table.convert(..., where=)` and `sqlite-utils convert ... --where=` 957731178 | |
890553783 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890553783 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41FMW3 | simonw 9599 | 2021-08-01T16:59:09Z | 2021-08-01T16:59:09Z | OWNER | I'm going with |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890552827 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890552827 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41FMH7 | simonw 9599 | 2021-08-01T16:52:00Z | 2021-08-01T16:52:00Z | OWNER | I'll finish the work on this in a PR. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890548009 | https://github.com/simonw/sqlite-utils/issues/302#issuecomment-890548009 | https://api.github.com/repos/simonw/sqlite-utils/issues/302 | IC_kwDOCGYnMM41FK8p | simonw 9599 | 2021-08-01T16:18:13Z | 2021-08-01T16:18:13Z | OWNER | Basic API design:
You can pass a list of columns instead of a single game column string to apply it to multiple columns. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Python library version of `sqlite-utils convert` 957529248 | |
890448623 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890448623 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41Eyrv | simonw 9599 | 2021-08-01T04:33:30Z | 2021-08-01T04:33:30Z | OWNER | I've started an implementation in the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890448119 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890448119 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41Eyj3 | simonw 9599 | 2021-08-01T04:28:05Z | 2021-08-01T04:30:28Z | OWNER | In which case I think |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890447102 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890447102 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41EyT- | simonw 9599 | 2021-08-01T04:20:18Z | 2021-08-01T04:29:26Z | OWNER | I could stick them in a |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890448190 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890448190 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41Eyk- | simonw 9599 | 2021-08-01T04:28:49Z | 2021-08-01T04:28:49Z | OWNER | Would make sense to accept code from standard input too:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890446808 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890446808 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41EyPY | simonw 9599 | 2021-08-01T04:18:18Z | 2021-08-01T04:28:18Z | OWNER | Or.... how about making the Then you could do something like this:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890446943 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890446943 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41EyRf | simonw 9599 | 2021-08-01T04:19:09Z | 2021-08-01T04:19:09Z | OWNER | That's a pretty neat fix, though it's a bit more challenging on the documentation front - maybe the help text for |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890446506 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890446506 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41EyKq | simonw 9599 | 2021-08-01T04:16:36Z | 2021-08-01T04:16:36Z | OWNER | Back to the design board then. One way to handle this would be the long-form:
An ugly solution would be to make all four of those options available on |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890446166 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890446166 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41EyFW | simonw 9599 | 2021-08-01T04:14:26Z | 2021-08-01T04:14:26Z | OWNER | Problem with the For
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890443079 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-890443079 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM41ExVH | simonw 9599 | 2021-08-01T03:46:43Z | 2021-08-01T03:46:43Z | OWNER | Note that there's already a concept of
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
890441844 | https://github.com/simonw/datasette/issues/1411#issuecomment-890441844 | https://api.github.com/repos/simonw/datasette/issues/1411 | IC_kwDOBm6k_c41ExB0 | simonw 9599 | 2021-08-01T03:27:30Z | 2021-08-01T03:27:30Z | OWNER | Confirmed: https://latest.datasette.io/fixtures/neighborhood_search?text=cork&_hide_sql=1 no longer exhibits the bug. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Canned query ?sql= is pointlessly echoed in query string starting from hidden mode 957345476 | |
890400425 | https://github.com/simonw/datasette/issues/1409#issuecomment-890400425 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41Em6p | simonw 9599 | 2021-07-31T20:25:16Z | 2021-07-31T20:26:25Z | OWNER | If I was prone to over-thinking (which I am) I'd note that So maybe there's a future task where I introduce those as both permissions and metadata If I was going to do that I should get it in before Datasette 1.0. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890400121 | https://github.com/simonw/datasette/issues/1409#issuecomment-890400121 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41Em15 | simonw 9599 | 2021-07-31T20:22:21Z | 2021-07-31T20:23:34Z | OWNER | I think Plus |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890400059 | https://github.com/simonw/datasette/issues/1409#issuecomment-890400059 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41Em07 | simonw 9599 | 2021-07-31T20:21:51Z | 2021-07-31T20:21:51Z | OWNER | One of these two options:
Existing settings from https://docs.datasette.io/en/0.58.1/settings.html with similar names that I need to be consistent with:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890399806 | https://github.com/simonw/datasette/issues/1409#issuecomment-890399806 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41Emw- | simonw 9599 | 2021-07-31T20:18:46Z | 2021-07-31T20:18:46Z | OWNER | My rationale for removing it: https://github.com/simonw/datasette/issues/813#issuecomment-640916290
This is true. The So I definitely need to pick a different name from the setting. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890397753 | https://github.com/simonw/datasette/issues/1409#issuecomment-890397753 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41EmQ5 | simonw 9599 | 2021-07-31T19:57:56Z | 2021-07-31T19:57:56Z | OWNER | I think the correct solution is for the default permissions logic to take the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890397652 | https://github.com/simonw/datasette/issues/1409#issuecomment-890397652 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41EmPU | simonw 9599 | 2021-07-31T19:56:48Z | 2021-07-31T19:56:48Z | OWNER | The other option would be to use the setting to pick the The problem with that is that there are actually a few different places which perform that check, so changing all of them raises the risk of missing one in the future: |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890397261 | https://github.com/simonw/datasette/issues/1409#issuecomment-890397261 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41EmJN | simonw 9599 | 2021-07-31T19:52:25Z | 2021-07-31T19:52:25Z | OWNER | I think I can make this modification by teaching the default permissions code here to take the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890397169 | https://github.com/simonw/datasette/issues/1409#issuecomment-890397169 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41EmHx | simonw 9599 | 2021-07-31T19:51:35Z | 2021-07-31T19:51:35Z | OWNER | I'm going to stick with |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890397124 | https://github.com/simonw/datasette/issues/1409#issuecomment-890397124 | https://api.github.com/repos/simonw/datasette/issues/1409 | IC_kwDOBm6k_c41EmHE | simonw 9599 | 2021-07-31T19:51:10Z | 2021-07-31T19:51:10Z | OWNER | I think I may like
The existence of three |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`default_allow_sql` setting (a re-imagining of the old `allow_sql` setting) 957310278 | |
890390845 | https://github.com/simonw/datasette/issues/1408#issuecomment-890390845 | https://api.github.com/repos/simonw/datasette/issues/1408 | IC_kwDOBm6k_c41Ekk9 | simonw 9599 | 2021-07-31T19:00:32Z | 2021-07-31T19:00:32Z | OWNER | When I revisit this I can also look at dropping the https://github.com/simonw/datasette/blob/ff253f5242e4b0b5d85d29d38b8461feb5ea997a/pytest.ini#L9-L10 |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Review places in codebase that use os.chdir(), in particularly relating to tests 957302085 | |
890390495 | https://github.com/simonw/datasette/issues/1408#issuecomment-890390495 | https://api.github.com/repos/simonw/datasette/issues/1408 | IC_kwDOBm6k_c41Ekff | simonw 9599 | 2021-07-31T18:57:39Z | 2021-07-31T18:57:39Z | OWNER | Opening this issue as an optional follow-up to the work I did in #1406. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Review places in codebase that use os.chdir(), in particularly relating to tests 957302085 | |
890390342 | https://github.com/simonw/datasette/issues/1406#issuecomment-890390342 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41EkdG | simonw 9599 | 2021-07-31T18:56:35Z | 2021-07-31T18:56:35Z | OWNER | But... I've lost enough time to this already, and removing |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
890390198 | https://github.com/simonw/datasette/issues/1406#issuecomment-890390198 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41Eka2 | simonw 9599 | 2021-07-31T18:55:33Z | 2021-07-31T18:55:33Z | OWNER | To clarify: the core problem here is that an error is thrown any time you call
Maybe there's a larger problem here that I play a bit fast and loose with |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
890388656 | https://github.com/simonw/datasette/issues/1407#issuecomment-890388656 | https://api.github.com/repos/simonw/datasette/issues/1407 | IC_kwDOBm6k_c41EkCw | simonw 9599 | 2021-07-31T18:42:41Z | 2021-07-31T18:42:41Z | OWNER | I'll try |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
OSError: AF_UNIX path too long in ds_unix_domain_socket_server 957298475 | |
890388200 | https://github.com/simonw/datasette/issues/1407#issuecomment-890388200 | https://api.github.com/repos/simonw/datasette/issues/1407 | IC_kwDOBm6k_c41Ej7o | simonw 9599 | 2021-07-31T18:38:41Z | 2021-07-31T18:38:41Z | OWNER | The
I think what's happening here is that So for this code to work with |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
OSError: AF_UNIX path too long in ds_unix_domain_socket_server 957298475 | |
890259755 | https://github.com/simonw/datasette/issues/1406#issuecomment-890259755 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41EEkr | simonw 9599 | 2021-07-31T00:04:54Z | 2021-07-31T00:04:54Z | OWNER | STILL failing. I'm going to try removing all instances of |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
889555977 | https://github.com/simonw/datasette/issues/1406#issuecomment-889555977 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41BYwJ | simonw 9599 | 2021-07-30T01:06:57Z | 2021-07-30T01:06:57Z | OWNER | Looking at the source code in Click for
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
889553052 | https://github.com/simonw/datasette/issues/1406#issuecomment-889553052 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41BYCc | simonw 9599 | 2021-07-30T00:58:43Z | 2021-07-30T00:58:43Z | OWNER | Tests are still failing in the job that calculates coverage. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
889550391 | https://github.com/simonw/datasette/issues/1406#issuecomment-889550391 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41BXY3 | simonw 9599 | 2021-07-30T00:49:31Z | 2021-07-30T00:49:31Z | OWNER | That fixed it. My hunch is that Click's |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
889548536 | https://github.com/simonw/datasette/issues/1406#issuecomment-889548536 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41BW74 | simonw 9599 | 2021-07-30T00:43:47Z | 2021-07-30T00:43:47Z | OWNER | Still couldn't replicate on my laptop. On a hunch, I'm going to add |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
889547142 | https://github.com/simonw/datasette/issues/1406#issuecomment-889547142 | https://api.github.com/repos/simonw/datasette/issues/1406 | IC_kwDOBm6k_c41BWmG | simonw 9599 | 2021-07-30T00:39:49Z | 2021-07-30T00:39:49Z | OWNER | It happens in CI but not on my laptop. I think I need to run the tests on my laptop like this: https://github.com/simonw/datasette/blob/121e10c29c5b412fddf0326939f1fe46c3ad9d4a/.github/workflows/test.yml#L27-L30 |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Tests failing with FileNotFoundError in runner.isolated_filesystem 956303470 | |
889539227 | https://github.com/simonw/datasette/issues/1241#issuecomment-889539227 | https://api.github.com/repos/simonw/datasette/issues/1241 | IC_kwDOBm6k_c41BUqb | simonw 9599 | 2021-07-30T00:15:26Z | 2021-07-30T00:15:26Z | OWNER | One possible treatment: ```html <style> a.action-button { display: inline-block; border: 1.5px solid #666; border-radius: 0.5em; background-color: #ffffff; color: #666; padding: 0.1em 0.8em; text-decoration: none; margin-right: 0.3em; font-size: 0.85em; } </style>{% if query.sql and allow_execute_sql %} View and edit SQL {% endif %} Copy and share link ``` |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Share button for copying current URL 814595021 | |
889525741 | https://github.com/simonw/datasette/issues/1405#issuecomment-889525741 | https://api.github.com/repos/simonw/datasette/issues/1405 | IC_kwDOBm6k_c41BRXt | simonw 9599 | 2021-07-29T23:33:30Z | 2021-07-29T23:33:30Z | OWNER | New documentation section for |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
utils.parse_metadata() should be a documented internal function 955316250 | |
888694261 | https://github.com/simonw/datasette/issues/1405#issuecomment-888694261 | https://api.github.com/repos/simonw/datasette/issues/1405 | IC_kwDOBm6k_c40-GX1 | simonw 9599 | 2021-07-28T23:52:21Z | 2021-07-28T23:52:21Z | OWNER | Document that it can raise a |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
utils.parse_metadata() should be a documented internal function 955316250 | |
888694144 | https://github.com/simonw/datasette/issues/1405#issuecomment-888694144 | https://api.github.com/repos/simonw/datasette/issues/1405 | IC_kwDOBm6k_c40-GWA | simonw 9599 | 2021-07-28T23:51:59Z | 2021-07-28T23:51:59Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
utils.parse_metadata() should be a documented internal function 955316250 | ||
887095569 | https://github.com/simonw/datasette/issues/1404#issuecomment-887095569 | https://api.github.com/repos/simonw/datasette/issues/1404 | IC_kwDOBm6k_c404AER | simonw 9599 | 2021-07-26T23:27:07Z | 2021-07-26T23:27:07Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
`register_routes()` hook should take `datasette` argument 953352015 | ||
886969541 | https://github.com/simonw/datasette/issues/1402#issuecomment-886969541 | https://api.github.com/repos/simonw/datasette/issues/1402 | IC_kwDOBm6k_c403hTF | simonw 9599 | 2021-07-26T19:31:40Z | 2021-07-26T19:31:40Z | OWNER | Datasette could do a pretty good job of this by default, using I could also provide a mechanism to customize these - in particular to add images of some sort. It feels like something that should tie in to the metadata mechanism. |
{ "total_count": 1, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 1, "rocket": 0, "eyes": 0 } |
feature request: social meta tags 951185411 | |
886968648 | https://github.com/simonw/datasette/issues/1402#issuecomment-886968648 | https://api.github.com/repos/simonw/datasette/issues/1402 | IC_kwDOBm6k_c403hFI | simonw 9599 | 2021-07-26T19:30:14Z | 2021-07-26T19:30:14Z | OWNER | I really like this idea. I was thinking it might make a good plugin, but there's not a great mechanism for plugins to inject extra |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
feature request: social meta tags 951185411 | |
886241674 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/3#issuecomment-886241674 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/3 | IC_kwDODtX3eM400vmK | simonw 9599 | 2021-07-25T18:41:17Z | 2021-07-25T18:41:17Z | MEMBER | Got a TIL out of this: https://til.simonwillison.net/jq/extracting-objects-recursively |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Use HN algolia endpoint to retrieve trees 952189173 | |
886237834 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/3#issuecomment-886237834 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/3 | IC_kwDODtX3eM400uqK | simonw 9599 | 2021-07-25T18:05:32Z | 2021-07-25T18:05:32Z | MEMBER | If you hit the endpoint for a comment that's part of a thread you get that comment and its recursive children: https://hn.algolia.com/api/v1/items/27941552 You can tell that it's not the top-level because the
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Use HN algolia endpoint to retrieve trees 952189173 | |
886142671 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/3#issuecomment-886142671 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/3 | IC_kwDODtX3eM400XbP | simonw 9599 | 2021-07-25T03:51:05Z | 2021-07-25T03:51:05Z | MEMBER | Prototype:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Use HN algolia endpoint to retrieve trees 952189173 | |
886140431 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/2#issuecomment-886140431 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/2 | IC_kwDODtX3eM400W4P | simonw 9599 | 2021-07-25T03:12:57Z | 2021-07-25T03:12:57Z | MEMBER | I'm going to build a general-purpose |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Command for fetching Hacker News threads from the search API 952179830 | |
886136224 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/2#issuecomment-886136224 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/2 | IC_kwDODtX3eM400V2g | simonw 9599 | 2021-07-25T02:08:29Z | 2021-07-25T02:08:29Z | MEMBER | Prototype:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Command for fetching Hacker News threads from the search API 952179830 | |
886135922 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/2#issuecomment-886135922 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/2 | IC_kwDODtX3eM400Vxy | simonw 9599 | 2021-07-25T02:06:20Z | 2021-07-25T02:06:20Z | MEMBER | https://hn.algolia.com/api/v1/search_by_date?query=simonwillison.net&restrictSearchableAttributes=url looks like it does what I want. https://hn.algolia.com/api/v1/search_by_date?query=simonwillison.net&restrictSearchableAttributes=url&hitsPerPage=1000 - returns 1000 at once. Otherwise you have to paginate using https://www.algolia.com/doc/api-reference/api-parameters/hitsPerPage/ says 1000 is the maximum. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Command for fetching Hacker News threads from the search API 952179830 | |
886135562 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/2#issuecomment-886135562 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/2 | IC_kwDODtX3eM400VsK | simonw 9599 | 2021-07-25T02:01:11Z | 2021-07-25T02:01:11Z | MEMBER | That page doesn't have an API but does look easy to scrape. The other option here is the HN Search API powered by Algolia, documented at https://hn.algolia.com/api |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Command for fetching Hacker News threads from the search API 952179830 | |
886122696 | https://github.com/simonw/sqlite-utils/issues/251#issuecomment-886122696 | https://api.github.com/repos/simonw/sqlite-utils/issues/251 | IC_kwDOCGYnMM400SjI | simonw 9599 | 2021-07-24T23:21:32Z | 2021-07-24T23:21:32Z | OWNER |
This is a bit verbose - and having added New idea: ditch the sub-sub-commands and move the
or:
or |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"sqlite-utils convert" command to replace the separate "sqlite-transform" tool 841377702 | |
886117120 | https://github.com/simonw/sqlite-utils/issues/299#issuecomment-886117120 | https://api.github.com/repos/simonw/sqlite-utils/issues/299 | IC_kwDOCGYnMM400RMA | simonw 9599 | 2021-07-24T22:12:01Z | 2021-07-24T22:12:01Z | OWNER | Documentation here: https://sqlite-utils.datasette.io/en/latest/cli.html#showing-the-schema |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Ability to see just specific table schemas with `sqlite-utils schema` 952154468 | |
882138084 | https://github.com/simonw/datasette/issues/123#issuecomment-882138084 | https://api.github.com/repos/simonw/datasette/issues/123 | IC_kwDOBm6k_c40lFvk | simonw 9599 | 2021-07-19T00:04:31Z | 2021-07-19T00:04:31Z | OWNER | I've been thinking more about this one today too. An extension of this (touched on in #417, Datasette Library) would be to support pointing Datasette at a directory and having it automatically load any CSV files it finds anywhere in that folder or its descendants - either loading them fully, or providing a UI that allows users to select a file to open it in Datasette. For larger files I think the right thing to do is import them into an on-disk SQLite database, which is limited only by available disk space. For smaller files loading them into an in-memory database should work fine. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Datasette serve should accept paths/URLs to CSVs and other file formats 275125561 | |
882052852 | https://github.com/simonw/sqlite-utils/issues/297#issuecomment-882052852 | https://api.github.com/repos/simonw/sqlite-utils/issues/297 | IC_kwDOCGYnMM40kw70 | simonw 9599 | 2021-07-18T12:59:20Z | 2021-07-18T12:59:20Z | OWNER | I'm not too worried about |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Option for importing CSV data using the SQLite .import mechanism 944846776 | |
881932880 | https://github.com/simonw/datasette/issues/1199#issuecomment-881932880 | https://api.github.com/repos/simonw/datasette/issues/1199 | IC_kwDOBm6k_c40kTpQ | simonw 9599 | 2021-07-17T17:39:17Z | 2021-07-17T17:39:17Z | OWNER | I asked about optimizing performance on the SQLite forum and this came up as a suggestion: https://sqlite.org/forum/forumpost/9a6b9ae8e2048c8b?t=c I can start by trying this:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Experiment with PRAGMA mmap_size=N 792652391 | |
881686662 | https://github.com/simonw/datasette/issues/1396#issuecomment-881686662 | https://api.github.com/repos/simonw/datasette/issues/1396 | IC_kwDOBm6k_c40jXiG | simonw 9599 | 2021-07-16T20:02:44Z | 2021-07-16T20:02:44Z | OWNER | Confirmed fixed: 0.58.1 was successfully published to Docker Hub in https://github.com/simonw/datasette/runs/3089447346 and the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"invalid reference format" publishing Docker image 944903881 | |
881677620 | https://github.com/simonw/datasette/issues/1231#issuecomment-881677620 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40jVU0 | simonw 9599 | 2021-07-16T19:44:12Z | 2021-07-16T19:44:12Z | OWNER | That fixed the race condition in the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881674857 | https://github.com/simonw/datasette/issues/1231#issuecomment-881674857 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40jUpp | simonw 9599 | 2021-07-16T19:38:39Z | 2021-07-16T19:38:39Z | OWNER | I can't replicate the race condition locally with or without this patch. I'm going to push the commit and then test the CI run from |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881671706 | https://github.com/simonw/datasette/issues/1231#issuecomment-881671706 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40jT4a | simonw 9599 | 2021-07-16T19:32:05Z | 2021-07-16T19:32:05Z | OWNER | The test suite passes with that change. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881668759 | https://github.com/simonw/datasette/issues/1231#issuecomment-881668759 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40jTKX | simonw 9599 | 2021-07-16T19:27:46Z | 2021-07-16T19:27:46Z | OWNER | Second attempt at this: ```diff diff --git a/datasette/app.py b/datasette/app.py index 5976d8b..5f348cb 100644 --- a/datasette/app.py +++ b/datasette/app.py @@ -224,6 +224,7 @@ class Datasette: self.inspect_data = inspect_data self.immutables = set(immutables or []) self.databases = collections.OrderedDict() + self._refresh_schemas_lock = asyncio.Lock() self.crossdb = crossdb if memory or crossdb or not self.files: self.add_database(Database(self, is_memory=True), name="_memory") @@ -332,6 +333,12 @@ class Datasette: self.client = DatasetteClient(self)
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881665383 | https://github.com/simonw/datasette/issues/1231#issuecomment-881665383 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40jSVn | simonw 9599 | 2021-07-16T19:21:35Z | 2021-07-16T19:21:35Z | OWNER | https://stackoverflow.com/a/25799871/6083 has a good example of using ```python stuff_lock = asyncio.Lock() async def get_stuff(url): async with stuff_lock: if url in cache: return cache[url] stuff = await aiohttp.request('GET', url) cache[url] = stuff return stuff ``` |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881664408 | https://github.com/simonw/datasette/issues/1231#issuecomment-881664408 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40jSGY | simonw 9599 | 2021-07-16T19:19:35Z | 2021-07-16T19:19:35Z | OWNER | The only place that calls Ideally only one call to |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881663968 | https://github.com/simonw/datasette/issues/1231#issuecomment-881663968 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40jR_g | simonw 9599 | 2021-07-16T19:18:42Z | 2021-07-16T19:18:42Z | OWNER | The race condition happens inside this method - initially with the call to |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881204782 | https://github.com/simonw/datasette/issues/1231#issuecomment-881204782 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40hh4u | simonw 9599 | 2021-07-16T06:14:12Z | 2021-07-16T06:14:12Z | OWNER | Here's the traceback I got from ``` tests/test_utils.py . [100%] =================================== FAILURES =================================== ____ testgraphql_examples[path0] _____ ds = <datasette.app.Datasette object at 0x7f6b8b6f8fd0> path = PosixPath('/home/runner/work/datasette-graphql/datasette-graphql/examples/filters.md')
tests/test_graphql.py:142: AssertionError ----------------------------- Captured stderr call ----------------------------- table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists table databases already exists Traceback (most recent call last): File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/app.py", line 1171, in route_path response = await view(request, send) File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/views/base.py", line 151, in view request, **request.scope["url_route"]["kwargs"] File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/views/base.py", line 123, in dispatch_request await self.ds.refresh_schemas() File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/app.py", line 338, in refresh_schemas await init_internal_db(internal_db) File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/utils/internal_db.py", line 16, in init_internal_db block=True, File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/database.py", line 102, in execute_write return await self.execute_write_fn(_inner, block=block) File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/database.py", line 118, in execute_write_fn raise result File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/database.py", line 139, in _execute_writes result = task.fn(conn) File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/datasette/database.py", line 100, in _inner return conn.execute(sql, params or []) sqlite3.OperationalError: table databases already exists ``` |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881204343 | https://github.com/simonw/datasette/issues/1231#issuecomment-881204343 | https://api.github.com/repos/simonw/datasette/issues/1231 | IC_kwDOBm6k_c40hhx3 | simonw 9599 | 2021-07-16T06:13:11Z | 2021-07-16T06:13:11Z | OWNER | This just broke the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Race condition errors in new refresh_schemas() mechanism 811367257 | |
881129149 | https://github.com/simonw/datasette/issues/1394#issuecomment-881129149 | https://api.github.com/repos/simonw/datasette/issues/1394 | IC_kwDOBm6k_c40hPa9 | simonw 9599 | 2021-07-16T02:23:32Z | 2021-07-16T02:23:32Z | OWNER | Wrote about this in the annotated release notes for 0.58: https://simonwillison.net/2021/Jul/16/datasette-058/ |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Big performance boost on faceting: skip the inner order by 944870799 | |
881125124 | https://github.com/simonw/datasette/issues/759#issuecomment-881125124 | https://api.github.com/repos/simonw/datasette/issues/759 | IC_kwDOBm6k_c40hOcE | simonw 9599 | 2021-07-16T02:11:48Z | 2021-07-16T02:11:54Z | OWNER | I added |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
fts search on a column doesn't work anymore due to escape_fts 612673948 | |
880967052 | https://github.com/simonw/datasette/issues/1396#issuecomment-880967052 | https://api.github.com/repos/simonw/datasette/issues/1396 | MDEyOklzc3VlQ29tbWVudDg4MDk2NzA1Mg== | simonw 9599 | 2021-07-15T19:47:25Z | 2021-07-15T19:47:25Z | OWNER | Actually I'm going to close this now and re-open it if the problem occurs again in the future. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"invalid reference format" publishing Docker image 944903881 | |
880900534 | https://github.com/simonw/datasette/issues/1394#issuecomment-880900534 | https://api.github.com/repos/simonw/datasette/issues/1394 | MDEyOklzc3VlQ29tbWVudDg4MDkwMDUzNA== | simonw 9599 | 2021-07-15T17:58:03Z | 2021-07-15T17:58:03Z | OWNER | Started a conversation about this on the SQLite forum: https://sqlite.org/forum/forumpost/2d76f2bcf65d256a?t=h |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Big performance boost on faceting: skip the inner order by 944870799 | |
880374156 | https://github.com/simonw/datasette/issues/1396#issuecomment-880374156 | https://api.github.com/repos/simonw/datasette/issues/1396 | MDEyOklzc3VlQ29tbWVudDg4MDM3NDE1Ng== | simonw 9599 | 2021-07-15T04:03:18Z | 2021-07-15T04:03:18Z | OWNER | I fixed |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"invalid reference format" publishing Docker image 944903881 | |
880372149 | https://github.com/simonw/datasette/issues/1396#issuecomment-880372149 | https://api.github.com/repos/simonw/datasette/issues/1396 | MDEyOklzc3VlQ29tbWVudDg4MDM3MjE0OQ== | simonw 9599 | 2021-07-15T03:56:49Z | 2021-07-15T03:56:49Z | OWNER | I'm going to leave this open until I next successfully publish a new version. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"invalid reference format" publishing Docker image 944903881 | |
880326049 | https://github.com/simonw/datasette/issues/1396#issuecomment-880326049 | https://api.github.com/repos/simonw/datasette/issues/1396 | MDEyOklzc3VlQ29tbWVudDg4MDMyNjA0OQ== | simonw 9599 | 2021-07-15T01:50:05Z | 2021-07-15T01:50:05Z | OWNER | I think I made a mistake in this commit: https://github.com/simonw/datasette/commit/0486303b60ce2784fd2e2ecdbecf304b7d6e6659 It looks like I copied |
{ "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
"invalid reference format" publishing Docker image 944903881 |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [issue_comments] ( [html_url] TEXT, [issue_url] TEXT, [id] INTEGER PRIMARY KEY, [node_id] TEXT, [user] INTEGER REFERENCES [users]([id]), [created_at] TEXT, [updated_at] TEXT, [author_association] TEXT, [body] TEXT, [reactions] TEXT, [issue] INTEGER REFERENCES [issues]([id]) , [performed_via_github_app] TEXT); CREATE INDEX [idx_issue_comments_issue] ON [issue_comments] ([issue]); CREATE INDEX [idx_issue_comments_user] ON [issue_comments] ([user]);
issue >30