{"id": 664072046, "node_id": "MDExOlB1bGxSZXF1ZXN0NjY0MDcyMDQ2", "number": 1370, "state": "closed", "locked": 0, "title": "Ensure db.path is a string before trying to insert into internal database", "user": {"value": 25778, "label": "eyeseast"}, "body": "Fixes #1365 \r\n\r\nThis is the simplest possible fix, with a test that will fail without it. There are a bunch of places where `db.path` is getting converted to and from a `Path` type, so this fix errs on the side of calling `str(db.path)` right before it's inserted.", "created_at": "2021-06-08T01:16:48Z", "updated_at": "2021-06-21T15:57:39Z", "closed_at": "2021-06-21T15:57:39Z", "merged_at": "2021-06-21T15:57:39Z", "merge_commit_sha": "a6c55afe8c82ead8deb32f90c9324022fd422324", "assignee": null, "milestone": null, "draft": 0, "head": "2de712e439097de1d31f00db312cb87764642a87", "base": "f4c5777c7e4ed406313583de09a3bf746552167f", "author_association": "CONTRIBUTOR", "repo": {"value": 107914493, "label": "datasette"}, "url": "https://github.com/simonw/datasette/pull/1370", "merged_by": null, "auto_merge": null} {"id": 821992886, "node_id": "PR_kwDOCGYnMM4w_p22", "number": 385, "state": "closed", "locked": 0, "title": "Add new spatialite helper methods", "user": {"value": 25778, "label": "eyeseast"}, "body": "Refs #79 \r\n\r\nThis PR adds three new Spatialite-related methods to Database and Table:\r\n\r\n- `Database.init_spatialite` loads the Spatialite extension and initializes it\r\n- `Table.add_geometry_column` adds a geometry column\r\n- `Table.create_spatial_index` creates a spatial index\r\n\r\nHas tests and documentation. Feedback very welcome.", "created_at": "2022-01-14T03:57:30Z", "updated_at": "2022-02-05T00:04:26Z", "closed_at": "2022-02-04T05:55:10Z", "merged_at": "2022-02-04T05:55:10Z", "merge_commit_sha": "ee11274fcb1c00f32c95f2ef2924d5349538eb4d", "assignee": null, "milestone": null, "draft": 0, "head": "af86b17acf2fa50048e38b96497636d49db89766", "base": "74586d3cb26fa3cc3412721985ecdc1864c2a31d", "author_association": "CONTRIBUTOR", "repo": {"value": 140912432, "label": "sqlite-utils"}, "url": "https://github.com/simonw/sqlite-utils/pull/385", "merged_by": null, "auto_merge": null} {"id": 853484980, "node_id": "PR_kwDOCGYnMM4y3yW0", "number": 407, "state": "closed", "locked": 0, "title": "Add SpatiaLite helpers to CLI", "user": {"value": 25778, "label": "eyeseast"}, "body": "Closes #398 \r\n\r\nThis adds SpatiaLite helpers to the CLI. \r\n\r\n```sh\r\n# init spatialite when creating a database\r\nsqlite-utils create database.db --enable-wal --init-spatialite\r\n\r\n# add geometry columns\r\n# needs a database, table, geometry column name, type, with optional SRID and not-null\r\n# this will throw an error if the table doesn't already exist\r\nsqlite-utils add-geometry-column database.db table-name geometry --srid 4326 --not-null\r\n\r\n# spatial index an existing table/column\r\n# this will throw an error it the table and column don't exist\r\nsqlite-utils create-spatial-index database.db table-name geometry\r\n```\r\n\r\nDocs and tests are included. ", "created_at": "2022-02-15T16:50:17Z", "updated_at": "2022-02-16T01:49:40Z", "closed_at": "2022-02-16T00:58:08Z", "merged_at": "2022-02-16T00:58:07Z", "merge_commit_sha": "a692c56659c3563b26dcdc9e3534d63ecc26e180", "assignee": null, "milestone": null, "draft": 0, "head": "a974da591915e0548182bbbf01da34ecb9e537e6", "base": "e7f040106b5f5a892ebd984f19b21c605e87c142", "author_association": "CONTRIBUTOR", "repo": {"value": 140912432, "label": "sqlite-utils"}, "url": "https://github.com/simonw/sqlite-utils/pull/407", "merged_by": null, "auto_merge": null} {"id": 887534558, "node_id": "PR_kwDOCGYnMM405rPe", "number": 419, "state": "closed", "locked": 0, "title": "Ignore common generated files", "user": {"value": 25778, "label": "eyeseast"}, "body": "Closes #418 \r\n\r\nThis adds four files to `.gitignore`:\r\n\r\n\t.hypothesis/\r\n\tPipfile\r\n\tPipfile.lock\r\n\tpyproject.toml\r\n\r\nThose are all generated in the course of development and testing.", "created_at": "2022-03-23T18:06:22Z", "updated_at": "2022-03-24T21:01:44Z", "closed_at": "2022-03-24T21:01:44Z", "merged_at": "2022-03-24T21:01:44Z", "merge_commit_sha": "396f80fcc60da8dd844577114f7920830a2e5403", "assignee": null, "milestone": null, "draft": 0, "head": "228f73615cf993dd3caf3c240682c00392832bb8", "base": "93fa79d30b1531bea281d0eb6b925c4e61bc1aa6", "author_association": "CONTRIBUTOR", "repo": {"value": 140912432, "label": "sqlite-utils"}, "url": "https://github.com/simonw/sqlite-utils/pull/419", "merged_by": null, "auto_merge": null} {"id": 985781142, "node_id": "PR_kwDOBm6k_c46wdOW", "number": 1766, "state": "closed", "locked": 0, "title": "Keep track of config_dir", "user": {"value": 25778, "label": "eyeseast"}, "body": "Closes #1764 \r\n\r\nSmall change that adds `self.config_dir = config_dir` to `Datasette.__init__`. This will let plugins also use `config_dir`, if available.", "created_at": "2022-07-03T17:37:02Z", "updated_at": "2022-07-18T01:12:45Z", "closed_at": "2022-07-18T01:12:45Z", "merged_at": "2022-07-18T01:12:45Z", "merge_commit_sha": "01369176b0a8943ab45292ffc6f9c929b80a00e8", "assignee": null, "milestone": null, "draft": 0, "head": "257fd240975abf9647217f5d22ccadbecd6ec9f2", "base": "9f1eb0d4eac483b953392157bd9fd6cc4df37de7", "author_association": "CONTRIBUTOR", "repo": {"value": 107914493, "label": "datasette"}, "url": "https://github.com/simonw/datasette/pull/1766", "merged_by": null, "auto_merge": null} {"id": 1201985064, "node_id": "PR_kwDOBm6k_c5HpNYo", "number": 1996, "state": "open", "locked": 0, "title": "Document custom json encoder", "user": {"value": 25778, "label": "eyeseast"}, "body": "Closes #1983 \r\n\r\nAll documentation here. Edits welcome.\r\n\r\n\r\n\r\n----\n:books: Documentation preview :books:: https://datasette--1996.org.readthedocs.build/en/1996/\n\r\n", "created_at": "2023-01-18T16:54:14Z", "updated_at": "2023-01-19T12:55:57Z", "closed_at": null, "merged_at": null, "merge_commit_sha": "b608768f75e8e15ee4618ebac8bcba2da47b2aa3", "assignee": null, "milestone": null, "draft": 0, "head": "96b8b7f1ecf3abaec5921aaedee251e36eed5339", "base": "6a352e99ab988dbf8fd22a100049caa6ad33f1ec", "author_association": "CONTRIBUTOR", "repo": {"value": 107914493, "label": "datasette"}, "url": "https://github.com/simonw/datasette/pull/1996", "merged_by": null, "auto_merge": null} {"id": 1272169404, "node_id": "PR_kwDOCGYnMM5L08O8", "number": 531, "state": "closed", "locked": 0, "title": "Add paths for homebrew on Apple silicon", "user": {"value": 25778, "label": "eyeseast"}, "body": "This also passes in the extension path when specified in GIS methods. Wherever we know an extension path, we use `db.init_spatialite(find_spatialite() or load_extension)`.\r\n\r\n\r\n----\n:books: Documentation preview :books:: https://sqlite-utils--531.org.readthedocs.build/en/531/\n\r\n", "created_at": "2023-03-11T22:27:52Z", "updated_at": "2023-04-09T01:49:44Z", "closed_at": "2023-04-09T01:49:43Z", "merged_at": null, "merge_commit_sha": "24f3eb082b98b8d676bab2eab4f763cd9b50fe96", "assignee": null, "milestone": null, "draft": 0, "head": "afdf6187716b19fce8692f6887a1d45c85477fee", "base": "c0251cc9271260de73b4227859a51fab9b4cb745", "author_association": "CONTRIBUTOR", "repo": {"value": 140912432, "label": "sqlite-utils"}, "url": "https://github.com/simonw/sqlite-utils/pull/531", "merged_by": null, "auto_merge": null} {"id": 1306498393, "node_id": "PR_kwDOCGYnMM5N35VZ", "number": 536, "state": "closed", "locked": 0, "title": "Add paths for homebrew on Apple silicon", "user": {"value": 25778, "label": "eyeseast"}, "body": "Does what it says and nothing else. This is the same set of paths as Datasette uses.\r\n\r\n\r\n----\n:books: Documentation preview :books:: https://sqlite-utils--536.org.readthedocs.build/en/536/\n\r\n", "created_at": "2023-04-08T13:34:21Z", "updated_at": "2023-04-13T01:44:43Z", "closed_at": "2023-04-13T01:44:43Z", "merged_at": "2023-04-13T01:44:43Z", "merge_commit_sha": "8f9a729e8aff972cb18de25b40f4113e26bbc758", "assignee": null, "milestone": null, "draft": 0, "head": "cea05dc5eab8d10fbd8943e615d2ab0dceff863c", "base": "c0251cc9271260de73b4227859a51fab9b4cb745", "author_association": "CONTRIBUTOR", "repo": {"value": 140912432, "label": "sqlite-utils"}, "url": "https://github.com/simonw/sqlite-utils/pull/536", "merged_by": null, "auto_merge": null}