Skip to content

Feature Release 1.1.0

Compare
Choose a tag to compare
@amcgregor amcgregor released this 28 Nov 01:12
· 133 commits to develop since this release
1.1.0
7d63680

New in this release:

  • Add Landscape.io integration.
  • Improve overall code health. (#14)
  • Added missing project metadata.
  • Updated installation documentation. 81e7702
  • Remove dependency on pytz. 815a74a
  • Removed our own compat module; schema already has a sufficient one.
  • Allow for Reference fields to cache data they reference. (#8)
  • Array & Embed dereferencing + Alias pseudo-field support. (#12)
    • Ability to dereference Array and Embed subfield values when querying through class attribute access.
    • Added Alias pseudo-field to allow the creation of shortcuts for value retrieval and assignment (via instance attribute access) and querying (through class attribute access).
    • Array and Embed now persist their typecasting within __data__, to preserve changes to nested values. (This is generally safe, however do not utilize PluginReference as an embeddable kind.)
  • Allow for fields to be combined, not just query documents. (#11)
    • Field references (Q instances generated through class-based attribute access of fields) may now be combined to save time in queries involving multiple fields being compared against the same value.
  • Parameterized filter, sort, projection and updates. (#4)
    • Addition of ~ inversion / $not support on Ops.
    • Split Ops types.
    • Ensure Document uses odict.
  • GeoJSON and geographic querying support. (#6)
    • Added Document types:
      • GeoJSON
      • GeoJSONCoord
      • Point
      • LineString
      • Polygon
      • MultiPoint
      • MultiLineString
      • MultiPolygon
      • GeometryCollection
    • Added field query operators:
      • near
      • intersects
      • within
    • Added parametric filter operators:
      • near
      • within
      • within_box
      • within_polygon
      • within_center
      • within_sphere
      • intersects
  • Ability to perform certain collection-level operations. (#17)
    • Added Document class methods:
      • create_collection
      • get_collection
      • create_indexes
    • Added the following Document class attributes to control collection settings:
      • __collection__ - the name of the collection to use
      • __read_preference__ - default ReadPreference
      • __read_concern__ - default ReadConcern
      • __write_concern__ - default WriteConcern
      • __capped__ - the size, in bytes, to allocate as a capped collection
      • __capped_count__ - additionally limit the number of records
      • __engine__ - override storage engine options
      • __validate__ - one of 'off' (the default), 'strict', or 'moderate'.