Skip to main content

Dynamo3

Build:

build coverage

Downloads:

http://pypi.python.org/pypi/dynamo3

Source:

https://github.com/stevearc/dynamo3

Dynamo3 is a library for querying DynamoDB. It is designed to be higher-level than boto (it’s built on top of botocore), to make simple operations easier to perform and understand.

Features

  • Mypy-typed API

  • Python object wrappers for most AWS data structures

  • Automatic serialization of built-in types, with hooks for custom types

  • Automatic paging of results

  • Automatic batching for batch_write_item

  • Exponential backoff of requests when throughput is exceeded

  • Throughput limits to self-throttle requests to a certain rate

  • Nose plugin for running DynamoDB Local

DynamoDB features that are not yet supported

  • Reading from streams

  • Adding/removing tags on a table

  • Table backups

  • Scanning with segments

  • Table replicas (Global tables version 2019.11.21)

  • Table auto scaling

  • DAX

Note that you can still access these APIs by using DynamoDBConnection.call, though you may prefer to go straight to boto3/botocore.

Changelog

1.0.0

  • Removed the legacy API (scan, query, update_item, delete_item, put_item, get_item)

  • Renamed the new API methods to match the old ones (e.g. scan2 -> scan, query2 -> query)

  • Moved constant values into dynamo3.constants. This is where you can now find STRING, BINARY, etc

  • Added mypy typing where possible

  • Drop support for Python 2

  • Add support for table billing mode (aka on-demand tables)

  • Add support for SSE, TTL, and transactions

0.4.10

  • Fixed DynamoDB Local link in testing framework

0.4.9

  • Feature: Result objects from get_item have an exists flag

  • Feature: wait keyword for create and delete table

0.4.8

  • Bug fix: Scans/Queries could return incomplete results if AWS returned an empty Items list

0.4.7

  • New RateLimit class to avoid blowing through your provisioned throughput

0.4.6

  • New Limit class for more complex query limit behavior

  • Bug fix: Scan and Query with Select='COUNT' will page results properly

0.4.5

  • batch_get supports alias arg for ExpressionAttributeNames

0.4.4

  • Make connection stateless again. Puts consumed_capacity into response object and fixes mystery crash.

0.4.3

  • Bug fix: getting ConsumedCapacity doesn’t crash for BatchGetItem and BatchWriteItem

  • Feature: connection.default_return_capacity

  • Feature: hooks for precall, postcall, and capacity

  • Better handling of ConsumedCapacity results

0.4.2

  • Feature: New methods to take advantage of the newer expression API. See get_item2, put_item2.

  • Feature: Shortcut use_version for switching over to the new APIs.

0.4.1

  • Feature: update_table can create and delete global indexes

  • Feature: New methods to take advantage of the newer expression API. See scan2, query2, update_item2, and delete_item2.

0.4.0

  • Migrating to botocore client API since services will be deprecated soon

0.3.2

  • Bug fix: Serialization of blobs broken with botocore 0.85.0

0.3.1

  • Bug fix: Crash when parsing description of table being deleted

0.3.0

  • Breakage: Dropping support for python 3.2 due to lack of botocore support

  • Feature: Support JSON document data types

Features thanks to DynamoDB upgrades: https://aws.amazon.com/blogs/aws/dynamodb-update-json-and-more/

0.2.2

  • Tweak: Nose plugin allows setting region when connecting to DynamoDB Local

0.2.1

  • Feature: New, unified connect method

0.2.0

  • Feature: More expressive ‘expected’ conditionals

  • Feature: Queries can filter on non-indexed fields

  • Feature: Filter constraints may be OR’d together

Features thanks to DynamoDB upgrades: http://aws.amazon.com/blogs/aws/improved-queries-and-updates-for-dynamodb/

0.1.3

  • Bug fix: sometimes crash after deleting table

  • Bug fix: DynamoDB Local nose plugin fails

0.1.2

  • Bug fix: serializing ints fails

0.1.1

  • Feature: Allow access_key and secret_key to be passed to the DynamoDBConnection.connect_to_* methods

0.1.0

  • First public release

Metadata

Release files for dynamo3 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dynamo3 1.0.0
File Size Uploaded Provenance
dynamo3-1.0.0.tar.gz 37.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for dynamo3 1.0.0
File Interpreter ABI Platform
dynamo3-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 76.2 kB

Release files / dynamo3-1.0.0.tar.gz

Download URL dynamo3-1.0.0.tar.gz
Size 37.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c13644c08fbad0861cd705ef84b9061ea9a9616a3c8c055fb5282d7574bd86d7
BLAKE2b-256 checksum
How to use checksums
ebb22c7c3bb4c12889aa6d5e8b00c34cbdf7df09839faab8ad11043ad37eda37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.9

Release files / dynamo3-1.0.0-py3-none-any.whl

Download URL dynamo3-1.0.0-py3-none-any.whl
Size 39.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b36ea3849bba4eb55002c2695e45e73a51422448dead5e59cadb337b68922ac4
BLAKE2b-256 checksum
How to use checksums
f5714cab36e2c51efedd331c0d6cf303a039cf1cf8b8724b024f3a1d15bd57bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.9

Security for dynamo3 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page