Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2.2.0 #123

Merged
merged 17 commits into from
Aug 31, 2018
Merged

Release 2.2.0 #123

merged 17 commits into from
Aug 31, 2018

Conversation

numberoverzero
Copy link
Owner

@numberoverzero numberoverzero commented Aug 30, 2018

Notable changes:

  • Continuous Backups
  • DynamicList, DynamicMap
  • SearchIterator.all()
  • String and Binary transparently map None to "" and b"", respectively
  • Numerous docs improvements
  • Simplified integ test setup with docker

Issues covered:

The `Type` class exposes a new function, `supports_operation(str) -> bool`
which by default uses its `backing_type` to look up supported condition
operators (`begins_with`, `in`).

Dynamic types only support the basic built-in types, those are:

* `String`, `Binary`, `Number`, `Boolean`
* `Set(String)`, `Set(Binary)`, `Set(Number)`
* `DynamicList`, `DynamicMap`

This means that saving ie. a `DateTime` inside a `List(DateTime)` and loading
it with `DynamicList` will give a list of strings; the detailed type
information is not preserved anywhere.

However, this makes it easy to store arbitrary primitive values:

```
class Blob(BaseModel):
    id = Column(Integer, hash_key=True)
    data = Column(DynamicMap)

blob = Blob(id=1)
blob.data = {
    "foo": "bar",
    "inner": [
        {"another": "document"},
        {"string", "set"},
        [True, False, "FILE_NOT_FOUND"],
    ],
    {b"dead": b"beef"}
}
```
@numberoverzero numberoverzero added this to the 2.2 milestone Aug 30, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant