Skip to content

Latest commit

 

History

History
118 lines (90 loc) · 5.53 KB

changelog.md

File metadata and controls

118 lines (90 loc) · 5.53 KB

Changelog

[4.0.0] - Unreleased

Added

  • Added the ability to specify a to-many relationship which will store an array of ids and will re-normalize a collection when the getter is called
  • Added MongoDB interceptor and MongoDBpreInsert, MongoDBpreSave, MongoDBpostSave, and MongoDBpostLoad interception points
  • Added MongoDBMigrationManager for use with cfmigrations

Changed

  • Release structure to correct semvar - decoupled driver version from release version
  • MongoDB Java Driver to 3.10.2
  • Module development build and test harness to new framework

Fixed

  • Fixed support for IN ($in) queries on identifiers, which were being cast wrong in the criteria

[3.5.0.1] - 2017-11-29

Changed

  • MongoDB Java Driver to 3.5.0

[3.2.1.2] - 2016-10-02

Fixed

  • ACF Compatibility Updates
  • Cleanup validation conditionals
  • Fixes casting errors on loaded entity save
  • Ensure entity _id is always cast as a string
  • Fixes merge issue with struct merge on population
  • Add check for _id in record struct

Added

  • Adds the ability to pass an additional match condition on a grouped aggregation - Allows for an additional match clause to limit the grouped results

[3.2.1.1] - 2016-01-20

Fixed

  • Syntax corrections
  • Reverts auto-eviction to pre-v3.2.0.4 spec to prevent removal of normalized data prior to populate()
  • Ensures legacy index names, which weren't keyed off of the collection are dropped and re-created using new naming conventions

[3.2.1.0] - 2016-02-14

Changed

  • Updates Mongo Driver to v3.2.1.0
  • Refactors module to use coldbox module skeleton
  • Adds automated Travis CI builds and deployments for source and new cbmongodb-be slug to Forgebox

Fixed

  • ACF11 compatibility updates

[3.2.0.4]

  • Fixes a schema issue where a parent struct is being overwritten by the default container when the child attribute is lower aphabetically
  • Fixes an issue with unique validation
  • Fixes population issues when passing nested structs
  • Fixes issues with nested keys on normalization
  • Adds auto-eviction prior to population
  • Adds explicit closing to cursor use for single record retrieval
  • Changes index naming scheme to prevent different collections from having the same index name hash
  • Adds the ability to pass a struct as the first argument to where()

[3.2.0.3]

  • Fixes ACF Compatibility Issues

[3.2.0.2]

  • Fixes issues with unexpected driver return types
  • Adds offset() helper method (alias for set_offset()) to ActiveEntity
  • Adds isObjectId() helper method to MongoUtil for detecting whether an object is a Mongo _id string

[3.2.0.1]

  • Fixes issues with module load/unload connection operations
  • Adds GridFS operational support
  • Adds GridFS FileEntity model
  • Fixes issues with _id queries not being typed appropriately
  • Fixes error when attempting to truncate a collection

[3.2.0.0]

  1. Updates MongoDB Java driver to version 3.2.0
  2. Adds support for readConcern configuration option

[3.1.0.4:]

  • Adds validation methods for entities and support for new property ForceValidation, which will prevent saving of documents which do not validate
  • Adds auto-normalization capabilities for schema properties. When attributes are configured, schema will auto-normalize when set() and populate() methods are called.
  • Implements full support for component accessors on all schema properties. Var safe accessor closures are generated to allow recursion through an underscore delimiter (e.g. getFirstLevel_SecondLevel() to retrieve getDocument().FirstLevel.SecondLevel)
  • Fixes native CFML data types not being sanitized on deeply nested structs and arrays.
  • Add getDocument() and asStruct() utility methods, which can be used on unloaded and unloaded entities.
  • Adds append() and prepend() functions to assit in managing document schema arrays.
  • Fixes issues with property maps not being defined correctly and correct casting of boolean property defaults.
  • Adds MongoIndexer singleton to delegate index management away from Entity instances.

[3.1.0.3:]

  • Fixes issue with connections not being pooled accurately and adds connection closing to module unload
  • Moves module bindings to onLoad() to ensure availability of cbjavaloader module
  • Changes return type of all single record retrievals inserts and updates to native structs and adds auto-stringification of _id (eliminates the need for toString())
  • Ensures version of returned object from findOneAndUpdate/findOneAndReplace operations is the after-save version

[3.1.0:]

  • Removes Requirement For CFMongoDB Module
  • Adds Requirement for CBJavaloader Module
  • Implements MongoDB 3.0 Driver
  • Implements the ability to use multiple databases
  • Implements the ability to configure databases at the entity level
  • Implements Native Collection Methods for the 3.0 MongoCollection
  • Implements CFML ## Aggregation methods while allowing direct access to native driver methods
  • Implements CFML ## Map-Reduce methods
  • Demonstrates 52% reduction in query execution times and database operations from the previous version
  • Implements handlers for API documentation (/cmbongodb/docs) and Unit Tests (/cbmongodb/tests)
  • Fixes issue with near() GEOSpatial operations on Polygon objects
  • Re-factors Test Suite to Require the Framework Context
  • Adds an asJSON argument to find() and findAll() entity queries
  • Encapsulates all Collection Result queries to provide the following delivery methods: .asResult() - MongoIterable, .asCursor() - MongoIterator, .asArray(), asJSON()