passenger 6.0.0 → 6.0.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 34715c64cf360a223e40a17d54ba2939789d82dd
4
- data.tar.gz: 7f7aca10a0863e54cd797dbe2a8ec8252bf212c1
3
+ metadata.gz: d32b7b733ff8e0ad7bbfba5e03e4550f5688c991
4
+ data.tar.gz: 9fd2550bd78fdbd5a7d40ebee8e41cd0fe748a3d
5
5
  SHA512:
6
- metadata.gz: bc85b86654502098091c7f2d5e8cc202f9520f608250f392ebaf7e0ccfb41a607ee915fd2f1621838a0f7460a9f9beb81d47710682b0981b72fa7dfa2d4b0728
7
- data.tar.gz: 563d498b27eeedd2d76d62ed44642789640fdc9b101584c467d28f4828b0407aa03446958ecdaf72babdd7be46ed171ef2e23d110487dfbd1022089d899443bb
6
+ metadata.gz: 353d24ed6888fc0eb1aa81308a7d81390f87e8b51c67ae384b68982cc4cc493d3a3129dc53087c17459e69c8b641728c03a8033f1b2ca8aef653c0dfdd001858
7
+ data.tar.gz: 1a9d27b7d986f2249bc5536b0002ec17b5c0c2b1f9d638d1ccd144dc3079398ecc1b2b773ba79d2c5ed66a8a95fba8fafd77981b44fca338f463396ef7970fde
data/CHANGELOG CHANGED
@@ -1,3 +1,22 @@
1
+ Release 6.0.1
2
+ -------------
3
+
4
+ * Adds Ubuntu 18.10 "Cosmic" packages.
5
+ * Skips trying to set oom score in LXC container environments. Closes GH-2143.
6
+ * Fixes an issue during the GLS startup handshake where ephemeral ports could be exhausted. Closes GH-2144.
7
+ * Updated Ruby versions used in precompiled binaries (used for e.g. gem installs) to include 2.5.3, and 2.4.5 (removed: 2.4.4).
8
+ * Bumps the preferred Nginx version to 1.15.8.
9
+ * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
10
+
11
+ - Curl: 7.62.0 -> 7.63.0
12
+ - Git: 2.19.2 -> 2.20.1
13
+ - Gnupg: 2.2.11 -> 2.2.12
14
+ - libassuan: 2.5.1 -> 2.5.2
15
+ - libgpg_error: 1.32 -> 1.33
16
+ - Ruby: 2.4.4 -> 2.4.5, + 2.5.3
17
+ - RubyGems: 2.7.6 -> 3.0.1
18
+
19
+
1
20
  Release 6.0.0
2
21
  -------------
3
22
 
@@ -157,7 +157,7 @@ using namespace std;
157
157
  * security_update_checker_interval unsigned integer - default(86400)
158
158
  * security_update_checker_proxy_url string - -
159
159
  * security_update_checker_url string - default("https://securitycheck.phusionpassenger.com/v1/check.json")
160
- * server_software string - default("Phusion_Passenger/5.3.7")
160
+ * server_software string - default("Phusion_Passenger/6.0.1")
161
161
  * show_version_in_header boolean - default(true)
162
162
  * single_app_mode_app_root string - default,read_only
163
163
  * single_app_mode_app_start_command string - read_only
@@ -113,7 +113,7 @@ parseControllerBenchmarkMode(const StaticString &mode) {
113
113
  * multi_app boolean - default(true),read_only
114
114
  * request_freelist_limit unsigned integer - default(1024)
115
115
  * response_buffer_high_watermark unsigned integer - default(134217728)
116
- * server_software string - default("Phusion_Passenger/5.3.7")
116
+ * server_software string - default("Phusion_Passenger/6.0.1")
117
117
  * show_version_in_header boolean - default(true)
118
118
  * start_reading_after_accept boolean - default(true)
119
119
  * stat_throttle_rate unsigned integer - default(10)
@@ -202,6 +202,7 @@ private:
202
202
  socketIsNowPingable = true;
203
203
  finishState = FINISH_SUCCESS;
204
204
  wakeupEventLoop();
205
+ break;
205
206
  } else {
206
207
  syscalls::usleep(50000);
207
208
  }
@@ -146,7 +146,7 @@ using namespace std;
146
146
  * security_update_checker_interval unsigned integer - default(86400)
147
147
  * security_update_checker_proxy_url string - -
148
148
  * security_update_checker_url string - default("https://securitycheck.phusionpassenger.com/v1/check.json")
149
- * server_software string - default("Phusion_Passenger/5.3.7")
149
+ * server_software string - default("Phusion_Passenger/6.0.1")
150
150
  * setsid boolean - default(false)
151
151
  * show_version_in_header boolean - default(true)
152
152
  * single_app_mode_app_root string - default,read_only
@@ -81,7 +81,7 @@
81
81
  #define PASSENGER_API_VERSION_MAJOR 0
82
82
  #define PASSENGER_API_VERSION_MINOR 3
83
83
  #define PASSENGER_DEFAULT_USER "nobody"
84
- #define PASSENGER_VERSION "6.0.0"
84
+ #define PASSENGER_VERSION "6.0.1"
85
85
  #define POOL_HELPER_THREAD_STACK_SIZE 262144
86
86
  #define PROCESS_SHUTDOWN_TIMEOUT 60
87
87
  #define PROCESS_SHUTDOWN_TIMEOUT_DISPLAY "1 minute"
@@ -10,19 +10,73 @@
10
10
  #ifndef _PASSENGER_SYSTEM_TOOLS_CONTAINER_HELPERS_H_
