Versions CHANGELOG
Version: 1.1.0
Changes to Rummage as whole:
More functional way of calling
Rummage
:- Instead of
EctoSchema.rummage(query, rummage)
, callRummage.Ecto.rummage(query, rummage)
- Instead of
Default
Hooks
can handle any number of associations.
Changes to complexity:
Hooks
are more independent of each other due to a newly introducedbefore_hook
feature. This allows us to formatrummage_params
based on what a hook is expecting and keep the code clean.
In Progress:
- A
CustomHook
withkey-set
pagination based on this link.
Version: 1.0.0
Major changes to default hooks:
Search
:- Can now search more than just
like
. - Added case insensitive
like
feature. - Added support for
like
,ilike
,eq
,gt
,lt
,gteq
,lteq
assearch_types
(Refer to docs for more details) - Can search on an association field (Refer to docs for more details)
- Can now search more than just
Sort
:- Added case insensitive
sort
. - Can sort on an association field (Refer to docs for more details)
- Added case insensitive
Pagination
: NO CHANGES
Change in rummage
struct syntaxes:
search
key:- Earlier:
rummage = %{"search" => %{"field_1" => "field_!"}}
- Now:
rummage = %{"search" => %{"field_1" => %{"assoc" => ["assoc_1", "assoc_2"], "search_type" => "like", "search_term" => "field_!"}}
sort
key:- Earlier:
rummage = %{"sort" => "field_1.asc"}
- Now:
rummage = %{"sort" => %{"assoc" => ["assoc_1", "assoc_2"], "field" => "field_1.asc"}}
paginate
key: NO CHANGES
Custom Hooks Examples Included:
Included some examples for custom hooks:
Rumamage.Ecto.CustomHooks.SimpleSearch
: Vanilla search feature with support for onlylike
Rumamage.Ecto.CustomHooks.SimpleSort
: Vanilla sort feature
Version: 0.6.0
- First version with Rummage.Phoenix compatibility
- First major version