issue_comments
33 rows where "updated_at" is on date 2021-01-04 sorted by issue_url
This data as json, CSV (advanced)
Suggested facets: reactions, created_at (date)
user 5
- simonw 28
- benpickles 2
- carlmjohnson 1
- jussiarpalahti 1
- codecov[bot] 1
id | html_url | issue_url ▼ | node_id | user | created_at | updated_at | author_association | body | reactions | issue | performed_via_github_app |
---|---|---|---|---|---|---|---|---|---|---|---|
754192267 | https://github.com/simonw/datasette/issues/102#issuecomment-754192267 | https://api.github.com/repos/simonw/datasette/issues/102 | MDEyOklzc3VlQ29tbWVudDc1NDE5MjI2Nw== | simonw 9599 | 2021-01-04T20:13:19Z | 2021-01-04T20:13:19Z | OWNER | 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. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
datasette publish elasticbeanstalk 274264175 | |
754188099 | https://github.com/simonw/datasette/issues/103#issuecomment-754188099 | https://api.github.com/repos/simonw/datasette/issues/103 | MDEyOklzc3VlQ29tbWVudDc1NDE4ODA5OQ== | simonw 9599 | 2021-01-04T20:05:14Z | 2021-01-04T20:05:14Z | OWNER | Wontfix, Cloud Run is already implemented and is a better fit for Datasette. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
datasette publish appengine 274265878 | |
754184287 | https://github.com/simonw/datasette/issues/1111#issuecomment-754184287 | https://api.github.com/repos/simonw/datasette/issues/1111 | MDEyOklzc3VlQ29tbWVudDc1NDE4NDI4Nw== | simonw 9599 | 2021-01-04T19:57:53Z | 2021-01-04T19:57:53Z | OWNER | 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 |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Accessing a database's `.json` is slow for very large SQLite files 751195017 | |
754285588 | https://github.com/simonw/datasette/issues/1152#issuecomment-754285588 | https://api.github.com/repos/simonw/datasette/issues/1152 | MDEyOklzc3VlQ29tbWVudDc1NDI4NTU4OA== | simonw 9599 | 2021-01-04T23:34:30Z | 2021-01-04T23:34:30Z | OWNER | 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. Datasette 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"? |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Efficiently calculate list of databases/tables a user can view 770598024 | |
754182058 | https://github.com/simonw/datasette/issues/1164#issuecomment-754182058 | https://api.github.com/repos/simonw/datasette/issues/1164 | MDEyOklzc3VlQ29tbWVudDc1NDE4MjA1OA== | simonw 9599 | 2021-01-04T19:53:31Z | 2021-01-04T19:53:31Z | OWNER | This will be helped by the new |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Mechanism for minifying JavaScript that ships with Datasette 776634318 | |
754007242 | https://github.com/simonw/datasette/issues/1169#issuecomment-754007242 | https://api.github.com/repos/simonw/datasette/issues/1169 | MDEyOklzc3VlQ29tbWVudDc1NDAwNzI0Mg== | benpickles 3637 | 2021-01-04T14:29:57Z | 2021-01-04T14:29:57Z | CONTRIBUTOR | I somewhat share your reluctance to add a package.json to seemingly every project out there but ultimately if they're project dependencies it's important they're managed within the codebase. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Prettier package not actually being cached 777677671 | |
754002859 | https://github.com/simonw/datasette/pull/1170#issuecomment-754002859 | https://api.github.com/repos/simonw/datasette/issues/1170 | MDEyOklzc3VlQ29tbWVudDc1NDAwMjg1OQ== | codecov[bot] 22429695 | 2021-01-04T14:22:52Z | 2021-01-04T14:22:52Z | NONE | Codecov Report
```diff @@ Coverage Diff @@ main #1170 +/-=======================================
Coverage 91.55% 91.55% Continue to review full report at Codecov.
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Install Prettier via package.json 778126516 | |
754004715 | https://github.com/simonw/datasette/pull/1170#issuecomment-754004715 | https://api.github.com/repos/simonw/datasette/issues/1170 | MDEyOklzc3VlQ29tbWVudDc1NDAwNDcxNQ== | benpickles 3637 | 2021-01-04T14:25:44Z | 2021-01-04T14:25:44Z | CONTRIBUTOR | I was going to re-add the filter to only run Prettier when there have been changes in |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Install Prettier via package.json 778126516 | |
754181646 | https://github.com/simonw/datasette/pull/1170#issuecomment-754181646 | https://api.github.com/repos/simonw/datasette/issues/1170 | MDEyOklzc3VlQ29tbWVudDc1NDE4MTY0Ng== | simonw 9599 | 2021-01-04T19:52:40Z | 2021-01-04T19:52:40Z | OWNER | Thank you very much! |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Install Prettier via package.json 778126516 | |
754286618 | https://github.com/simonw/datasette/issues/1171#issuecomment-754286618 | https://api.github.com/repos/simonw/datasette/issues/1171 | MDEyOklzc3VlQ29tbWVudDc1NDI4NjYxOA== | simonw 9599 | 2021-01-04T23:37:45Z | 2021-01-04T23:37:45Z | OWNER | https://github.com/actions/virtual-environments/issues/1820#issuecomment-719549887 looks useful - not sure if those notes are for iOS or macOS though. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
GitHub Actions workflow to build and sign macOS binary executables 778450486 | |
754286783 | https://github.com/simonw/datasette/issues/1171#issuecomment-754286783 | https://api.github.com/repos/simonw/datasette/issues/1171 | MDEyOklzc3VlQ29tbWVudDc1NDI4Njc4Mw== | simonw 9599 | 2021-01-04T23:38:18Z | 2021-01-04T23:38:18Z | OWNER | Oh wow maybe I need to Notarize it too? https://developer.apple.com/documentation/xcode/notarizing_macos_software_before_distribution |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
GitHub Actions workflow to build and sign macOS binary executables 778450486 | |
754287882 | https://github.com/simonw/datasette/issues/1171#issuecomment-754287882 | https://api.github.com/repos/simonw/datasette/issues/1171 | MDEyOklzc3VlQ29tbWVudDc1NDI4Nzg4Mg== | simonw 9599 | 2021-01-04T23:40:10Z | 2021-01-04T23:42:32Z | OWNER | 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." And it installs like this:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
GitHub Actions workflow to build and sign macOS binary executables 778450486 | |
754295380 | https://github.com/simonw/datasette/issues/1171#issuecomment-754295380 | https://api.github.com/repos/simonw/datasette/issues/1171 | MDEyOklzc3VlQ29tbWVudDc1NDI5NTM4MA== | simonw 9599 | 2021-01-04T23:54:32Z | 2021-01-04T23:54:32Z | OWNER | https://github.com/search?l=YAML&q=gon+json&type=Code reveals some examples of people using These look useful: |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
GitHub Actions workflow to build and sign macOS binary executables 778450486 | |
754296761 | https://github.com/simonw/datasette/issues/1171#issuecomment-754296761 | https://api.github.com/repos/simonw/datasette/issues/1171 | MDEyOklzc3VlQ29tbWVudDc1NDI5Njc2MQ== | simonw 9599 | 2021-01-04T23:55:44Z | 2021-01-04T23:55:44Z | OWNER | 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. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
GitHub Actions workflow to build and sign macOS binary executables 778450486 | |
754188383 | https://github.com/simonw/datasette/issues/18#issuecomment-754188383 | https://api.github.com/repos/simonw/datasette/issues/18 | MDEyOklzc3VlQ29tbWVudDc1NDE4ODM4Mw== | simonw 9599 | 2021-01-04T20:05:48Z | 2021-01-04T20:05:48Z | OWNER | I'm not using Sanic any more, but this is still very feasible. If I ever do it I'll write a plugin. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
See if I can get a websockets interface working 267739593 | |
754190814 | https://github.com/simonw/datasette/issues/221#issuecomment-754190814 | https://api.github.com/repos/simonw/datasette/issues/221 | MDEyOklzc3VlQ29tbWVudDc1NDE5MDgxNA== | simonw 9599 | 2021-01-04T20:10:34Z | 2021-01-04T20:10:34Z | OWNER | For the |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Allow plugins to add new cli sub commands 315142414 | |
754190952 | https://github.com/simonw/datasette/issues/221#issuecomment-754190952 | https://api.github.com/repos/simonw/datasette/issues/221 | MDEyOklzc3VlQ29tbWVudDc1NDE5MDk1Mg== | simonw 9599 | 2021-01-04T20:10:51Z | 2021-01-04T20:10:51Z | OWNER | Is this still a good idea? I don't have any pressing need for it at the moment. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Allow plugins to add new cli sub commands 315142414 | |
754191699 | https://github.com/simonw/datasette/issues/221#issuecomment-754191699 | https://api.github.com/repos/simonw/datasette/issues/221 | MDEyOklzc3VlQ29tbWVudDc1NDE5MTY5OQ== | simonw 9599 | 2021-01-04T20:12:14Z | 2021-01-04T20:12:14Z | OWNER | I'm going to close this. Plugins can register their own CLI tools (see https://github.com/simonw/click-app) if they need to. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Allow plugins to add new cli sub commands 315142414 | |
754192873 | https://github.com/simonw/datasette/issues/371#issuecomment-754192873 | https://api.github.com/repos/simonw/datasette/issues/371 | MDEyOklzc3VlQ29tbWVudDc1NDE5Mjg3Mw== | simonw 9599 | 2021-01-04T20:14:28Z | 2021-01-04T20:14:28Z | OWNER | 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 |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
datasette publish digitalocean plugin 377156339 | |
754193501 | https://github.com/simonw/datasette/issues/436#issuecomment-754193501 | https://api.github.com/repos/simonw/datasette/issues/436 | MDEyOklzc3VlQ29tbWVudDc1NDE5MzUwMQ== | simonw 9599 | 2021-01-04T20:15:41Z | 2021-01-04T20:15:41Z | OWNER | Sadly |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
400 Error when trying to register new user via https://publish.datasettes.com/ 435819321 | |
754194996 | https://github.com/simonw/datasette/issues/668#issuecomment-754194996 | https://api.github.com/repos/simonw/datasette/issues/668 | MDEyOklzc3VlQ29tbWVudDc1NDE5NDk5Ng== | simonw 9599 | 2021-01-04T20:18:39Z | 2021-01-04T20:18:39Z | OWNER | I fixed this in #1115 - you can run |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Make it easier to load SpatiaLite 563347679 | |
754187326 | https://github.com/simonw/datasette/issues/913#issuecomment-754187326 | https://api.github.com/repos/simonw/datasette/issues/913 | MDEyOklzc3VlQ29tbWVudDc1NDE4NzMyNg== | simonw 9599 | 2021-01-04T20:03:50Z | 2021-01-04T20:03:50Z | OWNER | I renamed
Note the lack of colons. This actually makes colons cleaner to use for plugins - I could support this:
|
{ "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Mechanism for passing additional options to `datasette my.db` that affect plugins 670209331 | |
754187520 | https://github.com/simonw/datasette/issues/913#issuecomment-754187520 | https://api.github.com/repos/simonw/datasette/issues/913 | MDEyOklzc3VlQ29tbWVudDc1NDE4NzUyMA== | simonw 9599 | 2021-01-04T20:04:10Z | 2021-01-04T20:04:10Z | OWNER | That's pretty elegant: each plugin gets its own namespace and can register new settings. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Mechanism for passing additional options to `datasette my.db` that affect plugins 670209331 | |
754215392 | https://github.com/simonw/datasette/issues/93#issuecomment-754215392 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDIxNTM5Mg== | simonw 9599 | 2021-01-04T20:59:20Z | 2021-01-04T21:03:14Z | OWNER | Updated BASE=$(python -c 'import os; print(os.path.dirname(import("datasette").file))') \ pyinstaller -F \ --add-data "$BASE/templates:datasette/templates" \ --add-data "$BASE/static:datasette/static" \ --hidden-import datasette.publish \ --hidden-import datasette.publish.heroku \ --hidden-import datasette.publish.cloudrun \ --hidden-import datasette.facets \ --hidden-import datasette.sql_functions \ --hidden-import datasette.actor_auth_cookie \ --hidden-import datasette.default_permissions \ --hidden-import datasette.default_magic_parameters \ --hidden-import datasette.blob_renderer \ --hidden-import datasette.default_menu_links \ --hidden-import uvicorn \ --hidden-import uvicorn.logging \ --hidden-import uvicorn.loops \ --hidden-import uvicorn.loops.auto \ --hidden-import uvicorn.protocols \ --hidden-import uvicorn.protocols.http \ --hidden-import uvicorn.protocols.http.auto \ --hidden-import uvicorn.protocols.websockets \ --hidden-import uvicorn.protocols.websockets.auto \ --hidden-import uvicorn.lifespan \ --hidden-import uvicorn.lifespan.on \ $(which datasette) ``` |
{ "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754215793 | https://github.com/simonw/datasette/issues/93#issuecomment-754215793 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDIxNTc5Mw== | simonw 9599 | 2021-01-04T21:00:14Z | 2021-01-04T21:00:14Z | OWNER |
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754218545 | https://github.com/simonw/datasette/issues/93#issuecomment-754218545 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDIxODU0NQ== | simonw 9599 | 2021-01-04T21:05:57Z | 2021-01-04T21:05:57Z | OWNER | That BASE= trick seems to work with |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754219002 | https://github.com/simonw/datasette/issues/93#issuecomment-754219002 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDIxOTAwMg== | simonw 9599 | 2021-01-04T21:06:49Z | 2021-01-04T21:22:27Z | OWNER | Works on Linux/Ubuntu too, except I had to do export DATASETTE_BASE=$(python -c 'import os; print(os.path.dirname(import("datasette").file))') pyinstaller -F \ --add-data "$DATASETTE_BASE/templates:datasette/templates" \ --add-data "$DATASETTE_BASE/static:datasette/static" \ --hidden-import datasette.publish \ --hidden-import datasette.publish.heroku \ --hidden-import datasette.publish.cloudrun \ --hidden-import datasette.facets \ --hidden-import datasette.sql_functions \ --hidden-import datasette.actor_auth_cookie \ --hidden-import datasette.default_permissions \ --hidden-import datasette.default_magic_parameters \ --hidden-import datasette.blob_renderer \ --hidden-import datasette.default_menu_links \ --hidden-import uvicorn \ --hidden-import uvicorn.logging \ --hidden-import uvicorn.loops \ --hidden-import uvicorn.loops.auto \ --hidden-import uvicorn.protocols \ --hidden-import uvicorn.protocols.http \ --hidden-import uvicorn.protocols.http.auto \ --hidden-import uvicorn.protocols.websockets \ --hidden-import uvicorn.protocols.websockets.auto \ --hidden-import uvicorn.lifespan \ --hidden-import uvicorn.lifespan.on \ $(which datasette) ``` |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754227543 | https://github.com/simonw/datasette/issues/93#issuecomment-754227543 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDIyNzU0Mw== | simonw 9599 | 2021-01-04T21:23:13Z | 2021-01-04T21:23:13Z | OWNER |
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754229977 | https://github.com/simonw/datasette/issues/93#issuecomment-754229977 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDIyOTk3Nw== | simonw 9599 | 2021-01-04T21:28:01Z | 2021-01-04T21:28:01Z | OWNER | As an experiment, I put the macOS one in a zip file and attached it to the latest release:
It'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 |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754233960 | https://github.com/simonw/datasette/issues/93#issuecomment-754233960 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDIzMzk2MA== | simonw 9599 | 2021-01-04T21:35:37Z | 2021-01-04T21:35:37Z | OWNER | I tested it by running a datasette-0.53-maco 100%[===================>] 7.91M --.-KB/s in 0.1s 2021-01-04 21:34:14 (73.4 MB/s) - ‘datasette-0.53-macos-binary.zip’ saved [8297283/8297283] Mac-1609795972770:tmp runner$ unzip datasette-0.53-macos-binary.zip
Archive: datasette-0.53-macos-binary.zip
creating: datasette-0.53-macos-binary/
inflating: datasette-0.53-macos-binary/datasette Datasette! Options: --version Show the version and exit. --help Show this message and exit. Commands: serve* Serve up specified SQLite database files with a web UI inspect install Install Python packages - e.g. package Package specified SQLite files into a new datasette Docker... plugins List currently available plugins publish Publish specified SQLite database files to the internet along... uninstall Uninstall Python packages (e.g. Mac-1609795972770:tmp runner$ datasette-0.53-macos-binary/datasette --get /-/versions.json {"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"]}} Mac-1609795972770:tmp runner$ ``` |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754285795 | https://github.com/simonw/datasette/issues/93#issuecomment-754285795 | https://api.github.com/repos/simonw/datasette/issues/93 | MDEyOklzc3VlQ29tbWVudDc1NDI4NTc5NQ== | simonw 9599 | 2021-01-04T23:35:13Z | 2021-01-04T23:35:13Z | OWNER | Next step is to automate this all! |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
Package as standalone binary 273944952 | |
754181647 | https://github.com/simonw/datasette/issues/983#issuecomment-754181647 | https://api.github.com/repos/simonw/datasette/issues/983 | MDEyOklzc3VlQ29tbWVudDc1NDE4MTY0Nw== | jussiarpalahti 11941245 | 2021-01-04T19:52:40Z | 2021-01-04T19:52:40Z | NONE | I was thinking JavaScript plugins going with server side template extensions custom HTML. Attach my own widgets on there and listen for Datasette events to refresh when user interacts with main UI. Like a map view or table that updates according to selected column. There's certainly other ways to look at this. Perhaps you could list possible hooks or high level design doc on what would be possible with the plugin system? Re: modules. I would like to see modules supported at least in development. The developer experience is so much better than what JavaScript coding has been in the past. With large parts of NPM at your disposal I’d imagine even less experienced coder can whisk a custom plugin in no time. Proper production build system (like one you get with Pika or Parcel) could package everything up into bundles that older browsers can understand. Though that does come with performance and size penalties alongside the added complexity. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
JavaScript plugin hooks mechanism similar to pluggy 712260429 | |
754210356 | https://github.com/simonw/datasette/issues/983#issuecomment-754210356 | https://api.github.com/repos/simonw/datasette/issues/983 | MDEyOklzc3VlQ29tbWVudDc1NDIxMDM1Ng== | carlmjohnson 222245 | 2021-01-04T20:49:05Z | 2021-01-04T20:49:05Z | NONE | For reasons I've written about elsewhere, I'm in favor of modules. It has several beneficial effects. One, old browsers just ignore it all together. Two, if you include the same plain script on the page more than once, it will be executed twice, but if you include the same module script on a page twice, it will only execute once. Three, you get a module local namespace, instead of having to use the global window namespace or a function private namespace. OTOH, if you are going to use an old style script, the code from before isn't ideal, because you wipe out your registry if the script it included more than once. Also you may as well use object methods and splat arguments. The event based architecture probably makes more sense though. Just make up some event names prefixed with ```js function mycallback(){ // whatever } if (window.datasette) { window.datasette.init(mycallback); } else { document.addEventListener('datasette:init', mycallback); } ``` |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
JavaScript plugin hooks mechanism similar to pluggy 712260429 |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [issue_comments] ( [html_url] TEXT, [issue_url] TEXT, [id] INTEGER PRIMARY KEY, [node_id] TEXT, [user] INTEGER REFERENCES [users]([id]), [created_at] TEXT, [updated_at] TEXT, [author_association] TEXT, [body] TEXT, [reactions] TEXT, [issue] INTEGER REFERENCES [issues]([id]) , [performed_via_github_app] TEXT); CREATE INDEX [idx_issue_comments_issue] ON [issue_comments] ([issue]); CREATE INDEX [idx_issue_comments_user] ON [issue_comments] ([user]);
issue 16