Crate Python Versions Save

A Python client library for CrateDB.

0.35.2

4 months ago

What's Changed

  • Test compatibility: Permit installation of pandas 2.1.

Full Changelog: https://github.com/crate/crate-python/compare/0.35.1...0.35.2

0.35.1

4 months ago

What's Changed

  • Compatibility: Re-add crate.client._pep440.Version from verlib2. It is needed the prevent breaking crash.

Full Changelog: https://github.com/crate/crate-python/compare/0.35.0...0.35.1

0.35.0

4 months ago

What's Changed

  • Permit urllib3.Timeout instances for defining timeout values. This way, both connect and read socket timeout settings can be configured. The unit is seconds.
  • Internal: Use verlib2.Version for comparing versions.
  • CI: Add support for Python 3.12.

Full Changelog: https://github.com/crate/crate-python/compare/0.34.0...0.35.0

0.34.0

7 months ago

What's Changed

  • Properly handle Python-native UUID types in SQL parameters. Thanks, @SStorm.
  • SQLAlchemy: Fix handling URL parameters timeout and pool_size
  • Permit installation with urllib3 v2, see also urllib3 v2.0 roadmap and urllib3 v2.0 migration guide. You can optionally retain support for TLS 1.0 and TLS 1.1, but a few other outdated use-cases of X.509 certificate details are immanent, like no longer accepting the long deprecated commonName attribute. Instead, going forward, only the subjectAltName attribute will be used.
  • SQLAlchemy: Improve DDL compiler to ignore foreign key and uniqueness constraints.
  • DBAPI: Properly raise IntegrityError exceptions instead of ProgrammingError, when CrateDB raises a DuplicateKeyException.
  • SQLAlchemy: Ignore SQL's FOR UPDATE clause. Thanks, @surister.

New Contributors

Full Changelog: https://github.com/crate/crate-python/compare/0.33.0...0.34.0

0.33.0

10 months ago

What's Changed

  • SQLAlchemy: Rename leftover occurrences of Object to ObjectType
  • SQLAlchemy DQL: Use CrateDB's native ILIKE operator. Thanks, @hlcianfagna.

Full Changelog: https://github.com/crate/crate-python/compare/0.32.0...0.33.0

0.32.0

10 months ago

What's Changed

  • SQLAlchemy DDL: Allow turning off column store using crate_columnstore=False. Thanks, @fetzerms.

  • SQLAlchemy DDL: Allow setting server_default on columns to enable server-generated defaults. Thanks, @JanLikar.

  • Allow handling datetime values tagged with time zone info when inserting or updating.

  • SQLAlchemy: Fix SQL statement caching for CrateDB's OBJECT type. Thanks, @faymarie.

  • SQLAlchemy: Refactor OBJECT type to use SQLAlchemy's JSON type infrastructure.

  • SQLAlchemy: Added insert_bulk fast-path INSERT method for pandas, in order to support efficient batch inserts using CrateDB's "bulk operations" endpoint.

  • SQLAlchemy: Add documentation and software tests for usage with Dask

New Contributors

Full Changelog: https://github.com/crate/crate-python/compare/0.31.1...0.32.0

0.31.1

1 year ago

What's Changed

  • SQLAlchemy Core: Re-enable support for INSERT/UPDATE...RETURNING in SQLAlchemy 2.0 by adding the new insert_returning and update_returning flags in the CrateDB dialect.

Thanks, @Taliik.

Full Changelog: https://github.com/crate/crate-python/compare/0.31.0...0.31.1

0.31.0

1 year ago

What's Changed

  • SQLAlchemy Core: Support INSERT...VALUES with multiple value sets by enabling supports_multivalues_insert on the CrateDB dialect, it is used by pandas' method="multi" option

  • SQLAlchemy Core: Enable the insertmanyvalues feature, which lets you control the batch size of INSERT operations using the insertmanyvalues_page_size engine-, connection-, and statement-options.

  • SQLAlchemy ORM: Remove support for the legacy session.bulk_save_objects API on SQLAlchemy 2.0, in favor of the new insertmanyvalues feature. Performance optimizations from bulk_save() have been made inherently part of add_all(). Note: The legacy mode will still work on SQLAlchemy 1.x, while SQLAlchemy 2.x users MUST switch to the new method now.

Full Changelog: https://github.com/crate/crate-python/compare/0.30.1...0.31.0

0.30.1

1 year ago

What's Changed

  • Fixed SQLAlchemy 2.0 incompatibility with CrateDialect.{has_schema,has_table}

Full Changelog: https://github.com/crate/crate-python/compare/0.30.0...0.30.1

0.30.0

1 year ago

What's Changed

Full Changelog: https://github.com/crate/crate-python/compare/0.29.0...0.30.0