{"html_url": "https://github.com/simonw/datasette/issues/417#issuecomment-586599424", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/417", "id": 586599424, "node_id": "MDEyOklzc3VlQ29tbWVudDU4NjU5OTQyNA==", "user": {"value": 82988, "label": "psychemedia"}, "created_at": "2020-02-15T15:12:19Z", "updated_at": "2020-02-15T15:12:33Z", "author_association": "CONTRIBUTOR", "body": "So could the polling support also allow you to call sqlite_utils to update a database with csv files? (Though I'm guessing you would only want to handle changed files? Do your scrapers check and cache csv datestamps/hashes?)", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 421546944, "label": "Datasette Library"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/674#issuecomment-586622194", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/674", "id": 586622194, "node_id": "MDEyOklzc3VlQ29tbWVudDU4NjYyMjE5NA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-02-15T17:22:57Z", "updated_at": "2020-02-15T17:22:57Z", "author_association": "OWNER", "body": "I did some research for this in #673 - I think the solution is to split this out into a separate utility function:\r\n\r\nhttps://github.com/simonw/datasette/blob/3ffb8f3b98252531d11897fd431711e9b8045ace/datasette/app.py#L219-L237", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 565552217, "label": "Rethink how sanity checks work"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/674#issuecomment-586622557", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/674", "id": 586622557, "node_id": "MDEyOklzc3VlQ29tbWVudDU4NjYyMjU1Nw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-02-15T17:26:43Z", "updated_at": "2020-02-15T17:38:56Z", "author_association": "OWNER", "body": "`datasette.utils.check_connection(conn)`\r\n\r\nI'd like it to be able to return an indicator of what the problem is, so that the spatialite check above can behave in a special way. So maybe it raises a `ConnectionProblem` exception if there is a problem? `SpatialiteConnectionProblem` can be a subclass of that.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 565552217, "label": "Rethink how sanity checks work"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/674#issuecomment-586622677", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/674", "id": 586622677, "node_id": "MDEyOklzc3VlQ29tbWVudDU4NjYyMjY3Nw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-02-15T17:28:03Z", "updated_at": "2020-02-15T17:28:03Z", "author_association": "OWNER", "body": "I can unit test this with a minimal SpatiaLite database, created like this: https://github.com/simonw/datasette/issues/673#issuecomment-586449286", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 565552217, "label": "Rethink how sanity checks work"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/674#issuecomment-586625451", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/674", "id": 586625451, "node_id": "MDEyOklzc3VlQ29tbWVudDU4NjYyNTQ1MQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-02-15T17:57:43Z", "updated_at": "2020-02-15T17:57:43Z", "author_association": "OWNER", "body": "I don't have a unit test for other databases that can't be opened, but I tested it manually against a copy of an Apple Photos `photos.db` file (found using `find ~/Library | grep photos.db`) and got this:\r\n```\r\n$ datasette /tmp/photos.db \r\nServe! files=('/tmp/photos.db',) (immutables=()) on port 8001\r\nUsage: datasette serve [OPTIONS] [FILES]...\r\n\r\nError: Connection to /tmp/photos.db failed check: no such module: RidList_VirtualReaderModule\r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 565552217, "label": "Rethink how sanity checks work"}, "performed_via_github_app": null}