home / github

Menu
  • Search all tables
  • GraphQL API

issue_comments

Table actions
  • GraphQL API for issue_comments

16 rows where issue = 1102899312 sorted by updated_at descending

✖
✖

✎ View and edit SQL

This data as json, CSV (advanced)

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

user 3

  • simonw 8
  • eyeseast 7
  • codecov[bot] 1

author_association 3

  • OWNER 8
  • CONTRIBUTOR 7
  • NONE 1

issue 1

  • Add new spatialite helper methods · 16 ✖
id html_url issue_url node_id user created_at updated_at ▲ author_association body reactions issue performed_via_github_app
1030002502 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1030002502 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49ZJdG eyeseast 25778 2022-02-04T13:50:19Z 2022-02-04T13:50:19Z CONTRIBUTOR

Awesome. Thanks for your help getting it in. Will now look at adding CLI versions of this. It's going to be super helpful on a bunch of my projects.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029703216 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029703216 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49YAYw simonw 9599 2022-02-04T06:45:43Z 2022-02-04T06:45:43Z OWNER

Shipped this as sqlite-utils 3.23: https://sqlite-utils.datasette.io/en/stable/changelog.html#v3-23

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029682294 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029682294 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49X7R2 simonw 9599 2022-02-04T05:53:26Z 2022-02-04T05:53:26Z OWNER

This looks fantastic, thanks for all of the work you put into this!

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029177700 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029177700 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49WAFk codecov[bot] 22429695 2022-02-03T16:38:45Z 2022-02-04T05:52:39Z NONE

Codecov Report

Merging #385 (af86b17) into main (74586d3) will decrease coverage by 0.61%. The diff coverage is 28.00%.

```diff @@ Coverage Diff @@

main #385 +/-

========================================== - Coverage 96.52% 95.91% -0.62%
========================================== Files 6 6
Lines 2389 2421 +32
========================================== + Hits 2306 2322 +16
- Misses 83 99 +16
```

| Impacted Files | Coverage Δ | | |---|---|---| | sqlite_utils/cli.py | 95.69% <ø> (+0.15%) | :arrow_up: | | sqlite_utils/db.py | 96.29% <15.00%> (-1.40%) | :arrow_down: | | sqlite_utils/utils.py | 94.59% <80.00%> (ø) | |


Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 74586d3...af86b17. Read the comment docs.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029370537 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029370537 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49WvKp eyeseast 25778 2022-02-03T20:25:58Z 2022-02-03T20:25:58Z CONTRIBUTOR

OK, I moved all the GIS helpers into db.py as methods on Database and Table, and I put find_spatialite back in utils.py. I deleted gis.py, since there's nothing left it. Docs and tests are updated and passing.

I think this is better.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029338360 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029338360 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49WnT4 eyeseast 25778 2022-02-03T19:43:56Z 2022-02-03T19:43:56Z CONTRIBUTOR

Works for me. I was just looking at how the FTS extensions work and they're just methods, too. So this can be consistent with that.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029335225 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029335225 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49Wmi5 simonw 9599 2022-02-03T19:39:40Z 2022-02-03T19:39:40Z OWNER

I thought about adding these as methods on Database and Table, and I'm back and forth on it for the same reasons you are. It's certainly cleaner, and it's clearer what you're operating on. I could go either way.

I do sort of like having all the Spatialite stuff in its own module, just because it's built around an extension you might not have or want, but I don't know if that's a good reason to have a different API.

You could have init_spatialite add methods to Database and Table, so they're only there if you have Spatialite set up. Is that too clever? It feels too clever.

Yeah that's too clever. You know what? I'm pretty confident we are both massively over-thinking this. We should put the methods on Database and Table! API simplicity and consistency matters more than vague concerns about purity.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029326568 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029326568 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49Wkbo eyeseast 25778 2022-02-03T19:28:26Z 2022-02-03T19:28:26Z CONTRIBUTOR

from sqlite_utils.utils import find_spatialite is part of the documented API already:

https://sqlite-utils.datasette.io/en/3.22.1/python-api.html#finding-spatialite

To avoid needing to bump the major version number to 4 to indicate a backwards incompatible change, we should keep a from .gis import find_spatialite line at the top of utils.py such that any existing code with that documented import continues to work.

This is fixed now. I had to take out the type annotations for Database and Table to avoid a circular import, but that's fine and may be moot if these become class methods.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029306428 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029306428 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49Wfg8 eyeseast 25778 2022-02-03T19:03:43Z 2022-02-03T19:03:43Z CONTRIBUTOR

