Skip to content

Releases: jruby/jruby-rack

2.0.0

Choose a tag to compare

@chadlwilson chadlwilson released this 31 Aug 18:38

What's Changed

New Contributors

Full Changelog: jruby-rack-1.3.0...jruby-rack-2.0.0

1.3.0

Choose a tag to compare

@chadlwilson chadlwilson released this 31 Aug 18:36

What's Changed

  • Officially support Javax Servlet API 4.0 (JEE 8)
  • Refactor logging for more sane defaults and improved performance (@kares)
  • Remove long-deprecated configuration and API functionality (@kares & @chadlwilson)

For most users this should be a minor upgrade; as long as you do not depend on functionality deprecated within
JRuby-Rack 1.2.x, EOL JRuby or EOL Rails versions.

Breaking compatibility changes

  • Drop support for JRuby 9.x (and thus Java < 21)
  • Drop support for Rails < 7.2
  • Drop JMS support

Breaking behavioral changes

  • Change context listener to throw by default in case of an exception during initialization (@kares)
  • Change rails context listener to assume a thread-safe application by default (@kares)
  • Rack is no longer vendored inside the jar, so applications must ensure rack is provided via bundler or GEM_PATH (@chadlwilson )

Breaking configuration capability changes

  • Drop jruby.rack.jruby.version and jruby.rack.rack.release keys from rack env Hash
  • Drop deprecated and undocumented jruby-rack 1.0 backwards compat properties jruby.runtime.timeout.sec, jruby.runtime.initializer.threads, jruby.init.serial, jruby.rack.request.size.threshold.bytes
  • Drop deprecated jruby.rack.ignore.env property, replaced long ago by jruby.runtime.env and optional jruby.runtime.env.rubyopt
  • Drop deprecated jruby.rack.filter.* properties, replaced long ago by init parameters addsHtmlToPathInfo and verifiesHtmlResource
  • Drop handling of # rack.version magic comments inside config.ru files, replaced by bundler or user-managed GEM_PATH

Breaking Java API changes (only relevant for users extending the Java API)

  • Drop unnecessary jruby.compat.version and RackConfig.getCompatVersion() API
  • Drop deprecated org.jruby.rack.RackInput alias for org.jruby.rack.ext.Input class
  • Drop/rename deprecated RackConfig and ServletRackEnvironment API methods per their earlier comments
  • Drop deprecated RackLogger string (level) constants
  • Custom RackLogger implementations must accept CharSequence rather than String to allow RubyString passthrough
  • Rename deprecated JRuby::Rack::ServletLog to JRuby::Rack::ErrorLog for clarity, despite usage only in servlet contexts.

Breaking Ruby API changes (only relevant for users extending the Ruby API)

  • Drop deprecated JRuby::Rack::RailsFileSystemLayout alias for JRuby::Rack::FileSystemLayout
  • Drop deprecated JRuby::Rack::Errors alias for JRuby::Rack::ErrorApp
  • Drop deprecated Rack::Handler::Servlet::Env and Rack::Handler::Servlet::LazyEnv types (replaced by DefaultEnv)
  • Drop deprecated setting of global $servlet_context variable during embedded usage (replaced by JRuby::Rack.context)

1.2.8

Choose a tag to compare

@chadlwilson chadlwilson released this 31 Aug 18:12
732e7c7

