# CHANGELOG

# Release Policy

Pagy follows the Semantic Versioning 2.0.0, and introduces BREAKING CHANGES only for MAJOR versions.

We release any new version (MAJOR, MINOR, PATCH) as soon as it is ready for release, regardless of any time constraint, frequency or duration.

We rarely deprecate elements (releasing a new MAJOR version is just simpler and more efficient). However, when we do, you can expect the old/deprecated functionality to be supported ONLY during the current MAJOR version.

# Recommended Version Constraint

Given a version number MAJOR.MINOR.PATCH (e.g. 43.1.7):

The gem 'pagy', '~> 43.0' Gemfile entry (without the PATCH number) ensures that the bundle update command will update pagy to the most recent version WITHOUT BREAKING CHANGES.

Increment the MAJOR version in your Gemfile ONLY when you are ready to handle the BREAKING CHANGES.

# Breaking Changes

Follow the Upgrade to 43 Guide.

If you upgrade from version < 9.0.0 see the following:


# Version 43.1.0

  • Translate the aria_label.nav entry in the id, ja, kn, sw locales. Close #588, close #590, close #591, close #603.
  • Improve the Pagy AI panel
  • Simplify the paginators code
  • Allow nested :page and :limit request params and URLs:
    • Add the :root_key option:
    • Simplify the :jsonapi handling as a special case of nested params
  • Fix and simplify the pagy console code

# Version 43.0.7

  • Add compatibility for searchkick 6. Close #831
  • Fix the search paginators request in passive mode. Close #830.

# Version 43.0.6

  • Improve Pagy AI Widget scripts

# Version 43.0.5

  • Add console loader for easier usage
  • Add comment for the calendar usage. Close #827.

# Version 43.0.4

  • Remove the Pagy.options from the Calendar configuration. Close #825

# Version 43.0.3

  • Update tr.yml (#824)

# Version 43.0.2

  • Ensure the Pagy::Request#params are the original params sent with the request. Close #821

# Version 43.0.1

  • Reimplement reading params from POST requests; rename internal variables. Close #821
  • Fix AI widget problem for apps. Close #817.
  • Improve I18n documentation. Close #811
  • Link to documentation website's CHANGELOG page (#804)

# Version 43.0.0

We needed a leap version to unequivocally signaling that it's not just a major version: it's a complete redesign of the legacy code at all levels, usage and API included.

Why 43? Because it's exactly one step beyond "The answer to the ultimate question of life, the Universe, and everything." 😉

# Changes

  • The Countless pagination remembers the last page
    • Pagination navs now allow jumping forward after navigating back a few pages.
  • Javascript refactoring
    • The new Pagy.sync_javascript function used in the pagy.js initializer, avoids complicated configurations.
    • Added the plain pagy.js and relative source map files.
  • I18n refactoring
    • No setup required: the locales and their pluralization are autoloaded when your app uses them.
    • The locale files are easier to override with Pagy::I18n.pathnames << my_dictionaries.
  • HTML and CSS refactoring
    • Stylesheets are now based on CSS properties and calculations, for easer customizstion.
    • The new PagyWand interactive tool generates the CSS Override for your custom styles and provides live feedback right in your app.
  • Playground apps
    • Better usability and styles
  • Bootstrap and Bulma
    • Fixed a few style glitches.

LEGACY CHANGELOG >>>