11
11
  #define _PASSENGER_SYSTEM_TOOLS_CONTAINER_HELPERS_H_
12
12
 
13
+ #include <unistd.h>
13
14
  #include <boost/predef.h>
14
15
  #include <FileTools/FileManip.h>
16
+ #include <StrIntTools/StrIntUtils.h>
15
17
 
16
18
  namespace Passenger {
17
19
 
18
20
  using namespace std;
19
21
 
20
22
 
23
+ // adapted from https://github.com/systemd/systemd/blob/042ca/src/basic/virt.c
24
+ // separate function to keep as similar to source as possible for easier updates
25
+ inline bool
26
+ _linuxAutoDetectInContainer() {
27
+ // https://github.com/moby/moby/issues/26102#issuecomment-253621560
28
+ if (fileExists("/.dockerenv")) {
29
+ return true;
30
+ }
31
+
32
+ if (fileExists("/proc/vz") && !fileExists("/proc/bc")) {
33
+ return true;
34
+ }
35
+
36
+ const char *env = getenv("container");
37
+ if (env != NULL) {
38
+ return (*env != '\0');
39
+ }
40
+
41
+ if (fileExists("/run/systemd/container")) {
42
+ string file = unsafeReadFile("/run/systemd/container");
43
+ return (file.length() > 0);
44
+ }
45
+
46
+ if (fileExists("/proc/1/environ")) {
47
+ string file = unsafeReadFile("/proc/1/environ");
48
+ if (file.size() > 0) {
49
+ vector<string> v;
50
+ split(file,'\0', v);
51
+ for(vector<string>::iterator it = v.begin(); it != v.end(); ++it) {
52
+ if (startsWith(*it, "container=")) {
53
+ return true;
54
+ }
55
+ }
56
+ }
57
+ }
58
+
59
+ if (fileExists("/proc/1/sched")) {
60
+ string file = unsafeReadFile("/proc/1/sched");
61
+ if (file.length() >= 0) {
62
+ const char t = file[0];
63
+ if (t == '\0') {
64
+ return false;
65
+ }
66
+
67
+ if (!startsWith(file, "(1,")) {
68
+ return true;
69
+ }
70
+ }
71
+ }
72
+
73
+ return false;
74
+ }
75
+
21
76
  inline bool
22
77
  autoDetectInContainer() {
23
78
  #if BOOST_OS_LINUX
24
- // https://github.com/moby/moby/issues/26102#issuecomment-253621560
25
- return fileExists("/.dockerenv");
79
+ return _linuxAutoDetectInContainer();
26
80
  #else
27
81
  return false;
28
82
  #endif
@@ -831,7 +831,7 @@ merge_headers(ngx_conf_t *cf, passenger_loc_conf_t *conf, passenger_loc_conf_t *
831
831
  return NGX_ERROR;
832
832
  }
833
833
 
834
- copy->code = (ngx_http_script_code_pt)
834
+ copy->code = (ngx_http_script_code_pt) (void *)
835
835
  ngx_http_script_copy_len_code;
836
836
  copy->len = src[i].key.len + sizeof(": ") - 1
837
837
  + src[i].value.len + sizeof(CRLF) - 1;
@@ -866,7 +866,7 @@ merge_headers(ngx_conf_t *cf, passenger_loc_conf_t *conf, passenger_loc_conf_t *
866
866
  return NGX_ERROR;
867
867
  }
868
868
 
869
- copy->code = (ngx_http_script_code_pt)
869
+ copy->code = (ngx_http_script_code_pt) (void *)
870
870
  ngx_http_script_copy_len_code;
871
871
  copy->len = src[i].key.len + sizeof(": ") - 1;
872
872
 
@@ -907,7 +907,7 @@ merge_headers(ngx_conf_t *cf, passenger_loc_conf_t *conf, passenger_loc_conf_t *
907
907
  return NGX_ERROR;
908
908
  }
909
909
 
910
- copy->code = (ngx_http_script_code_pt)
910
+ copy->code = (ngx_http_script_code_pt) (void *)
911
911
  ngx_http_script_copy_len_code;
912
912
  copy->len = sizeof(CRLF) - 1;
913
913
 
@@ -31,16 +31,16 @@ 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.0.0'
34
+ VERSION_STRING = '6.0.1'
35
35
 
36
36
  # Tip: find the SHA-256 with ./dev/nginx_version_sha2 <VERSION>
37
- PREFERRED_NGINX_VERSION = '1.15.7'
38
- NGINX_SHA256_CHECKSUM = '8f22ea2f6c0e0a221b6ddc02b6428a3ff708e2ad55f9361102b1c9f4142bdf93'
37
+ PREFERRED_NGINX_VERSION = '1.15.8'
38
+ NGINX_SHA256_CHECKSUM = 'a8bdafbca87eb99813ae4fcac1ad0875bf725ce19eb265d28268c309b2b40787'
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.15.7'
43
- PACKAGING_NGINX_SHA256_CHECKSUM = '8f22ea2f6c0e0a221b6ddc02b6428a3ff708e2ad55f9361102b1c9f4142bdf93'
42
+ PACKAGING_PREFERRED_NGINX_VERSION = '1.15.8'
43
+ PACKAGING_NGINX_SHA256_CHECKSUM = 'a8bdafbca87eb99813ae4fcac1ad0875bf725ce19eb265d28268c309b2b40787'
44
44
 
45
45
  # sha256sum of the .tar.gz
46
46
  PREFERRED_PCRE_VERSION = '8.42'
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.0.0
4
+ version: 6.0.1
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: 2018-11-30 00:00:00.000000000 Z
11
+ date: 2019-01-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake