home / github

Menu
  • GraphQL API

issue_comments

Table actions
  • GraphQL API for issue_comments

15 rows where issue = 521868864

✎ View and edit SQL

This data as json, CSV (advanced)

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

id ▼ html_url issue_url node_id user created_at updated_at author_association body reactions issue performed_via_github_app
553170650 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553170650 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzE3MDY1MA== simonw 9599 2019-11-12T23:49:29Z 2019-11-12T23:49:29Z OWNER This relates to this bug: https://github.com/dogsheep/github-to-sqlite/pull/8#issuecomment-549233778 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553171011 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553171011 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzE3MTAxMQ== simonw 9599 2019-11-12T23:50:52Z 2019-11-12T23:50:52Z OWNER Fixing this is going to be a real pain. There's lots of code out there that uses `sqlite-utils` with the expectation that `upsert()` behaves as it currently does. Maybe I need to introduce new terms for both of these different patterns and deprecate the existing `.upsert()` and `.upsert_all()` since their behaviour can't be changed? Or maybe I fix this and ship `sqlite-utils 2.0` with a breaking change? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553171414 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553171414 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzE3MTQxNA== simonw 9599 2019-11-12T23:52:35Z 2019-11-12T23:52:35Z OWNER If I do implement the correct definition of `.upsert()` I think I'll use this pattern, since it works in versions of SQLite prior to 3.24: ```sql INSERT OR IGNORE INTO book(id) VALUES(1001); UPDATE book SET name = 'Programming' WHERE id = 1001; ``` {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553526685 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553526685 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzUyNjY4NQ== simonw 9599 2019-11-13T17:58:59Z 2019-11-13T17:58:59Z OWNER This warrants making a backwards compatible change, which means I'll need to bump the major version number and release 2.0. I'm going to rename the existing `upsert()` and `upsert_all()` methods to `replace()` and `replace_all()` - then write new `upsert()` and `upsert_all()` methods that implement the correct behavior. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553527384 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553527384 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzUyNzM4NA== simonw 9599 2019-11-13T18:00:41Z 2019-11-13T18:00:41Z OWNER Is `replace()` a good name here? It doesn't really convey the idea that a brand new record will be created if there isn't an existing one to replace. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553528386 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553528386 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzUyODM4Ng== simonw 9599 2019-11-13T18:03:10Z 2019-11-13T18:03:54Z OWNER Maybe `inplace()` (combining "insert" and "replace")? It could be an alias for `.insert(..., replace=True)` {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553528850 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553528850 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzUyODg1MA== simonw 9599 2019-11-13T18:04:20Z 2019-11-13T18:04:20Z OWNER This is going to affect the design of the CLI subcommands as well. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553540146 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553540146 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzU0MDE0Ng== simonw 9599 2019-11-13T18:33:30Z 2019-11-13T18:33:30Z OWNER Maybe instead of inventing a new term I should tell people to use `.insert(..., replace=True)` directly. That matches `ignore=True`. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
553574011 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-553574011 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1MzU3NDAxMQ== simonw 9599 2019-11-13T19:53:45Z 2019-11-13T19:53:45Z OWNER First step: add a `replace=True` argument to `insert()` and `insert_all()` that does the same thing as the current `upsert=True` https://github.com/simonw/sqlite-utils/blob/8dab9fd1ccf571e188eec9ccf606a0c50fccf200/sqlite_utils/db.py#L938-L946 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
554565198 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-554565198 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1NDU2NTE5OA== simonw 9599 2019-11-15T23:12:28Z 2019-11-15T23:12:28Z OWNER Urgh this is going to be quite a bit of work, especially in the CLI module which shares an implementation for `upsert` and `insert` in a way that looks like it will have to be unwrapped. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
555690319 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-555690319 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU1NTY5MDMxOQ== simonw 9599 2019-11-19T20:10:17Z 2019-11-19T20:10:17Z OWNER Thinking about this further: I believe every time I've personally used `upsert` in the past (either with the Python library or the CLI tool) I've actually wanted the new behaviour, where "upsert" means "update existing record with these changes, or insert a new record if one does not exist". So I'm happy with `upsert` doing that, and `insert --replace` being added as an option that does what `upsert` does ta the moment. I'll still ship it as version 2.0 since it's technically a breaking change. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
569131397 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-569131397 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU2OTEzMTM5Nw== simonw 9599 2019-12-26T20:49:11Z 2019-12-26T20:49:11Z OWNER Don't forget to update the documentation. This will be quite an involved task. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
569226620 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-569226620 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU2OTIyNjYyMA== simonw 9599 2019-12-27T09:05:29Z 2019-12-27T09:05:36Z OWNER I'm going to start by ignoring the existing `upsert` entirely and implementing `.insert(..., replace=True)` and `$ sqlite-utils insert --replace`. Including updating the tests. Then I'll figure out how to implement the new `.upsert()` / `$ sqlite-utils upsert`. Then I'll update the documentation, and ship `sqlite-utils` 2.0. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
569588216 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-569588216 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU2OTU4ODIxNg== simonw 9599 2019-12-30T05:31:45Z 2019-12-30T05:31:45Z OWNER Last step: update changelog and ship 2.0. Then I can close this issue. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  
569844426 https://github.com/simonw/sqlite-utils/issues/66#issuecomment-569844426 https://api.github.com/repos/simonw/sqlite-utils/issues/66 MDEyOklzc3VlQ29tbWVudDU2OTg0NDQyNg== simonw 9599 2019-12-31T01:30:20Z 2019-12-31T01:30:20Z OWNER I shipped 2.0 - release notes here: https://sqlite-utils.readthedocs.io/en/stable/changelog.html#v2 I also wrote about it on my blog: https://simonwillison.net/2019/Dec/30/sqlite-utils-2/ {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} The ".upsert()" method is misnamed 521868864  

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 46.054ms · About: simonw/datasette-graphql