home / github

Menu
  • Search all tables
  • GraphQL API

issue_comments

Table actions
  • GraphQL API for issue_comments

12 rows where issue = 339505204 sorted by updated_at descending

✖
✖

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: created_at (date), updated_at (date)

user 1

  • simonw 12

issue 1

  • Package datasette for installation using homebrew · 12 ✖

author_association 1

  • OWNER 12
id html_url issue_url node_id user created_at updated_at ▲ author_association body reactions issue performed_via_github_app
672088880 https://github.com/simonw/datasette/issues/335#issuecomment-672088880 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MjA4ODg4MA== simonw 9599 2020-08-11T16:54:06Z 2020-08-11T16:54:06Z OWNER

It works! $ brew tap simonw/datasette $ brew install simonw/datasette/datasette $ datasette --version datasette, version 0.46

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
671733187 https://github.com/simonw/datasette/issues/335#issuecomment-671733187 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MTczMzE4Nw== simonw 9599 2020-08-11T05:25:23Z 2020-08-11T05:25:23Z OWNER

I got this almost working in simonw/homebrew-datasette - see https://github.com/simonw/homebrew-datasette/issues/2 for the last missing detail.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
671077168 https://github.com/simonw/datasette/issues/335#issuecomment-671077168 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MTA3NzE2OA== simonw 9599 2020-08-09T17:10:15Z 2020-08-09T18:13:39Z OWNER

Here's the issue that explains that warning: https://github.com/pypa/pip/issues/5599

This should fix it (risky):

from pip._internal.cli.main import main
{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
671076975 https://github.com/simonw/datasette/issues/335#issuecomment-671076975 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MTA3Njk3NQ== simonw 9599 2020-08-09T17:08:34Z 2020-08-09T17:09:21Z OWNER

Quick prototype of datasette install: ```diff diff --git a/datasette/cli.py b/datasette/cli.py index 287195a..95b6eb7 100644 --- a/datasette/cli.py +++ b/datasette/cli.py @@ -231,6 +231,18 @@ def package( call(args)

+@cli.command() +@click.argument("packages", nargs=-1, required=True) +def install(packages): + "Install Python packages - e.g. Datasette plugins - into the same environment as Datasett" + import pip + + try: + pip.main(["install"] + list(packages)) + except SystemExit as e: + pass + + @cli.command() @click.argument("files", type=click.Path(exists=True), nargs=-1) @click.option( ```

``` $ datasette install Usage: datasette install [OPTIONS] PACKAGES... Try 'datasette install --help' for help.

Error: Missing argument 'PACKAGES...'. $ datasette install datasette-vega WARNING: pip is being invoked by an old script wrapper. This will fail in a future version of pip. Please see https://github.com/pypa/pip/issues/5599 for advice on fixing the underlying issue. To avoid this problem you can invoke Python with '-m pip' instead of running pip directly. Collecting datasette-vega Using cached datasette_vega-0.6.2-py3-none-any.whl (1.8 MB) ... ```

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
671005731 https://github.com/simonw/datasette/issues/335#issuecomment-671005731 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MTAwNTczMQ== simonw 9599 2020-08-09T04:44:13Z 2020-08-09T17:04:21Z OWNER

Telling people how to figure out that pip location is going to be pretty unpleasant.

How about instead providing a datasette plugins --install=datasette-graphql command?

Or datasette install datasette-vega

It would run pip install in the same virtualenv as Datasette itself.

http://jelly.codes/articles/python-pip-module/ shows how to do this:

```python

import pip

try: pip.main(["install", "plumbum"]) except SystemExit as e: pass ```

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
671001457 https://github.com/simonw/datasette/issues/335#issuecomment-671001457 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MTAwMTQ1Nw== simonw 9599 2020-08-09T03:37:39Z 2020-08-09T03:37:39Z OWNER

Here's what happened when I installed homebrew-vd: https://gist.github.com/simonw/7bfd971a62743d7ca248e6b5e696c240

It worked! And from digging around, it has a virtual environment at /usr/local/Cellar/visidata/1.5.2/libexec/

Which means /usr/local/Cellar/visidata/1.5.2/libexec/bin/pip is a working pip

And I tried running these commands and confirmed that I get a datasette with an additional plugin:

/usr/local/Cellar/visidata/1.5.2/libexec/bin/pip install datasette /usr/local/Cellar/visidata/1.5.2/libexec/bin/pip install datasette-graphql /usr/local/Cellar/visidata/1.5.2/libexec/bin/datasette plugins [ { "name": "datasette-graphql", "static": false, "templates": true, "version": "0.11", "hooks": [ "register_routes", "startup" ] } ] So I can package Datasette as a homebrew package AND I can give people instructions for installing plugins.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
670999860 https://github.com/simonw/datasette/issues/335#issuecomment-670999860 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MDk5OTg2MA== simonw 9599 2020-08-09T03:12:44Z 2020-08-09T03:12:44Z OWNER

How would plugin installation work if Datasette was installed via homebrew?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
670999832 https://github.com/simonw/datasette/issues/335#issuecomment-670999832 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDY3MDk5OTgzMg== simonw 9599 2020-08-09T03:12:14Z 2020-08-09T03:12:14Z OWNER

Another useful example: https://github.com/Homebrew/homebrew-core/blob/master/Formula/trailscraper.rb

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
404208602 https://github.com/simonw/datasette/issues/335#issuecomment-404208602 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDQwNDIwODYwMg== simonw 9599 2018-07-11T15:20:12Z 2018-07-11T15:20:12Z OWNER

Here's a good example of a homebrew tap: https://github.com/saulpw/homebrew-vd

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
403866099 https://github.com/simonw/datasette/issues/335#issuecomment-403866099 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDQwMzg2NjA5OQ== simonw 9599 2018-07-10T15:32:14Z 2018-07-10T15:32:14Z OWNER

I can host a custom tap without needing to get anything accepted into homebrew-core: https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap

Since my principle goal here is ensuring an easy installation path for people who are familiar with brew but don't know how to use pip and Python 3 that could be a good option.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
403863927 https://github.com/simonw/datasette/issues/335#issuecomment-403863927 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDQwMzg2MzkyNw== simonw 9599 2018-07-10T15:26:27Z 2018-07-10T15:29:54Z OWNER

Here are some useful examples of other Python apps that have been packaged using the recipe described above: https://github.com/Homebrew/homebrew-core/search?utf8=%E2%9C%93&q=virtualenv_install_with_resources&type=

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  
403865063 https://github.com/simonw/datasette/issues/335#issuecomment-403865063 https://api.github.com/repos/simonw/datasette/issues/335 MDEyOklzc3VlQ29tbWVudDQwMzg2NTA2Mw== simonw 9599 2018-07-10T15:29:32Z 2018-07-10T15:29:32Z OWNER

Huh... from https://docs.brew.sh/Acceptable-Formulae

We frown on authors submitting their own work unless it is very popular.

Marking this one as "help wanted" :)

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Package datasette for installation using homebrew 339505204  

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

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]);
Powered by Datasette · Queries took 22.731ms · About: github-to-sqlite
  • Sort ascending
  • Sort descending
  • Facet by this
  • Hide this column
  • Show all columns
  • Show not-blank rows