- Bug fix: Change limit behavior to match docs.
query().limit()will limit the number of results,
query().scan_limit()will limit number of items scanned (issue 57)
- Breakage: Removing support for overflow fields. The only fields flywheel will care about now are those that are explicitly set as a Field()
- Flywheel no longer forces raise_on_conflict to be True when you sync changes to fields that are part of a composite field. It is now up to the user to avoid putting their composite fields into an inconsistent state.
- Feature: sync() has a new argument,
no_read, which changes the behavior for syncing models with no changes. Instead of performing a GET, it will leave them as-is. This should make it easer to perform batch syncs without worrying as much about wasted bandwidth on GETs.
Fieldhas renamed the
data_typewill still work)
- Bug fix: Bad function call in
- Bug fix: Calling refresh() could sometimes crash from unordered results.
- Bug fix: Mutable field defaults are no longer shared among model instances
- Bug fix: Incorrect
ConditionalCheckFailedExceptionwhen syncing changes to a Composite field.
DateTimeTypeto be stored as a naive datetime.
- Make the
booltypes backwards-compatible with the old json-serialized format (:pr:`24`)
- Allow queries to use
not null, and a few other constraints that were missing (commit 8b8854d)
- Models are smarter about marking fields as dirty for sync (issue 26)
- Stopped using deprecated
expectedsyntax for dynamo3
- Warning: Stored datetime objects will now be timezone-aware (commit a7c253d)
- Warning: Stored datetime objects will now keep their microseconds (commit fffe92c)
- Breakage: Dropping support for python 3.2 due to lack of botocore support
- Breakage: Changing the
booldata types to use native DynamoDB types instead of JSON serializing
- Breakage and bug fix: Fixing serialization of
dateobjects (for more info see the commit) (commit df049af)
- Feature: Can now do ‘contains’ filters on lists
- Feature: Fields support multiple validation checks
- Feature: Fields have an easy way to enforce non-null values (
Data type changes are due to an update in the DynamoDB API
- Breakage: Engine namespace is slightly different. If you pass in a string it will be used as the table name prefix with no additional ‘-‘ added.
- Breakage: Certain queries may now require you to specify an index where it was auto-detected before
- Feature: Queries can now filter on non-indexed fields
- Feature: More powerful “sync-if” constraints
- Feature: Can OR together filter constraints in queries
All changes are due to an update in the DynamoDB API
- Breakage: Engine no longer accepts boto connections (using dynamo3 instead)
- Breakage: Removing S3Type (no longer have boto as dependency)
- Feature: Support Python 3.2 and 3.3
.count()terminator for queries (commit bf3261c)
- Feature: Can override throughputs in
- Bug fix: Engine
namespaceis truly isolated (commit 3b4fad7)
- Bug fix: Some queries fail when global index has no range key (issue 9, commit edce6e2)
- Bug fix: Field names can begin with an underscore (commit 637f1ee, issue 7)
- Feature: Models have a nice default __init__ method (commit 40068c2)
- Bug fix: Can call
incr_()on models that have not been saved yet (commit 0a1990f)
- Bug fix: Model comparison with
- First public release