Skip to content

Commit

Permalink
Upgrade Puma version (#535)
Browse files Browse the repository at this point in the history
* Upgrade Puma to v5.6.7

* Upgrade Puma to v6.3.1

* Delete stale Puma comments concerning WEB_CONCURRENCY

* Reflect Puma update in lockfile
  • Loading branch information
Splines authored Aug 28, 2023
1 parent 1fae7c8 commit 5a2ba2f
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 29 deletions.
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ gem "activerecord-nulldb-adapter"
# Use sqlite3 as the database for Active Record
gem "sqlite3", "~> 1.4"
# Use Puma as the app server
gem "puma", "~> 4.1"
gem "puma", "< 7"
# Use SCSS for stylesheets
gem "sass-rails", ">= 6"
# Transpile app-like JavaScript. Read more: https://github.com/rails/webpacker
Expand Down
6 changes: 3 additions & 3 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -399,7 +399,7 @@ GEM
prometheus_exporter (2.0.8)
webrick
public_suffix (5.0.1)
puma (4.3.12)
puma (6.3.1)
nio4r (~> 2.0)
pundit (2.3.0)
activesupport (>= 3.0.0)
Expand Down Expand Up @@ -705,7 +705,7 @@ DEPENDENCIES
premailer-rails
progress_bar
prometheus_exporter
puma (~> 4.1)
puma (< 7)
rack
rails (~> 7.0.4.3)
rails-erd
Expand Down Expand Up @@ -734,7 +734,7 @@ DEPENDENCIES
sunspot_rails!
sunspot_solr
terser
thredded!
thredded
thredded-markdown_katex!
trix-rails
turbolinks (~> 5)
Expand Down
32 changes: 7 additions & 25 deletions config/puma.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,41 +3,23 @@
# Any libraries that use thread pools should be configured to match
# the maximum value specified for Puma. Default is set to 5 threads for minimum
# and maximum; this matches the default thread size of Active Record.
#
max_threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }
min_threads_count = ENV.fetch("RAILS_MIN_THREADS") { max_threads_count }

max_threads_count = ENV.fetch('RAILS_MAX_THREADS') { 5 }
min_threads_count = ENV.fetch('RAILS_MIN_THREADS') { max_threads_count }
threads min_threads_count, max_threads_count

# Specifies the `worker_timeout` threshold that Puma will use to wait before
# terminating a worker in development environments.
#
worker_timeout 3600 if ENV.fetch("RAILS_ENV", "development") == "development"
worker_timeout 3600 if ENV.fetch('RAILS_ENV', 'development') == 'development'

# Specifies the `port` that Puma will listen on to receive requests; default is 3000.
#
port ENV.fetch("PORT") { 3000 }
port ENV.fetch('PORT') { 3000 }

# Specifies the `environment` that Puma will run in.
#
environment ENV.fetch("RAILS_ENV") { "development" }
environment ENV.fetch('RAILS_ENV') { 'development' }

# Specifies the `pidfile` that Puma will use.
pidfile ENV.fetch("PIDFILE") { "tmp/pids/server.pid" }

# Specifies the number of `workers` to boot in clustered mode.
# Workers are forked web server processes. If using threads and workers together
# the concurrency of the application would be max `threads` * `workers`.
# Workers do not work on JRuby or Windows (both of which do not support
# processes).
#
# workers ENV.fetch("WEB_CONCURRENCY") { 2 }

# Use the `preload_app!` method when specifying a `workers` number.
# This directive tells Puma to first boot the application and load code
# before forking the application. This takes advantage of Copy On Write
# process behavior so workers use less memory.
#
# preload_app!
pidfile ENV.fetch('PIDFILE') { 'tmp/pids/server.pid' }

# Allow puma to be restarted by `rails restart` command.
plugin :tmp_restart

0 comments on commit 5a2ba2f

Please sign in to comment.