passenger 6.1.2 → 6.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +38 -10
- data/doc/AiInstructions.md +2 -2
- data/passenger.gemspec +1 -0
- data/src/agent/Core/Config.h +1 -1
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +8 -4
- data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +12 -15
- data/src/ruby_supportlib/phusion_passenger.rb +7 -7
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f8548c58c9ea83174fb896415cdf20c24832ae9f5063eab271614424719af501
|
|
4
|
+
data.tar.gz: 8272237fce37982de8d030844a0813d571b8dd6690df8d1426e96f7a3b3c5243
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6369fb4fd8364661a6291a627111b8c28979a351f42c5325be716c52fb06f4bcdf6d5097092d1821c3bb59b36758bea18f6ab70d7133c6c4dd5a2c7efd7b60b3
|
|
7
|
+
data.tar.gz: c46e8f69b09c01f8f496ae35aea5327bf7e55cd52dfd23e774e12a63c6424f8aa6d08bfee87e8df004f06badff8e713460da3d48c4174d991e62915b4d2d5616
|
data/CHANGELOG
CHANGED
|
@@ -1,4 +1,32 @@
|
|
|
1
|
-
Release 6.1.
|
|
1
|
+
Release 6.1.3 (Not yet released)
|
|
2
|
+
-------------
|
|
3
|
+
* [Ubuntu] Add packages for Ubuntu 26.04 "resolute", remove packages for Ubuntu 25.10 "questing" and Ubuntu 20.04 "focal". Closes GH-2657.
|
|
4
|
+
* [Nginx] Build Nginx dynamic modules against nginx-dev sources on Ubuntu/Debian where available to fix Ubuntu's incompatibility with upstream.
|
|
5
|
+
* [Ruby] add support for `rack.response_finished`. Closes GH-2418.
|
|
6
|
+
* Fix crash when buffer creation fails.
|
|
7
|
+
* [Nginx] The preferred PCRE2 version is now 10.47 (previously 10.46).
|
|
8
|
+
* [Nginx] Upgrades preferred Nginx to 1.30.1 from 1.28.0.
|
|
9
|
+
* Updated various library versions used in precompiled binaries (used for e.g. gem installs):
|
|
10
|
+
- ccache: 4.12.2 -> 4.13.4
|
|
11
|
+
- cmake: 4.2.2 -> 4.3.2
|
|
12
|
+
- curl: 8.18.0 -> 8.20.0
|
|
13
|
+
- git: 2.52.0 -> 2.54.0
|
|
14
|
+
- gnupg: 2.5.16 -> 2.5.19
|
|
15
|
+
- libgcrypt: 1.11.2 -> 1.12.2
|
|
16
|
+
- libgpg_error: 1.58 -> 1.60
|
|
17
|
+
- libiconv: 1.18 -> 1.19
|
|
18
|
+
- libksba: 1.6.7 -> 1.6.8
|
|
19
|
+
- openssl: 3.6.0 -> 3.6.2
|
|
20
|
+
- rubygems: 4.0.4 -> 4.0.10
|
|
21
|
+
- zlib: 1.3.1 -> 1.3.2
|
|
22
|
+
- rubies:
|
|
23
|
+
- removed 3.2 for EOL
|
|
24
|
+
- 3.3.10 -> 3.3.11
|
|
25
|
+
- 3.4.8 -> 3.4.9
|
|
26
|
+
- 4.0.1 -> 4.0.3
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
Release 6.1.2
|
|
2
30
|
-------------
|
|
3
31
|
* [Ruby] logger is now a “bundled” but not “default” gem, so it must be added to gemspec. Closes GH-2642.
|
|
4
32
|
* [Ruby] Fix Ruby < 2.3 support. Closes GH-2641.
|
|
@@ -25,14 +53,14 @@ Release 6.1.1
|
|
|
25
53
|
- cmake: 4.0.0 -> 4.2.1
|
|
26
54
|
- curl: 8.12.1 -> 8.17.0
|
|
27
55
|
- git: 2.49.0 -> 2.52.0
|
|
28
|
-
- gnupg:2.4.7 -> 2.4.8
|
|
29
|
-
- libffi:3.4.7 -> 3.5.2
|
|
30
|
-
- libgcrypt:1.11.0 -> 1.11.2
|
|
31
|
-
- libgpg_error:1.51 -> 1.58
|
|
32
|
-
- libreadline:8.2 -> 8.3
|
|
33
|
-
- openssl:3.4.1 -> 3.6.0
|
|
34
|
-
- pcre2:10.45 -> 10.47
|
|
35
|
-
- pinentry:1.3.1 -> 1.3.2
|
|
56
|
+
- gnupg: 2.4.7 -> 2.4.8
|
|
57
|
+
- libffi: 3.4.7 -> 3.5.2
|
|
58
|
+
- libgcrypt: 1.11.0 -> 1.11.2
|
|
59
|
+
- libgpg_error: 1.51 -> 1.58
|
|
60
|
+
- libreadline: 8.2 -> 8.3
|
|
61
|
+
- openssl: 3.4.1 -> 3.6.0
|
|
62
|
+
- pcre2: 10.45 -> 10.47
|
|
63
|
+
- pinentry: 1.3.1 -> 1.3.2
|
|
36
64
|
- rubygems: 3.6.6 -> 4.0.2
|
|
37
65
|
- rubys:
|
|
38
66
|
- dropped 3.1.7
|
|
@@ -632,7 +660,7 @@ Release 6.0.3
|
|
|
632
660
|
* Fixed an incompatibility with sending requests to specific app instances, when using the rails web-console gem. Contributed by Mark R. James (@mrj).
|
|
633
661
|
* Fixed a regression (introduced in 5.1.9) where some hooks were not called. Closes GH-2103. Contributed by Mark R. James (@mrj).
|
|
634
662
|
* Fixes compilation with clang 8 (latest macOS update) by updating vendored boost library from 1.67 to 1.69.
|
|
635
|
-
* Reverts a regression
|
|
663
|
+
* Reverts a regression introduced in 6.0.2 where Passenger would crash if it had to use the disk backed response cache. Closes GH-2189.
|
|
636
664
|
* [Nginx] Adds an option `passenger_buffer_upload` to allow buffering uploaded data in Passenger before forwarding it to the app. As a workaround for apps that cannot handle chunked data.
|
|
637
665
|
* [Enterprise] When using deferred port binding, no longer binds port if all apps do not start up.
|
|
638
666
|
* Updated various library versions used in precompiled binaries (used for e.g. gem installs):
|
data/doc/AiInstructions.md
CHANGED
|
@@ -57,8 +57,8 @@ This is codebase of the Passenger application server.
|
|
|
57
57
|
|
|
58
58
|
## Build system
|
|
59
59
|
|
|
60
|
-
- Building agents: `
|
|
61
|
-
- Building C++ test suite: `
|
|
60
|
+
- Building agents: `rake -m -j4 nginx` (for concurrent building) or `rake nginx`
|
|
61
|
+
- Building C++ test suite: `rake -m -j4 test:cxx:build` (for concurrent building) or `rake test:cxx:build`
|
|
62
62
|
|
|
63
63
|
## Special files
|
|
64
64
|
|
data/passenger.gemspec
CHANGED
|
@@ -15,6 +15,7 @@ Gem::Specification.new do |s|
|
|
|
15
15
|
s.email = "software-signing@phusion.nl"
|
|
16
16
|
s.require_paths = ["src/ruby_supportlib"]
|
|
17
17
|
s.metadata = {
|
|
18
|
+
"rubygems_mfa_required" => "true",
|
|
18
19
|
"bug_tracker_uri" => "https://github.com/phusion/passenger/issues",
|
|
19
20
|
"changelog_uri" => "https://github.com/phusion/passenger/blob/stable-#{PhusionPassenger::VERSION_STRING.split('.').slice(0,2).join('.')}/CHANGELOG",
|
|
20
21
|
"documentation_uri" => "https://www.phusionpassenger.com/docs/",
|
data/src/agent/Core/Config.h
CHANGED
|
@@ -149,7 +149,7 @@ using namespace std;
|
|
|
149
149
|
* security_update_checker_interval unsigned integer - default(86400)
|
|
150
150
|
* security_update_checker_proxy_url string - -
|
|
151
151
|
* security_update_checker_url string - default("https://securitycheck.phusionpassenger.com/v1/check.json")
|
|
152
|
-
* server_software string - default("Phusion_Passenger/6.1.
|
|
152
|
+
* server_software string - default("Phusion_Passenger/6.1.3")
|
|
153
153
|
* show_version_in_header boolean - default(true)
|
|
154
154
|
* single_app_mode_app_root string - default,read_only
|
|
155
155
|
* single_app_mode_app_start_command string - read_only
|
|
@@ -118,7 +118,7 @@ parseControllerBenchmarkMode(const StaticString &mode) {
|
|
|
118
118
|
* old_routing boolean - default(false),read_only
|
|
119
119
|
* request_freelist_limit unsigned integer - default(1024)
|
|
120
120
|
* response_buffer_high_watermark unsigned integer - default(134217728)
|
|
121
|
-
* server_software string - default("Phusion_Passenger/6.1.
|
|
121
|
+
* server_software string - default("Phusion_Passenger/6.1.3")
|
|
122
122
|
* show_version_in_header boolean - default(true)
|
|
123
123
|
* start_reading_after_accept boolean - default(true)
|
|
124
124
|
* stat_throttle_rate unsigned integer - default(10)
|
data/src/agent/Watchdog/Config.h
CHANGED
|
@@ -139,7 +139,7 @@ using namespace std;
|
|
|
139
139
|
* security_update_checker_interval unsigned integer - default(86400)
|
|
140
140
|
* security_update_checker_proxy_url string - -
|
|
141
141
|
* security_update_checker_url string - default("https://securitycheck.phusionpassenger.com/v1/check.json")
|
|
142
|
-
* server_software string - default("Phusion_Passenger/6.1.
|
|
142
|
+
* server_software string - default("Phusion_Passenger/6.1.3")
|
|
143
143
|
* setsid boolean - default(false)
|
|
144
144
|
* show_version_in_header boolean - default(true)
|
|
145
145
|
* single_app_mode_app_root string - default,read_only
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
#define PASSENGER_API_VERSION_MAJOR 0
|
|
85
85
|
#define PASSENGER_API_VERSION_MINOR 3
|
|
86
86
|
#define PASSENGER_DEFAULT_USER "nobody"
|
|
87
|
-
#define PASSENGER_VERSION "6.1.
|
|
87
|
+
#define PASSENGER_VERSION "6.1.3"
|
|
88
88
|
#define POOL_HELPER_THREAD_STACK_SIZE 262144
|
|
89
89
|
#define PROCESS_SHUTDOWN_TIMEOUT 60
|
|
90
90
|
#define PROCESS_SHUTDOWN_TIMEOUT_DISPLAY "1 minute"
|
|
@@ -1224,8 +1224,10 @@ private:
|
|
|
1224
1224
|
case RS_WAITING_FOR_CHANNEL_IDLE:
|
|
1225
1225
|
break;
|
|
1226
1226
|
case RS_READING_FROM_FILE:
|
|
1227
|
-
inFileMode->readRequest
|
|
1228
|
-
|
|
1227
|
+
if (inFileMode->readRequest) {
|
|
1228
|
+
inFileMode->readRequest->cancel();
|
|
1229
|
+
inFileMode->readRequest = NULL;
|
|
1230
|
+
}
|
|
1229
1231
|
break;
|
|
1230
1232
|
case RS_INACTIVE:
|
|
1231
1233
|
case RS_TERMINATED:
|
|
@@ -1241,8 +1243,10 @@ private:
|
|
|
1241
1243
|
break;
|
|
1242
1244
|
case WS_CREATING_FILE:
|
|
1243
1245
|
case WS_MOVING:
|
|
1244
|
-
inFileMode->writerRequest
|
|
1245
|
-
|
|
1246
|
+
if (inFileMode->writerRequest) {
|
|
1247
|
+
inFileMode->writerRequest->cancel();
|
|
1248
|
+
inFileMode->writerRequest = NULL;
|
|
1249
|
+
}
|
|
1246
1250
|
break;
|
|
1247
1251
|
case WS_TERMINATED:
|
|
1248
1252
|
return;
|
|
@@ -50,6 +50,7 @@ module PhusionPassenger
|
|
|
50
50
|
RACK_URL_SCHEME = "rack.url_scheme" # :nodoc:
|
|
51
51
|
RACK_HIJACK_P = "rack.hijack?" # :nodoc:
|
|
52
52
|
RACK_HIJACK = "rack.hijack" # :nodoc:
|
|
53
|
+
RACK_RESPONSE_FINISHED = "rack.response_finished" # :nodoc:
|
|
53
54
|
HTTP_VERSION = "HTTP_VERSION" # :nodoc:
|
|
54
55
|
HTTP_1_1 = "HTTP/1.1" # :nodoc:
|
|
55
56
|
SCRIPT_NAME = "SCRIPT_NAME" # :nodoc:
|
|
@@ -97,6 +98,7 @@ module PhusionPassenger
|
|
|
97
98
|
connection
|
|
98
99
|
end
|
|
99
100
|
end
|
|
101
|
+
env[RACK_RESPONSE_FINISHED] = []
|
|
100
102
|
env[HTTP_VERSION] = HTTP_1_1
|
|
101
103
|
|
|
102
104
|
# Rails somehow modifies env['REQUEST_METHOD'], so we perform the comparison
|
|
@@ -115,6 +117,11 @@ module PhusionPassenger
|
|
|
115
117
|
# forcing it to be respawned, and thereby effectively DoSing it.
|
|
116
118
|
print_exception("Rack application object", e)
|
|
117
119
|
end
|
|
120
|
+
env[RACK_RESPONSE_FINISHED].reverse_each do | cb |
|
|
121
|
+
cb.call(env, status, headers, e)
|
|
122
|
+
rescue => e
|
|
123
|
+
print_exception("Rack application object", e)
|
|
124
|
+
end
|
|
118
125
|
return false
|
|
119
126
|
end
|
|
120
127
|
|
|
@@ -166,6 +173,11 @@ module PhusionPassenger
|
|
|
166
173
|
end
|
|
167
174
|
ensure
|
|
168
175
|
close_body(body, env, socket_wrapper)
|
|
176
|
+
env[RACK_RESPONSE_FINISHED].reverse_each do | cb |
|
|
177
|
+
cb.call(env, status, headers, nil)
|
|
178
|
+
rescue => e
|
|
179
|
+
print_exception("Rack application object", e)
|
|
180
|
+
end
|
|
169
181
|
end
|
|
170
182
|
false
|
|
171
183
|
ensure
|
|
@@ -175,10 +187,6 @@ module PhusionPassenger
|
|
|
175
187
|
|
|
176
188
|
private
|
|
177
189
|
def process_body(env, connection, socket_wrapper, status, is_head_request, headers, body)
|
|
178
|
-
if @ush_reporter
|
|
179
|
-
ush_log_id = @ush_reporter.log_writing_rack_body_begin
|
|
180
|
-
end
|
|
181
|
-
|
|
182
190
|
# Fix up incompliant body objects. Ensure that the body object
|
|
183
191
|
# can respond to #each.
|
|
184
192
|
output_body = should_output_body?(status, is_head_request)
|
|
@@ -317,16 +325,9 @@ module PhusionPassenger
|
|
|
317
325
|
end
|
|
318
326
|
|
|
319
327
|
signal_keep_alive_allowed!
|
|
320
|
-
ensure
|
|
321
|
-
if @ush_reporter && ush_log_id
|
|
322
|
-
@ush_reporter.log_writing_rack_body_end(ush_log_id)
|
|
323
|
-
end
|
|
324
328
|
end
|
|
325
329
|
|
|
326
330
|
def close_body(body, env, socket_wrapper)
|
|
327
|
-
if @ush_reporter
|
|
328
|
-
ush_log_id = @ush_reporter.log_closing_rack_body_begin
|
|
329
|
-
end
|
|
330
331
|
begin
|
|
331
332
|
body.close if body && body.respond_to?(:close)
|
|
332
333
|
rescue => e
|
|
@@ -336,10 +337,6 @@ module PhusionPassenger
|
|
|
336
337
|
if !should_swallow_app_error?(e, socket_wrapper)
|
|
337
338
|
print_exception("Rack response body object's #close method", e)
|
|
338
339
|
end
|
|
339
|
-
ensure
|
|
340
|
-
if @ush_reporter && ush_log_id
|
|
341
|
-
@ush_reporter.log_closing_rack_body_end(ush_log_id)
|
|
342
|
-
end
|
|
343
340
|
end
|
|
344
341
|
end
|
|
345
342
|
|
|
@@ -31,20 +31,20 @@ module PhusionPassenger
|
|
|
31
31
|
|
|
32
32
|
PACKAGE_NAME = 'passenger'
|
|
33
33
|
# Run 'rake src/cxx_supportlib/Constants.h configkit_schemas_inline_comments' after changing this number.
|
|
34
|
-
VERSION_STRING = '6.1.
|
|
34
|
+
VERSION_STRING = '6.1.3'
|
|
35
35
|
|
|
36
36
|
# Tip: find the SHA-256 with ./dev/nginx_version_sha256 <VERSION>
|
|
37
|
-
PREFERRED_NGINX_VERSION = '1.
|
|
38
|
-
NGINX_SHA256_CHECKSUM = '
|
|
37
|
+
PREFERRED_NGINX_VERSION = '1.30.1'
|
|
38
|
+
NGINX_SHA256_CHECKSUM = '99765000d974896b31ca5882d8c279ce3fe7ef6f5c6f9f0a967ed7fd3407f9cc'
|
|
39
39
|
|
|
40
40
|
# Packaging may be locked to an older version due to the specific module configuration being
|
|
41
41
|
# incompatible with the version we prefer (latest stable).
|
|
42
|
-
PACKAGING_PREFERRED_NGINX_VERSION = '1.
|
|
43
|
-
PACKAGING_NGINX_SHA256_CHECKSUM = '
|
|
42
|
+
PACKAGING_PREFERRED_NGINX_VERSION = '1.30.1'
|
|
43
|
+
PACKAGING_NGINX_SHA256_CHECKSUM = '99765000d974896b31ca5882d8c279ce3fe7ef6f5c6f9f0a967ed7fd3407f9cc'
|
|
44
44
|
|
|
45
45
|
# sha256sum of the .tar.gz
|
|
46
|
-
PREFERRED_PCRE_VERSION = '10.
|
|
47
|
-
PCRE_SHA256_CHECKSUM = '
|
|
46
|
+
PREFERRED_PCRE_VERSION = '10.47'
|
|
47
|
+
PCRE_SHA256_CHECKSUM = 'c08ae2388ef333e8403e670ad70c0a11f1eed021fd88308d7e02f596fcd9dc16'
|
|
48
48
|
|
|
49
49
|
STANDALONE_INTERFACE_VERSION = 1
|
|
50
50
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: passenger
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.1.
|
|
4
|
+
version: 6.1.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Phusion - http://www.phusion.nl/
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-05-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rake
|
|
@@ -4322,6 +4322,7 @@ files:
|
|
|
4322
4322
|
homepage: https://www.phusionpassenger.com/
|
|
4323
4323
|
licenses: []
|
|
4324
4324
|
metadata:
|
|
4325
|
+
rubygems_mfa_required: 'true'
|
|
4325
4326
|
bug_tracker_uri: https://github.com/phusion/passenger/issues
|
|
4326
4327
|
changelog_uri: https://github.com/phusion/passenger/blob/stable-6.1/CHANGELOG
|
|
4327
4328
|
documentation_uri: https://www.phusionpassenger.com/docs/
|