All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
Active Remote adheres to a shifted version of semver (a la Rails): major/minor versions shadow Rails versions since Active Remote depends on specific Rails versions.
- Update to ActiveModel 7.2
- Require Ruby 3.1 (to match Rails)
- Update to ActiveModel 7.1 #100
- Add
find_by
to theSearch
module to return the first record without raisingRemoteRecordNotFound
#83
- Update to ActiveModel 7.0 #96
- Add Ruby 3.1 compatibility 9477268
- Revert the reader and writer methods so they can be overridden #95
- Update to ActiveModel 6.1
- Add Ruby 3.1 compatibility 45d8e26
- Fix association writer method (so it actually works) 85b369a
- Pin to ActiveModel 6.0 (specs fail under 6.1)
- Update to ActiveModel 6.x
- Update to ActiveModel 5.2 to get major speed gains #68
- Drop support for Rails 5.1
- Remove development dependency on protobuf-nats
- Include response errors in RemoteRecordNotSaved exception #75
- Drop support for Rails 5.0
- Include response errors in RemoteRecordNotSaved exception #75
- Use Active Model attributes #72
- Use type casting from Active Model (custom types must be registered) #71
- Use query attributes from Active Record (string values such as 'FALSE', and '0' are now considered present) #71
- Add ability to execute remote calls on current object #74
Make query attributes more permissive #73
- Drop support for Rails 4.2 (versions will match Rails version moving forward) #71
- Register big_integer type #76
- Include response errors in RemoteRecordNotSaved exception #75
- Fix unknown type error in Protobuf serializer #70
- Add support for registering types that can be used to define attributes without using the existing
:type
or:typecaster
optionsattribute :name, :string
#69
- Speed up boolean typecasting #67, @abrandoned
- Use
:remote_call
instead of ofrpc.execute
in persistence, search
- Add ability to override default RPC endpoints #66
- Require Active Model 4.x to 5.1 for compatibility
- Require Active Model 4.x for compatibility
- Cache and dup default attributes instead of building from scratch (4x speed boost on initialize) #63, @film42
- Allow primary_key to be set on create #61, @mattnichols
- Change the behavior of DateTime types to gracefully handle invalid dates #62, @brianstien
- Guard against undefined method errors in the Protobuf adapter #59, @brianstien
- Bubble up the type of error given from Protobuf instead of a generic
ActiveRemoteError
#58, @ryanbjones
- Improve performance of many methods including
respond_to?
andnew
. #50 - Change to internals of typecasting. Declaring
attribute :name, :type => Integer
will no longer affect performance negatively. #56
- Remove dependency on ActiveAttr #48
- Remove attribute defaults feature #50
- Remove core exts #49
- Remove deprecated rpc methods
.request
,.request_type
, #execute,
#remote_call` These methods are handled by the rpc adater now. #49 - Remove deprecated method
._active_remote_search_args
#49 - Remove deprecated
.parse_records
method #49 - Remove publication,
#publishable_hash
method #49 - Drop support for Rails 3 mass assignment protection. Add support for strong param enforcement for Rails 4+. #50
- Remove a method that was doing dirty tracking twice #52
- Extracted bulk methods to active_remote-bulk #54
- Removed search callbacks #55