Change log - Migration guide.¶
ddbmock 1.0.2¶
This section documents all user visible changes included between ddbmock version 1.0.0 and version 1.0.2.
Fixes¶
- Fixed issues #10, #11, #13 and #15. Thanks to Lance Linder, Michael Hart
and James O’Beirne for the pull requests.
ddbmock 1.0.0¶
This section documents all user visible changes included between ddbmock versions 0.4.1 and versions 1.0.0
Additions¶
- Add documentation for
Tableinternal API- Add documentation for
DynamoDB(database) internal API- Add documentation for
Keyinternal API- Add documentation for
ItemandItemSizeinternal API
Changes¶
- Add a
truncatemethod to the tables
ddbmock 0.4.1 aka 1.0.0 RC¶
This section documents all user visible changes included between ddbmock versions 0.4.0 and versions 0.4.1
This iteration was mostly focused on polishing and brings last missing bits.
Additions¶
- Add support for
ExclusiveStartKey,LastEvaluatedKeyandLimitforScan
Changes¶
- Wrap all write operations in a table scope lock: each individual operation should be atomic
- Addressed Thread safety issues
- Add option to disable status update timers (#8)
- Fix BETWEEN bug (#7)
ddbmock 0.4.0¶
This section documents all user visible changes included between ddbmock versions 0.3.2 and versions 0.4.0
This iteration wa focused on modularity and planification.
Additions¶
- consistent_read parameter to
Query - central config.py file with all constraints
- timer for table status changes
- full
Querysupport - throughput statistics to help plan real usage
- pre-instanciate DynamoDB as dynamodb
- datastore API
- bundle memory store
- bundle sqlite store
- add config param to switch
clean_boto_patchto restore originalboto.dynamodbbehavior- allow
ConsistentReadon a per-table basis forBatchGetItem
Removal¶
- legacy
connect_botoandconnect_ddbmock dynamodb_api_validatedecorator. It is now called automaticallywrap_exceptionsdecorator. It is now integrated to the router- minimum throughput change of 10 %
Changes¶
- global refactoring
- rename
routesmodule tooperationsfor consistency with DynamoDB - Move from Voluptuous to Onctuous for validations, less code
- fix server startup with pserver (bad backage name)
- fix server crash on validation exception (bad serialization)
- accurate throughput for all Read operations
- accurate throughput for all Write operations
- move ‘views’ to ‘routes’
- remove all pyramid code from ‘views’/’routes’
- pyramid and boto entry points now shares most of the router
- UpdateItem failed to save keys properly
- integrate boto dynamodb integration tests to test suite (disabled unless ‘–no-skip’)
- do not require (real) user credentials in boto patch version (#5)
Upgrade¶
- rename
connect_bototoconnect_boto_patch - rename
connect_ddbmocktoconnect_boto_network - rename all
DynamoDB() to ``dynamodb - replace ...import DynamoDB by ... import dynamodb
ddbmock 0.3.2¶
This section documents all user visible changes included between ddbmock versions 0.3.1 and versions 0.3.2
This iteration was focused on passing boto integration tests.
Additions¶
- preliminary batchWriteItem support
Changes¶
- fix number validation
- fix: item where created by defaultdict magic when looking for bogus item.
- return no Item field when not found, but empty when filtered
- [botopatch] handle DynamoDBConditionalCheckFailedError error
ddbmock 0.3.1¶
This section documents all user visible changes included between ddbmock versions 0.3.0 and versions 0.3.1
This iteration was focused on accuracy
Additions¶
- 100% tests coverage
- add basic tests for pyramid entry-point (#1)
- add plenty of unit and functional tests. Coverage is 100%
- add support for all
ALL_OLDALL_NEWUPDATED_OLDUPDATED_NEWinUpdateItem - add accurate field size calculation
- add accurate item size calculation
- add accurate table size calculation
- add MAX_TABLES check at table creation
Changes¶
- accurate table statuses
- fix pyramid entry-point
- fix list validations. Len limitation was not working
- attempt to store empty field/set raise ValidationError (#4)
- accurate exception detection and reporting in UpdateTable
- accurate
hash_keyandrange_keysize validation - accurate number limitations (max 38 digits precision; between 10^-128 and 10^+126)
- rename
connect_bototoconnect_boto_patch+ compat layer - rename
connect_ddbmocktoconnect_boto_network+ compat layer - block PutItem/UpdateItem when bigger than
MAX_ITEM_SIZE
Upgrade¶
Nothing mandatory as this is a minor release but, I recommend that you:
- rename
connect_bototoconnect_boto_patch - rename
connect_ddbmocktoconnect_boto_network
ddbmock 0.3.0¶
Initial ddbmock release. This is alpha quality sofware. Some
import features such as “Excusive Start Key”, “Reverse” and
“Limit” as well as BatchWriteItem have not been written (yet).
Additions¶
- entry-point WEB (network mode)
- entry-point Boto (standalone mode)
- support for
CreateTablemethod - support for
DeleteTablemethod - support for
UpdateTablemethod - support for
DescribeTablemethod - support for
GetItemmethod - support for
PutItemmethod - support for
DeleteItemmethod - support for
UpdateItemmethod (small approximations) - support for
BatchGetItemmethod (initial) - support for
Querymethod (initial) - support for
Scanmethod (initial) - all comparison operators
- aggresive input validation
Known bugs - limitations¶
- no support for
BatchWriteItem - no support for “Excusive Start Key”, “Reverse” and “Limit” in
QueryandScan - no support for “UnprocessedKeys” in
BatchGetItem - Web entry-point is untested, fill bugs if necessary :)