This project follows semver 2.0.0 and the recommendations of keepachangelog.com.
- Loosen the
activesupport/actionpackdependency cap (was< 5.3) so the gem installs on modern Rails (6/7/8). The code itself was already compatible. - Modernize the gemspec (
require_relativefor the version file, derive the homepage from the gem name).
- Change the order of arguments for
add_paramstoadd_params(url, query_params_to_add). This feels more natural, since you are adding the new query params to the end of the given URL. It is also more consistent with the Rails route helpers, likesomething_path(query_params_to_add).
- Fix
merge_url_forto not pass on reserved options like only_path (which were only intended for consumption byurl_for) toadd_params. It was adding it to the end of the URL, likeonly_path=true.
- Fix issue with merge_params not merging nested hashes as expected (changed to
use
deep_mergeinstead ofmerge)
- Better support for nested hashes: Using
deep_symbolize_keysinstead ofsymbolize_keys. - Allow keys in nested hashes to be deleted by setting their value to nil
- Add
params_from_url(url)helper - Allow a hash to be passed as an argument to
params_for_url_for - Add dependency on
facetsgem
- Fix
merge_url_forto not try to add a param as a query param if it's been recognized as a route param (part of the route path). We don't want the same param to be passed both via the route path and the query string.
merge_url_for: Allow keys that are currently inquery_paramsto be deleted by setting their value tonil.
- Fix
add_paramsto not inadvertently add a '?' to the end of the URI if there are no params to add
- Add
slice_paramshelper
Initial release