Releases: jruby/jruby-rack
Release list
2.0.0
What's Changed
- Support Jakarta Servlet API 5.0 → 6.1 (Jakarta EE 9 → 11) (@chadlwilson & @bhagyashriSawkar)
New Contributors
- @bhagyashriSawkar made their first contribution in #266
Full Changelog: jruby-rack-1.3.0...jruby-rack-2.0.0
1.3.0
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.versionandjruby.rack.rack.releasekeys from rackenvHash - 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.envproperty, replaced long ago byjruby.runtime.envand optionaljruby.runtime.env.rubyopt - Drop deprecated
jruby.rack.filter.*properties, replaced long ago by init parametersaddsHtmlToPathInfoandverifiesHtmlResource - Drop handling of
# rack.versionmagic comments insideconfig.rufiles, replaced by bundler or user-managedGEM_PATH
Breaking Java API changes (only relevant for users extending the Java API)
- Drop unnecessary
jruby.compat.versionandRackConfig.getCompatVersion()API - Drop deprecated
org.jruby.rack.RackInputalias fororg.jruby.rack.ext.Inputclass - Drop/rename deprecated
RackConfigandServletRackEnvironmentAPI methods per their earlier comments - Drop deprecated
RackLoggerstring (level) constants - Custom
RackLoggerimplementations must acceptCharSequencerather thanStringto allowRubyStringpassthrough - Rename deprecated
JRuby::Rack::ServletLogtoJRuby::Rack::ErrorLogfor clarity, despite usage only in servlet contexts.
Breaking Ruby API changes (only relevant for users extending the Ruby API)
- Drop deprecated
JRuby::Rack::RailsFileSystemLayoutalias forJRuby::Rack::FileSystemLayout - Drop deprecated
JRuby::Rack::Errorsalias forJRuby::Rack::ErrorApp - Drop deprecated
Rack::Handler::Servlet::EnvandRack::Handler::Servlet::LazyEnvtypes (replaced byDefaultEnv) - Drop deprecated setting of global
$servlet_contextvariable during embedded usage (replaced byJRuby::Rack.context)
1.2.8
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
What's Changed
- Ensure compatibility with JRuby 10.0 and 10.1 (#419, #423 by @chadlwilson)
- Ensure compatibility with Rails 8.0 (#419 by @chadlwilson)
- Fix ability to include and forward to JSPs under Rails (#370 by @chadlwilson)
- Update (bundled) rack to 2.2.23 (#417)
Full Changelog: jruby-rack-1.2.6...jruby-rack-1.2.7
1.2.6
What's Changed
- Add missing block-only signature for debug logging (@chadlwilson)
- Ensure rack boot process leaves
ENV['GEM_PATH']andGem.pathsin a consistent state (@chadlwilson) - Remove undocumented and unsafe
jruby.rack.env.gem_path = falseoption (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
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
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
- 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
- Add Rack::Handler::Servlet::DefaultEnv#get_header by @HarlemSquirrel in #212
- Don't let getSession cause an infinite loop if it throws IllegalStateException by @smellsblue in #216
- Update to latest mavengem by @headius in #254
- Remove usage of Rack::Utils.bytesize by @jlahtinen in #252
- Correct javax.activation scope by @chadlwilson in #258
- Coderange cat for 9.3 by @headius in #255
- Re-enable specs to run via JRuby-provided bundler by @chadlwilson in #261
- Enables building jruby-rack with java versions > 8 by @jlahtinen in #264
- Merge 1.1 into master (redux - with all specs passing + bumped dependency minor versions) by @chadlwilson in #262
- Fix compatibility with Rack 2.x on Rails 7.0+, reinstating Rails appraisal tests by @chadlwilson in #271
New Contributors
- @HarlemSquirrel made their first contribution in #212
- @smellsblue made their first contribution in #216
- @jlahtinen made their first contribution in #252
Full Changelog: jruby-rack-1.2.2...jruby-rack-1.2.3
1.2.2
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
- Use handles to indirect catWithCodeRange or cat19 by @headius in #256
- Fix javadoc lint issues by @headius in #257
Full Changelog: jruby-rack-1.2.0...jruby-rack-1.2.2
1.2.0
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)