{"sha": "61d81494d5cfee72a99d880e47bc5f436720b415", "message": "Fleshed out README", "author_date": "2018-07-31T15:38:50Z", "committer_date": "2018-07-31T15:38:50Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "6ad9037c966311546f23fff76faf1b0c2360c097", "message": "Added support for bytes and datetime.datetime", "author_date": "2019-01-25T02:59:21Z", "committer_date": "2019-01-25T02:59:21Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "228d595f7d10994f34e948888093c2cd290267c4", "message": "Allow column names to be reserved words", "author_date": "2019-01-25T03:01:10Z", "committer_date": "2019-01-25T03:01:10Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "d18687a30a2bb14370248d8ebd446e9838d7828e", "message": "No need to skip black under Python 3.7 any more", "author_date": "2019-01-25T03:02:30Z", "committer_date": "2019-01-25T03:02:30Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "fa35cd9afbff17e5639ee07e8d78c6cbb81ea4e5", "message": "Loosen requirement versions", "author_date": "2019-01-25T03:06:30Z", "committer_date": "2019-01-25T03:06:30Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "8437fe30912967a0d74c711597e0597314bea11e", "message": "Revert \"No need to skip black under Python 3.7 any more\"\n\nIt turns out the black tests still fail in Travis against that version.\n\nThis reverts commit d18687a30a2bb14370248d8ebd446e9838d7828e.", "author_date": "2019-01-25T03:08:52Z", "committer_date": "2019-01-25T03:08:52Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "fd5829b27dce669fe1704e07536f339f20472eda", "message": "First CLI command: sqlite-utils table_names test.db", "author_date": "2019-01-25T03:30:47Z", "committer_date": "2019-01-25T03:30:47Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "231224ba1a4de42f3d3885a0accd05dcf85570e7", "message": "Added vacuum to CLI and Python API", "author_date": "2019-01-25T03:39:04Z", "committer_date": "2019-01-25T03:39:04Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "66fd63b11999e87c541b2023dd569b771927f283", "message": "Ability to list just FTS4 or FTS5 table names", "author_date": "2019-01-25T03:57:04Z", "committer_date": "2019-01-25T03:57:04Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "015bd2a840a008a105f731c50eee319963352c1b", "message": "Test for .table_names(fts5=True)", "author_date": "2019-01-25T04:23:53Z", "committer_date": "2019-01-25T04:23:53Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "0a8194e730f8ecdd9a5af1f6a8d5a889796d7dba", "message": "sqlite-utils optimize command, .optimize() and .detect_fts() table methods", "author_date": "2019-01-25T04:35:51Z", "committer_date": "2019-01-25T04:35:51Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "1c683076d3138d9d853a1adb16fb9e6d248d1245", "message": "Sanity check test for optimize --no-vacuum", "author_date": "2019-01-25T04:38:23Z", "committer_date": "2019-01-25T04:38:23Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "9e74289397e28f797290158c27e1dca2083c4e95", "message": "'sqlite-utils insert tablename file.json' command", "author_date": "2019-01-25T05:06:41Z", "committer_date": "2019-01-25T05:06:41Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "b30f924c49e46beff26dc888e96099ed8bb972f7", "message": "Implemented 'sqlite-utils upsert my.db tablename --pk=x'", "author_date": "2019-01-25T05:20:10Z", "committer_date": "2019-01-25T05:20:10Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "ffc9f09a935fdaec4236c3e5a5c252ec3aad65ef", "message": "Re-arranged documentation index page", "author_date": "2019-01-25T05:23:24Z", "committer_date": "2019-01-25T05:23:24Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "e9e1cb00c152530fedb95ea699a7408c085e429a", "message": "Release notes for 0.7", "author_date": "2019-01-25T06:39:21Z", "committer_date": "2019-01-25T06:39:21Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "ad30ccea59632fe39966116586a33f34e81cd868", "message": "Try dist:trusty to see if that gives us FTS5 in Travis CI", "author_date": "2019-01-25T06:42:53Z", "committer_date": "2019-01-25T06:42:53Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "ccb2a1e729780689188005a52c362b7e963f71e8", "message": "Try dist: xenial", "author_date": "2019-01-25T06:44:24Z", "committer_date": "2019-01-25T06:44:24Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "9501ba4bf1b96aeefe26e261de085839e9a97e67", "message": "sqlite-utils table_names blah.db is now tables blah.db\n\nTravis tests were failing because on OS X the command was this:\n\n sqlite-utils table_names blah.db\n\nBut in Travis CI the command was this:\n\n sqlite-utils table-names blah.db\n\nRenaming it to tables fixes this inconsistency.", "author_date": "2019-01-25T07:04:52Z", "committer_date": "2019-01-25T07:04:52Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "6f54342570f722ca817945155c234d8d8a9b4acc", "message": "Release 0.7", "author_date": "2019-01-25T07:20:49Z", "committer_date": "2019-01-25T07:20:49Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "c83dd8a5eb9a146ef8072932333a0bca98f9577a", "message": "sqlite-utils csv data.db \"select ...\" command", "author_date": "2019-01-25T15:50:20Z", "committer_date": "2019-01-25T15:50:20Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "7689ca7229d2a2e662a7c6b1ada8baef9c4d7525", "message": "Fixed RST formatting", "author_date": "2019-01-25T18:16:26Z", "committer_date": "2019-01-25T18:16:26Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "5466c9745dfef858286146ea158ffd5a71391d10", "message": "sqlite-utils json dogs.db \"select * from dogs\"", "author_date": "2019-01-26T02:06:29Z", "committer_date": "2019-01-26T02:06:29Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3db4f08f19b2b1a19431a092f43605031092b97f", "message": "Release 0.8", "author_date": "2019-01-26T02:13:29Z", "committer_date": "2019-01-26T02:13:29Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "4e9045e5b0bfb7ecf0a45dc2634a438d08a2cbd6", "message": "Documentation typo", "author_date": "2019-01-26T02:19:15Z", "committer_date": "2019-01-26T02:19:15Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "20a744fb5a75425b048951ad8826c594af8102ed", "message": "More detailed README", "author_date": "2019-01-26T02:21:55Z", "committer_date": "2019-01-26T02:21:55Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "9a4d1ff0a268c7df7839389acd92d48752d24b95", "message": "Releasing 0.8.1 (just a better README)", "author_date": "2019-01-26T02:22:18Z", "committer_date": "2019-01-26T02:22:18Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3f2e711a4bb59c868abd03d8b95c53617cef7740", "message": "Refactored to use itertools\n\nFound an itertools mechanism that works for iterating\nthrough the current and next row in the cursor.", "author_date": "2019-01-26T18:58:45Z", "committer_date": "2019-01-26T18:59:01Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "ea17c63cc52cf7290e8bbcba9f869698c2c2ea44", "message": "Tests for json returning single row", "author_date": "2019-01-26T18:58:00Z", "committer_date": "2019-01-26T18:59:01Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "57fc8ce55ecbecd7af60281404cb10573be36c98", "message": "Database() constructor works with pathlib.Path", "author_date": "2019-01-27T23:53:41Z", "committer_date": "2019-01-27T23:53:41Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "5309c5c7755818323a0f5353bad0de98ecc866be", "message": "sqlite-utils insert ... --nl option, closes #6", "author_date": "2019-01-28T02:17:38Z", "committer_date": "2019-01-28T02:17:38Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "a22607699400468aa9c50faa47d0058663d80741", "message": "Fixed RST bug", "author_date": "2019-01-28T02:18:55Z", "committer_date": "2019-01-28T02:18:55Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "225cf7299f0a9ef7c37caac656a8e0d8731c6cad", "message": "Docs example chaining --nl together", "author_date": "2019-01-28T02:28:02Z", "committer_date": "2019-01-28T02:28:02Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "f0afa5646b596885a9c030f00596d9228ad23994", "message": "insert_all() now accepts generator, closes #7", "author_date": "2019-01-28T06:12:18Z", "committer_date": "2019-01-28T06:12:18Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "50589f8523751191559e8d812c2ee0889da06e50", "message": "CLI insert tool now uses generators, closes #7\n\nAlso cleaned up the logic so we commit rows in batches too.", "author_date": "2019-01-28T06:26:45Z", "committer_date": "2019-01-28T06:26:45Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "79a0f9cc96788f615810dced89f79b8e3ccc51ed", "message": "Releasing 0.9", "author_date": "2019-01-28T06:34:33Z", "committer_date": "2019-01-28T06:34:33Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "82f0f6076ab5042faf870339dc49a570133e1d2a", "message": "sqlite-utils insert db.db foo - --csv\n\nNew option for efficiently inserting rows from a CSV.\n\nUses a generator so this will happily consume enormous CSV files without\nneeding to slurp the whole thing into memory first.", "author_date": "2019-01-29T15:28:12Z", "committer_date": "2019-01-29T15:28:12Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "1843d55615fa1bdce7d06919965c40acf22b05bb", "message": "@cli.command(name=\"csv\") instead of import csv as csv_std", "author_date": "2019-01-29T15:37:01Z", "committer_date": "2019-01-29T15:37:12Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "441c131db5cc68e197db19f0623ff8a96c90c3ff", "message": "Better --help text for insert command", "author_date": "2019-01-29T15:40:34Z", "committer_date": "2019-01-29T15:40:34Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "7aab60d8764bd8ef6e834578e8de94c2fcb0ceb9", "message": "Handle datetime.date and datetime.time", "author_date": "2019-02-07T05:15:08Z", "committer_date": "2019-02-07T05:15:08Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "7c09a2e994dd36711207dcd9aa91a4be450551ab", "message": "Release 0.10", "author_date": "2019-02-07T05:16:35Z", "committer_date": "2019-02-07T05:17:52Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "ac9311aaf5e598d493e60d63adca26018684c678", "message": "Refactored insert and upsert to share the same options", "author_date": "2019-02-07T05:50:25Z", "committer_date": "2019-02-07T05:50:25Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3f8ef35b2abfc64b32e254a849f2f7caff969c3b", "message": "enable-fts and populate-fts CLI commands", "author_date": "2019-02-08T05:18:24Z", "committer_date": "2019-02-08T05:18:24Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "6acfd456b0223da6cbac7719d793a9d69472bc0d", "message": "Releasing 0.11", "author_date": "2019-02-08T05:22:13Z", "committer_date": "2019-02-08T05:22:13Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "c89b2df91822318266ae4020c6ccbd06fefb48f7", "message": "Fixed documentation typo", "author_date": "2019-02-08T05:23:50Z", "committer_date": "2019-02-08T05:23:50Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "fd1b6eb82d092c60edcc38fcb363290dc6c6dfff", "message": "Help text for enable-fts and populate-fts", "author_date": "2019-02-08T05:25:26Z", "committer_date": "2019-02-08T05:25:26Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "62e1edeaf600f45a59fde432f1bde2bcc4e1ee7b", "message": "[] escaping for FTS columns", "author_date": "2019-02-22T04:17:58Z", "committer_date": "2019-02-22T04:17:58Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3095f2e6715380f5381b9bb7176d109e643cc0f8", "message": "Added db[table].rows iterator", "author_date": "2019-02-22T05:29:50Z", "committer_date": "2019-02-22T05:29:50Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "f2ca48c0dad373abe307536a96af24f73934ed7d", "message": "Default command now executes queries, --csv or --json\n\nI replaced the following commands:\n\n sqlite-utils json db.db \"select * from table\"\n sqlite-utils csv db.db \"select * from table\"\n\nWith a unified 'query' command, which is now set as the default:\n\n sqlite-utils db.db \"select * from table\"\n sqlite-utils db.db \"select * from table\" --csv", "author_date": "2019-02-23T01:40:21Z", "committer_date": "2019-02-23T01:40:21Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "c7dbb03a104c2429d008a1038d6d128b1f820027", "message": "Added 'sqlite-utils rows db.db tablename' command", "author_date": "2019-02-23T01:52:17Z", "committer_date": "2019-02-23T01:52:17Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "11a9511d23ba79e7c8c92bc90ec29ba7f22e3eb7", "message": "Updated README to reflect new query default subcommand", "author_date": "2019-02-23T01:53:48Z", "committer_date": "2019-02-23T01:53:48Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "e3c0ed1b1a4f4dd3eeed50d80ca3bd9e9b8c43c9", "message": "sqlite-utils tables now takes --counts, --columns, --csv, --nl", "author_date": "2019-02-23T02:12:53Z", "committer_date": "2019-02-23T02:12:53Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "1ffa40301de5bb960e89114de0f5199850a9ed9d", "message": "Releasing 0.12", "author_date": "2019-02-23T02:22:28Z", "committer_date": "2019-02-23T02:22:28Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "463fd3c3f66691532022f14ad446f9b782d2273c", "message": "Bump copyright year", "author_date": "2019-02-23T06:08:14Z", "committer_date": "2019-02-23T06:08:14Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "919415e4e933662f15fe224439fca52e0c2fba08", "message": "Added LICENSE file", "author_date": "2019-02-23T17:16:57Z", "committer_date": "2019-02-23T17:16:57Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "ca225b02c00c921af2d5777b9a05e96dd4947c30", "message": "Prettier indentation for CREATE TABLE", "author_date": "2019-02-23T20:51:35Z", "committer_date": "2019-02-23T20:52:04Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "dbf239e3fc8af00ef43ec578fb195dfe604a99fe", "message": "hash_id= mechanism for setting ID using content hash, closes #13", "author_date": "2019-02-24T04:36:40Z", "committer_date": "2019-02-24T04:36:40Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "6c3f5e647934413dfc46a218f1540a1cab31e52e", "message": "Added --table and --fmt options for table output using tabulate", "author_date": "2019-02-24T06:45:17Z", "committer_date": "2019-02-24T06:45:17Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "10e3aab4c63bc02cacd64e7aa1e5eaff2b314b3e", "message": "Fixed typo with last_pk", "author_date": "2019-02-24T06:49:54Z", "committer_date": "2019-02-24T06:49:54Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "1b6025e8ab5cef6a6f2550cc3be1f80b12cc64a1", "message": "Release 0.13", "author_date": "2019-02-24T06:54:43Z", "committer_date": "2019-02-24T06:54:43Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "e7ffbcdb364810213b0697c9bcab064efb1dd469", "message": "Ability to create unique indexes, refs #14", "author_date": "2019-02-24T18:41:51Z", "committer_date": "2019-02-24T18:41:51Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "0c6745b70f95663f8ddf4309c578bd568eca75ec", "message": "Whitespace fix", "author_date": "2019-02-24T18:42:27Z", "committer_date": "2019-02-24T18:42:27Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "7784b924a179ee213f52693276ab7b68d6549b51", "message": "Added create_index(..., if_not_exists=True), refs #14", "author_date": "2019-02-24T18:46:44Z", "committer_date": "2019-02-24T18:46:44Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "8a5d0d80c37008f30953110d58f474aac2728ee3", "message": "sqlite-utils create-index command, closes #14", "author_date": "2019-02-24T19:11:21Z", "committer_date": "2019-02-24T19:11:21Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "dc2560879ed32136d64707a031b62b2870809892", "message": "table.add_column(name, type) method, refs #15", "author_date": "2019-02-24T19:40:26Z", "committer_date": "2019-02-24T19:40:26Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "c5286d2c66b8c187002f9ad8991a6665b2b092f9", "message": "Black formatting", "author_date": "2019-02-24T19:40:58Z", "committer_date": "2019-02-24T19:40:58Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "6d25f648ed708b8dd78cbb0af5e356d16859625f", "message": "add_column now accepts explicit SQLite types, refs #15", "author_date": "2019-02-24T19:49:24Z", "committer_date": "2019-02-24T19:49:31Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "05a85b358fb907d8fcb72f19390ee2ba5a2261a5", "message": "Don't assume -1 for error code", "author_date": "2019-02-24T19:50:56Z", "committer_date": "2019-02-24T19:50:56Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "0bc49e938e1e3444df734f9178a9a317f68f9716", "message": "'sqlite-utils add-column name type' command, closes #15", "author_date": "2019-02-24T20:04:33Z", "committer_date": "2019-02-24T20:04:33Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "33df260b38e1b0f179cdb849fc4e3e9c76e57f3a", "message": "Fix for CLI test", "author_date": "2019-02-24T20:12:59Z", "committer_date": "2019-02-24T20:12:59Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "9756310408c7e5fa1ca257573e46aa13c2041c24", "message": "Black", "author_date": "2019-02-24T20:59:46Z", "committer_date": "2019-02-24T20:59:46Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "e1ca938aa1c84367fd9d4786b9709c56f3e6e778", "message": "table.add_foreign_key(column, other_table, other_column)\n\nNew mechanism for adding foreign key constraints to an existing SQLite\ntable.\n\nSQLite ALTER TABLE does not support this out-of-the-box, so I instead\nhad to write some careful code that uses PRAGMA writable_schema = 1 to\ndirectly modify the sqlite_master table.\n\nRefs #2", "author_date": "2019-02-24T21:10:51Z", "committer_date": "2019-02-24T21:10:51Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "f8d3b7cfe5c1950b0749d40eb2640df50b52f651", "message": "sqlite-utils add-foreign-key books.db books author_id authors id\n\nCommand for adding foreign keys to existing tables. Closes #2", "author_date": "2019-02-24T21:33:45Z", "committer_date": "2019-02-24T21:33:45Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "557dc3f9a7b622c45c73fd791cfe0a786f9a1de0", "message": "Improved foreign_keys= argument, closes #17", "author_date": "2019-02-24T22:12:45Z", "committer_date": "2019-02-24T22:12:45Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "3cab079d3e45aa3468e9f7317680ded6438f3955", "message": "add-column col_type now optional, defaults to str", "author_date": "2019-02-24T22:24:00Z", "committer_date": "2019-02-24T22:24:00Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "05317f53411fab3c3d66b88408bc867f2e474a35", "message": "Release 0.14", "author_date": "2019-02-24T23:11:51Z", "committer_date": "2019-02-24T23:11:51Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "0b1af42ead3b3902347951180b3364ce1942da6e", "message": "Link to my blog entry", "author_date": "2019-02-25T03:45:38Z", "committer_date": "2019-02-25T03:45:38Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "8ab7dcb4f939f38a9a8f8d92e79f4271fa0a6874", "message": "Update description, don't package tests/", "author_date": "2019-05-25T00:37:29Z", "committer_date": "2019-05-25T00:37:29Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "eff52023c6d316ead336c198a2a9365ce4f91b09", "message": "alter=True/--alter option to automatically add missing columns\n\nCloses #18", "author_date": "2019-05-25T00:41:04Z", "committer_date": "2019-05-25T00:41:04Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "747ea5d6bc31b31fd046e036d90fb603c55307b5", "message": "Fixed help text for sqlite-utils enable-fts\n\nCloses #19", "author_date": "2019-05-25T00:43:41Z", "committer_date": "2019-05-25T00:43:46Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "251e4730412210e7fdb1efd476c730ed3ff10e81", "message": "--json-cols option for outputting nested JSON, closes #20", "author_date": "2019-05-25T00:56:44Z", "committer_date": "2019-05-25T00:56:44Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "ee017cdbddfb7cdbf522149d195dd41416b24ecd", "message": "Release notes for 1.0, closes #22", "author_date": "2019-05-25T01:06:38Z", "committer_date": "2019-05-25T01:06:38Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "092e1368edc4e7f4cb337a62eabd9a6e1245006b", "message": "Fixed typo", "author_date": "2019-05-25T14:24:17Z", "committer_date": "2019-05-25T14:24:17Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "cec8c3c4826da8999a5d0f905596be8de519cbc9", "message": "sqlite-utils rows now obeys --json-cols", "author_date": "2019-05-28T00:47:59Z", "committer_date": "2019-05-28T00:47:59Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "63953f56e7001c2e21bc37d5afac699c48c00b9e", "message": "Release 1.0.1", "author_date": "2019-05-28T00:50:28Z", "committer_date": "2019-05-28T00:50:28Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "1e28eeee8ce55ea68eddb228294a1eff6785b497", "message": "Fixed RST syntax bug", "author_date": "2019-05-28T05:25:03Z", "committer_date": "2019-05-28T05:25:03Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "cd792325681cbad9f663f2879d8b69f1edbb678f", "label": "GitHub"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 19864447, "label": "web-flow"}} {"sha": "00c5a49a87e1ef3e39bb7ec5ab61f7c17f9ecd60", "message": "Option to ignore inserts if primary key exists already\n\nSupport for SQLite's INSERT OR IGNORE\n\nIn the API layer it looks like this:\n\n fresh_db[\"test\"].insert({\"id\": 1, \"bar\": 3}, ignore=True)\n\nFor the CLI layer it looks like this:\n\n $ sqlite-utils insert data.db dogs dogs.json --ignore\n\nCloses #21", "author_date": "2019-05-29T04:15:57Z", "committer_date": "2019-05-29T04:15:57Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "50e2f94b583436b1a6c54be04e78a3029de6b521", "message": "Ability to add a column that is a foreign key reference\n\nPython API:\n\n db[\"dogs\"].add_column(\"species_id\", fk=\"species\")\n # or\n db[\"dogs\"].add_column(\"species_id\", fk=\"species\", fk_col=\"ref\")\n\nCLI:\n\n $ sqlite-utils add-column mydb.db dogs species_id --fk species\n # or\n $ sqlite-utils add-column mydb.db dogs species_id --fk species --fk-col ref\n\nCloses #16", "author_date": "2019-05-29T04:54:43Z", "committer_date": "2019-05-29T04:54:43Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "26b2cf3418f1e19b5436a7385c3945384838e594", "message": "Changelog for 1.1 + docs for --ignore/ignore=True", "author_date": "2019-05-29T05:06:22Z", "committer_date": "2019-05-29T05:06:22Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "7a3041b1adcb1c95f2edeb789e4b1ecac34f0eab", "message": "Releasing 1.1", "author_date": "2019-05-29T05:12:03Z", "committer_date": "2019-05-29T05:12:03Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "2fed87da6ea990d295672e4db2c8ae97b787913e", "message": "--not-null-default and not_null_default=, refs #24", "author_date": "2019-06-13T01:35:02Z", "committer_date": "2019-06-13T01:35:02Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "c2622ceabd073b43b5789ccaa5036471b3c96e12", "message": "cd docs && make livehtml\n\nEnabled make rule for sphinx-autobuild", "author_date": "2019-06-13T04:50:18Z", "committer_date": "2019-06-13T04:50:18Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "d645032cfa4edbccd0542eecdddca29edf9f7b07", "message": "add_foreign_key can now detect table and pk, refs #25", "author_date": "2019-06-13T04:51:09Z", "committer_date": "2019-06-13T04:51:09Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "07a10bdb2c09c7e275a9db546c42900b1dea4e75", "message": "foreign_keys=[...] can now detect tables and keys - closes #25", "author_date": "2019-06-13T05:32:26Z", "committer_date": "2019-06-13T05:32:26Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "362359da7eed7dc6589589122960c0a0d0460d7c", "message": "not_null= and defaults= arguments to various Python methods, refs #24", "author_date": "2019-06-13T06:10:07Z", "committer_date": "2019-06-13T06:10:07Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "208f56fbaf173fdd8cb03a840e218f85d414a144", "message": "--not-null and --default options to insert/update, closes #24", "author_date": "2019-06-13T06:30:16Z", "committer_date": "2019-06-13T06:30:16Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "1c8a0e874fe0fc2eaade1a6c44d947e1e6c7b2b6", "message": "Release 1.2", "author_date": "2019-06-13T06:39:59Z", "committer_date": "2019-06-13T06:39:59Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "364b0fb6784f72b5c4048a3d6b697fba5ec86db7", "message": "Remove .DS_Store", "author_date": "2019-06-20T23:55:39Z", "committer_date": "2019-06-20T23:56:13Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "2946d096d0cdefdc017559e6b57e87658736e843", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "976263effcc2b9658006f739f7f7f02554f8d97f", "message": "Sanity check add_foreign_key() column exists, closes #29", "author_date": "2019-06-20T23:58:09Z", "committer_date": "2019-06-20T23:58:18Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "2946d096d0cdefdc017559e6b57e87658736e843", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}} {"sha": "46281c9db0d6eb50203880c83363a8b279db4ecd", "message": "Release 1.2.1", "author_date": "2019-06-21T00:01:21Z", "committer_date": "2019-06-21T00:01:24Z", "raw_author": {"value": "13ae486343ea6454a93114c6f558ffea2f2c6874", "label": "Simon Willison"}, "raw_committer": {"value": "2946d096d0cdefdc017559e6b57e87658736e843", "label": "Simon Willison"}, "repo": {"value": 140912432, "label": "sqlite-utils"}, "author": {"value": 9599, "label": "simonw"}, "committer": {"value": 9599, "label": "simonw"}}