issue_comments
9,947 rows sorted by created_at
This data as json, CSV (advanced)
id | html_url | issue_url | node_id | user | created_at ▼ | updated_at | author_association | body | reactions | issue | performed_via_github_app |
---|---|---|---|---|---|---|---|---|---|---|---|
601871579 | https://github.com/dogsheep/twitter-to-sqlite/issues/34#issuecomment-601871579 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/34 | MDEyOklzc3VlQ29tbWVudDYwMTg3MTU3OQ== | simonw 9599 | 2020-03-20T19:20:52Z | 2020-03-20T19:20:52Z | MEMBER | Cause was the redefining of how `upsert()` works in sqlite-utils 2.x. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | IndexError running user-timeline command 585266763 | |
601871930 | https://github.com/dogsheep/twitter-to-sqlite/pull/33#issuecomment-601871930 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/33 | MDEyOklzc3VlQ29tbWVudDYwMTg3MTkzMA== | simonw 9599 | 2020-03-20T19:21:41Z | 2020-03-20T19:21:41Z | MEMBER | Made obsolete by https://github.com/dogsheep/twitter-to-sqlite/commit/d3887d1535c3edd59d3ebf6aea4495bacd82e59b | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Upgrade to sqlite-utils 2.2.1 561469252 | |
601875405 | https://github.com/dogsheep/twitter-to-sqlite/issues/35#issuecomment-601875405 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/35 | MDEyOklzc3VlQ29tbWVudDYwMTg3NTQwNQ== | simonw 9599 | 2020-03-20T19:30:09Z | 2020-03-20T19:32:33Z | MEMBER | I'm going to redesign the command a little. Right now it defaults to fetching the authenticated user's timeline and allows `--screen_name` to be used to fetch for one other user instead. I think the design of `users-lookup` is much better. I'm going to copy that: ``` twitter-to-sqlite user-timeline users.db simonw cleopaws twitter-to-sqlite user-timeline users.db 12497 3166449535 --ids ``` It will also accept `--since` and `--sql` and `--alter` and `--since_id`. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | twitter-to-sqlite user-timeline [screen_names] --sql / --attach 585282212 | |
601875524 | https://github.com/dogsheep/twitter-to-sqlite/issues/35#issuecomment-601875524 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/35 | MDEyOklzc3VlQ29tbWVudDYwMTg3NTUyNA== | simonw 9599 | 2020-03-20T19:30:27Z | 2020-03-20T19:30:27Z | MEMBER | I can give it a snazzier progress bar to, as requested by #10. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | twitter-to-sqlite user-timeline [screen_names] --sql / --attach 585282212 | |
601876051 | https://github.com/dogsheep/twitter-to-sqlite/issues/35#issuecomment-601876051 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/35 | MDEyOklzc3VlQ29tbWVudDYwMTg3NjA1MQ== | simonw 9599 | 2020-03-20T19:31:43Z | 2020-03-20T19:31:43Z | MEMBER | I'm going to keep `--screen_name` working for backwards compatibility. Using `hidden=True` on it should hide it from the help output. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | twitter-to-sqlite user-timeline [screen_names] --sql / --attach 585282212 | |
601890795 | https://github.com/dogsheep/twitter-to-sqlite/issues/35#issuecomment-601890795 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/35 | MDEyOklzc3VlQ29tbWVudDYwMTg5MDc5NQ== | simonw 9599 | 2020-03-20T20:13:08Z | 2020-03-20T20:13:08Z | MEMBER | Needs documentation. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | twitter-to-sqlite user-timeline [screen_names] --sql / --attach 585282212 | |
601892338 | https://github.com/dogsheep/twitter-to-sqlite/issues/35#issuecomment-601892338 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/35 | MDEyOklzc3VlQ29tbWVudDYwMTg5MjMzOA== | simonw 9599 | 2020-03-20T20:17:00Z | 2020-03-20T20:17:00Z | MEMBER | Released as 0.18. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | twitter-to-sqlite user-timeline [screen_names] --sql / --attach 585282212 | |
601939656 | https://github.com/dogsheep/twitter-to-sqlite/issues/38#issuecomment-601939656 | https://api.github.com/repos/dogsheep/twitter-to-sqlite/issues/38 | MDEyOklzc3VlQ29tbWVudDYwMTkzOTY1Ng== | simonw 9599 | 2020-03-20T22:37:04Z | 2020-03-20T22:37:04Z | MEMBER | New formatting: ``` @Alaska_DHSS [####################################] 3205 @BWhippleKS [####################################] 1 @CAPublicHealth [####################################] 2 @CDPHE [####################################] 67 @CHFSKy [####################################] 3216 ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Screen name display for user-timeline is uneven 585359363 | |
601963535 | https://github.com/simonw/datasette/issues/702#issuecomment-601963535 | https://api.github.com/repos/simonw/datasette/issues/702 | MDEyOklzc3VlQ29tbWVudDYwMTk2MzUzNQ== | simonw 9599 | 2020-03-21T00:20:50Z | 2020-03-21T00:20:50Z | OWNER | I can solve #677 (The first time you click sort by ID it should show you results in reverse order) at the same time. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Option in metadata.json to set default sort order for a table 585390482 | |
601979709 | https://github.com/dogsheep/github-to-sqlite/issues/16#issuecomment-601979709 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/16 | MDEyOklzc3VlQ29tbWVudDYwMTk3OTcwOQ== | simonw 9599 | 2020-03-21T02:20:08Z | 2020-03-21T02:20:08Z | MEMBER | I'm pretty sure this means I need to upgrade the underlying `sqlite-utils` dependency. I saw the same bug in `twitter-to-sqlite`. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Exception running first command: IndexError: list index out of range 546051181 | |
601980724 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-601980724 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMTk4MDcyNA== | simonw 9599 | 2020-03-21T02:28:05Z | 2020-03-21T02:28:05Z | MEMBER | This suggests that `commit["author"]` can be `None` in some cases? | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
601980957 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-601980957 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMTk4MDk1Nw== | simonw 9599 | 2020-03-21T02:30:03Z | 2020-03-21T02:30:03Z | MEMBER | https://github.community/t5/GitHub-API-Development-and/Request-for-commits-quot-author-quot-null-and-quot-committer/m-p/35842/highlight/true#M3372 > Commits aren't always associated with a GitHub user. For example, perhaps a friend of mine and I were working on a project together. I have a GitHub account and my friend doesn't. If we both add commits to the repository using our own email addresses and names and then I push the repository to GitHub, my commits will be associated with my GitHub user account but my friends' commits will show up with `author` and `committer` as `null`. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
602094386 | https://github.com/dogsheep/hacker-news-to-sqlite/issues/1#issuecomment-602094386 | https://api.github.com/repos/dogsheep/hacker-news-to-sqlite/issues/1 | MDEyOklzc3VlQ29tbWVudDYwMjA5NDM4Ng== | simonw 9599 | 2020-03-21T19:47:46Z | 2020-03-21T19:47:46Z | MEMBER | Released as 0.3. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up full text search 585526292 | |
602113364 | https://github.com/simonw/datasette/issues/704#issuecomment-602113364 | https://api.github.com/repos/simonw/datasette/issues/704 | MDEyOklzc3VlQ29tbWVudDYwMjExMzM2NA== | simonw 9599 | 2020-03-21T22:25:25Z | 2020-03-21T22:25:25Z | OWNER | https://github.com/simonw/datasette-publish-fly | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Add datasette-publish-fly to Datasette Publish documentation 585597329 | |
602115788 | https://github.com/simonw/datasette/issues/677#issuecomment-602115788 | https://api.github.com/repos/simonw/datasette/issues/677 | MDEyOklzc3VlQ29tbWVudDYwMjExNTc4OA== | simonw 9599 | 2020-03-21T22:52:48Z | 2020-03-21T22:52:48Z | OWNER | This should work for `rowid` tables like https://latest.datasette.io/fixtures/no_primary_key too. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | The first time you click sort by ID it should show you results in reverse order 569237568 | |
602122492 | https://github.com/simonw/datasette/issues/702#issuecomment-602122492 | https://api.github.com/repos/simonw/datasette/issues/702 | MDEyOklzc3VlQ29tbWVudDYwMjEyMjQ5Mg== | simonw 9599 | 2020-03-22T00:01:56Z | 2020-03-22T00:01:56Z | OWNER | I'm going to mirror the URL syntax here, so the options in `metadata.json` will be: * `"sort": "created"` to default sort by created * `"sort_desc": "created"` to default sort by created descending It will throw an error if you try to define both. If I add the ability to sort by multiple columns in the future (#197) I can allow a list of columns here - though I'm not sure how I would represent "sort by created asc, title desc" in that case. If you want to disable user-specified sorting you can do so using the existing `"sortable_columns": []` mechanism. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Option in metadata.json to set default sort order for a table 585390482 | |
602136481 | https://github.com/dogsheep/github-to-sqlite/issues/16#issuecomment-602136481 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/16 | MDEyOklzc3VlQ29tbWVudDYwMjEzNjQ4MQ== | jayvdb 15092 | 2020-03-22T02:08:57Z | 2020-03-22T02:08:57Z | NONE | I'd love to be using your library as a better cached gh layer for a new library I have built, replacing large parts of the very ugly https://github.com/jayvdb/pypidb/blob/master/pypidb/_github.py , and then probably being able to rebuild the setuppy chunk as a feature here at a later stage. I would also need tokenless and netrc support, but I would be happy to add those bits. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Exception running first command: IndexError: list index out of range 546051181 | |
602138528 | https://github.com/simonw/datasette/issues/702#issuecomment-602138528 | https://api.github.com/repos/simonw/datasette/issues/702 | MDEyOklzc3VlQ29tbWVudDYwMjEzODUyOA== | simonw 9599 | 2020-03-22T02:29:23Z | 2020-03-22T02:29:23Z | OWNER | Documentation: https://datasette.readthedocs.io/en/latest/metadata.html#setting-a-default-sort-order | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Option in metadata.json to set default sort order for a table 585390482 | |
602139031 | https://github.com/simonw/datasette/issues/702#issuecomment-602139031 | https://api.github.com/repos/simonw/datasette/issues/702 | MDEyOklzc3VlQ29tbWVudDYwMjEzOTAzMQ== | simonw 9599 | 2020-03-22T02:36:09Z | 2020-03-22T02:36:09Z | OWNER | Found a bug: if you click on a column with a default sort order applied to it you get: "Cannot use _sort and _sort_desc at the same time" | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Option in metadata.json to set default sort order for a table 585390482 | |
602140071 | https://github.com/simonw/datasette/issues/698#issuecomment-602140071 | https://api.github.com/repos/simonw/datasette/issues/698 | MDEyOklzc3VlQ29tbWVudDYwMjE0MDA3MQ== | simonw 9599 | 2020-03-22T02:53:48Z | 2020-03-22T02:53:48Z | OWNER | This feature should include the ability to set a custom redirect URL for after the query has been executed - that way it can be used to build things like "delete this row" which redirect back to the correct table. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Ability for a canned query to write to the database 582517965 | |
602150641 | https://github.com/simonw/datasette/issues/650#issuecomment-602150641 | https://api.github.com/repos/simonw/datasette/issues/650 | MDEyOklzc3VlQ29tbWVudDYwMjE1MDY0MQ== | simonw 9599 | 2020-03-22T05:31:13Z | 2020-03-22T05:31:13Z | OWNER | Ansible has a good example of a glossary: https://docs.ansible.com/ansible/latest/reference_appendices/glossary.html | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Add a glossary to the documentation 534629631 | |
602304531 | https://github.com/dogsheep/github-to-sqlite/issues/19#issuecomment-602304531 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/19 | MDEyOklzc3VlQ29tbWVudDYwMjMwNDUzMQ== | simonw 9599 | 2020-03-23T00:20:28Z | 2020-03-23T00:20:28Z | MEMBER | Current FTS code: https://github.com/dogsheep/github-to-sqlite/blob/e35eec4343aa560c58c1634cc228d0d46c442304/github_to_sqlite/utils.py#L136-L143 | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Enable full-text search for more stuff (like commits, issues and issue_comments) 585850715 | |
602309825 | https://github.com/dogsheep/github-to-sqlite/issues/15#issuecomment-602309825 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/15 | MDEyOklzc3VlQ29tbWVudDYwMjMwOTgyNQ== | simonw 9599 | 2020-03-23T00:52:38Z | 2020-03-23T00:52:38Z | MEMBER | Splitting assets out into a separate table totally makes sense to me. They can still be fetched as part of the `releases` command. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Assets table with downloads 544571092 | |
602311701 | https://github.com/dogsheep/github-to-sqlite/issues/15#issuecomment-602311701 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/15 | MDEyOklzc3VlQ29tbWVudDYwMjMxMTcwMQ== | simonw 9599 | 2020-03-23T01:05:15Z | 2020-03-23T01:06:14Z | MEMBER | None of my own releases use assets (they are all pushed to PyPI instead) but I spotted that your project here uses assets, so I'll test against that: https://github.com/instrumenta/conftest/releases/tag/v0.18.0 ``` github-to-sqlite releases releases.db instrumenta/conftest ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Assets table with downloads 544571092 | |
602312054 | https://github.com/dogsheep/github-to-sqlite/issues/15#issuecomment-602312054 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/15 | MDEyOklzc3VlQ29tbWVudDYwMjMxMjA1NA== | simonw 9599 | 2020-03-23T01:07:10Z | 2020-03-23T01:07:10Z | MEMBER | Each asset looks like this: ```json { "url": "https://api.github.com/repos/instrumenta/conftest/releases/assets/11811946", "id": 11811946, "node_id": "MDEyOlJlbGVhc2VBc3NldDExODExOTQ2", "name": "checksums.txt", "label": "", "uploader": { "login": "garethr", "id": 2029, "node_id": "MDQ6VXNlcjIwMjk=", "avatar_url": "https://avatars2.githubusercontent.com/u/2029?v=4", "gravatar_id": "", "url": "https://api.github.com/users/garethr", "html_url": "https://github.com/garethr", "followers_url": "https://api.github.com/users/garethr/followers", "following_url": "https://api.github.com/users/garethr/following{/other_user}", "gists_url": "https://api.github.com/users/garethr/gists{/gist_id}", "starred_url": "https://api.github.com/users/garethr/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/garethr/subscriptions", "organizations_url": "https://api.github.com/users/garethr/orgs", "repos_url": "https://api.github.com/users/garethr/repos", "events_url": "https://api.github.com/users/garethr/events{/privacy}", "received_events_url": "https://api.github.com/users/garethr/received_events", "type": "User", "site_admin": false }, "content_type": "text/plain; charset=utf-8", "state": "uploaded", "size": 600, "download_count": 2, "created_at": "2019-03-30T16:56:44Z", "updated_at": "2019-03-30T16:56:44Z", "browser_download_url": "https://github.com/instrumenta/conftest/releases/download/v0.1.0/checksums.txt" } ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Assets table with downloads 544571092 | |
602782437 | https://github.com/dogsheep/github-to-sqlite/issues/19#issuecomment-602782437 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/19 | MDEyOklzc3VlQ29tbWVudDYwMjc4MjQzNw== | simonw 9599 | 2020-03-23T18:36:12Z | 2020-03-23T18:51:23Z | MEMBER | * `commits`: `message` * `issue_comments`: `body` * `issues`: `title`, `body` * `labels`: `name`, `description` * `licenses`: `name` * `milestones`: `title`, `description` * `releases`: `name`, `body` * `repos`: `name`, `description` * `users`: `login`, `name` (maybe `company`, `bio`) | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Enable full-text search for more stuff (like commits, issues and issue_comments) 585850715 | |
602806530 | https://github.com/dogsheep/github-to-sqlite/issues/5#issuecomment-602806530 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/5 | MDEyOklzc3VlQ29tbWVudDYwMjgwNjUzMA== | simonw 9599 | 2020-03-23T19:23:30Z | 2020-03-23T19:23:30Z | MEMBER | Yeah `alter=True` means that this isn't necessary. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Add "incomplete" boolean to users table for incomplete profiles 493671014 | |
602807178 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-602807178 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMjgwNzE3OA== | simonw 9599 | 2020-03-23T19:24:43Z | 2020-03-23T19:24:43Z | MEMBER | I need to find an example before I work on this. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
602811468 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-602811468 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMjgxMTQ2OA== | simonw 9599 | 2020-03-23T19:33:14Z | 2020-03-23T19:33:14Z | MEMBER | Found one: https://api.github.com/repos/simonw/simonw.github.com/commits | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
602811785 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-602811785 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMjgxMTc4NQ== | simonw 9599 | 2020-03-23T19:33:56Z | 2020-03-23T19:34:06Z | MEMBER | ```json [ { "sha": "a8dc914089d399d9b522ebb51b67f9ac2e8aa6b0", "node_id": "MDY6Q29tbWl0OTMyMDk6YThkYzkxNDA4OWQzOTlkOWI1MjJlYmI1MWI2N2Y5YWMyZThhYTZiMA==", "commit": { "author": { "name": "Simon Willison", "email": "simon@...", "date": "2008-12-18T23:17:12Z" }, "committer": { "name": "Simon Willison", "email": "simon@...", "date": "2008-12-18T23:17:12Z" }, "message": "First commit", "tree": { "sha": "ac2dfb75e2592c59165c2880f3f7a16dafd452a1", "url": "https://api.github.com/repos/simonw/simonw.github.com/git/trees/ac2dfb75e2592c59165c2880f3f7a16dafd452a1" }, "url": "https://api.github.com/repos/simonw/simonw.github.com/git/commits/a8dc914089d399d9b522ebb51b67f9ac2e8aa6b0", "comment_count": 0, "verification": { "verified": false, "reason": "unsigned", "signature": null, "payload": null } }, "url": "https://api.github.com/repos/simonw/simonw.github.com/commits/a8dc914089d399d9b522ebb51b67f9ac2e8aa6b0", "html_url": "https://github.com/simonw/simonw.github.com/commit/a8dc914089d399d9b522ebb51b67f9ac2e8aa6b0", "comments_url": "https://api.github.com/repos/simonw/simonw.github.com/commits/a8dc914089d399d9b522ebb51b67f9ac2e8aa6b0/comments", "author": null, "committer": null, "parents": [] } ] ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
602813731 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-602813731 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMjgxMzczMQ== | simonw 9599 | 2020-03-23T19:38:03Z | 2020-03-23T20:44:49Z | MEMBER | So it turns out `"author"` and `"committer"` on the commit are `null` if the email address in the nested `"commit"` doesn't match an existing GitHub user. Maybe I should be storing the nested data somewhere as well? | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
602815120 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-602815120 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMjgxNTEyMA== | simonw 9599 | 2020-03-23T19:40:55Z | 2020-03-23T19:43:19Z | MEMBER | I could pull a pk-hashed version of the name/email into separate `raw_author` and `raw_committer` columns perhaps - against a `commit_authors` table. Could be interesting. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
602846293 | https://github.com/dogsheep/github-to-sqlite/issues/18#issuecomment-602846293 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/18 | MDEyOklzc3VlQ29tbWVudDYwMjg0NjI5Mw== | simonw 9599 | 2020-03-23T20:44:40Z | 2020-03-23T20:44:40Z | MEMBER | I implemented the `raw_authors` idea. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Commits in GitHub API can have null author 585411547 | |
602861730 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602861730 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjg2MTczMA== | simonw 9599 | 2020-03-23T21:19:16Z | 2020-03-23T21:19:42Z | MEMBER | I'm going to do this with a scheduled GitHub Action in this repo. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602862236 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602862236 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjg2MjIzNg== | simonw 9599 | 2020-03-23T21:20:26Z | 2020-03-23T21:20:26Z | MEMBER | I'll run the `commits` and `issues` and `issue-comments` commands in addition to the `releases` command. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602862967 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602862967 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjg2Mjk2Nw== | simonw 9599 | 2020-03-23T21:22:04Z | 2020-03-23T21:22:04Z | MEMBER | Following these instructions: https://simonwillison.net/2020/Jan/21/github-actions-cloud-run/ | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602895896 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602895896 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjg5NTg5Ng== | simonw 9599 | 2020-03-23T22:42:25Z | 2020-03-23T22:42:25Z | MEMBER | Urgh this is such a mess! I should have done this on a branch / pull request to avoid polluting my main master history, but never mind. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602896434 | https://github.com/dogsheep/github-to-sqlite/issues/21#issuecomment-602896434 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/21 | MDEyOklzc3VlQ29tbWVudDYwMjg5NjQzNA== | simonw 9599 | 2020-03-23T22:43:37Z | 2020-03-23T22:43:37Z | MEMBER | I'm going to do this now to help figure out the latest error in #13: ``` Traceback (most recent call last): File "/opt/hostedtoolcache/Python/3.8.2/x64/bin/github-to-sqlite", line 11, in <module> load_entry_point('github-to-sqlite', 'console_scripts', 'github-to-sqlite')() File "/opt/hostedtoolcache/Python/3.8.2/x64/lib/python3.8/site-packages/click/core.py", line 829, in __call__ return self.main(*args, **kwargs) File "/opt/hostedtoolcache/Python/3.8.2/x64/lib/python3.8/site-packages/click/core.py", line 782, in main rv = self.invoke(ctx) File "/opt/hostedtoolcache/Python/3.8.2/x64/lib/python3.8/site-packages/click/core.py", line 1259, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/opt/hostedtoolcache/Python/3.8.2/x64/lib/python3.8/site-packages/click/core.py", line 1066, in invoke return ctx.invoke(self.callback, **ctx.params) File "/opt/hostedtoolcache/Python/3.8.2/x64/lib/python3.8/site-packages/click/core.py", line 610, in invoke return callback(*args, **kwargs) File "/home/runner/work/github-to-sqlite/github-to-sqlite/github_to_sqlite/cli.py", line 237, in commits utils.save_commits(db, commits, repo_full["id"]) File "/home/runner/work/github-to-sqlite/github-to-sqlite/github_to_sqlite/utils.py", line 345, in save_commits for commit in commits: File "/home/runner/work/github-to-sqlite/github-to-sqlite/github_to_sqlite/utils.py", line 207, in fetch_commits if stop_when(commit): File "/home/runner/work/github-to-sqlite/github-to-sqlite/github_to_sqlite/cli.py", line 224, in stop_when db["commits"].get(commit["sha"]) TypeError: string indices must be integers ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Turn GitHub API errors into exceptions 586561727 | |
602904184 | https://github.com/simonw/datasette/issues/394#issuecomment-602904184 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMjkwNDE4NA== | betatim 1448859 | 2020-03-23T23:03:42Z | 2020-03-23T23:03:42Z | NONE | On mybinder.org we allow access to arbitrary processes listening on a port inside the container via a [reverse proxy](https://github.com/jupyterhub/jupyter-server-proxy). This means we need support for a proxy prefix as the proxy ends up running at a URL like `/something/random/proxy/datasette/...` An example that shows the problem is https://github.com/psychemedia/jupyterserverproxy-datasette-demo. Launch directly into a datasette instance on mybinder.org with https://mybinder.org/v2/gh/psychemedia/jupyterserverproxy-datasette-demo/master?urlpath=datasette then try to follow links inside the UI. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
602907207 | https://github.com/simonw/datasette/issues/394#issuecomment-602907207 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMjkwNzIwNw== | wragge 127565 | 2020-03-23T23:12:18Z | 2020-03-23T23:12:18Z | CONTRIBUTOR | This would also be useful for running Datasette in Jupyter notebooks on [Binder](https://mybinder.org/). While you can use [Jupyter-server-proxy](https://github.com/jupyterhub/jupyter-server-proxy) to access Datasette on Binder, the links are broken. Why run Datasette on Binder? I'm developing a [range of Jupyter notebooks](https://glam-workbench.github.io/) that are aimed at getting humanities researchers to explore data from libraries, archives, and museums. Many of them are aimed at researchers with limited digital skills, so being able to run examples in Binder without them installing anything is fantastic. For example, there are a [series of notebooks](https://glam-workbench.github.io/trove-harvester/) that help researchers harvest digitised historical newspaper articles from Trove. The metadata from this harvest is saved as a CSV file that users can download. I've also provided some extra notebooks that use Pandas etc to demonstrate ways of analysing and visualising the harvested data. But it would be really nice if, after completing a harvest, the user could spin up Datasette for some initial exploration of their harvested data without ever leaving their browser. | {"total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
602911133 | https://github.com/simonw/datasette/issues/394#issuecomment-602911133 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMjkxMTEzMw== | terrycojones 132978 | 2020-03-23T23:22:10Z | 2020-03-23T23:22:10Z | NONE | I just updated #652 to remove a merge conflict. I think it's an easy way to add this functionality. I don't have time to do more though, sorry! | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
602913427 | https://github.com/simonw/datasette/issues/394#issuecomment-602913427 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMjkxMzQyNw== | simonw 9599 | 2020-03-23T23:27:44Z | 2020-03-23T23:27:44Z | OWNER | Thanks very much @terrycojones - I'll see if I can finish it up from here. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
602916580 | https://github.com/simonw/datasette/issues/394#issuecomment-602916580 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMjkxNjU4MA== | terrycojones 132978 | 2020-03-23T23:37:06Z | 2020-03-23T23:37:06Z | NONE | @simonw You're welcome - I was just trying it out back in December as I thought it should work. Now there's a pandemic to work on though.... so no time at all for more at the moment. BTW, I have datasette running on several protein and full (virus) genome databases I build, and it's great - thank you! Hi and best regards to you & Nat :-) | {"total_count": 1, "+1": 0, "-1": 0, "laugh": 1, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
602916947 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602916947 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjkxNjk0Nw== | simonw 9599 | 2020-03-23T23:38:06Z | 2020-03-23T23:38:06Z | MEMBER | Woohoo! https://github-to-sqlite-j7hipcg4aq-uc.a.run.app/ | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602917713 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602917713 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjkxNzcxMw== | simonw 9599 | 2020-03-23T23:40:29Z | 2020-03-23T23:40:29Z | MEMBER | Most recently updated issues across all Dogsheep repos, with faceting: https://github-to-sqlite-j7hipcg4aq-uc.a.run.app/github/issues?_facet=repo&_facet=user&_facet=state&_facet=author_association&_facet=type&_sort_desc=updated_at | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602918689 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602918689 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjkxODY4OQ== | simonw 9599 | 2020-03-23T23:43:39Z | 2020-03-23T23:47:50Z | MEMBER | I pointed https://github-to-sqlite.dogsheep.net/ at it. May take a few minutes for the new certificate to provision though. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602919058 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602919058 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjkxOTA1OA== | simonw 9599 | 2020-03-23T23:44:48Z | 2020-03-23T23:44:48Z | MEMBER | Next step: use a `metadata.json` file to add some extras. And add the `datasette-render-markdown` plugin as soon as I ship https://github.com/simonw/datasette-render-markdown/issues/2 (GFM support). | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602920163 | https://github.com/dogsheep/github-to-sqlite/issues/21#issuecomment-602920163 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/21 | MDEyOklzc3VlQ29tbWVudDYwMjkyMDE2Mw== | simonw 9599 | 2020-03-23T23:48:22Z | 2020-03-23T23:48:22Z | MEMBER | I'm happy with this pattern: https://github.com/dogsheep/github-to-sqlite/blob/f78c4e9baaf0970ffab266ba780df7240aae9f32/github_to_sqlite/utils.py#L4-L18 | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Turn GitHub API errors into exceptions 586561727 | |
602924714 | https://github.com/dogsheep/github-to-sqlite/issues/13#issuecomment-602924714 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/13 | MDEyOklzc3VlQ29tbWVudDYwMjkyNDcxNA== | simonw 9599 | 2020-03-24T00:03:25Z | 2020-03-24T00:03:25Z | MEMBER | This is good enough for the 1.0 release. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Set up a live demo Datasette instance 521275281 | |
602928533 | https://github.com/dogsheep/github-to-sqlite/issues/23#issuecomment-602928533 | https://api.github.com/repos/dogsheep/github-to-sqlite/issues/23 | MDEyOklzc3VlQ29tbWVudDYwMjkyODUzMw== | simonw 9599 | 2020-03-24T00:15:49Z | 2020-03-24T00:15:49Z | MEMBER | https://github.com/dogsheep/github-to-sqlite/releases/tag/1.0 | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Release 1.0 586595839 | |
602955699 | https://github.com/simonw/datasette/issues/394#issuecomment-602955699 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMjk1NTY5OQ== | simonw 9599 | 2020-03-24T01:34:06Z | 2020-03-24T01:34:15Z | OWNER | I don't think I'll go with the `<base>` solution purely because it doesn't work with JSON APIs - and there are quite a few places where Datasette APIs return URLs (for things like toggling facets - e.g. `suggested_facets` on https://latest.datasette.io/fixtures/facetable.json?_labels=on&_size=0 ) The good news is that if you look at the templates almost all of the URLs have been generated in Python code: https://github.com/simonw/datasette/blob/a498d0fe6590f9bdbc4faf9e0dd5faeb3b06002c/datasette/templates/table.html - so it shouldn't be too hard to fix in Python. Ideally I'd like to fix this with as few template changes as possible. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603501719 | https://github.com/simonw/datasette/issues/394#issuecomment-603501719 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzUwMTcxOQ== | simonw 9599 | 2020-03-24T20:59:28Z | 2020-03-24T20:59:28Z | OWNER | Here's the line I'm stuck on now: https://github.com/simonw/datasette/blob/298a899e792ebd0cd82a5f01b613c31f19082e51/datasette/views/base.py#L417 Tricky question: do I continue to rebuild URLs based on the incoming `request` (on the assumption that it has been modified to the new thing) or do I expect that I may still see un-prefixed incoming requests and need to change them? If the incoming URL paths contain the prefix, at what point do I drop that so I can run the regular URL matching code? | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603508356 | https://github.com/simonw/datasette/issues/394#issuecomment-603508356 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzUwODM1Ng== | simonw 9599 | 2020-03-24T21:14:31Z | 2020-03-24T21:14:31Z | OWNER | I'm going to assume that whatever is proxying to Datasette leaves the full incoming URL path intact, so I'm going to need to teach the URL routing code to strip off the prefix before processing the incoming request. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603508785 | https://github.com/simonw/datasette/issues/394#issuecomment-603508785 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzUwODc4NQ== | simonw 9599 | 2020-03-24T21:15:28Z | 2020-03-24T21:15:28Z | OWNER | That means I should teach `AsgiRouter` how to handle an optional prefix: https://github.com/simonw/datasette/blob/298a899e792ebd0cd82a5f01b613c31f19082e51/datasette/utils/asgi.py#L81-L93 | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603509266 | https://github.com/simonw/datasette/issues/394#issuecomment-603509266 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzUwOTI2Ng== | simonw 9599 | 2020-03-24T21:16:34Z | 2020-03-24T21:16:34Z | OWNER | Actually I'll teach `DatasetteRouter` since that subclasses `AsgiRouter` but has access to a `datasette` instance (which it can read configuration values from): https://github.com/simonw/datasette/blob/298a899e792ebd0cd82a5f01b613c31f19082e51/datasette/app.py#L750-L753 | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603525339 | https://github.com/simonw/datasette/issues/394#issuecomment-603525339 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzUyNTMzOQ== | simonw 9599 | 2020-03-24T21:55:46Z | 2020-03-24T22:07:40Z | OWNER | OK, I have an implementation of this over in the `base-url` branch (see pull request #708) which is passing all of the unit tests. Anyone willing to give it a quick test and see if it works for your particular use-case? You can install it with: pip install https://github.com/simonw/datasette/archive/base-url.zip Then you can run Datasette like this: datasette fixtures.db --config base_url:/new-base/path/here/ | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603525872 | https://github.com/simonw/datasette/pull/708#issuecomment-603525872 | https://api.github.com/repos/simonw/datasette/issues/708 | MDEyOklzc3VlQ29tbWVudDYwMzUyNTg3Mg== | simonw 9599 | 2020-03-24T21:57:02Z | 2020-03-24T21:57:02Z | OWNER | Spotted a bug: `<link rel="stylesheet" href="/-/static/app.css?ffa51a">` in the templates. I need to ensure the static assets are served from the new location as well (and any plugin assets too). | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting, refs #394 587302139 | |
603531775 | https://github.com/simonw/datasette/pull/708#issuecomment-603531775 | https://api.github.com/repos/simonw/datasette/issues/708 | MDEyOklzc3VlQ29tbWVudDYwMzUzMTc3NQ== | simonw 9599 | 2020-03-24T22:11:57Z | 2020-03-24T22:11:57Z | OWNER | This is now ready for people to try out. Quoting https://github.com/simonw/datasette/issues/394#issuecomment-603525339 > Anyone willing to give it a quick test and see if it works for your particular use-case? You can install it with: > > ``` > pip install https://github.com/simonw/datasette/archive/base-url.zip > ``` > > Then you can run Datasette like this: > > ``` > datasette fixtures.db --config base_url:/new-base/path/here/ > ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting, refs #394 587302139 | |
603532876 | https://github.com/simonw/datasette/pull/652#issuecomment-603532876 | https://api.github.com/repos/simonw/datasette/issues/652 | MDEyOklzc3VlQ29tbWVudDYwMzUzMjg3Ng== | simonw 9599 | 2020-03-24T22:14:50Z | 2020-03-24T22:14:50Z | OWNER | This has been replaced by #708, which is close to being ready. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Quick (and uninformed and perhaps misguided) attempt to add a <base> url for hosting datasette at a particular host/URI 539985017 | |
603534725 | https://github.com/simonw/datasette/issues/227#issuecomment-603534725 | https://api.github.com/repos/simonw/datasette/issues/227 | MDEyOklzc3VlQ29tbWVudDYwMzUzNDcyNQ== | simonw 9599 | 2020-03-24T22:19:54Z | 2020-03-24T22:19:54Z | OWNER | I think the [extra_template_vars()](https://datasette.readthedocs.io/en/stable/plugins.html#extra-template-vars-template-database-table-view-name-request-datasette) hook covers this. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | prepare_context() plugin hook 315960272 | |
603538291 | https://github.com/simonw/datasette/issues/709#issuecomment-603538291 | https://api.github.com/repos/simonw/datasette/issues/709 | MDEyOklzc3VlQ29tbWVudDYwMzUzODI5MQ== | simonw 9599 | 2020-03-24T22:30:10Z | 2020-03-24T22:30:10Z | OWNER | https://datasette.readthedocs.io/en/latest/plugins.html#plugin-hooks | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Each plugin hook should link to example plugins built with it 587314002 | |
603539349 | https://github.com/simonw/datasette/issues/394#issuecomment-603539349 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzUzOTM0OQ== | terrycojones 132978 | 2020-03-24T22:33:23Z | 2020-03-24T22:33:23Z | NONE | Hi Simon - I'm just (trying, at least) to follow along in the above. I can't try it out now, but I will if no one else gets to it. Sorry I didn't write any tests in the original bit of code I pushed - I was just trying to see if it could work & whether you'd want to maybe head in that direction. Anyway, thank you, I will certainly use this. Comment back here if no one tried it out & I'll make time. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603542037 | https://github.com/simonw/datasette/issues/710#issuecomment-603542037 | https://api.github.com/repos/simonw/datasette/issues/710 | MDEyOklzc3VlQ29tbWVudDYwMzU0MjAzNw== | simonw 9599 | 2020-03-24T22:41:19Z | 2020-03-24T22:41:19Z | OWNER | For the moment I'm just going to remove it from the documentation. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Remove Zeit Now v1 support 587322443 | |
603544779 | https://github.com/simonw/datasette/issues/701#issuecomment-603544779 | https://api.github.com/repos/simonw/datasette/issues/701 | MDEyOklzc3VlQ29tbWVudDYwMzU0NDc3OQ== | simonw 9599 | 2020-03-24T22:50:05Z | 2020-03-24T22:50:05Z | OWNER | https://css-tricks.com/webkit-html5-search-inputs/ talks about this. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Search box CSS doesn't look great on OS X Safari 583970196 | |
603545257 | https://github.com/simonw/datasette/issues/701#issuecomment-603545257 | https://api.github.com/repos/simonw/datasette/issues/701 | MDEyOklzc3VlQ29tbWVudDYwMzU0NTI1Nw== | simonw 9599 | 2020-03-24T22:51:29Z | 2020-03-24T22:51:29Z | OWNER | It looks like the problem is that the `padding: 9px 4px` rule is being ignored. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Search box CSS doesn't look great on OS X Safari 583970196 | |
603547065 | https://github.com/simonw/datasette/issues/701#issuecomment-603547065 | https://api.github.com/repos/simonw/datasette/issues/701 | MDEyOklzc3VlQ29tbWVudDYwMzU0NzA2NQ== | simonw 9599 | 2020-03-24T22:56:47Z | 2020-03-24T22:56:47Z | OWNER | From the comments on that css-tricks article, this appears to work: ```css input[type=search] { -webkit-appearance: textfield; } input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-results-button, input[type="search"]::-webkit-search-results-decoration { display: none; } ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Search box CSS doesn't look great on OS X Safari 583970196 | |
603560898 | https://github.com/simonw/datasette/issues/705#issuecomment-603560898 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzU2MDg5OA== | simonw 9599 | 2020-03-24T23:41:32Z | 2020-03-24T23:41:32Z | OWNER | I can switch over to deploying that using Cloud Run. Unfortunately if I move away from Zeit Now v1 (since it's no longer supported and might stop working) I don't think I'll be able to deploy a permanent URL for every commit hash that I push any more, which is a real shame. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603561207 | https://github.com/simonw/datasette/issues/705#issuecomment-603561207 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzU2MTIwNw== | simonw 9599 | 2020-03-24T23:42:42Z | 2020-03-24T23:42:42Z | OWNER | I'd like to still provide https://v0-35.datasette.io/ URLs for every named release, but I'm not sure how to best automate the provisioning of those subdomains. For the moment I'm going to focus on getting `latest.datasette.io` working again, using Cloud Run. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603570972 | https://github.com/simonw/datasette/issues/394#issuecomment-603570972 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzU3MDk3Mg== | simonw 9599 | 2020-03-25T00:17:24Z | 2020-03-25T00:17:24Z | OWNER | I got this working as a proxied instance inside Binder, building on @psychemedia's work: https://github.com/simonw/jupyterserverproxy-datasette-demo/issues/1 Now that I've seen it working there I'm going to land the pull request. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603582122 | https://github.com/simonw/datasette/issues/705#issuecomment-603582122 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzU4MjEyMg== | simonw 9599 | 2020-03-25T01:00:30Z | 2020-03-25T01:00:30Z | OWNER | I'm going to do this using GitHub Actions and the recipe from https://simonwillison.net/2020/Jan/21/github-actions-cloud-run/ First step: deploying manually using this: ``` datasette publish cloudrun fixtures.db \ -m fixtures.json \ --branch=7656fd64d8b6a32ebc34d89c1b8711cc5ea240f7 \ --version-note=7656fd64d8b6a32ebc34d89c1b8711cc5ea240f7 \ --extra-options="--config template_debug:1" \ --service=datasette-latest ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603582241 | https://github.com/simonw/datasette/issues/705#issuecomment-603582241 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzU4MjI0MQ== | simonw 9599 | 2020-03-25T01:00:55Z | 2020-03-25T01:00:55Z | OWNER | That's live at https://datasette-latest-j7hipcg4aq-uc.a.run.app/ | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603599464 | https://github.com/simonw/datasette/issues/705#issuecomment-603599464 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzU5OTQ2NA== | simonw 9599 | 2020-03-25T02:07:16Z | 2020-03-25T02:07:16Z | OWNER | I need to verify `datasette.io` with Google. These instructions look good: https://cloud.google.com/endpoints/docs/openapi/verify-domain-name | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603599677 | https://github.com/simonw/datasette/issues/705#issuecomment-603599677 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzU5OTY3Nw== | simonw 9599 | 2020-03-25T02:08:11Z | 2020-03-25T02:08:11Z | OWNER | <img width="1197" alt="Webmaster_Central" src="https://user-images.githubusercontent.com/9599/77494367-cb6b0580-6e02-11ea-8cb3-8de1353d7d3e.png"> | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603599974 | https://github.com/simonw/datasette/issues/705#issuecomment-603599974 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzU5OTk3NA== | simonw 9599 | 2020-03-25T02:09:34Z | 2020-03-25T02:09:34Z | OWNER | I tried running this: $ now dns add datasette.io '@' TXT google-site-verification=wHw15S1fkNOMzk42PEVK6XLnSG9qEfyq6paO8_G4IVU | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603600064 | https://github.com/simonw/datasette/issues/705#issuecomment-603600064 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwMDA2NA== | simonw 9599 | 2020-03-25T02:09:56Z | 2020-03-25T02:09:56Z | OWNER | That worked: <img width="737" alt="Webmaster_Central" src="https://user-images.githubusercontent.com/9599/77494472-0b31ed00-6e03-11ea-9444-849b21bd91c8.png"> | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603600372 | https://github.com/simonw/datasette/issues/705#issuecomment-603600372 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwMDM3Mg== | simonw 9599 | 2020-03-25T02:11:11Z | 2020-03-25T02:11:11Z | OWNER | Now add the service mapping in Cloud Run: https://console.cloud.google.com/run/domains?project=datasette-222320 <img width="601" alt="Domain_mappings_–_Cloud_Run_–_datasette_–_Google_Cloud_Platform" src="https://user-images.githubusercontent.com/9599/77494538-387e9b00-6e03-11ea-8502-110f6d25526d.png"> | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603600553 | https://github.com/simonw/datasette/issues/705#issuecomment-603600553 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwMDU1Mw== | simonw 9599 | 2020-03-25T02:11:56Z | 2020-03-25T02:12:09Z | OWNER | ... and set up the CNAME record: $ now dns add datasette.io latest CNAME ghs.googlehosted.com. Got an error: > Error! A conflicting record exists "rec_e4c36ae94cf0a2b7b1781329". | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603601073 | https://github.com/simonw/datasette/issues/705#issuecomment-603601073 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwMTA3Mw== | simonw 9599 | 2020-03-25T02:13:44Z | 2020-03-25T02:13:44Z | OWNER | Removed the conflicting record with: $ now dns rm rec_e4c36ae94cf0a2b7b1781329 Then: $ now dns add datasette.io latest CNAME ghs.googlehosted.com. > Success! DNS record for domain datasette.io (rec_5b8855344da0be1861c4d55b) created under simonw [10s] | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603601247 | https://github.com/simonw/datasette/issues/705#issuecomment-603601247 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwMTI0Nw== | simonw 9599 | 2020-03-25T02:14:25Z | 2020-03-25T02:14:25Z | OWNER | Could take a while for the certificate to be issued: <img width="471" alt="Domain_mappings_–_Cloud_Run_–_datasette_–_Google_Cloud_Platform" src="https://user-images.githubusercontent.com/9599/77494719-ab881180-6e03-11ea-8953-07cd4ce5fdc3.png"> | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603602781 | https://github.com/simonw/datasette/issues/705#issuecomment-603602781 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwMjc4MQ== | simonw 9599 | 2020-03-25T02:20:09Z | 2020-03-25T02:20:09Z | OWNER | Now following steps in https://simonwillison.net/2020/Jan/21/github-actions-cloud-run/ - I've added the `GCP_SA_EMAIL` and `GCP_SA_KEY` secrets to this repository: https://github.com/simonw/datasette/settings/secrets | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603604105 | https://github.com/simonw/datasette/issues/705#issuecomment-603604105 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwNDEwNQ== | simonw 9599 | 2020-03-25T02:25:42Z | 2020-03-25T02:25:42Z | OWNER | https://latest.datasette.io/-/versions is now serving from Cloud Run. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603605246 | https://github.com/simonw/datasette/issues/705#issuecomment-603605246 | https://api.github.com/repos/simonw/datasette/issues/705 | MDEyOklzc3VlQ29tbWVudDYwMzYwNTI0Ng== | simonw 9599 | 2020-03-25T02:30:24Z | 2020-03-25T02:30:24Z | OWNER | It worked! After that push https://latest.datasette.io/-/versions updated to show `90015b26895fd2bd29676bc375f096102b0587ed` as the version note. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | latest.datasette.io is no longer updating 585626199 | |
603605657 | https://github.com/simonw/datasette/issues/711#issuecomment-603605657 | https://api.github.com/repos/simonw/datasette/issues/711 | MDEyOklzc3VlQ29tbWVudDYwMzYwNTY1Nw== | simonw 9599 | 2020-03-25T02:32:00Z | 2020-03-25T02:32:00Z | OWNER | Commits in this release: https://github.com/simonw/datasette/compare/0.38...90015b26 | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Release notes for Datasette 0.39 587398703 | |
603628876 | https://github.com/simonw/datasette/issues/711#issuecomment-603628876 | https://api.github.com/repos/simonw/datasette/issues/711 | MDEyOklzc3VlQ29tbWVudDYwMzYyODg3Ng== | simonw 9599 | 2020-03-25T04:06:55Z | 2020-03-25T04:06:55Z | OWNER | Closed by dedd775512daee49925882654f252df61a9e3b6d | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Release notes for Datasette 0.39 587398703 | |
603631640 | https://github.com/simonw/datasette/issues/394#issuecomment-603631640 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzYzMTY0MA== | simonw 9599 | 2020-03-25T04:19:08Z | 2020-03-25T04:19:08Z | OWNER | Shipped in 0.39: https://datasette.readthedocs.io/en/latest/changelog.html#v0-39 | {"total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
603631746 | https://github.com/simonw/datasette/issues/702#issuecomment-603631746 | https://api.github.com/repos/simonw/datasette/issues/702 | MDEyOklzc3VlQ29tbWVudDYwMzYzMTc0Ng== | simonw 9599 | 2020-03-25T04:19:36Z | 2020-03-25T04:19:36Z | OWNER | Shipped in 0.39: https://datasette.readthedocs.io/en/latest/changelog.html#v0-39 | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Option in metadata.json to set default sort order for a table 585390482 | |
603849245 | https://github.com/simonw/datasette/issues/394#issuecomment-603849245 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwMzg0OTI0NQ== | terrycojones 132978 | 2020-03-25T13:48:13Z | 2020-03-25T13:48:13Z | NONE | Great - thanks again. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
604166918 | https://github.com/simonw/datasette/issues/394#issuecomment-604166918 | https://api.github.com/repos/simonw/datasette/issues/394 | MDEyOklzc3VlQ29tbWVudDYwNDE2NjkxOA== | wragge 127565 | 2020-03-26T00:56:30Z | 2020-03-26T00:56:30Z | CONTRIBUTOR | Thanks! I'm trying to launch Datasette from *within* a notebook using the jupyter-server-proxy and the new `base_url` parameter. While the assets load ok, and the breadcrumb navigation works, the facet links don't seem to use the `base_url`. Or have I missed something? My test repository is here: https://github.com/wragge/datasette-test | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url configuration setting 396212021 | |
604193362 | https://github.com/simonw/datasette/issues/712#issuecomment-604193362 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDE5MzM2Mg== | simonw 9599 | 2020-03-26T02:32:57Z | 2020-03-26T02:32:57Z | OWNER | Weird... the unit test I just added passes. So suggested facets look like they're OK. And yet the demo in https://mybinder.org/v2/gh/wragge/datasette-test/master?urlpath=lab doesn't work. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604194598 | https://github.com/simonw/datasette/issues/712#issuecomment-604194598 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDE5NDU5OA== | simonw 9599 | 2020-03-26T02:37:46Z | 2020-03-26T02:37:46Z | OWNER | Here's the truncatted HTML for https://hub.gke.mybinder.org/user/wragge-datasette-test-czqms2oy/proxy/8001/results/articles ```html <!DOCTYPE html> <html> <head> <title>results: articles: 400 rows </title> <link rel="stylesheet" href="/user/wragge-datasette-test-czqms2oy/proxy/8001/-/static/app.css?4434ab"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> /head> <body class="table db-results table-articles"> <nav class="hd"> <p class="crumbs"> <a href="/user/wragge-datasette-test-czqms2oy/proxy/8001/">home</a> / <a href="/user/wragge-datasette-test-czqms2oy/proxy/8001/results">results</a> </p> </nav> <div class="bd"> <h1 style="padding-left: 10px; border-left: 10px solid #ff0000">articles</h1> <h3>400 rows</h3> <form class="filters" action="/user/wragge-datasette-test-czqms2oy/proxy/8001/results/articles" method="get"> ... <input type="submit" value="Apply"> </form> <p><a class="not-underlined" title="select rowid, article_id, title, newspaper_id, newspaper_title, page, date, category, words, illustrated, corrections, url, page_url from articles order by rowid limit 101" href="/user/wragge-datasette-test-czqms2oy/proxy/8001/results?sql=select+rowid%2C+article_id%2C+title%2C+newspaper_id%2C+newspaper_title%2C+page%2C+date%2C+category%2C+words%2C+illustrated%2C+corrections%2C+url%2C+page_url+from+articles+order+by+rowid+limit+101">✎ <span class="underlined">View and edit SQL</span></a></p> <p class="export-links">This data as <a href="/results/articles.json">json</a>, <a href="/results/articles.csv?_size=max">CSV</a> (<a href="#export">advanced</a>)</p> <p class="suggested-facets"> Suggested facets: <a href="/results/articles?_facet=newspaper_id#facet-newspaper_id">newspaper_id</a>, <a href="/results/articles?_facet=newspaper_title#facet-newspaper_title">newspaper_title</a>, <a href="/results/articles?_facet=page#facet-page">page</a>, <a href="/results/article… | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604194872 | https://github.com/simonw/datasette/issues/712#issuecomment-604194872 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDE5NDg3Mg== | simonw 9599 | 2020-03-26T02:38:48Z | 2020-03-26T04:04:04Z | OWNER | I have a hunch about this: maybe the URLs that work are the ones that use `{{ base_url }}` directly in the template, while the ones that break are the ones that reconstruct the URL based on the incoming path? | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604195244 | https://github.com/simonw/datasette/issues/712#issuecomment-604195244 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDE5NTI0NA== | simonw 9599 | 2020-03-26T02:40:23Z | 2020-03-26T04:17:57Z | OWNER | Here's the output of the `/-/asgi-scope` plugin: ``` {'client': ('10.12.3.15', 0), 'headers': [(b'cookie', b''), (b'upgrade-insecure-requests', b'1'), (b'dnt', b'1'), (b'accept-encoding', b'gzip'), (b'accept-language', b'en-US,en;q=0.5'), (b'accept', b'text/html,application/xhtml+xml,application/xml;q=0.9,image/' b'webp,*/*;q=0.8'), (b'user-agent', b'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:74.0) Gecko' b'/20100101 Firefox/74.0'), (b'x-scheme', b'https'), (b'x-original-uri', b'/user/wragge-datasette-test-czqms2oy/proxy/8001/-/asgi-scope'), (b'x-forwarded-proto', b'https,http'), (b'x-forwarded-port', b'443,80'), (b'x-forwarded-host', b'hub.gke.mybinder.org'), (b'x-forwarded-for', b'148.64.98.14,10.12.3.15'), (b'x-real-ip', b'148.64.98.14'), (b'connection', b'close'), (b'host', b'hub.gke.mybinder.org'), (b'x-forwarded-context', b'/user/wragge-datasette-test-czqms2oy/proxy/8001'), (b'x-proxycontextpath', b'/user/wragge-datasette-test-czqms2oy/proxy/8001')], 'http_version': '1.1', 'method': 'GET', 'path': '/-/asgi-scope', 'query_string': b'', 'raw_path': b'/-/asgi-scope', 'root_path': '', 'scheme': 'https,http', 'server': ('127.0.0.1', 8001), 'type': 'http'} ``` From this output... it looks like the `path` being passed through to Datasette is still `/-/asgi-scope` here when I though it would be `/user/wragge-datasette-test-czqms2oy/proxy/8001/-/asgi-scope` The original URL path (the one I want) is passed in the `x-original-uri` HTTP header. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604195577 | https://github.com/simonw/datasette/issues/712#issuecomment-604195577 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDE5NTU3Nw== | simonw 9599 | 2020-03-26T02:41:40Z | 2020-03-26T02:41:40Z | OWNER | Aha! It turns out my demo at https://github.com/simonw/jupyterserverproxy-datasette-demo suffers from the same bug. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604196158 | https://github.com/simonw/datasette/issues/712#issuecomment-604196158 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDE5NjE1OA== | simonw 9599 | 2020-03-26T02:43:47Z | 2020-03-26T04:20:15Z | OWNER | I think the solution here may be to let the incoming `x-original-uri` header over-ride the `raw_path` used by Datasette. This may require a new Datasette setting - maybe this: --config path_from_header:x-original-uri | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604218449 | https://github.com/simonw/datasette/issues/712#issuecomment-604218449 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDIxODQ0OQ== | simonw 9599 | 2020-03-26T04:12:59Z | 2020-03-26T04:15:18Z | OWNER | I'm running this latest release like so: Launch this binder: https://mybinder.org/v2/gh/wragge/datasette-test/master?urlpath=lab Open the notebook. In the notebook run this: !pip install datasette-debug-asgi https://github.com/simonw/datasette/archive/7b205af0b53c92d17b69f8c95d70a24a0c06ebce.zip And use this block to run Datasette: ``` # Get current running servers servers = list_running_servers() # Get the current base url base_url = next(servers)['base_url'] # Create a base url for Datasette suing the proxy path proxy_url = f'{base_url}proxy/8001/' # Display a link to Datasette display(HTML(f'<p><a href="{proxy_url}">View Datasette</a> (Click on the stop button to close the Datasette server)</p>')) # Launch Datasette !datasette -- results.db --port 8001 --config base_url:$proxy_url --config path_from_header:x-original-uri --config template_debug:1 ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604219753 | https://github.com/simonw/datasette/issues/712#issuecomment-604219753 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDIxOTc1Mw== | simonw 9599 | 2020-03-26T04:18:13Z | 2020-03-26T04:18:13Z | OWNER | Woohoo that worked! <img width="1386" alt="results__articles__400_rows" src="https://user-images.githubusercontent.com/9599/77609678-db0b4c80-6edd-11ea-947b-1f7b1f14f56e.png"> | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604225034 | https://github.com/simonw/datasette/issues/712#issuecomment-604225034 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDIyNTAzNA== | wragge 127565 | 2020-03-26T04:40:08Z | 2020-03-26T04:40:08Z | CONTRIBUTOR | Great! Yes, can confirm that this works on Binder. However, when I try to run the same code locally, I get an Internal Server Error when I try to access Datasette. ``` ERROR: Exception in ASGI application Traceback (most recent call last): File "/Volumes/Workspace/mycode/datasette-test/lib/python3.7/site-packages/uvicorn/protocols/http/httptools_impl.py", line 385, in run_asgi result = await app(self.scope, self.receive, self.send) File "/Volumes/Workspace/mycode/datasette-test/lib/python3.7/site-packages/uvicorn/middleware/proxy_headers.py", line 45, in __call__ return await self.app(scope, receive, send) File "/Volumes/Workspace/mycode/datasette-test/lib/python3.7/site-packages/datasette_debug_asgi.py", line 24, in wrapped_app await app(scope, recieve, send) File "/Volumes/Workspace/mycode/datasette-test/lib/python3.7/site-packages/datasette/utils/asgi.py", line 174, in __call__ await self.app(scope, receive, send) File "/Volumes/Workspace/mycode/datasette-test/lib/python3.7/site-packages/datasette/tracer.py", line 75, in __call__ await self.app(scope, receive, send) File "/Volumes/Workspace/mycode/datasette-test/lib/python3.7/site-packages/datasette/app.py", line 746, in __call__ raw_path = dict(scope["headers"])[path_from_header.encode("utf8")].split(b"?")[0] KeyError: b'x-original-uri' INFO: 127.0.0.1:49320 - "GET / HTTP/1.1" 500 Internal Server Error ``` | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604249402 | https://github.com/simonw/datasette/issues/712#issuecomment-604249402 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDI0OTQwMg== | wragge 127565 | 2020-03-26T06:11:44Z | 2020-03-26T06:11:44Z | CONTRIBUTOR | Following on from @betatim's suggestion on Twitter, I've changed the proxy url to include 'absolute'. ``` python proxy_url = f'{base_url}proxy/absolute/8001/' ``` This works both on Binder and locally, without using the `path_from_header` option. I've updated the demo repository. Sorry @simonw if I've led you down the wrong path! | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 | |
604328163 | https://github.com/simonw/datasette/issues/573#issuecomment-604328163 | https://api.github.com/repos/simonw/datasette/issues/573 | MDEyOklzc3VlQ29tbWVudDYwNDMyODE2Mw== | psychemedia 82988 | 2020-03-26T09:41:30Z | 2020-03-26T09:41:30Z | CONTRIBUTOR | Fixed by @simonw; example here: https://github.com/simonw/jupyterserverproxy-datasette-demo | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | Exposing Datasette via Jupyter-server-proxy 492153532 | |
604466523 | https://github.com/simonw/datasette/issues/712#issuecomment-604466523 | https://api.github.com/repos/simonw/datasette/issues/712 | MDEyOklzc3VlQ29tbWVudDYwNDQ2NjUyMw== | simonw 9599 | 2020-03-26T14:35:43Z | 2020-03-26T14:35:43Z | OWNER | Hooray! This is a really great fix, thanks. | {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} | base_url doesn't entirely work for running Datasette inside Binder 588108428 |
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]);
author_association 4 ✖