{"html_url": "https://github.com/simonw/datasette/pull/1170#issuecomment-754181646", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1170", "id": 754181646, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE4MTY0Ng==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T19:52:40Z", "updated_at": "2021-01-04T19:52:40Z", "author_association": "OWNER", "body": "Thank you very much!", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 778126516, "label": "Install Prettier via package.json"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1164#issuecomment-754182058", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1164", "id": 754182058, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE4MjA1OA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T19:53:31Z", "updated_at": "2021-01-04T19:53:31Z", "author_association": "OWNER", "body": "This will be helped by the new `package.json` added in #1170.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 776634318, "label": "Mechanism for minifying JavaScript that ships with Datasette"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1111#issuecomment-754184287", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1111", "id": 754184287, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE4NDI4Nw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T19:57:53Z", "updated_at": "2021-01-04T19:57:53Z", "author_association": "OWNER", "body": "Relevant new feature in sqlite-utils: the ability to use triggers to maintain fast counts. This optimization could help a lot here. https://github.com/simonw/sqlite-utils/issues/212", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 751195017, "label": "Accessing a database's `.json` is slow for very large SQLite files"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/913#issuecomment-754187326", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/913", "id": 754187326, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE4NzMyNg==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:03:50Z", "updated_at": "2021-01-04T20:03:50Z", "author_association": "OWNER", "body": "I renamed `--config` to `--setting` and changed it to work like this:\r\n\r\n datasette --setting sql_time_limit_ms 1000\r\n\r\nNote the lack of colons.\r\n\r\nThis actually makes colons cleaner to use for plugins - I could support this:\r\n\r\n datasette --setting datasette-insert:unsafe 1", "reactions": "{\"total_count\": 1, \"+1\": 1, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 670209331, "label": "Mechanism for passing additional options to `datasette my.db` that affect plugins"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/913#issuecomment-754187520", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/913", "id": 754187520, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE4NzUyMA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:04:10Z", "updated_at": "2021-01-04T20:04:10Z", "author_association": "OWNER", "body": "That's pretty elegant: each plugin gets its own namespace and can register new settings.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 670209331, "label": "Mechanism for passing additional options to `datasette my.db` that affect plugins"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/103#issuecomment-754188099", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/103", "id": 754188099, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE4ODA5OQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:05:14Z", "updated_at": "2021-01-04T20:05:14Z", "author_association": "OWNER", "body": "Wontfix, Cloud Run is already implemented and is a better fit for Datasette.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 274265878, "label": "datasette publish appengine"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/18#issuecomment-754188383", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/18", "id": 754188383, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE4ODM4Mw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:05:48Z", "updated_at": "2021-01-04T20:05:48Z", "author_association": "OWNER", "body": "I'm not using Sanic any more, but this is still very feasible. If I ever do it I'll write a plugin.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 267739593, "label": "See if I can get a websockets interface working"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/221#issuecomment-754190814", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/221", "id": 754190814, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE5MDgxNA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:10:34Z", "updated_at": "2021-01-04T20:10:34Z", "author_association": "OWNER", "body": "For the `csvs-to-sqlite` case I'm going with `datasette insert` instead, see #1160.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 315142414, "label": "Allow plugins to add new cli sub commands "}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/221#issuecomment-754190952", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/221", "id": 754190952, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE5MDk1Mg==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:10:51Z", "updated_at": "2021-01-04T20:10:51Z", "author_association": "OWNER", "body": "Is this still a good idea? I don't have any pressing need for it at the moment.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 315142414, "label": "Allow plugins to add new cli sub commands "}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/221#issuecomment-754191699", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/221", "id": 754191699, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE5MTY5OQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:12:14Z", "updated_at": "2021-01-04T20:12:14Z", "author_association": "OWNER", "body": "I'm going to close this. Plugins can register their own CLI tools (see https://github.com/simonw/click-app) if they need to.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 315142414, "label": "Allow plugins to add new cli sub commands "}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/102#issuecomment-754192267", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/102", "id": 754192267, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE5MjI2Nw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:13:19Z", "updated_at": "2021-01-04T20:13:19Z", "author_association": "OWNER", "body": "I'm more likely to do Lambda than Elastic Beanstalk, especially now the size limit for Lambdas has been increased as part of their support for Docker.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 274264175, "label": "datasette publish elasticbeanstalk"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/371#issuecomment-754192873", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/371", "id": 754192873, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE5Mjg3Mw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:14:28Z", "updated_at": "2021-01-04T20:14:28Z", "author_association": "OWNER", "body": "Now that Digital Ocean has App Platform this is less necessary, especially since the documentation covers how to use App Platform here: https://docs.datasette.io/en/stable/deploying.html#deploying-using-buildpacks", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 377156339, "label": "datasette publish digitalocean plugin"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/436#issuecomment-754193501", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/436", "id": 754193501, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE5MzUwMQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:15:41Z", "updated_at": "2021-01-04T20:15:41Z", "author_association": "OWNER", "body": "Sadly `publish.datasettes.com` was broken by changes to Zeit, and I don't think I'll be bringing it back.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 435819321, "label": "400 Error when trying to register new user via https://publish.datasettes.com/"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/668#issuecomment-754194996", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/668", "id": 754194996, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDE5NDk5Ng==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:18:39Z", "updated_at": "2021-01-04T20:18:39Z", "author_association": "OWNER", "body": "I fixed this in #1115 - you can run `--load-extension=spatialite` now and it will look for the extension in common places.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 563347679, "label": "Make it easier to load SpatiaLite"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754215392", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754215392, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDIxNTM5Mg==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T20:59:20Z", "updated_at": "2021-01-04T21:03:14Z", "author_association": "OWNER", "body": "Updated `pyinstaller` recipe - lots of hidden imports needed now:\r\n```\r\npip install wheel\r\npip install datasette pyinstaller\r\n\r\nBASE=$(python -c 'import os; print(os.path.dirname(__import__(\"datasette\").__file__))') \\\r\n pyinstaller -F \\\r\n --add-data \"$BASE/templates:datasette/templates\" \\\r\n --add-data \"$BASE/static:datasette/static\" \\\r\n --hidden-import datasette.publish \\\r\n --hidden-import datasette.publish.heroku \\\r\n --hidden-import datasette.publish.cloudrun \\\r\n --hidden-import datasette.facets \\\r\n --hidden-import datasette.sql_functions \\\r\n --hidden-import datasette.actor_auth_cookie \\\r\n --hidden-import datasette.default_permissions \\\r\n --hidden-import datasette.default_magic_parameters \\\r\n --hidden-import datasette.blob_renderer \\\r\n --hidden-import datasette.default_menu_links \\\r\n --hidden-import uvicorn \\\r\n --hidden-import uvicorn.logging \\\r\n --hidden-import uvicorn.loops \\\r\n --hidden-import uvicorn.loops.auto \\\r\n --hidden-import uvicorn.protocols \\\r\n --hidden-import uvicorn.protocols.http \\\r\n --hidden-import uvicorn.protocols.http.auto \\\r\n --hidden-import uvicorn.protocols.websockets \\\r\n --hidden-import uvicorn.protocols.websockets.auto \\\r\n --hidden-import uvicorn.lifespan \\\r\n --hidden-import uvicorn.lifespan.on \\\r\n $(which datasette)\r\n```", "reactions": "{\"total_count\": 1, \"+1\": 1, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754215793", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754215793, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDIxNTc5Mw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T21:00:14Z", "updated_at": "2021-01-04T21:00:14Z", "author_association": "OWNER", "body": "```\r\n(pyinstaller-datasette) pyinstaller-datasette % file dist/datasette\r\ndist/datasette: Mach-O 64-bit executable x86_64\r\n(pyinstaller-datasette) pyinstaller-datasette % ls -lah dist/datasette\r\n-rwxr-xr-x 1 simon wheel 8.0M Jan 4 12:58 dist/datasette\r\n```\r\nI'm surprised it's only 8MB!", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754218545", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754218545, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDIxODU0NQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T21:05:57Z", "updated_at": "2021-01-04T21:05:57Z", "author_association": "OWNER", "body": "That BASE= trick seems to work with `zsh` but not with `bash`.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754219002", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754219002, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDIxOTAwMg==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T21:06:49Z", "updated_at": "2021-01-04T21:22:27Z", "author_association": "OWNER", "body": "Works on Linux/Ubuntu too, except I had to do `export BASE=` on a separate line. I also did this:\r\n```\r\napt-get install python3 python3-venv\r\npython3 -m venv pyinstaller-venv\r\nsource pyinstaller-venv/bin/activate\r\npip install wheel\r\npip install datasette pyinstaller\r\n\r\nexport DATASETTE_BASE=$(python -c 'import os; print(os.path.dirname(__import__(\"datasette\").__file__))')\r\n\r\npyinstaller -F \\\r\n --add-data \"$DATASETTE_BASE/templates:datasette/templates\" \\\r\n --add-data \"$DATASETTE_BASE/static:datasette/static\" \\\r\n --hidden-import datasette.publish \\\r\n --hidden-import datasette.publish.heroku \\\r\n --hidden-import datasette.publish.cloudrun \\\r\n --hidden-import datasette.facets \\\r\n --hidden-import datasette.sql_functions \\\r\n --hidden-import datasette.actor_auth_cookie \\\r\n --hidden-import datasette.default_permissions \\\r\n --hidden-import datasette.default_magic_parameters \\\r\n --hidden-import datasette.blob_renderer \\\r\n --hidden-import datasette.default_menu_links \\\r\n --hidden-import uvicorn \\\r\n --hidden-import uvicorn.logging \\\r\n --hidden-import uvicorn.loops \\\r\n --hidden-import uvicorn.loops.auto \\\r\n --hidden-import uvicorn.protocols \\\r\n --hidden-import uvicorn.protocols.http \\\r\n --hidden-import uvicorn.protocols.http.auto \\\r\n --hidden-import uvicorn.protocols.websockets \\\r\n --hidden-import uvicorn.protocols.websockets.auto \\\r\n --hidden-import uvicorn.lifespan \\\r\n --hidden-import uvicorn.lifespan.on \\\r\n $(which datasette)\r\n```\r\n\r\n", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754227543", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754227543, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDIyNzU0Mw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T21:23:13Z", "updated_at": "2021-01-04T21:23:13Z", "author_association": "OWNER", "body": "```\r\n(pyinstaller-venv) root@dogsheep:/tmp/pyinstaller-venv# dist/datasette --get /-/databases.json\r\n[{\"name\": \":memory:\", \"path\": null, \"size\": 0, \"is_mutable\": true, \"is_memory\": true, \"hash\": null}]\r\n(pyinstaller-venv) root@dogsheep:/tmp/pyinstaller-venv# ls -lah dist/datasette \r\n-rwxr-xr-x 1 root root 8.9M Jan 4 21:05 dist/datasette\r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754229977", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754229977, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDIyOTk3Nw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T21:28:01Z", "updated_at": "2021-01-04T21:28:01Z", "author_association": "OWNER", "body": "As an experiment, I put the macOS one in a zip file and attached it to the latest release:\r\n\r\n```\r\nmkdir datasette-0.53-macos-binary\r\ncp dist/datasette datasette-0.53-macos-binary\r\nzip -r datasette-0.53-macos-binary.zip datasette-0.53-macos-binary\r\n```\r\n\r\nIt's available here: https://github.com/simonw/datasette/releases/tag/0.53 - download URL is https://github.com/simonw/datasette/releases/download/0.53/datasette-0.53-macos-binary.zip", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754233960", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754233960, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDIzMzk2MA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T21:35:37Z", "updated_at": "2021-01-04T21:35:37Z", "author_association": "OWNER", "body": "I tested it by running a `tmate` session on the GitHub macOS machines, and it worked!\r\n```\r\nMac-1609795972770:tmp runner$ wget 'https://github.com/simonw/datasette/releases/download/0.53/datasette-0.53-macos-binary.zip'\r\n--2021-01-04 21:34:10-- https://github.com/simonw/datasette/releases/download/0.53/datasette-0.53-macos-binary.zip\r\nResolving github.com (github.com)... 140.82.114.4\r\nConnecting to github.com (github.com)|140.82.114.4|:443... connected.\r\nHTTP request sent, awaiting response... 302 Found\r\nLocation: https://github-production-release-asset-2e65be.s3.amazonaws.com/107914493/74658700-4e90-11eb-8f3b-ee77e6dfad90?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210104%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210104T213414Z&X-Amz-Expires=300&X-Amz-Signature=6f3c54211077092553590b33a7c36cd052895c9d4619607ad1df094782f64acf&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=107914493&response-content-disposition=attachment%3B%20filename%3Ddatasette-0.53-macos-binary.zip&response-content-type=application%2Foctet-stream [following]\r\n--2021-01-04 21:34:14-- https://github-production-release-asset-2e65be.s3.amazonaws.com/107914493/74658700-4e90-11eb-8f3b-ee77e6dfad90?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210104%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210104T213414Z&X-Amz-Expires=300&X-Amz-Signature=6f3c54211077092553590b33a7c36cd052895c9d4619607ad1df094782f64acf&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=107914493&response-content-disposition=attachment%3B%20filename%3Ddatasette-0.53-macos-binary.zip&response-content-type=application%2Foctet-stream\r\nResolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.217.43.164\r\nConnecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.217.43.164|:443... connected.\r\nHTTP request sent, awaiting response... 200 OK\r\nLength: 8297283 (7.9M) [application/octet-stream]\r\nSaving to: \u2018datasette-0.53-macos-binary.zip\u2019\r\n\r\ndatasette-0.53-maco 100%[===================>] 7.91M --.-KB/s in 0.1s \r\n\r\n2021-01-04 21:34:14 (73.4 MB/s) - \u2018datasette-0.53-macos-binary.zip\u2019 saved [8297283/8297283]\r\n\r\nMac-1609795972770:tmp runner$ unzip datasette-0.53-macos-binary.zip \r\nArchive: datasette-0.53-macos-binary.zip\r\n creating: datasette-0.53-macos-binary/\r\n inflating: datasette-0.53-macos-binary/datasette \r\nMac-1609795972770:tmp runner$ datasette-0.53-macos-binary/datasette --help\r\nUsage: datasette [OPTIONS] COMMAND [ARGS]...\r\n\r\n Datasette!\r\n\r\nOptions:\r\n --version Show the version and exit.\r\n --help Show this message and exit.\r\n\r\nCommands:\r\n serve* Serve up specified SQLite database files with a web UI\r\n inspect\r\n install Install Python packages - e.g.\r\n package Package specified SQLite files into a new datasette Docker...\r\n plugins List currently available plugins\r\n publish Publish specified SQLite database files to the internet along...\r\n uninstall Uninstall Python packages (e.g.\r\nMac-1609795972770:tmp runner$ datasette-0.53-macos-binary/datasette --get /-/versions.json\r\n{\"python\": {\"version\": \"3.9.1\", \"full\": \"3.9.1 (default, Dec 10 2020, 10:36:35) \\n[Clang 12.0.0 (clang-1200.0.32.27)]\"}, \"datasette\": {\"version\": \"0.53\"}, \"asgi\": \"3.0\", \"uvicorn\": \"0.13.3\", \"sqlite\": {\"version\": \"3.34.0\", \"fts_versions\": [\"FTS5\", \"FTS4\", \"FTS3\"], \"extensions\": {\"json1\": null}, \"compile_options\": [\"COMPILER=clang-12.0.0\", \"ENABLE_COLUMN_METADATA\", \"ENABLE_FTS3\", \"ENABLE_FTS3_PARENTHESIS\", \"ENABLE_FTS4\", \"ENABLE_FTS5\", \"ENABLE_GEOPOLY\", \"ENABLE_JSON1\", \"ENABLE_PREUPDATE_HOOK\", \"ENABLE_RTREE\", \"ENABLE_SESSION\", \"MAX_VARIABLE_NUMBER=250000\", \"THREADSAFE=1\"]}}\r\nMac-1609795972770:tmp runner$ \r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1152#issuecomment-754285588", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1152", "id": 754285588, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDI4NTU4OA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T23:34:30Z", "updated_at": "2021-01-04T23:34:30Z", "author_association": "OWNER", "body": "I think the way to do this is to have a new plugin hook that returns two SQL where clauses: one returning a list of resources that the user should be able to access (the allow-list) and one returning a list of resources they are explicitly forbidden from accessing (the deny-list). Either of these can be blank.\r\n\r\nDatasette can then combine those into a full SQL query and use it to answer the question \"show me a list of resources that the user is allowed to perform action X on\". It can also answer the existing question, \"is user X allowed to perform action Y on resource Z\"?", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 770598024, "label": "Efficiently calculate list of databases/tables a user can view"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/93#issuecomment-754285795", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/93", "id": 754285795, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDI4NTc5NQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T23:35:13Z", "updated_at": "2021-01-04T23:35:13Z", "author_association": "OWNER", "body": "Next step is to automate this all!", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 273944952, "label": "Package as standalone binary"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1171#issuecomment-754286618", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1171", "id": 754286618, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDI4NjYxOA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T23:37:45Z", "updated_at": "2021-01-04T23:37:45Z", "author_association": "OWNER", "body": "https://github.com/actions/virtual-environments/issues/1820#issuecomment-719549887 looks useful - not sure if those notes are for iOS or macOS though.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 778450486, "label": "GitHub Actions workflow to build and sign macOS binary executables"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1171#issuecomment-754286783", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1171", "id": 754286783, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDI4Njc4Mw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T23:38:18Z", "updated_at": "2021-01-04T23:38:18Z", "author_association": "OWNER", "body": "Oh wow maybe I need to Notarize it too? https://developer.apple.com/documentation/xcode/notarizing_macos_software_before_distribution", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 778450486, "label": "GitHub Actions workflow to build and sign macOS binary executables"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1171#issuecomment-754287882", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1171", "id": 754287882, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDI4Nzg4Mg==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T23:40:10Z", "updated_at": "2021-01-04T23:42:32Z", "author_association": "OWNER", "body": "This looks VERY useful: https://github.com/mitchellh/gon - \" Sign, notarize, and package macOS CLI tools and applications written in any language. Available as both a CLI and a Go library.\"\r\n\r\nAnd it installs like this:\r\n\r\n brew install mitchellh/gon/gon", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 778450486, "label": "GitHub Actions workflow to build and sign macOS binary executables"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1171#issuecomment-754295380", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1171", "id": 754295380, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDI5NTM4MA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T23:54:32Z", "updated_at": "2021-01-04T23:54:32Z", "author_association": "OWNER", "body": "https://github.com/search?l=YAML&q=gon+json&type=Code reveals some examples of people using `gon` in workflows.\r\n\r\nThese look useful:\r\n\r\n* https://github.com/coherence/hub-server/blob/3b7e9c7c5bce9e244b14b854f1f89d66f53a5a39/.github/workflows/release_build.yml\r\n* https://github.com/simoncozens/pilcrow/blob/5abc145e7fb9577086afe47b48fd730cb8195386/.github/workflows/buildapp.yaml", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 778450486, "label": "GitHub Actions workflow to build and sign macOS binary executables"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1171#issuecomment-754296761", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1171", "id": 754296761, "node_id": "MDEyOklzc3VlQ29tbWVudDc1NDI5Njc2MQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2021-01-04T23:55:44Z", "updated_at": "2021-01-04T23:55:44Z", "author_association": "OWNER", "body": "Bit uncomfortable that it looks like you need to include your Apple ID username and password in the CI configuration to do this. I'll use GitHub Secrets for this but I don't like it - I'll definitely setup a dedicated code signing account that's not my access-to-everything AppleID for this.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 778450486, "label": "GitHub Actions workflow to build and sign macOS binary executables"}, "performed_via_github_app": null}