Commit graph

396 commits

Author SHA1 Message Date
Simon Willison
923768db2e Assert on exact error message, refs #537 2023-05-08 14:11:48 -07:00
Scott Perry
39ef137e67
Support self-referencing FKs in create (#537) 2023-05-08 14:10:00 -07:00
Simon Willison
e0ec4c3451 --no-skip-false option, plus docs - closes #527 2023-05-08 14:03:20 -07:00
Simon Willison
455c35b512 .convert(skip_false) option, refs #527 2023-05-08 13:52:21 -07:00
Simon Willison
e4ed372517 Show more detailed error on invalid JSON, closes #532 2023-05-08 13:31:56 -07:00
Simon Willison
a256d7de98 Fix a bunch of warnings in the tests, refs #541 2023-05-08 12:57:43 -07:00
Simon Willison
2376c452a5 upsert_all() now works with not_null - refs #538 2023-05-08 12:24:19 -07:00
Simon Willison
373b7886d2 --raw-lines option, closes #539 2023-05-07 11:26:14 -07:00
Simon Willison
defa2974c6 jsonify_if_needed output of convert() functions, closes #495 2022-10-25 14:23:24 -07:00
Simon Willison
c7e4308e6f Use new db.close() method, refs #504 2022-10-25 14:00:53 -07:00
Simon Willison
05e2bb85fc db.close() method, closes #504 2022-10-25 13:57:43 -07:00
Simon Willison
ba7242b1f2 Try closing the database before recreating it, refs #503 2022-10-25 13:36:17 -07:00
Simon Willison
f6b796277f Try a 0.1s sleep, refs #503 2022-10-25 13:27:18 -07:00
Simon Willison
079bf1f4dc Use tmp_path fixture in test_recreate, refs #503 2022-10-25 13:06:58 -07:00
Simon Willison
7b2d1c0ffd Update tests for Python 3.11, closes #502 2022-10-25 12:23:27 -07:00
Simon Willison
34e75ed0dd sqlite_utils.utils.flatten() function, closes #500 2022-10-18 11:00:35 -07:00
Jacob Chapman
ecf1d40112
table.search_sql(include_rank=True) option (#480)
* search_sql add include_rank option
* add test
* add FTS4 test
* Apply Black

Thanks, @chapmanjacobd
2022-08-30 20:40:35 -07:00
Simon Willison
165bc5fcb0 test_extract_works_with_null_values, refs #423, #455 2022-08-27 20:38:37 -07:00
Simon Willison
104f37fa4d
db[table].create(..., transform=True) and create-table --transform
Closes #467
2022-08-27 16:17:55 -07:00
Simon Willison
36ffcafb1a table.default_values property, closes #475
Refs #468
2022-08-27 15:42:58 -07:00
Simon Willison
19dd077944
Support entrypoints for --load-extension (#473)
* Entrypoint support, closes #470
2022-08-26 22:55:47 -07:00
Simon Willison
a46a5e3a9e Improved code compilation pattern, closes #472 2022-08-26 22:20:09 -07:00
Simon Willison
23ef1d6c20 bulk --functions, closes #471 2022-08-26 22:10:43 -07:00
Simon Willison
59e2cfbdc1 sqlite-utils memory --functions, refs #471 2022-08-26 22:03:53 -07:00
Simon Willison
85e7411bbd Skip test if pragma_function_list not supported, refs #471 2022-08-26 22:01:58 -07:00
Simon Willison
31f062d4a7 sqlite-utils query --functions option, refs #471 2022-08-26 21:53:55 -07:00
Simon Willison
7a9a6363ff sqlite-utils rows --order option, closes #469 2022-08-26 21:10:20 -07:00
Simon Willison
1491b66dd7 register_function(name=...) argument, closes #458 2022-07-27 17:13:49 -07:00
Simon Willison
b9a89a0f2c duplicate --ignore option, refs #450 2022-07-15 15:35:58 -07:00
Simon Willison
5fa823f03f add-column --ignore option, refs #450 2022-07-15 15:31:37 -07:00
Simon Willison
2c77f4467e Add --ignore to create-index as alias of --if-not-exists, refs #450 2022-07-15 15:25:49 -07:00
Simon Willison
40b6947255 enable-fts --replace option, refs #450
Also fixed up some sqlite3.OperationalError imports.
2022-07-15 15:20:26 -07:00
Simon Willison
c710ade644 sqlite-utils duplicate command, closes #454, refs #449
Also made it so .duplicate() raises new NoTable exception rather than raising
an AssertionError if the source table does not exist.
2022-07-15 14:45:47 -07:00
Simon Willison
4af4762521 test_duplicate_fails_if_table_does_not_exist, refs #449 2022-07-15 14:23:57 -07:00
David
b366e68deb
table.duplicate(new_table_name) feature, closes #449
Thanks, @davidleejy
2022-07-15 14:21:36 -07:00
Simon Willison
42440d6345 Use parametrize for FTS test 2022-06-27 23:41:13 +00:00
Simon Willison
b8af3b96f5 Fix bug with detect_fts() and similar table names, closes #434 2022-06-14 16:24:06 -07:00
Simon Willison
1b09538bc6 where= and where_args= parameters to search() and search_sql()
Closes #441
2022-06-14 14:54:35 -07:00
Simon Willison
9d1bac4a99 Test for maximize_csv_field_size_limit, refs #442 2022-06-14 14:23:54 -07:00
Simon Willison
0cee77b176 Update test for renamed restkey, refs #440, #443 2022-06-14 14:14:20 -07:00
Simon Willison
ad96bd18c3 Tests for rows_from_file, refs #440 2022-06-14 08:14:38 -07:00
Simon Willison
0e60f3c80c Better error message if table has no columns, closes #424 2022-04-13 15:39:48 -07:00
Simon Willison
6f3ae864f1 Better support check for deterministic=True, closes #425
Bug first discovered in #421
2022-04-13 15:31:37 -07:00
Simon Willison
751ab205ac Fix for --multi combined with --dry-run, closes #415 2022-03-20 21:18:18 -07:00
Simon Willison
878d5f5cea errors=r.SET_NULL/r.IGNORE options for parsedate/parsedatetime, closes #416 2022-03-20 21:01:35 -07:00
Simon Willison
d25cdd37a3 db.sqlite_version property and fix for deterministic=True on SQLite 3.8.3
Closes #408
2022-03-01 16:37:53 -08:00
Simon Willison
931b1e1513 .insert(hash_id_columns=) parameter, closes #343 2022-03-01 16:00:51 -08:00
Edward Betts
b6c9dfce0b
Correct spelling mistakes (found with codespell) (#410) 2022-03-01 13:05:29 -08:00
Simon Willison
4bc06a2437 memory_name= feature, closes #405 2022-02-15 17:23:11 -08:00
Chris Amico
a692c56659
Add SpatiaLite helpers to CLI (#407)
* Add SpatiaLite CLI helpers
* Add docs for spaitalite helpers
* Fix flake8 issues and add more detail on spatial types
* Run cog and add some help text.
* Use SpatiaLite when calculating coverage, refs #407

Co-authored-by: Simon Willison <swillison@gmail.com>
2022-02-15 16:58:07 -08:00