All Versions
11
Latest Version
Avg Release Cycle
135 days
Latest Release
1147 days ago

Changelog History
Page 1

  • v2.0.0 Changes

    September 05, 2018

    ๐Ÿ”– Version 2.0.0-rc.0

    ๐Ÿ”„ Change in namespace/module names:

    • Replace Rummage.Ecto.Hooks with Rummage.Ecto.Hook.

    - Replace Rummage.Ecto.CustomHooks with Rummage.Ecto.CustomHook.

    Introducing Rummage.Ecto.Schema:

    ๐Ÿ”„ Changes to Rummage.Ecto.Hook.Search:

    ๐Ÿ”„ Changes to Rummage.Ecto.Hook.Sort:

    ๐Ÿ”„ Changes to Rummage.Ecto.Hook.Paginate:

    ๐Ÿ”„ Changes in Configurations:

  • v2.0.0-rc.1

    July 09, 2020
  • v2.0.0-rc.0 Changes

    September 05, 2018

    ๐Ÿ”– Version 2.0.0-rc.0

    ๐Ÿ”„ Change in namespace/module names:

    • Replace Rummage.Ecto.Hooks with Rummage.Ecto.Hook.

    - Replace Rummage.Ecto.CustomHooks with Rummage.Ecto.CustomHook.

    Introducing Rummage.Ecto.Schema:

    ๐Ÿ”„ Changes to Rummage.Ecto.Hook.Search:

    ๐Ÿ”„ Changes to Rummage.Ecto.Hook.Sort:

    ๐Ÿ”„ Changes to Rummage.Ecto.Hook.Paginate:

    ๐Ÿ”„ Changes in Configurations:

  • v1.3.0 Changes

    June 03, 2018

    ๐Ÿš€ This Release has ways to abstract and override schema/rummage functionalities.

  • v1.3.0-rc.schema Changes

    June 03, 2018

    ๐Ÿš€ This Release has ways to abstract and override schema/rummage functionalities.

  • v1.3.0-rc.0 Changes

    January 09, 2018

    Revamped Rummage

    ๐Ÿ‘ Better Behaviour definition for Hooks.

    • Add __using__ macro, instead of using module_attribute @behviour.
    • Use better function names run/2 and format_params,

    - Use defoverridable for @behaviour callbacks.

    ๐Ÿ‘‰ Make Native hooks more generalized instead of targeted for phoenix.

    • Use atoms over strings for keys in maps and params.
    • Keep hooks more agnostic of configurations.

    - Make Rummage.Ecto delegate configurations to hooks.

    The return of Rummage.Ecto. __using__ /1 macro.

    • This allows rummage_ecto to resolve configurations at compile time.

    - This allows better/easier usage of Rummage.Ecto.

    ๐Ÿ”ง App specific configurations.

    • config :appname, Rummage.Ecto ..... instead of config: :rummage_ecto, Rummage.Ecto.
    • This allows using rummage with two different apps in an umbrella app with different rummage configurations.

    - These configurations are loaded with the help of __using__ macro, based on the application the module belongs to.

    Search hook has search_expr.

    • This allows usage of or_where and not_where queries.

    - Defaults to where.

    Search hook has search_type : is_null

    - This allows for searching for NULL or NOT NULL

    โœ… Tested/Examples with different field_types, boolean, float, string etc.

    Paginate hook works with or without a primary_key:

    - the default paginate hook used to work only for Schemas with id as primary keys, now it works for all and even Schemas without a primary key.

    Keyset Pagination CustomHook.

    • Adds faster/lighter weight pagination option.

    - Documentation specifies when to use it and when not to.

    โšก๏ธ SimpleSort and SimpleSearch CustomHook updates.

    - Same as sort and search, but without associations, so cleaner and faster.

    ๐Ÿ‘ Better documentation.

    • Search and Sort associations are better documented.
    • CustomHooks are better documented.
  • v1.2.0 Changes

    • Faster Pagination Hooks
  • v1.1.0 Changes

    March 20, 2017

    ๐Ÿ”„ Changes to Rummage as whole:

    ๐Ÿš€ This release is to illustrate the actual behavior of Rummage, which is functional:

    - Instead of EctoSchema.rummage(query, rummage), call Rummage.Ecto.rummage(query, rummage)

    0๏ธโƒฃ Default Hooks can handle any number of associations.

    ๐Ÿ”„ Changes to complexity:

    • Hooks are more independent of each other due to a newly introduced before_hook feature. This
      ๐Ÿ‘ allows us to format rummage_params based on what a hook is expecting and keep the code clean.

    In Progress:

    • A CustomHook with key-set pagination based on this link.
  • v1.0.0 Changes

    March 05, 2017

    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 as search_types (Refer to docs for more details)
      • Can search on an association field (Refer to docs for more details)
    • Sort:

      • Added case insensitive sort.
      • Can sort on an association field (Refer to docs for more details)
    • Pagination: NO CHANGES

    ๐Ÿ”„ Change in rummage struct syntaxes:

    • search key:

      • Earlier: elixir rummage = %{"search" => %{"field_1" => "field_!"}}
      • Now: elixir rummage = %{"search" => %{"field_1" => %{"assoc" => ["assoc_1", "assoc_2"], "search_type" => "like", "search_term" => "field_!"}}
    • sort key:

      • Earlier: elixir rummage = %{"sort" => "field_1.asc"}
      • Now: elixir 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 only like
      • Rumamage.Ecto.CustomHooks.SimpleSort: Vanilla sort feature
  • v0.6.0 Changes

    February 16, 2017
    • First version with Rummage.Phoenix compatibility
    • First major version