home / github

Menu
  • Search all tables
  • GraphQL API

issues

Table actions
  • GraphQL API for issues

9 rows where "created_at" is on date 2018-04-16 and user = 9599 sorted by updated_at descending

✖
✖
✖

✎ View and edit SQL

This data as json, CSV (advanced)

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

type 2

  • issue 7
  • pull 2

state 2

  • closed 8
  • open 1

repo 1

  • datasette 9
id node_id number title user state locked assignee milestone comments created_at updated_at ▲ closed_at author_association pull_request body repo type active_lock_reason performed_via_github_app reactions draft state_reason
314506446 MDU6SXNzdWUzMTQ1MDY0NDY= 214 Ability for plugins to define extra JavaScript and CSS simonw 9599 closed 0     6 2018-04-16T05:29:34Z 2020-09-30T20:36:11Z 2018-04-18T03:13:03Z OWNER  

This can hook in to the existing extra_css_urls and extra_js_urls mechanism:

https://github.com/simonw/datasette/blob/b2955d9065ea019500c7d072bcd9d49d1967f051/datasette/app.py#L304-L305

The plugins should be able to bundle their own assets though, so it will also have to integrate with the /static/ static mounts mechanism somehow:

https://github.com/simonw/datasette/blob/b2955d9065ea019500c7d072bcd9d49d1967f051/datasette/app.py#L1255-L1257

Refs #14

datasette 107914493 issue    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/214/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  completed
314847571 MDU6SXNzdWUzMTQ4NDc1NzE= 220 Investigate syntactic sugar for plugins simonw 9599 closed 0     2 2018-04-16T23:01:39Z 2020-06-11T21:50:06Z 2020-06-11T21:49:55Z OWNER  

Suggested by @andrewhayward on Twitter: https://twitter.com/arhayward/status/986015118965268480?s=21

Have you considered a basic abstraction on top of that, for standard hook features?

``` @sql_function random_integer(a,b): return random.randint(a,b)

@template_filter uppercase(str): return str.upper() ```

Maybe from datasette.plugins import template_filter?

Would have to work out how to get this to play well with pluggy

datasette 107914493 issue    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/220/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  completed
314506669 MDU6SXNzdWUzMTQ1MDY2Njk= 215 Allow plugins to define additional URL routes and views simonw 9599 closed 0   Datasette 0.44 5512395 14 2018-04-16T05:31:09Z 2020-06-09T03:14:32Z 2020-06-09T03:12:08Z OWNER  

Might be as simple as having plugins get passed the app after the other routes have been defined:

https://github.com/simonw/datasette/blob/b2955d9065ea019500c7d072bcd9d49d1967f051/datasette/app.py#L1270-L1274

Refs #14

datasette 107914493 issue    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/215/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  completed
314725342 MDU6SXNzdWUzMTQ3MjUzNDI= 217 Plugin support for datasette publish simonw 9599 closed 0     1 2018-04-16T16:17:14Z 2018-07-26T05:33:39Z 2018-07-26T05:16:00Z OWNER  

It should be possible to support additional deployment options by writing a plugin (see #59).

As part of this, rewrite the Heroku and Now publishers to be implemented as plugins (they will still ship with datasette by default).

Maybe datasette package should be changed to being part of publish instead, datasette publish docker perhaps?

Refs #14

datasette 107914493 issue    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/217/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  completed
314771615 MDU6SXNzdWUzMTQ3NzE2MTU= 218 Support custom unit display in order to handle "$10,000" simonw 9599 open 0     0 2018-04-16T18:39:31Z 2018-07-10T17:45:38Z   OWNER  

I tried to get Datasette to display $10,000 using the new units support but we currently only display units as a suffix:

https://github.com/simonw/datasette/blob/10a34f995c70daa37a8a2aa02c3135a4b023a24c/datasette/app.py#L563-L572

It would be neat if there was a mechanism for specifying a custom unit display - maybe something like this:

{ "custom_units": { "us_dollar": { "unit": "us_dollar = [] = $", "format": "${:,}" } } }

datasette 107914493 issue    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/218/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
   
314506033 MDU6SXNzdWUzMTQ1MDYwMzM= 213 Documentation for plugins system simonw 9599 closed 0     0 2018-04-16T05:27:07Z 2018-04-16T15:12:48Z 2018-04-16T15:12:48Z OWNER  

Documentation for #14 - how to write plugins, how to ship plugins to PyPI and how to use the --plugins-dir option added in #211

datasette 107914493 issue    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/213/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  completed
314504812 MDExOlB1bGxSZXF1ZXN0MTgxNzU1MjIw 212 New --plugins-dir=plugins/ option simonw 9599 closed 0     0 2018-04-16T05:19:28Z 2018-04-16T05:22:18Z 2018-04-16T05:22:01Z OWNER simonw/datasette/pulls/212

Refs #211

datasette 107914493 pull    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/212/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
0  
314471743 MDU6SXNzdWUzMTQ0NzE3NDM= 211 Load plugins from a `--plugins-dir=plugins/` directory simonw 9599 closed 0     6 2018-04-16T01:17:43Z 2018-04-16T05:22:02Z 2018-04-16T05:22:02Z OWNER  

In #14 and 33c7c53ff87c2 I've added working support for setuptools entry_points plugins. These can be installed from PyPI using pip install ....

I imagine some projects will benefit from being able to add plugins without first publishing them to PyPI. Datasette already supports loading custom templates like so:

datasette serve --template-dir=mytemplates/ mydb.db

I propose an additional option, --plugins-dir= which specifies a directory full of blah.py files which will be loaded into Datasette when the application server starts.

datasette serve --plugins-dir=myplugins/ mydb.db

This will also need to be supported by datasette publish as those Python files should be copied up as part of the deployment.

datasette 107914493 issue    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/211/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  completed
314469126 MDExOlB1bGxSZXF1ZXN0MTgxNzMxOTU2 210 Start of the plugin system, based on pluggy simonw 9599 closed 0     0 2018-04-16T00:51:30Z 2018-04-16T00:56:16Z 2018-04-16T00:56:16Z OWNER simonw/datasette/pulls/210

Refs #14

datasette 107914493 pull    
{
    "url": "https://api.github.com/repos/simonw/datasette/issues/210/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
0  

Advanced export

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

CSV options:

CREATE TABLE [issues] (
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [number] INTEGER,
   [title] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [state] TEXT,
   [locked] INTEGER,
   [assignee] INTEGER REFERENCES [users]([id]),
   [milestone] INTEGER REFERENCES [milestones]([id]),
   [comments] INTEGER,
   [created_at] TEXT,
   [updated_at] TEXT,
   [closed_at] TEXT,
   [author_association] TEXT,
   [pull_request] TEXT,
   [body] TEXT,
   [repo] INTEGER REFERENCES [repos]([id]),
   [type] TEXT
, [active_lock_reason] TEXT, [performed_via_github_app] TEXT, [reactions] TEXT, [draft] INTEGER, [state_reason] TEXT);
CREATE INDEX [idx_issues_repo]
                ON [issues] ([repo]);
CREATE INDEX [idx_issues_milestone]
                ON [issues] ([milestone]);
CREATE INDEX [idx_issues_assignee]
                ON [issues] ([assignee]);
CREATE INDEX [idx_issues_user]
                ON [issues] ([user]);
Powered by Datasette · Queries took 379.506ms · About: github-to-sqlite
  • Sort ascending
  • Sort descending
  • Facet by this
  • Hide this column
  • Show all columns
  • Show not-blank rows