Releases: liveh2o/active_remote
v3.0.0
Version 3 includes several major optimizations and cleans up a lot of technical debt.
Replace ActiveAttr with faster native typecasting
- Remove dependency on ActiveAttr [#48, @brianstien]
- Drop support for Rails 3 mass assignment protection [#50, @brianstien]
- Add support for strong param enforcement for Rails 4+ [#50, @brianstien]
- Improve performance of many methods including
respond_to?
andnew
[#50, @brianstien] - Refactor of attribute storage internals [#50, @brianstien]
- Remove a method was was doing dirty tracking twice [#52, @brianstien]
- Removed search callbacks [#55, @brianstien]
- Refactor of instantiate from rpc codepath [#56, @brianstien]
- Change to internals of typecasting so that
attribute :name, :type => Integer
won't affect performance [#56, @brianstien]
Extract bulk methods into a separate gem
- The bulk methods (i.e.,
create_all
) have been extracted into a new gem: active_remote-bulk [#54, @brianstien]
Complete work on association writers
- Adds writer method for has_many associations [#51, @fergmasterflex]
Remove deprecated methods and unnecessary extensions
- Remove core exts [#49, @brianstien]
- Remove deprecated rpc methods
.request
,.request_type
, #execute,
#remote_call`. These methods are handled by the rpc adater now. [#49, @brianstien] - Remove deprecated method
._active_remote_search_args
[#49, @brianstien] - Remove deprecated
.parse_records
method [#49, @brianstien] - Remove publication,
#publishable_hash
method [#49, @brianstien]
Pre-release of v3
Getting prepped for v3, which includes several optimizations and removes a lot of cruft.
Adds setters for has_one and belongs_to
We weren't defining setter methods for associations before. Now we do. (#47, @fergmastaflex)
Pass errors through on bulk RPC calls
Fix attribute defaults
Attribute defaults were broken with the move to the new typecasting pattern in #43. They are now fixed (@brianstien #44).
Speed up typecasting
Replace ActiveAttr typecasting with a baked-in version that significantly speeds up serialization by eagerly typecasting on write instead of lazily typecasting on read. (@brianstien #43)
Testing out new typecasting pattern
Working through a new typecasting pattern that significantly speeds up serialization.
Speed up instantiate method
We get a significant speed boost by skipping mass-assignment protection in the instantiate
method (#42).
Fix broken update functionality
The update
method in the Persistence
module was renamed, but the corresponding method in the Dirty
module was not. This caused updates not to work when dirty tracking is enabled (the default). (@brianstien, #41)
Add update_attribute method
Add an update_attribute
method that updates a single attribute and saves the record:
- Validation is skipped.
- Callbacks are invoked.
- Updates all the attributes that are dirty in this object.
This is especially useful for boolean flags on existing records. (@brianstien, #40)