sha,message,author_date,committer_date,raw_author,raw_author_label,raw_committer,raw_committer_label,repo,repo_label,author,author_label,committer,committer_label 127a836054fb784dc02ea40dadb55b3741dcd603,Documented new table configuration options via .table(),2019-07-22T23:59:17Z,2019-07-22T23:59:17Z,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,140912432,sqlite-utils,9599,simonw,9599,simonw 152eb2afaf35cde5d44e50369f4cb32a72e72fdb,Use pysqlite3 if available,2019-07-22T22:39:35Z,2019-07-22T22:39:35Z,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,140912432,sqlite-utils,9599,simonw,9599,simonw 57e43baece0936d75c74711f5f6835a5c1c1ac42,"Table options can now be passed to constructor OR to insert_all() If you want to set default options for a table, you can do this: table = db.table(""dogs"", pk=""id"", column_order=[""name"", ""age""]) If you pass those keyword arguments to the .insert/.update/etc methods they will over-ride the defaults you set on the table. table = db[""dogs""] # This still works too",2019-07-22T23:30:54Z,2019-07-22T23:30:54Z,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,140912432,sqlite-utils,9599,simonw,9599,simonw be655827b4a4ff88eb4813075339b0b01e018145,use_table_factory is a better name than use_class_constructor,2019-07-22T23:33:37Z,2019-07-22T23:33:37Z,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,13ae486343ea6454a93114c6f558ffea2f2c6874,Simon Willison,140912432,sqlite-utils,9599,simonw,9599,simonw