All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add Lockbox support to encrypt_sensitive_fields matcher
- Minor README and doc fixes
- Fix describe collection task error
- Fix login rake task re-auth bug by using CipherStash::Client.login
- Assess: check if encrypted attribute is a set not an array
- Assess: Raise error in RSpec matcher when assessment is outdated
- Assess: Check encrypted attributes is an array
- New IndexDSL supporting all previous features and also adds the ability to index into associated records
- Added Rake task and RSpec matcher for Assess. ActiveStash Assess is a tool to identify where sensitive data lives in your Rails 7 app's database, and tracking your progress on encrypting it.
- Check for workspace arg when logging in
- Support for filter parameters.
- Error handling on StashRB errors returned when logging in.
- Fixed a bug where Rake tasks would not load correctly if users had a
tasks/active_stash.rake
file defined within a project. - Issue where incorrect indexes were being created for ActiveRecord encrypted fields.
- Added basic support for counts on
ActiveStash::Relation
- Ensure GVB is loaded before looking it up.
- Remove bundler gem helpers to avoid conflicts with git release task.
- Added encryption compatible uniqueness validations via ActiveStash::Validations.
- Use git version bump.
- Add the ability to specify a unique constraint on range and exact indexes.
- Add CI job for running specs against main branch of Ruby client
- Add ability to retrieve just stash IDs.
- Update readme to remove usage of count in example query.
- Update rake signup task redirect flow.
- Duplicate loading of ActiveRecord models.
- Add more information detailing next steps, to output of signup rake task.
- Issue where queries would break due to an incompatible change in the ruby-client
- Add net-http as a runtime dep for Ruby versions < 3.1, to stop net-protocol warnings.
- Rake task to launch signup
- Now supports Rails 6 (by backporting
ActiveRecord::Relation.in_order_of
)
- Fixed an issue where calling
joins
orincludes
before (or after)query
fails - Ensure that
stash_id
is set ifcs_put
is called outside of a callback
- Indexes must now be specified via
stash_index
and/orstash_match_all
- Don't call
save
when bulk reindexing to avoid updating timestamps unnecessarily - ActiveStash now detects if your model settings have diverged from the server configuration
- Added support for dynamic-match indexes
- Free-text queries across all strings using
query(str)
Indexing now ignores json
, jsonb
and uuid
types. These may be added later.
First public release