I thought about adding these as methods on Database and Table, and I'm back and forth on it for the same reasons you are. It's certainly cleaner, and it's clearer what you're operating on. I could go either way.

I do sort of like having all the Spatialite stuff in its own module, just because it's built around an extension you might not have or want, but I don't know if that's a good reason to have a different API.

You could have init_spatialite add methods to Database and Table, so they're only there if you have Spatialite set up. Is that too clever? It feels too clever.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029297971 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029297971 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49Wdcz simonw 9599 2022-02-03T18:52:50Z 2022-02-03T18:52:50Z OWNER

I'm not sure I like name="geometry" as the default argument to add_geometry_column - mainly because of this example here: python add_geometry_column(db["locations"], "POINT") create_spatial_index(db["locations"], "geometry") I had to go and look at the code to figure out if "POINT" was the name of the column - and I don't like how inconsistent it looks next to the following create_spatial_index() call where you DO need to pass the column name.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029296782 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029296782 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49WdKO simonw 9599 2022-02-03T18:51:21Z 2022-02-03T18:51:21Z OWNER

What do you think about adding these as methods on the Database class instead? Then you could do:

```python

This is with an optional argument, which if omitted runs find_spatialite() for you:

db.init_spatialite()

Instead of:

init_spatialite(db, find_spatialite()) Likewise, the `add_geometry_column` and `create_spatial_index` methods could live on `Table`:python

Instead of this:

add_geometry_column(db["locations"], "POINT", "geometry") create_spatial_index(db["locations"], "geometry")

Could have this:

db["locations"].add_geometry_column("POINT") db["locations"].create_spatial_index("geometry") `` On the one hand, this is much more consistent with the existingsqlite-utils` Python API.

But on the other hand... this is mixing SpatiaLite functionality directly into the core classes. Is that a good idea, seeing as SpatiaLite is both an optional extension (which can be tricky to install) AND something that has a very different release cadence and quality-of-documentation from SQLite itself?

There's a third option: the SpatiaLite could exist on subclasses of Database and Table - so the above examples would look something like this:

```python from sqlite_utils.gis import SpatiaLiteDatabase

db = SpatiaLiteDatabase("geo.db") db.init_spatialite() db["locations"].add_geometry_column("POINT") db["locations"].create_spatial_index("geometry") ```

On the one hand, this would keep the SpatiaLite-specific stuff out of the core Database/Table classes. But it feels a bit untidy to me, especially since it raises the spectre of someone who was already subclassing Database for some reason now needing to instead subclass SpatiaLiteDatabase (not too keen on that capitalization) - or even (horror) trying to dabble with multiple inheritance, which can only lead to pain.

So I don't have a strong opinion formed on this question yet!

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029285985 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029285985 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49Wahh simonw 9599 2022-02-03T18:37:48Z 2022-02-03T18:37:48Z OWNER

from sqlite_utils.utils import find_spatialite is part of the documented API already:

https://sqlite-utils.datasette.io/en/3.22.1/python-api.html#finding-spatialite

To avoid needing to bump the major version number to 4 to indicate a backwards incompatible change, we should keep a from .gis import find_spatialite line at the top of utils.py such that any existing code with that documented import continues to work.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029273853 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029273853 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49WXj9 simonw 9599 2022-02-03T18:23:30Z 2022-02-03T18:31:21Z OWNER

OK, this change makes a bunch of sense to me - and also raises some interesting questions about future additions to sqlite-utils with regards to SpatiaLite. Would sqlite-utils add-geometry-column ... be a good CLI enhancement. for example?

I see you've already talked about that in #79 - moving this conversation there!

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029180984 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029180984 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49WA44 eyeseast 25778 2022-02-03T16:42:04Z 2022-02-03T16:42:04Z CONTRIBUTOR

Fixed my spelling. That's a useful thing.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029177015 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029177015 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49V_63 simonw 9599 2022-02-03T16:38:02Z 2022-02-03T16:38:02Z OWNER

Sorry had missed this - tests should run now.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  
1029175907 https://github.com/simonw/sqlite-utils/pull/385#issuecomment-1029175907 https://api.github.com/repos/simonw/sqlite-utils/issues/385 IC_kwDOCGYnMM49V_pj eyeseast 25778 2022-02-03T16:36:54Z 2022-02-03T16:36:54Z CONTRIBUTOR

@simonw Not sure if you've seen this, but any chance you can run the tests?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Add new spatialite helper methods 1102899312  

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 30.725ms · About: github-to-sqlite
  • Sort ascending
  • Sort descending
  • Facet by this
  • Hide this column
  • Show all columns
  • Show not-blank rows