What's Changed

  • Improve isolation and bundler version/CLI boot issues with more opinionated boot process (#461 by @chadlwilson)
  • Fix possible infinite loop in Response#isClientAbortException (#449, #450 by @thimios)
  • Fix startup logging of captured errors when config properties cannot be dumped (@chadlwilson)
  • Update (bundled) rack to 2.2.24

Full Changelog: jruby-rack-1.2.7...jruby-rack-1.2.8

1.2.7

Choose a tag to compare

@chadlwilson chadlwilson released this 19 May 18:59

What's Changed

Full Changelog: jruby-rack-1.2.6...jruby-rack-1.2.7

1.2.6

Choose a tag to compare

@chadlwilson chadlwilson released this 15 Oct 20:17
0cf520c

What's Changed

  • Add missing block-only signature for debug logging (@chadlwilson)
  • Ensure rack boot process leaves ENV['GEM_PATH'] and Gem.paths in a consistent state (@chadlwilson)
  • Remove undocumented and unsafe jruby.rack.env.gem_path = false option (unusable on Bundler 1.6+)
  • Fix unintended Rubygems initialization too early in boot process with JRuby 9.4+ (@chadlwilson)
  • update (bundled) rack to 2.2.20

Full Changelog: jruby-rack-1.2.5...jruby-rack-1.2.6

1.2.5

Choose a tag to compare

@chadlwilson chadlwilson released this 08 Sep 12:51
9f93cc3

What's Changed

  • Fix use of jruby-rack under Java 8 (#324)
  • Fix deprecated usages of JRuby runtime (backport of non API-facing changes from #318)
  • Fix deprecated usages of Rack API (backport of #316 and non API-facing changes from #318)
  • [backport 1.2.x] Reinstate Rails integration test stubs for Rails 5.0 -> 7.2 by @chadlwilson in #323

Full Changelog: jruby-rack-1.2.4...jruby-rack-1.2.5

1.2.4

Choose a tag to compare

@chadlwilson chadlwilson released this 08 Aug 12:19
496a7bd

What's Changed

  • update (bundled) rack to 2.2.17
  • Fix Rails 7.1 CSRF protection when working with JavaServletStore sessions
  • Cleanup Actions workflow and dependabot ignore rules by @chadlwilson in #281
  • [backport 1.2.x] Fix Rails 7.1 CSRF token support by @chadlwilson in #297
  • [backport 1.2.x] Migrate publishing to go via new Sonatype Central publishing portal by @chadlwilson in #298

Full Changelog: jruby-rack-1.2.3...jruby-rack-1.2.4

1.2.3

Choose a tag to compare

@chadlwilson chadlwilson released this 22 Jul 15:05
7439b7b
  • avoid warnings due to usage of File.exists?
  • Fix Rails 7.1 compatibility by ensuring active_support is required before railtie
  • Workaround logger require issues with concurrent-ruby 1.3.5 and older Rails versions
  • Workaround NameError frozen string literal issues with JRuby 9.3 and Rails 5.2/6.0
  • Use non-public lookup to avoid classloader issues (#268)
  • visibility changes to ensure they can be run on Java 17+ as well without using reflection hack
  • Fix ERB deprecation warning
  • Fix new loggers to avoid logging at multiple levels
  • update (bundled) rack to 2.2.15
  • Corrects Rack 2.x compatibility when used with modern Rails, and requires Rack 2.x going forward
  • forward ports all 1.1.x fixes to the 1.2.x stream which were omitted in 1.2.2 release (#262)
  • fixes regression NoMethodError undefined method get_header (#259)
  • correct use of session store with Rails 7.0+ (#244)
  • reinstate automated tests for Rails 5.0 - 7.2 (#271)

What's Changed

New Contributors

Full Changelog: jruby-rack-1.2.2...jruby-rack-1.2.3

1.2.2

Choose a tag to compare

@chadlwilson chadlwilson released this 22 Jul 15:02

First combined RubyGems + Maven Central release of the 1.2.x branch.

  • Requires Java 8 or later
  • Requires Java Servlet API 3.0 or later
  • Improved logger implementation
  • Fixes broken multipart data (#247)
  • update (bundled) rack to 2.2.9

(Note: this release lacks some important fixes made to later 1.1.x releases, that were accidentally forgotten to be merged)

What's Changed

Full Changelog: jruby-rack-1.2.0...jruby-rack-1.2.2

1.2.0

Choose a tag to compare

@chadlwilson chadlwilson released this 22 Jul 15:00

Initial release of the 1.2.x branch.

  • Requires Java 8 or later
  • Requires Java Servlet API 3.0 or later
  • Improved logger implementation
  • Fixes broken multipart data (#247)
  • update (bundled) rack to 2.2.9

(Note: this release lacks some important fixes made to later 1.1.x releases, that were accidentally forgotten to be merged)