This section documents all user visible changes included between ddbmock version 1.0.0 and version 1.0.2.
- Fixed issues #10, #11, #13 and #15. Thanks to Lance Linder, Michael Hart
and James O'Beirne for the pull requests.
This section documents all user visible changes included between ddbmock versions 0.4.1 and versions 1.0.0
- Add documentation for
Table
internal API- Add documentation for
DynamoDB
(database) internal API- Add documentation for
Key
internal API- Add documentation for
Item
andItemSize
internal API
- Add a
truncate
method to the tables
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.
- Add support for
ExclusiveStartKey
,LastEvaluatedKey
andLimit
forScan
- 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)
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.
- consistent_read parameter to
Query
- central config.py file with all constraints
- timer for table status changes
- full
Query
support - 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_patch
to restore originalboto.dynamodb
behavior- allow
ConsistentRead
on a per-table basis forBatchGetItem
- legacy
connect_boto
andconnect_ddbmock
dynamodb_api_validate
decorator. It is now called automaticallywrap_exceptions
decorator. It is now integrated to the router- minimum throughput change of 10 %
- global refactoring
- rename
routes
module tooperations
for 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)
- rename
connect_boto
toconnect_boto_patch
- rename
connect_ddbmock
toconnect_boto_network
- rename all
DynamoDB() to ``dynamodb
- replace ...import DynamoDB by ... import dynamodb
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.
- preliminary batchWriteItem support
- 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
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
- 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_OLD
ALL_NEW
UPDATED_OLD
UPDATED_NEW
inUpdateItem
- add accurate field size calculation
- add accurate item size calculation
- add accurate table size calculation
- add MAX_TABLES check at table creation
- 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_key
andrange_key
size validation - accurate number limitations (max 38 digits precision; between 10^-128 and 10^+126)
- rename
connect_boto
toconnect_boto_patch
+ compat layer - rename
connect_ddbmock
toconnect_boto_network
+ compat layer - block PutItem/UpdateItem when bigger than
MAX_ITEM_SIZE
Nothing mandatory as this is a minor release but, I recommend that you:
- rename
connect_boto
toconnect_boto_patch
- rename
connect_ddbmock
toconnect_boto_network
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).
- entry-point WEB (network mode)
- entry-point Boto (standalone mode)
- support for
CreateTable
method - support for
DeleteTable
method - support for
UpdateTable
method - support for
DescribeTable
method - support for
GetItem
method - support for
PutItem
method - support for
DeleteItem
method - support for
UpdateItem
method (small approximations) - support for
BatchGetItem
method (initial) - support for
Query
method (initial) - support for
Scan
method (initial) - all comparison operators
- aggresive input validation
- no support for
BatchWriteItem
- no support for "Excusive Start Key", "Reverse" and "Limit" in
Query
andScan
- no support for "UnprocessedKeys" in
BatchGetItem
- Web entry-point is untested, fill bugs if necessary :)