Puma Versions Save

A Ruby/Rack web server built for parallelism

v6.4.1

3 months ago
  • Bugfixes

    • DSL#warn_if_in_single_mode - fixup when workers set via CLI ([#3256])
    • Fix idle-timeout not working in cluster mode ([#3235], [#3228], [#3282], [#3283])
    • Fix worker 0 timing out during phased restart ([#3225], [#2786])
    • context_builder.rb - require openssl if verify_mode != 'none' ([#3179])
    • Make puma cluster process suitable as PID 1 ([#3255])
    • Improve Puma::NullIO consistency with real IO ([#3276])
    • extconf.rb - fixup to detect openssl info in Ruby build ([#3271], [#3266])
    • MiniSSL.java - set serialVersionUID, fix RaiseException deprecation ([#3270])
    • dsl.rb - fix warn_if_in_single_mode when WEB_CONCURRENCY is set ([#3265], [#3264])
  • Maintenance

    • LOTS of test refactoring to make tests more stable and easier to write - thanks to @MSP-Greg!
    • Fix bug in tests re: TestPuma::HOST4 ([#3254])
    • Dockerfile for minimal repros: use Ruby 3.2, expect bundler installed ([#3245])
    • fix define_method calls, use Symbol parameter instead of String ([#3293])
  • Docs

    • README.md - add the puma-acme plugin ([#3301])
    • Remove --keep-file-descriptors flag from systemd docs ([#3248])
    • Note symlink mechanism in restart documentation for hot restart ([#3298])

v6.4.0

7 months ago

image

America is #1 in professional cycling, baby!

  • Features

    • on_thread_exit hook ([#2920])
    • on_thread_start_hook ([#3195])
    • Shutdown on idle ([#3209], [#2580])
    • New error message when control server port taken ([#3204])
  • Refactor

    • Remove Forwardable dependency ([#3191], #3190)
    • Update URLMap Regexp usage for Ruby v3.3 ([#3165])
  • Bugfixes

    • Bring the cert_pem: parameter into parity with the cert: parameter to ssl_bind. ([#3174])
    • Fix using control server with IPv6 host ([#3181])
    • control_cli.rb - add require_relative 'log_writer' ([#3187])
    • Fix cases where fallback Rack response wasn't sent to the client ([#3094])

v5.6.7

8 months ago

Security Address HTTP request smuggling vulnerabilities with zero-length Content Length header and trailer fields (GHSA-68xg-gqqm-vgj8)

v6.3.1

8 months ago
  • Security
    • Address HTTP request smuggling vulnerabilities with zero-length Content Length header and trailer fields (GHSA-68xg-gqqm-vgj8)

v6.3.0

11 months ago

image

Japan has 72 traditional microseasons. May 31 is the first day of 麦秋至, which means the time of the wheat/barley harvest.

  • Features

    • Add dsl method supported_http_methods ([#3106], [#3014])
    • Puma error responses no longer have any fingerprints to indicate Puma ([#3161], [#3037])
    • Support decryption of SSL key ([#3133], [#3132])
  • Bugfixes

    • Don't send 103 early hints response when only invalid headers are used ([#3163])
    • Handle malformed request path ([#3155], [#3148])
    • Misc lib file fixes - trapping additional errors, CI helper ([#3129])
    • Fixup req form data file upload with "r\n" line endings ([#3137])
    • Restore rack 1.6 compatibility ([#3156])
  • Refactor

    • const.rb - Update Puma::HTTP_STATUS_CODES ([#3162])
    • Clarify Reactor#initialize ([#3151])

New Contributors

Full Changelog: https://github.com/puma/puma/compare/v6.2.2...v6.3.0

v6.2.2

1 year ago
  • Bugfixes
    • Fix Rack-related NameError by adding :: operator ([#3118], [#3117])

v6.2.1

1 year ago

6.2.1 / 2023-03-31

  • Bugfixes
    • Fix java 8 compatibility ([#3109], [#3108])
    • Always write io_buffer when in "enum bodies" branch. ([#3113], [#3112])
    • Fix warn_if_in_single_mode incorrect message ([#3111])

v6.2.0

1 year ago

image

Pat Metheny Group - Speaking of Now

  • Features

    • Ability to supply a custom logger ([#2770], [#2511])
    • Warn when clustered-only hooks are defined in single mode ([#3089])
    • Adds the on_booted event ([#2709])
  • Bugfixes

    • Loggers - internal_write - catch Errno::EINVAL ([#3091])
    • commonlogger.rb - fix HIJACK time format, use constants, not strings ([#3074])
    • Fixed some edge cases regarding request hijacking ([#3072])

v6.1.1

1 year ago
  • Bugfixes
    • We no longer try to use the systemd plugin for JRuby ([#3079])
    • Allow ::Rack::Handler::Puma.run to work regardless of whether Rack/Rackup are loaded ([#3080])

v6.1.0

1 year ago

Pmg_-_way_up

  • Features

    • WebSocket support via partial hijack ([#3058], [#3007])
    • Add built-in systemd notify support ([#3011])
    • Periodically send status to systemd ([#3006], [#2604])
    • Introduce the ability to return 413: payload too large for requests ([#3040])
    • Log loaded extensions when PUMA_DEBUG is set ([#3036], [#3020])
  • Bugfixes

    • Fix issue with rack 3 compatibility re: rackup ([#3061], [#3057])
    • Allow setting TCP low_latency with SSL listener ([#3065])
  • Performance

    • Reduce memory usage for large file uploads ([#3062])