passenger 4.0.52 → 4.0.53
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of passenger might be problematic. Click here for more details.
- checksums.yaml +8 -8
- checksums.yaml.gz.asc +7 -7
- data.tar.gz.asc +7 -7
- data/.editorconfig +19 -1
- data/CHANGELOG +8 -0
- data/Rakefile +7 -2
- data/build/packaging.rb +90 -12
- data/ext/common/Constants.h +1 -1
- data/lib/phusion_passenger.rb +3 -3
- data/lib/phusion_passenger/platform_info/ruby.rb +39 -22
- data/lib/phusion_passenger/ruby_core_enhancements.rb +8 -7
- data/test/stub/rails4.0/config/initializers/passenger.rb +2 -5
- data/test/stub/rails4.1/config/initializers/passenger.rb +1 -1
- metadata +2 -2
- metadata.gz.asc +7 -7
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NjExNzc1ZGFkYzExOGNhMDA5NmUyNzcxNmQwYzUwNDg5NjMwM2VlMA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
Y2MxMzRkOTM4NzY4YzJjYTVlNzJiNzI5MmI3MzFlZjVhZDRjMWU2Yw==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YTgyNTE1MjExOWQ0NTA1ZGI2Y2Q3OWEwMTkyY2UwZDkzZGU5MjM4ZjA2OGRk
|
10
|
+
OTU3NmU1NDM0ZmUwMDBlOTgzZTUzMDM0OWI4MTVkNDdjYzcxOWVlZGEwN2U0
|
11
|
+
OWRlODZhM2IzOWRkN2YxMzVhOWVlY2M2NDJjMWU0MGNlNmIwODg=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
OTMxYTJkN2YwN2I5NTM0MDU1YWUwNDU3MDQ3MDY0OTUyMTdkNGU5MzJhYTY4
|
14
|
+
NmE0NWNmNDcwODM5Yzg4NzRiNWQwNGZhZjVhN2Y4NjliOWQ2NGRjZjA3YjQ5
|
15
|
+
NWMzMWU4NmY3ZjJmOWZmYTYzMGY1MTY3Y2NiODJhZWNiMGQ5ZTI=
|
checksums.yaml.gz.asc
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
|
3
3
|
Comment: GPGTools - http://gpgtools.org
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
=
|
5
|
+
iQEcBAABAgAGBQJUK9ckAAoJECrHRaUKISqMwkUH/292jpZG5srKKCIySJcDRYz5
|
6
|
+
Putx9SR98up1JzG5n/gNERdHMp+IHoK8mlwSYP0+oMN1KSX5uRsEKJbkxKR1BGYg
|
7
|
+
aP2jVpJ1g8l8H73FCdA3SI50/q0xB+WnebuTcJdZ/NaJmI1m19YmFxD2NGbY84+W
|
8
|
+
c0Z+r6ck2FmwsQEklwM1Sy9gh8ZcfXsey7ve3a4jVgc01J12cFIsOExEgnu4WM/F
|
9
|
+
2+4ZodzFIjmF9wDB8AHlG9RK8JkXjNiCdxjxAqf/kb+MzebioB75BsX38TPACbje
|
10
|
+
SLAElIgmyjKec33NDDtH6GiJxz51z0V0qha9OMXMtucvTD0rEj/DzbCGupOVUm0=
|
11
|
+
=4g5+
|
12
12
|
-----END PGP SIGNATURE-----
|
data.tar.gz.asc
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
|
3
3
|
Comment: GPGTools - http://gpgtools.org
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
=
|
5
|
+
iQEcBAABAgAGBQJUK9ckAAoJECrHRaUKISqM4l0IAIxyvBpZ6hszbK0nKNQupO3Z
|
6
|
+
/NkSYS79zUOJ9EMjHFNFxeVEG0IdYxLWyPNsqns1DUMg0t7aJdMV8sotoM+jsxuY
|
7
|
+
mJ7DZNG+3nNbxeS3p80fzF7PbicyvcqTLOiWnX/r47EbkQCvLpTHk+NI8JKasW/Y
|
8
|
+
3z6RQ7qwcds2UPw9kh/Yhm0m1INQl4tUFz+hfKfPIk3/pixfrnEZWVZSUF7B+CP2
|
9
|
+
cTsTriX5kRUP2oXW3SFSoGAiY3xSilnGhG1JdzG05WLdaDyrRn6ibYxEuX2hrXXN
|
10
|
+
FfDrv0ntvcZ1FRybJMGjejcRp8Z8/Xb2kvLL2Xyu32qDexfmqtr9FQkQU8dZjt8=
|
11
|
+
=Galp
|
12
12
|
-----END PGP SIGNATURE-----
|
data/.editorconfig
CHANGED
@@ -6,6 +6,10 @@ root = true
|
|
6
6
|
end_of_line = lf
|
7
7
|
charset = utf-8
|
8
8
|
|
9
|
+
[bin/*]
|
10
|
+
indent_style=tab
|
11
|
+
indent_size=4
|
12
|
+
|
9
13
|
[doc/*.txt]
|
10
14
|
indent_style=tab
|
11
15
|
indent_size=4
|
@@ -48,6 +52,20 @@ indent_style = tab
|
|
48
52
|
indent_size = 4
|
49
53
|
trim_trailing_whitespace = true
|
50
54
|
|
51
|
-
[ext/nginx
|
55
|
+
[ext/nginx/*.c]
|
56
|
+
indent_style = space
|
57
|
+
indent_size = 4
|
58
|
+
|
59
|
+
[ext/nginx/*.h]
|
52
60
|
indent_style = space
|
53
61
|
indent_size = 4
|
62
|
+
|
63
|
+
[ext/libeio/*.c]
|
64
|
+
indent_style = space
|
65
|
+
indent_size = 2
|
66
|
+
trim_trailing_whitespace = false
|
67
|
+
|
68
|
+
[ext/libeio/*.h]
|
69
|
+
indent_style = space
|
70
|
+
indent_size = 2
|
71
|
+
trim_trailing_whitespace = false
|
data/CHANGELOG
CHANGED
data/Rakefile
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# Phusion Passenger - https://www.phusionpassenger.com/
|
2
|
-
# Copyright (C) 2008-
|
2
|
+
# Copyright (C) 2008-2014 Phusion
|
3
3
|
#
|
4
4
|
# This program is free software; you can redistribute it and/or modify
|
5
5
|
# it under the terms of the GNU General Public License as published by
|
@@ -49,7 +49,12 @@ task :default do
|
|
49
49
|
end
|
50
50
|
|
51
51
|
desc "Remove compiled files"
|
52
|
-
task :clean => 'clean:cache'
|
52
|
+
task :clean => 'clean:cache' do
|
53
|
+
if OUTPUT_DIR == "buildout/"
|
54
|
+
sh "rm -rf buildout"
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
53
58
|
task 'common:clean' => 'clean:cache'
|
54
59
|
task 'clean:cache' do
|
55
60
|
sh "rm -rf #{OUTPUT_DIR}cache"
|
data/build/packaging.rb
CHANGED
@@ -179,6 +179,9 @@ task 'package:release' => ['package:set_official', 'package:gem', 'package:tarba
|
|
179
179
|
response.body
|
180
180
|
end
|
181
181
|
|
182
|
+
puts "Initiating building of binaries"
|
183
|
+
Rake::Task['package:initiate_binaries_building'].invoke
|
184
|
+
|
182
185
|
puts "Initiating building of Debian packages"
|
183
186
|
Rake::Task['package:initiate_debian_building'].invoke
|
184
187
|
|
@@ -216,11 +219,7 @@ task 'package:release' => ['package:set_official', 'package:gem', 'package:tarba
|
|
216
219
|
end
|
217
220
|
|
218
221
|
puts "Initiating building of binaries"
|
219
|
-
|
220
|
-
"/tools/silence-unless-failed -f /tmp/passenger_autobuilder.log " +
|
221
|
-
"chpst -l /var/cache/passenger_ci/lock " +
|
222
|
-
"./autobuild-with-pbuilder #{enterprise_git_url} passenger-enterprise --tag=#{git_tag}"
|
223
|
-
sh "ssh psg_autobuilder_run@juvia-helper.phusion.nl at now <<<'#{command}'"
|
222
|
+
Rake::Task['package:initiate_binaries_building'].invoke
|
224
223
|
|
225
224
|
puts "Initiating building of Debian packages"
|
226
225
|
Rake::Task['package:initiate_debian_building'].invoke
|
@@ -352,19 +351,98 @@ task 'package:update_homebrew' do
|
|
352
351
|
end
|
353
352
|
end
|
354
353
|
|
354
|
+
task 'package:initiate_binaries_building' do
|
355
|
+
require 'yaml'
|
356
|
+
require 'uri'
|
357
|
+
require 'net/http'
|
358
|
+
require 'net/https'
|
359
|
+
version = VERSION_STRING
|
360
|
+
begin
|
361
|
+
website_config = YAML.load_file(File.expand_path("~/.passenger_website.yml"))
|
362
|
+
rescue Errno::ENOENT
|
363
|
+
STDERR.puts "-------------------"
|
364
|
+
abort "*** ERROR: Please put the Phusion Passenger website admin " +
|
365
|
+
"password in ~/.passenger_website.yml:\n" +
|
366
|
+
"admin_password: ..."
|
367
|
+
end
|
368
|
+
if is_open_source?
|
369
|
+
type = "open%20source"
|
370
|
+
jenkins_token = website_config["jenkins_token"]
|
371
|
+
if !jenkins_token
|
372
|
+
abort "*** ERROR: Please put the Passenger open source Jenkins " +
|
373
|
+
"authentication token in ~/.passenger_website.yml, under " +
|
374
|
+
"the 'jenkins_token' key."
|
375
|
+
end
|
376
|
+
else
|
377
|
+
type = "Enterprise"
|
378
|
+
jenkins_token = website_config["jenkins_enterprise_token"]
|
379
|
+
if !jenkins_token
|
380
|
+
abort "*** ERROR: Please put the Passenger Enterprise Jenkins " +
|
381
|
+
"authentication token in ~/.passenger_website.yml, under " +
|
382
|
+
"the 'jenkins_enterprise_token' key."
|
383
|
+
end
|
384
|
+
end
|
385
|
+
|
386
|
+
uri = URI.parse("https://oss-jenkins.phusion.nl/buildByToken/buildWithParameters?" +
|
387
|
+
"job=Passenger%20#{type}%20binaries%20(release)&token=#{jenkins_token}&tag=#{git_tag}")
|
388
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
389
|
+
http.use_ssl = true
|
390
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
391
|
+
request = Net::HTTP::Post.new(uri.request_uri)
|
392
|
+
response = http.request(request)
|
393
|
+
if response.code != 200 && response.body != "Scheduled.\n"
|
394
|
+
abort "*** ERROR: Cannot initiate building of binaries:\n" +
|
395
|
+
"Status: #{response.code}\n\n" +
|
396
|
+
response.body
|
397
|
+
end
|
398
|
+
puts "Initiated building of binaries."
|
399
|
+
end
|
400
|
+
|
355
401
|
task 'package:initiate_debian_building' do
|
402
|
+
require 'yaml'
|
403
|
+
require 'uri'
|
404
|
+
require 'net/http'
|
405
|
+
require 'net/https'
|
356
406
|
version = VERSION_STRING
|
407
|
+
begin
|
408
|
+
website_config = YAML.load_file(File.expand_path("~/.passenger_website.yml"))
|
409
|
+
rescue Errno::ENOENT
|
410
|
+
STDERR.puts "-------------------"
|
411
|
+
abort "*** ERROR: Please put the Phusion Passenger website admin " +
|
412
|
+
"password in ~/.passenger_website.yml:\n" +
|
413
|
+
"admin_password: ..."
|
414
|
+
end
|
357
415
|
if is_open_source?
|
358
|
-
|
359
|
-
|
360
|
-
|
416
|
+
type = "open%20source"
|
417
|
+
jenkins_token = website_config["jenkins_token"]
|
418
|
+
if !jenkins_token
|
419
|
+
abort "*** ERROR: Please put the Passenger open source Jenkins " +
|
420
|
+
"authentication token in ~/.passenger_website.yml, under " +
|
421
|
+
"the 'jenkins_token' key."
|
422
|
+
end
|
361
423
|
else
|
362
|
-
|
363
|
-
|
364
|
-
|
424
|
+
type = "Enterprise"
|
425
|
+
jenkins_token = website_config["jenkins_enterprise_token"]
|
426
|
+
if !jenkins_token
|
427
|
+
abort "*** ERROR: Please put the Passenger Enterprise Jenkins " +
|
428
|
+
"authentication token in ~/.passenger_website.yml, under " +
|
429
|
+
"the 'jenkins_enterprise_token' key."
|
430
|
+
end
|
365
431
|
end
|
366
432
|
|
367
|
-
|
433
|
+
uri = URI.parse("https://oss-jenkins.phusion.nl/buildByToken/buildWithParameters?" +
|
434
|
+
"job=Passenger%20#{type}%20Debian%20packages%20(release)&token=#{jenkins_token}&ref=#{git_tag}")
|
435
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
436
|
+
http.use_ssl = true
|
437
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
438
|
+
request = Net::HTTP::Post.new(uri.request_uri)
|
439
|
+
response = http.request(request)
|
440
|
+
if response.code != 200 && response.body != "Scheduled.\n"
|
441
|
+
abort "*** ERROR: Cannot initiate building of Debian packages:\n" +
|
442
|
+
"Status: #{response.code}\n\n" +
|
443
|
+
response.body
|
444
|
+
end
|
445
|
+
puts "Initiated building of Debian packages."
|
368
446
|
end
|
369
447
|
|
370
448
|
task 'package:build_osx_binaries' do
|
data/ext/common/Constants.h
CHANGED
data/lib/phusion_passenger.rb
CHANGED
@@ -30,10 +30,10 @@ module PhusionPassenger
|
|
30
30
|
|
31
31
|
PACKAGE_NAME = 'passenger'
|
32
32
|
# Run 'rake ext/common/Constants.h' after changing this number.
|
33
|
-
VERSION_STRING = '4.0.
|
33
|
+
VERSION_STRING = '4.0.53'
|
34
34
|
|
35
|
-
PREFERRED_NGINX_VERSION = '1.6.
|
36
|
-
NGINX_SHA256_CHECKSUM = '
|
35
|
+
PREFERRED_NGINX_VERSION = '1.6.2'
|
36
|
+
NGINX_SHA256_CHECKSUM = 'b5608c2959d3e7ad09b20fc8f9e5bd4bc87b3bc8ba5936a513c04ed8f1391a18'
|
37
37
|
|
38
38
|
PREFERRED_PCRE_VERSION = '8.34'
|
39
39
|
PCRE_SHA256_CHECKSUM = '1dd78994c81e44ac41cf30b2a21d4b4cc6d76ccde7fc6e77713ed51d7bddca47'
|
@@ -37,13 +37,21 @@ module PlatformInfo
|
|
37
37
|
gem_home = nil if gem_home.empty?
|
38
38
|
end
|
39
39
|
GEM_HOME = gem_home
|
40
|
-
|
40
|
+
|
41
|
+
# Ditto for $GEM_PATH
|
42
|
+
gem_path = ENV['GEM_PATH']
|
43
|
+
if gem_path
|
44
|
+
gem_path = gem_path.strip.freeze
|
45
|
+
gem_path = nil if gem_path.empty?
|
46
|
+
end
|
47
|
+
GEM_PATH = gem_path
|
48
|
+
|
41
49
|
if defined?(::RUBY_ENGINE)
|
42
50
|
RUBY_ENGINE = ::RUBY_ENGINE
|
43
51
|
else
|
44
52
|
RUBY_ENGINE = "ruby"
|
45
53
|
end
|
46
|
-
|
54
|
+
|
47
55
|
# Returns correct command for invoking the current Ruby interpreter.
|
48
56
|
# In case of RVM this function will return the path to the RVM wrapper script
|
49
57
|
# that executes the current Ruby interpreter in the currently active gem set.
|
@@ -81,7 +89,7 @@ module PlatformInfo
|
|
81
89
|
# Correctness of these commands are confirmed by mpapis.
|
82
90
|
# If we ever encounter a case for which this logic is not sufficient,
|
83
91
|
# try mpapis' pseudo code:
|
84
|
-
#
|
92
|
+
#
|
85
93
|
# rvm_update_prefix = write_to rvm_path ? "" : "rvmsudo"
|
86
94
|
# rvm_gemhome_prefix = write_to GEM_HOME ? "" : "rvmsudo"
|
87
95
|
# repair_command = "#{rvm_update_prefix} rvm get stable && rvm reload && #{rvm_gemhome_prefix} rvm repair all"
|
@@ -121,7 +129,7 @@ module PlatformInfo
|
|
121
129
|
end
|
122
130
|
end
|
123
131
|
memoize :ruby_command
|
124
|
-
|
132
|
+
|
125
133
|
# Returns the full path to the current Ruby interpreter's executable file.
|
126
134
|
# This might not be the actual correct command to use for invoking the Ruby
|
127
135
|
# interpreter; use ruby_command instead.
|
@@ -129,7 +137,7 @@ module PlatformInfo
|
|
129
137
|
@@ruby_executable ||=
|
130
138
|
rb_config['bindir'] + '/' + rb_config['RUBY_INSTALL_NAME'] + rb_config['EXEEXT']
|
131
139
|
end
|
132
|
-
|
140
|
+
|
133
141
|
# Returns whether the Ruby interpreter supports process forking.
|
134
142
|
def self.ruby_supports_fork?
|
135
143
|
# MRI >= 1.9.2's respond_to? returns false for methods
|
@@ -146,7 +154,7 @@ module PlatformInfo
|
|
146
154
|
# Too much of a trouble for JRuby. We can do without it.
|
147
155
|
return RUBY_ENGINE != "jruby"
|
148
156
|
end
|
149
|
-
|
157
|
+
|
150
158
|
# Returns the correct 'gem' command for this Ruby interpreter.
|
151
159
|
# If `:sudo => true` is given, then the gem command is prefixed by a
|
152
160
|
# sudo command if filesystem permissions require this.
|
@@ -169,7 +177,7 @@ module PlatformInfo
|
|
169
177
|
end
|
170
178
|
end
|
171
179
|
memoize :gem_install_requires_sudo?
|
172
|
-
|
180
|
+
|
173
181
|
# Returns the absolute path to the Rake executable that
|
174
182
|
# belongs to the current Ruby interpreter. Returns nil if it
|
175
183
|
# doesn't exist.
|
@@ -180,7 +188,7 @@ module PlatformInfo
|
|
180
188
|
return locate_ruby_tool('rake')
|
181
189
|
end
|
182
190
|
memoize :rake
|
183
|
-
|
191
|
+
|
184
192
|
# Returns the correct command string for invoking the Rake executable
|
185
193
|
# that belongs to the current Ruby interpreter. Returns nil if Rake is
|
186
194
|
# not found.
|
@@ -199,7 +207,7 @@ module PlatformInfo
|
|
199
207
|
end
|
200
208
|
end
|
201
209
|
memoize :rake_command
|
202
|
-
|
210
|
+
|
203
211
|
# Returns the absolute path to the RSpec runner program that
|
204
212
|
# belongs to the current Ruby interpreter. Returns nil if it
|
205
213
|
# doesn't exist.
|
@@ -207,18 +215,18 @@ module PlatformInfo
|
|
207
215
|
return locate_ruby_tool('rspec')
|
208
216
|
end
|
209
217
|
memoize :rspec
|
210
|
-
|
218
|
+
|
211
219
|
# Returns whether the current Ruby interpreter is managed by RVM.
|
212
220
|
def self.in_rvm?
|
213
221
|
bindir = rb_config['bindir']
|
214
222
|
return bindir.include?('/.rvm/') || bindir.include?('/rvm/')
|
215
223
|
end
|
216
|
-
|
224
|
+
|
217
225
|
# If the current Ruby interpreter is managed by RVM, returns all
|
218
226
|
# directories in which RVM places its working files. This is usually
|
219
227
|
# ~/.rvm or /usr/local/rvm, but in mixed-mode installations there
|
220
228
|
# can be multiple such paths.
|
221
|
-
#
|
229
|
+
#
|
222
230
|
# Otherwise returns nil.
|
223
231
|
def self.rvm_paths
|
224
232
|
if in_rvm?
|
@@ -250,7 +258,7 @@ module PlatformInfo
|
|
250
258
|
end
|
251
259
|
end
|
252
260
|
memoize :rvm_paths
|
253
|
-
|
261
|
+
|
254
262
|
# If the current Ruby interpreter is managed by RVM, returns the
|
255
263
|
# RVM name which identifies the current Ruby interpreter plus the
|
256
264
|
# currently active gemset, e.g. something like this:
|
@@ -264,12 +272,12 @@ module PlatformInfo
|
|
264
272
|
# in the latest versions in order to fight env var pollution.
|
265
273
|
# Scanning $LOAD_PATH seems to be the only way to obtain
|
266
274
|
# the information.
|
267
|
-
|
275
|
+
|
268
276
|
# Getting the RVM name of the Ruby interpreter ("ruby-1.9.2")
|
269
277
|
# isn't so hard, we can extract it from the #ruby_executable
|
270
278
|
# string. Getting the gemset name is a bit harder, so let's
|
271
279
|
# try various strategies...
|
272
|
-
|
280
|
+
|
273
281
|
# $GEM_HOME usually contains the gem set name.
|
274
282
|
# It may be something like:
|
275
283
|
# /Users/hongli/.rvm/gems/ruby-1.9.3-p392
|
@@ -278,9 +286,18 @@ module PlatformInfo
|
|
278
286
|
if GEM_HOME && GEM_HOME =~ %r{rvm/gems/(.+)}
|
279
287
|
return $1.sub(/\/.*/, '')
|
280
288
|
end
|
281
|
-
|
282
|
-
# User
|
283
|
-
# from $
|
289
|
+
|
290
|
+
# User might have explicitly set GEM_HOME to a custom directory,
|
291
|
+
# or might have nuked $GEM_HOME. Extract info from $GEM_PATH.
|
292
|
+
if GEM_PATH
|
293
|
+
GEM_PATH.split(':').each do |gem_path|
|
294
|
+
if gem_path =~ %r{rvm/gems/(.+)}
|
295
|
+
return $1.sub(/\/.*/, '')
|
296
|
+
end
|
297
|
+
end
|
298
|
+
end
|
299
|
+
|
300
|
+
# That failed too. Try extracting info from from $LOAD_PATH.
|
284
301
|
matching_path = $LOAD_PATH.find_all do |item|
|
285
302
|
item.include?("rvm/gems/")
|
286
303
|
end
|
@@ -327,7 +344,7 @@ module PlatformInfo
|
|
327
344
|
return nil
|
328
345
|
end
|
329
346
|
end
|
330
|
-
|
347
|
+
|
331
348
|
# Returns either 'sudo' or 'rvmsudo' depending on whether the current
|
332
349
|
# Ruby interpreter is managed by RVM.
|
333
350
|
def self.ruby_sudo_command
|
@@ -360,7 +377,7 @@ module PlatformInfo
|
|
360
377
|
return "sudo -s #{args}".strip
|
361
378
|
end
|
362
379
|
end
|
363
|
-
|
380
|
+
|
364
381
|
# Locates a Ruby tool command, e.g. 'gem', 'rake', 'bundle', etc. Instead of
|
365
382
|
# naively looking in $PATH, this function uses a variety of search heuristics
|
366
383
|
# to find the command that's really associated with the current Ruby interpreter.
|
@@ -433,7 +450,7 @@ private
|
|
433
450
|
filename
|
434
451
|
end
|
435
452
|
private_class_method :locate_ruby_tool_by_basename
|
436
|
-
|
453
|
+
|
437
454
|
def self.is_ruby_program?(filename)
|
438
455
|
File.open(filename, 'rb') do |f|
|
439
456
|
return f.readline =~ /ruby/
|
@@ -442,7 +459,7 @@ private
|
|
442
459
|
return false
|
443
460
|
end
|
444
461
|
private_class_method :is_ruby_program?
|
445
|
-
|
462
|
+
|
446
463
|
# Deduce Ruby's --program-prefix and --program-suffix from its install name
|
447
464
|
# and transforms the given input name accordingly.
|
448
465
|
#
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# encoding: binary
|
2
2
|
# Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
# Copyright (c) 2010
|
3
|
+
# Copyright (c) 2010-2014 Phusion
|
4
4
|
#
|
5
5
|
# "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
|
6
6
|
#
|
@@ -76,7 +76,7 @@ class IO
|
|
76
76
|
def writev(components)
|
77
77
|
return PhusionPassenger::NativeSupport.writev(fileno, components)
|
78
78
|
end
|
79
|
-
|
79
|
+
|
80
80
|
# Like #writev, but accepts two arrays. The data is written in the given order.
|
81
81
|
#
|
82
82
|
# io.writev2(["hello ", "world", "\n"], ["another ", "message\n"])
|
@@ -84,7 +84,7 @@ class IO
|
|
84
84
|
return PhusionPassenger::NativeSupport.writev2(fileno,
|
85
85
|
components, components2)
|
86
86
|
end
|
87
|
-
|
87
|
+
|
88
88
|
# Like #writev, but accepts three arrays. The data is written in the given order.
|
89
89
|
#
|
90
90
|
# io.writev3(["hello ", "world", "\n"],
|
@@ -124,7 +124,7 @@ class IO
|
|
124
124
|
return write(data)
|
125
125
|
end
|
126
126
|
end
|
127
|
-
|
127
|
+
|
128
128
|
if IO.method_defined?(:close_on_exec=)
|
129
129
|
def close_on_exec!
|
130
130
|
self.close_on_exec = true
|
@@ -163,16 +163,17 @@ module Signal
|
|
163
163
|
result.delete("ALRM")
|
164
164
|
result.delete("VTALRM")
|
165
165
|
end
|
166
|
-
|
166
|
+
|
167
167
|
# Don't touch SIGCHLD no matter what! On OS X waitpid() will
|
168
168
|
# malfunction if SIGCHLD doesn't have a correct handler.
|
169
169
|
result.delete("CLD")
|
170
170
|
result.delete("CHLD")
|
171
|
-
|
171
|
+
|
172
172
|
# Other stuff that we don't want to trap no matter which
|
173
173
|
# Ruby engine.
|
174
174
|
result.delete("STOP")
|
175
|
-
|
175
|
+
result.delete("KILL")
|
176
|
+
|
176
177
|
return result
|
177
178
|
end
|
178
179
|
end
|
@@ -1,5 +1,2 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
event_preprocessor: ->(e) { e.payload[:sql].gsub!("secret","PASSWORD") if e.payload[:sql] }
|
4
|
-
)
|
5
|
-
end
|
1
|
+
event_preprocessor = lambda { |e| e.payload[:sql].gsub!("secret","PASSWORD") if e.payload[:sql] }
|
2
|
+
PhusionPassenger.install_framework_extensions!(:event_preprocessor => event_preprocessor ) if defined?(PhusionPassenger)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
if defined?(PhusionPassenger)
|
2
2
|
PhusionPassenger.install_framework_extensions!(
|
3
|
-
event_preprocessor:
|
3
|
+
event_preprocessor: lambda { |e| e.payload[:sql].gsub!("secret","PASSWORD") if e.payload[:sql] }
|
4
4
|
)
|
5
5
|
end
|
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: 4.0.
|
4
|
+
version: 4.0.53
|
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: 2014-
|
11
|
+
date: 2014-10-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
metadata.gz.asc
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
|
3
3
|
Comment: GPGTools - http://gpgtools.org
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
=
|
5
|
+
iQEcBAABAgAGBQJUK9cjAAoJECrHRaUKISqMRTgIAKJVJG6YhhvH+p0wfTavrjXs
|
6
|
+
sQ3ovOKf3NchudkMC24B0D88I4hvYCsFPmA9ltllpnh95IJu9ffDL3jp5Pb/vh+E
|
7
|
+
dWpEojuzw03gaob9JYNMVij3V7yKfSznGQwjOgpcz1/dSwGElOoZdSMsL0OHJRXl
|
8
|
+
k+d9c6PpiJqn1wdmIIez91zeENFuxcc9qlTPJWFGgQvaztnV78Av0KBO6d46ohRt
|
9
|
+
fon/+sj4BVpsg3kvj5Z/dzegCHd1FX6LTvNrnrfcFf+IR1ky1XhS+NPM6AZbUnsf
|
10
|
+
WlszF70EnEgxBCZDtpiUlJKBg16P7XSAVE5dyzM082jvZeBs1t5ZJzEmCNCwDhM=
|
11
|
+
=R6Mx
|
12
12
|
-----END PGP SIGNATURE-----
|