Pynamodb-mate

Latest version: v6.0.0.1

Safety actively analyzes 631762 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

6.0.0.1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**💥Breaking change**

- fully support pynamodb 6.X, drop compatible to pynamodb 5.X.
- rework the ``status_tracker`` pattern to ensure strong consistency in high concurrent workload. Due to the change that the ``Index.query`` is instance method from pynamodb 6.X, the old ``status_tracker`` implementation won't work in pynamodb 6.X. We have to completely remove the old implementation and re-implement the ``status_tracker`` pattern.

**Features and Improvements**

- fully support pynamodb 6.X, drop compatible to pynamodb 5.X.
- rework the ``status_tracker`` pattern to ensure strong consistency in high concurrent workload.

**Minor Improvements**

- update the ``status_tracker`` document.
- improve code coverage test.

5.5.1.1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**Background**

- The ``pynamodb`` implementation relies on some ``botocore`` private API. And one of the private API is changed from ``botocore`` 1.33.2 that breaks the ``pynamodb`` implementation. ``pynamodb`` 5.5.1 fixed the compatibility issue, so that ``pynamodb_mate`` also got upgraded to ``5.5.1.X``.

**Features and Improvements**

- add :mod:`pynamodb_mate.patterns.relationship` Pattern, allow you to manage mass amount entity and one-to-many, many-to-many relationship in DynamoDB using the ultimate data modeling strategy.
- add :mod:`pynamodb_mate.patterns.large_attribute` Pattern, it re-implements the ``pynamodb_mate.attributes.s3backed`` to provide better consistency model across DynamoDB and S3, and it also support updating multiple large attributes in one API. The old ``pynamodb_mate.attibutes.s3backed`` module is marked as deprecated, and it will be removed in 6.X version.
- rework the import structure of the library, now we recommend using ``import pynamodb_mate.api as pm`` instead of ``import pynamodb_mate as pm``. Old public API is still available in ``import pynamodb_mate as pm`` name space. And these API is scheduled to be deleted in 6.X version.

**Minor Improvements**

- Rework the unit test, now it uses both mock and real AWS DynamoDB table for testing.
- Rework the documentation site.

**Miscellaneous**

- add Python3.12 support.

5.3.4.9

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**Bugfixes**

- fix a but that some usages of :meth:`~pynamodb_mate.patterns.status_tracker.impl.BaseStatusTracker.make_value` are missing the parameter job_id.

**Miscellaneous**

- add Python3.11 support.

5.3.4.8

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**Features and Improvements**

- :class:`~pynamodb_mate.patterns.status_tracker.impl.BaseStatusTracker` added ``create_time`` attribute.
- :class:`~pynamodb_mate.patterns.status_tracker.impl.StatusAndCreateTimeIndex` is renamed to :class:`~pynamodb_mate.patterns.status_tracker.impl.StatusAndUpdateTimeIndex`, and the index now uses ``update_time`` as the range key, and it now uses IncludeProjection.
- :meth:`pynamodb_mate.patterns.status_tracker.impl.BaseStatusTracker.query_by_status` add ``auto_refresh`` parameter.

**Minor Improvements**

- :meth:`pynamodb_mate.patterns.status_tracker.impl.BaseStatusTracker.query_by_status` now take both status enum or status enum value.

5.3.4.7

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**Features and Improvements**

- :class:`~pynamodb_mate.patterns.status_tracker.impl.BaseStatusTracker` added ``create_time`` attribute.
- :class:`~pynamodb_mate.patterns.status_tracker.impl.StatusAndTaskIdIndex` is renamed to :class:`~pynamodb_mate.patterns.status_tracker.impl.StatusAndCreateTimeIndex`, and the index now uses ``create_time`` as the range key, and it now uses AllProjection.
- :meth:`pynamodb_mate.patterns.status_tracker.impl.BaseStatusTracker.query_by_status` add ``older_task_first`` parameter.

**Minor Improvements**

- improve logging in :meth:`pynamodb_mate.patterns.status_tracker.impl.BaseStatusTracker.start`.

5.3.4.6

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**Features and Improvements**

- Use iterproxy for Model query and scan, enable type hint in result iterator.
- Use iterproxy for Model query and scan, enable type hint in result iterator.

**Miscellaneous**

- use ``moto`` for unit test

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.