From 3b8abe608796e99e4ffc5f3f4597a85e605c0e9b Mon Sep 17 00:00:00 2001 From: Simon Willison Date: Sun, 14 Nov 2021 19:15:23 -0800 Subject: [PATCH] Release 3.18 Refs #324, #329, #330, #331, #332, #335, #338, #339 --- docs/changelog.rst | 14 ++++++++++++++ setup.py | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/docs/changelog.rst b/docs/changelog.rst index 0eadaa167..0c8f901e5 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -2,6 +2,20 @@ Changelog =========== +.. _v3_18: + +3.18 (2021-11-14) +----------------- + +- The ``table.lookup()`` method now has an optional second argument which can be used to populate columns only the first time the record is created, see :ref:`python_api_lookup_tables`. (:issue:`339`) +- ``sqlite-utils memory`` now has a ``--flatten`` option for :ref:`flattening nested JSON objects ` into separate columns, consistent with ``sqlite-utils insert``. (:issue:`332`) +- ``table.create_index(..., find_unique_name=True)`` parameter, which finds an available name for the created index even if the default name has already been taken. This means that ``index-foreign-keys`` will work even if one of the indexes it tries to create clashes with an existing index name. (:issue:`335`) +- Added ``py.typed`` to the module, so `mypy `__ should now correctly pick up the type annotations. Thanks, Andreas Longo. (:issue:`331`) +- Now depends on ``python-dateutil`` instead of depending on ``dateutils``. Thanks, Denys Pavlov. (:issue:`324`) +- ``table.create()`` (see :ref:`python_api_explicit_create`) now handles ``dict``, ``list`` and ``tuple`` types, mapping them to ``TEXT`` columns in SQLite so that they can be stored encoded as JSON. (:issue:`338`) +- Inserted data with square braces in the column names (for example a CSV file containing a ``item[price]``) column now have the braces converted to underscores: ``item_price_``. Previously such columns would be rejected with an error. (:issue:`329`) +- Now also tested against Python 3.10. (`#330 `__) + .. _v3_17.1: 3.17.1 (2021-09-22) diff --git a/setup.py b/setup.py index f40dcfefe..214769704 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ import io import os -VERSION = "3.17.1" +VERSION = "3.18" def get_long_description():