Skip to content
This repository was archived by the owner on Sep 16, 2026. It is now read-only.

v2.1.0 - Pagy 43.x Upgrade

Latest

Choose a tag to compare

@xaviablaza xaviablaza released this 16 Feb 09:23

What's Changed

Pagy Upgrade (8.x → 43.x)

This release upgrades the pagy pagination gem from version 8.x to 43.x, resolving dependency conflicts with Rails applications using modern pagy versions.

Breaking Changes

  • Pagy dependency: Now requires pagy ~> 43.0 (was ~> 8.0)
  • Controller API: Must use Pagy::Method instead of deprecated Pagy::Backend
  • View helpers: Updated to use new instance method API:
    • @pagy.series_nav(:bootstrap) instead of pagy_bootstrap_nav(@pagy)
    • pagy.a_lambda('class') instead of pagy_link_proc(pagy, 'class')

Improvements

  • Modernized pagy initializer with v43 syntax (extras are now autoloaded)
  • Cleaner configuration with 56 fewer lines of code
  • Better performance with intelligent autoloading
  • Added Ruby 4.0 compatibility (ostruct and benchmark gems)

Migration Guide

View Helper Changes:

# Before (pagy 8.x)
<%== pagy_bootstrap_nav(@pagy) %>
<% link = pagy_link_proc(pagy, 'class="btn"') %>

# After (pagy 43.x)
<%== @pagy.series_nav(:bootstrap) %>
<% link = pagy.a_lambda('class="btn"') %>

Controller Changes:

# Before (pagy 8.x)
include Pagy::Backend

# After (pagy 43.x)
include Pagy::Method

Configuration Changes:

# Before (pagy 8.x)
Pagy::VARS[:items] = 20
require 'pagy/extras/bootstrap'

# After (pagy 43.x)
Pagy.options[:items] = 20
# No require needed - extras are autoloaded!

For more details, see the Pagy 43 Upgrade Guide.

Full Changelog: v2.0.0...v2.1.0