passenger 6.0.15 → 6.0.16

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f51fe2f94d713dcb1f6f56e57fcdf9a15b55cd60
4
- data.tar.gz: 043ca2b56fb2c4cd1402588e5710b494966591b8
3
+ metadata.gz: 6ed286b35fe2afc9916972e242806d8ef6f38996
4
+ data.tar.gz: d0286a8f800b66ebb734da79ef381e8886b8c542
5
5
  SHA512:
6
- metadata.gz: 4b4f504752a5ed7fedee9c701431b47abfd168a7fddfbb14510f2127e420f33728e765feb5ce40fcd56483c5f546bddb201ce0ef96cdb161717b946ccaa5ab5e
7
- data.tar.gz: 60f2803713c89eada3f62d47d5cf0f55d26e01b2c2ee23af4144def877b18772f29dcfe2654a5f2597c33de76bd4dcadeca84d4ba1b4dcc7bbfee09aa8cd7bc9
6
+ metadata.gz: 7c654ed76d439bdc87b06986fdd651d198c3f5334f589705a0d616545fff738b2f096962a437cdf65379bf6c9c809c833c8f9f19d604ef8fe0a64c4d5d345551
7
+ data.tar.gz: c6a215512170735670e7a33ac43010cc02e72560aec30899154e2828cd7860ae3f83c4fc028d8c9556cde045deaf02e79a04b91a3458949582360b28ef2293bb
data/CHANGELOG CHANGED
@@ -1,10 +1,33 @@
1
- Release 6.0.15 (Not yet released)
1
+ Release 6.0.16 (Not yet released)
2
+ -------------
3
+ * Adds Ubuntu 22.10 "Kinetic" packages, removes Ubuntu 16.04 "Xenial" packages.
4
+ * Adds systemd private tmpdir workaround on Ubuntu/Debian. Closes GH-2397.
5
+ * Downgrade jsoncpp to 1.8.1 from 1.9.5 to fix invalid json generation bug. Closes GH-2445.
6
+ * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
7
+ - ccache: 4.6.3 → 4.7.4
8
+ - cmake: 3.24.2 → 3.25.1
9
+ - curl: 7.85.0 → 7.86.0
10
+ - git 2.37.3 → 2.38.1
11
+ - gnupg: 2.3.7 → 2.3.8
12
+ - libgpg_error 1.45 → 1.46
13
+ - libksba 1.6.1 → 1.6.2
14
+ - openssl: 1.1.1q → 1.1.1s
15
+ - rubygems 3.3.22 → 3.3.26
16
+ - s3cmd 2.2.0 → 2.3.0
17
+ - zlib: 1.2.12 → 1.2.13
18
+ - rubies:
19
+ - 2.7.6 → 2.7.7
20
+ - 3.0.4 → 3.0.5
21
+ - 3.1.2 → 3.1.3
22
+
23
+
24
+ Release 6.0.15
2
25
  -------------
3
26
  * Restore ability to build against upstream libev. Contributed by Antonio Terceiro. Closes GH-1544.
4
27
  * Improve rvm gemset detection. Closes GH-2420.
5
28
  * Fix watchdog error on disable-log-prefix flag. Contributed by Paul Hanyzewski. Closes GH-2363.
6
29
  * Upgrades Boost to 1.80.
7
- * Fixed compilation on some platforms by explicitely using the stl queue. Closes GH-2440.
30
+ * Fixed compilation on some platforms by explicitly using the stl queue. Closes GH-2440.
8
31
  * Raise an error in case rack gets an ENOBUFS error. Contributed by Mathieu Jobin.
9
32
  * Fixes interaction between preload bundler option and setenv RUBYOPT option. Closes GH-2424.
10
33
  * Add rpm packages for el9 (RHEL, Rocky, Alma). Closes GH-2431.
@@ -165,7 +165,7 @@ using namespace std;
165
165
  * security_update_checker_interval unsigned integer - default(86400)
166
166
  * security_update_checker_proxy_url string - -
167
167
  * security_update_checker_url string - default("https://securitycheck.phusionpassenger.com/v1/check.json")
168
- * server_software string - default("Phusion_Passenger/6.0.15")
168
+ * server_software string - default("Phusion_Passenger/6.0.16")
169
169
  * show_version_in_header boolean - default(true)
170
170
  * single_app_mode_app_root string - default,read_only
171
171
  * single_app_mode_app_start_command string - read_only
@@ -116,7 +116,7 @@ parseControllerBenchmarkMode(const StaticString &mode) {
116
116
  * multi_app boolean - default(true),read_only
117
117
  * request_freelist_limit unsigned integer - default(1024)
118
118
  * response_buffer_high_watermark unsigned integer - default(134217728)
119
- * server_software string - default("Phusion_Passenger/6.0.15")
119
+ * server_software string - default("Phusion_Passenger/6.0.16")
120
120
  * show_version_in_header boolean - default(true)
121
121
  * start_reading_after_accept boolean - default(true)
122
122
  * stat_throttle_rate unsigned integer - default(10)
@@ -154,7 +154,7 @@ using namespace std;
154
154
  * security_update_checker_interval unsigned integer - default(86400)
155
155
  * security_update_checker_proxy_url string - -
156
156
  * security_update_checker_url string - default("https://securitycheck.phusionpassenger.com/v1/check.json")
157
- * server_software string - default("Phusion_Passenger/6.0.15")
157
+ * server_software string - default("Phusion_Passenger/6.0.16")
158
158
  * setsid boolean - default(false)
159
159
  * show_version_in_header boolean - default(true)
160
160
  * single_app_mode_app_root string - default,read_only
@@ -83,7 +83,7 @@
83
83
  #define PASSENGER_API_VERSION_MAJOR 0
84
84
  #define PASSENGER_API_VERSION_MINOR 3
85
85
  #define PASSENGER_DEFAULT_USER "nobody"
86
- #define PASSENGER_VERSION "6.0.15"
86
+ #define PASSENGER_VERSION "6.0.16"
87
87
  #define POOL_HELPER_THREAD_STACK_SIZE 262144
88
88
  #define PROCESS_SHUTDOWN_TIMEOUT 60
89
89
  #define PROCESS_SHUTDOWN_TIMEOUT_DISPLAY "1 minute"
@@ -1,4 +1,4 @@
1
- /// Json-cpp amalgamated forward header (http://jsoncpp.sourceforge.net/).
1
+ /// Json-cpp amalgated forward header (http://jsoncpp.sourceforge.net/).
2
2
  /// It is intended to be used with #include "json/json-forwards.h"
3
3
  /// This header provides forward declaration for all JsonCpp types.
4
4
 
@@ -7,32 +7,32 @@
7
7
  // //////////////////////////////////////////////////////////////////////
8
8
 
9
9
  /*
10
- The JsonCpp library's source code, including accompanying documentation,
10
+ The JsonCpp library's source code, including accompanying documentation,
11
11
  tests and demonstration applications, are licensed under the following
12
12
  conditions...
13
13
 
14
- Baptiste Lepilleur and The JsonCpp Authors explicitly disclaim copyright in all
15
- jurisdictions which recognize such a disclaimer. In such jurisdictions,
14
+ The JsonCpp Authors explicitly disclaim copyright in all
15
+ jurisdictions which recognize such a disclaimer. In such jurisdictions,
16
16
  this software is released into the Public Domain.
17
17
 
18
18
  In jurisdictions which do not recognize Public Domain property (e.g. Germany as of
19
- 2010), this software is Copyright (c) 2007-2010 by Baptiste Lepilleur and
20
- The JsonCpp Authors, and is released under the terms of the MIT License (see below).
19
+ 2010), this software is Copyright (c) 2007-2010 by The JsonCpp Authors, and is
20
+ released under the terms of the MIT License (see below).
21
21
 
22
- In jurisdictions which recognize Public Domain property, the user of this
23
- software may choose to accept it either as 1) Public Domain, 2) under the
24
- conditions of the MIT License (see below), or 3) under the terms of dual
22
+ In jurisdictions which recognize Public Domain property, the user of this
23
+ software may choose to accept it either as 1) Public Domain, 2) under the
24
+ conditions of the MIT License (see below), or 3) under the terms of dual
25
25
  Public Domain/MIT License conditions described here, as they choose.
26
26
 
27
27
  The MIT License is about as close to Public Domain as a license can get, and is
28
28
  described in clear, concise terms at:
29
29
 
30
30
  http://en.wikipedia.org/wiki/MIT_License
31
-
31
+
32
32
  The full text of the MIT License follows:
33
33
 
34
34
  ========================================================================
35
- Copyright (c) 2007-2010 Baptiste Lepilleur and The JsonCpp Authors
35
+ Copyright (c) 2007-2010 The JsonCpp Authors
36
36
 
37
37
  Permission is hereby granted, free of charge, to any person
38
38
  obtaining a copy of this software and associated documentation
@@ -73,177 +73,36 @@ license you like.
73
73
 
74
74
 
75
75
 
76
- #ifndef JSON_FORWARD_AMALGAMATED_H_INCLUDED
77
- # define JSON_FORWARD_AMALGAMATED_H_INCLUDED
78
- /// If defined, indicates that the source file is amalgamated
76
+ #ifndef JSON_FORWARD_AMALGATED_H_INCLUDED
77
+ # define JSON_FORWARD_AMALGATED_H_INCLUDED
78
+ /// If defined, indicates that the source file is amalgated
79
79
  /// to prevent private header inclusion.
80
80
  #define JSON_IS_AMALGAMATION
81
81
 
82
- // //////////////////////////////////////////////////////////////////////
83
- // Beginning of content of file: include/json/version.h
84
- // //////////////////////////////////////////////////////////////////////
85
-
86
- #ifndef JSON_VERSION_H_INCLUDED
87
- #define JSON_VERSION_H_INCLUDED
88
-
89
- // Note: version must be updated in three places when doing a release. This
90
- // annoying process ensures that amalgamate, CMake, and meson all report the
91
- // correct version.
92
- // 1. /meson.build
93
- // 2. /include/json/version.h
94
- // 3. /CMakeLists.txt
95
- // IMPORTANT: also update the SOVERSION!!
96
-
97
- #define JSONCPP_VERSION_STRING "1.9.5"
98
- #define JSONCPP_VERSION_MAJOR 1
99
- #define JSONCPP_VERSION_MINOR 9
100
- #define JSONCPP_VERSION_PATCH 5
101
- #define JSONCPP_VERSION_QUALIFIER
102
- #define JSONCPP_VERSION_HEXA \
103
- ((JSONCPP_VERSION_MAJOR << 24) | (JSONCPP_VERSION_MINOR << 16) | \
104
- (JSONCPP_VERSION_PATCH << 8))
105
-
106
- #ifdef JSONCPP_USING_SECURE_MEMORY
107
- #undef JSONCPP_USING_SECURE_MEMORY
108
- #endif
109
- #define JSONCPP_USING_SECURE_MEMORY 0
110
- // If non-zero, the library zeroes any memory that it has allocated before
111
- // it frees its memory.
112
-
113
- #endif // JSON_VERSION_H_INCLUDED
114
-
115
- // //////////////////////////////////////////////////////////////////////
116
- // End of content of file: include/json/version.h
117
- // //////////////////////////////////////////////////////////////////////
118
-
119
-
120
-
121
-
122
-
123
-
124
- // //////////////////////////////////////////////////////////////////////
125
- // Beginning of content of file: include/json/allocator.h
126
- // //////////////////////////////////////////////////////////////////////
127
-
128
- // Copyright 2007-2010 Baptiste Lepilleur and The JsonCpp Authors
129
- // Distributed under MIT license, or public domain if desired and
130
- // recognized in your jurisdiction.
131
- // See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
132
-
133
- #ifndef JSON_ALLOCATOR_H_INCLUDED
134
- #define JSON_ALLOCATOR_H_INCLUDED
135
-
136
- #include <cstring>
137
- #include <memory>
138
-
139
- #pragma pack(push, 8)
140
-
141
- namespace Passenger {
142
- namespace Json {
143
- template <typename T> class SecureAllocator {
144
- public:
145
- // Type definitions
146
- using value_type = T;
147
- using pointer = T*;
148
- using const_pointer = const T*;
149
- using reference = T&;
150
- using const_reference = const T&;
151
- using size_type = std::size_t;
152
- using difference_type = std::ptrdiff_t;
153
-
154
- /**
155
- * Allocate memory for N items using the standard allocator.
156
- */
157
- pointer allocate(size_type n) {
158
- // allocate using "global operator new"
159
- return static_cast<pointer>(::operator new(n * sizeof(T)));
160
- }
161
-
162
- /**
163
- * Release memory which was allocated for N items at pointer P.
164
- *
165
- * The memory block is filled with zeroes before being released.
166
- */
167
- void deallocate(pointer p, size_type n) {
168
- // memset_s is used because memset may be optimized away by the compiler
169
- memset_s(p, n * sizeof(T), 0, n * sizeof(T));
170
- // free using "global operator delete"
171
- ::operator delete(p);
172
- }
173
-
174
- /**
175
- * Construct an item in-place at pointer P.
176
- */
177
- template <typename... Args> void construct(pointer p, Args&&... args) {
178
- // construct using "placement new" and "perfect forwarding"
179
- ::new (static_cast<void*>(p)) T(std::forward<Args>(args)...);
180
- }
181
-
182
- size_type max_size() const { return size_t(-1) / sizeof(T); }
183
-
184
- pointer address(reference x) const { return std::addressof(x); }
185
-
186
- const_pointer address(const_reference x) const { return std::addressof(x); }
187
-
188
- /**
189
- * Destroy an item in-place at pointer P.
190
- */
191
- void destroy(pointer p) {
192
- // destroy using "explicit destructor"
193
- p->~T();
194
- }
195
-
196
- // Boilerplate
197
- SecureAllocator() {}
198
- template <typename U> SecureAllocator(const SecureAllocator<U>&) {}
199
- template <typename U> struct rebind { using other = SecureAllocator<U>; };
200
- };
201
-
202
- template <typename T, typename U>
203
- bool operator==(const SecureAllocator<T>&, const SecureAllocator<U>&) {
204
- return true;
205
- }
206
-
207
- template <typename T, typename U>
208
- bool operator!=(const SecureAllocator<T>&, const SecureAllocator<U>&) {
209
- return false;
210
- }
211
-
212
- } // namespace Json
213
- } // namespace Passenger
214
-
215
- #pragma pack(pop)
216
-
217
- #endif // JSON_ALLOCATOR_H_INCLUDED
218
-
219
- // //////////////////////////////////////////////////////////////////////
220
- // End of content of file: include/json/allocator.h
221
- // //////////////////////////////////////////////////////////////////////
222
-
223
-
224
-
225
-
226
-
227
-
228
82
  // //////////////////////////////////////////////////////////////////////
229
83
  // Beginning of content of file: include/json/config.h
230
84
  // //////////////////////////////////////////////////////////////////////
231
85
 
232
- // Copyright 2007-2010 Baptiste Lepilleur and The JsonCpp Authors
86
+ // Copyright 2007-2010 Baptiste Lepilleur
233
87
  // Distributed under MIT license, or public domain if desired and
234
88
  // recognized in your jurisdiction.
235
89
  // See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
236
90
 
237
91
  #ifndef JSON_CONFIG_H_INCLUDED
238
92
  #define JSON_CONFIG_H_INCLUDED
239
- #include <cstddef>
240
- #include <cstdint>
241
- #include <istream>
242
- #include <memory>
243
- #include <ostream>
244
- #include <sstream>
245
- #include <string>
246
- #include <type_traits>
93
+ #include <stddef.h>
94
+ #include <string> //typedef String
95
+ #include <stdint.h> //typedef int64_t, uint64_t
96
+
97
+ /// If defined, indicates that json library is embedded in CppTL library.
98
+ //# define JSON_IN_CPPTL 1
99
+
100
+ /// If defined, indicates that json may leverage CppTL library
101
+ //# define JSON_USE_CPPTL 1
102
+ /// If defined, indicates that cpptl vector based map should be used instead of
103
+ /// std::map
104
+ /// as Value container.
105
+ //# define JSON_USE_CPPTL_SMALLMAP 1
247
106
 
248
107
  // If non-zero, the library uses exceptions to report bad input instead of C
249
108
  // assertion macros. The default is to use exceptions.
@@ -251,134 +110,163 @@ bool operator!=(const SecureAllocator<T>&, const SecureAllocator<U>&) {
251
110
  #define JSON_USE_EXCEPTION 1
252
111
  #endif
253
112
 
254
- // Temporary, tracked for removal with issue #982.
255
- #ifndef JSON_USE_NULLREF
256
- #define JSON_USE_NULLREF 1
257
- #endif
258
-
259
- /// If defined, indicates that the source file is amalgamated
113
+ /// If defined, indicates that the source file is amalgated
260
114
  /// to prevent private header inclusion.
261
- /// Remarks: it is automatically defined in the generated amalgamated header.
115
+ /// Remarks: it is automatically defined in the generated amalgated header.
262
116
  // #define JSON_IS_AMALGAMATION
263
117
 
264
- // Export macros for DLL visibility
265
- #if defined(JSON_DLL_BUILD)
118
+ #ifdef JSON_IN_CPPTL
119
+ #include <cpptl/config.h>
120
+ #ifndef JSON_USE_CPPTL
121
+ #define JSON_USE_CPPTL 1
122
+ #endif
123
+ #endif
124
+
125
+ #ifdef JSON_IN_CPPTL
126
+ #define JSON_API CPPTL_API
127
+ #elif defined(JSON_DLL_BUILD)
266
128
  #if defined(_MSC_VER) || defined(__MINGW32__)
267
129
  #define JSON_API __declspec(dllexport)
268
130
  #define JSONCPP_DISABLE_DLL_INTERFACE_WARNING
269
- #elif defined(__GNUC__) || defined(__clang__)
270
- #define JSON_API __attribute__((visibility("default")))
271
131
  #endif // if defined(_MSC_VER)
272
-
273
132
  #elif defined(JSON_DLL)
274
133
  #if defined(_MSC_VER) || defined(__MINGW32__)
275
134
  #define JSON_API __declspec(dllimport)
276
135
  #define JSONCPP_DISABLE_DLL_INTERFACE_WARNING
277
136
  #endif // if defined(_MSC_VER)
278
- #endif // ifdef JSON_DLL_BUILD
279
-
137
+ #endif // ifdef JSON_IN_CPPTL
280
138
  #if !defined(JSON_API)
281
139
  #define JSON_API
282
140
  #endif
283
141
 
284
- #if defined(_MSC_VER) && _MSC_VER < 1800
285
- #error \
286
- "ERROR: Visual Studio 12 (2013) with _MSC_VER=1800 is the oldest supported compiler with sufficient C++11 capabilities"
287
- #endif
288
-
289
- #if defined(_MSC_VER) && _MSC_VER < 1900
290
- // As recommended at
291
- // https://stackoverflow.com/questions/2915672/snprintf-and-visual-studio-2010
292
- extern JSON_API int msvc_pre1900_c99_snprintf(char* outBuf, size_t size,
293
- const char* format, ...);
294
- #define jsoncpp_snprintf msvc_pre1900_c99_snprintf
295
- #else
296
- #define jsoncpp_snprintf std::snprintf
297
- #endif
298
-
299
142
  // If JSON_NO_INT64 is defined, then Json only support C++ "int" type for
300
143
  // integer
301
144
  // Storages, and 64 bits integer support is disabled.
302
145
  // #define JSON_NO_INT64 1
303
146
 
304
- // JSONCPP_OVERRIDE is maintained for backwards compatibility of external tools.
305
- // C++11 should be used directly in JSONCPP.
306
- #define JSONCPP_OVERRIDE override
147
+ #if defined(_MSC_VER) // MSVC
148
+ # if _MSC_VER <= 1200 // MSVC 6
149
+ // Microsoft Visual Studio 6 only support conversion from __int64 to double
150
+ // (no conversion from unsigned __int64).
151
+ # define JSON_USE_INT64_DOUBLE_CONVERSION 1
152
+ // Disable warning 4786 for VS6 caused by STL (identifier was truncated to '255'
153
+ // characters in the debug information)
154
+ // All projects I've ever seen with VS6 were using this globally (not bothering
155
+ // with pragma push/pop).
156
+ # pragma warning(disable : 4786)
157
+ # endif // MSVC 6
158
+
159
+ # if _MSC_VER >= 1500 // MSVC 2008
160
+ /// Indicates that the following function is deprecated.
161
+ # define JSONCPP_DEPRECATED(message) __declspec(deprecated(message))
162
+ # endif
163
+
164
+ #endif // defined(_MSC_VER)
165
+
166
+ // In c++11 the override keyword allows you to explicity define that a function
167
+ // is intended to override the base-class version. This makes the code more
168
+ // managable and fixes a set of common hard-to-find bugs.
169
+ #if __cplusplus >= 201103L
170
+ # define JSONCPP_OVERRIDE override
171
+ # define JSONCPP_NOEXCEPT noexcept
172
+ #elif defined(_MSC_VER) && _MSC_VER > 1600 && _MSC_VER < 1900
173
+ # define JSONCPP_OVERRIDE override
174
+ # define JSONCPP_NOEXCEPT throw()
175
+ #elif defined(_MSC_VER) && _MSC_VER >= 1900
176
+ # define JSONCPP_OVERRIDE override
177
+ # define JSONCPP_NOEXCEPT noexcept
178
+ #else
179
+ # define JSONCPP_OVERRIDE
180
+ # define JSONCPP_NOEXCEPT throw()
181
+ #endif
182
+
183
+ #ifndef JSON_HAS_RVALUE_REFERENCES
184
+
185
+ #if defined(_MSC_VER) && _MSC_VER >= 1600 // MSVC >= 2010
186
+ #define JSON_HAS_RVALUE_REFERENCES 1
187
+ #endif // MSVC >= 2010
307
188
 
308
189
  #ifdef __clang__
309
- #if __has_extension(attribute_deprecated_with_message)
310
- #define JSONCPP_DEPRECATED(message) __attribute__((deprecated(message)))
190
+ #if __has_feature(cxx_rvalue_references)
191
+ #define JSON_HAS_RVALUE_REFERENCES 1
192
+ #endif // has_feature
193
+
194
+ #elif defined __GNUC__ // not clang (gcc comes later since clang emulates gcc)
195
+ #if defined(__GXX_EXPERIMENTAL_CXX0X__) || (__cplusplus >= 201103L)
196
+ #define JSON_HAS_RVALUE_REFERENCES 1
197
+ #endif // GXX_EXPERIMENTAL
198
+
199
+ #endif // __clang__ || __GNUC__
200
+
201
+ #endif // not defined JSON_HAS_RVALUE_REFERENCES
202
+
203
+ #ifndef JSON_HAS_RVALUE_REFERENCES
204
+ #define JSON_HAS_RVALUE_REFERENCES 0
311
205
  #endif
312
- #elif defined(__GNUC__) // not clang (gcc comes later since clang emulates gcc)
313
- #if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5))
314
- #define JSONCPP_DEPRECATED(message) __attribute__((deprecated(message)))
315
- #elif (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
316
- #define JSONCPP_DEPRECATED(message) __attribute__((__deprecated__))
317
- #endif // GNUC version
318
- #elif defined(_MSC_VER) // MSVC (after clang because clang on Windows emulates
319
- // MSVC)
320
- #define JSONCPP_DEPRECATED(message) __declspec(deprecated(message))
321
- #endif // __clang__ || __GNUC__ || _MSC_VER
206
+
207
+ #ifdef __clang__
208
+ #elif defined __GNUC__ // not clang (gcc comes later since clang emulates gcc)
209
+ # if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5))
210
+ # define JSONCPP_DEPRECATED(message) __attribute__ ((deprecated(message)))
211
+ # elif (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
212
+ # define JSONCPP_DEPRECATED(message) __attribute__((__deprecated__))
213
+ # endif // GNUC version
214
+ #endif // __clang__ || __GNUC__
322
215
 
323
216
  #if !defined(JSONCPP_DEPRECATED)
324
217
  #define JSONCPP_DEPRECATED(message)
325
218
  #endif // if !defined(JSONCPP_DEPRECATED)
326
219
 
327
- #if defined(__clang__) || (defined(__GNUC__) && (__GNUC__ >= 6))
328
- #define JSON_USE_INT64_DOUBLE_CONVERSION 1
220
+ #if __GNUC__ >= 6
221
+ # define JSON_USE_INT64_DOUBLE_CONVERSION 1
329
222
  #endif
330
223
 
331
224
  #if !defined(JSON_IS_AMALGAMATION)
332
225
 
333
- #include "allocator.h"
334
- #include "version.h"
226
+ # include "version.h"
227
+
228
+ # if JSONCPP_USING_SECURE_MEMORY
229
+ # include "allocator.h" //typedef Allocator
230
+ # endif
335
231
 
336
232
  #endif // if !defined(JSON_IS_AMALGAMATION)
337
233
 
338
234
  namespace Passenger {
339
235
  namespace Json {
340
- using Int = int;
341
- using UInt = unsigned int;
236
+ typedef int Int;
237
+ typedef unsigned int UInt;
342
238
  #if defined(JSON_NO_INT64)
343
- using LargestInt = int;
344
- using LargestUInt = unsigned int;
239
+ typedef int LargestInt;
240
+ typedef unsigned int LargestUInt;
345
241
  #undef JSON_HAS_INT64
346
242
  #else // if defined(JSON_NO_INT64)
347
243
  // For Microsoft Visual use specific types as long long is not supported
348
244
  #if defined(_MSC_VER) // Microsoft Visual Studio
349
- using Int64 = __int64;
350
- using UInt64 = unsigned __int64;
245
+ typedef __int64 Int64;
246
+ typedef unsigned __int64 UInt64;
351
247
  #else // if defined(_MSC_VER) // Other platforms, use long long
352
- using Int64 = int64_t;
353
- using UInt64 = uint64_t;
354
- #endif // if defined(_MSC_VER)
355
- using LargestInt = Int64;
356
- using LargestUInt = UInt64;
248
+ typedef int64_t Int64;
249
+ typedef uint64_t UInt64;
250
+ #endif // if defined(_MSC_VER)
251
+ typedef Int64 LargestInt;
252
+ typedef UInt64 LargestUInt;
357
253
  #define JSON_HAS_INT64
358
254
  #endif // if defined(JSON_NO_INT64)
359
-
360
- template <typename T>
361
- using Allocator =
362
- typename std::conditional<JSONCPP_USING_SECURE_MEMORY, SecureAllocator<T>,
363
- std::allocator<T>>::type;
364
- using String = std::basic_string<char, std::char_traits<char>, Allocator<char>>;
365
- using IStringStream =
366
- std::basic_istringstream<String::value_type, String::traits_type,
367
- String::allocator_type>;
368
- using OStringStream =
369
- std::basic_ostringstream<String::value_type, String::traits_type,
370
- String::allocator_type>;
371
- using IStream = std::istream;
372
- using OStream = std::ostream;
373
- } // namespace Json
374
- } // namespace Passenger
375
-
376
- // Legacy names (formerly macros).
377
- using JSONCPP_STRING = Json::String;
378
- using JSONCPP_ISTRINGSTREAM = Json::IStringStream;
379
- using JSONCPP_OSTRINGSTREAM = Json::OStringStream;
380
- using JSONCPP_ISTREAM = Json::IStream;
381
- using JSONCPP_OSTREAM = Json::OStream;
255
+ #if JSONCPP_USING_SECURE_MEMORY
256
+ #define JSONCPP_STRING std::basic_string<char, std::char_traits<char>, Json::SecureAllocator<char> >
257
+ #define JSONCPP_OSTRINGSTREAM std::basic_ostringstream<char, std::char_traits<char>, Json::SecureAllocator<char> >
258
+ #define JSONCPP_OSTREAM std::basic_ostream<char, std::char_traits<char>>
259
+ #define JSONCPP_ISTRINGSTREAM std::basic_istringstream<char, std::char_traits<char>, Json::SecureAllocator<char> >
260
+ #define JSONCPP_ISTREAM std::istream
261
+ #else
262
+ #define JSONCPP_STRING std::string
263
+ #define JSONCPP_OSTRINGSTREAM std::ostringstream
264
+ #define JSONCPP_OSTREAM std::ostream
265
+ #define JSONCPP_ISTRINGSTREAM std::istringstream
266
+ #define JSONCPP_ISTREAM std::istream
267
+ #endif // if JSONCPP_USING_SECURE_MEMORY
268
+ } // end namespace Json
269
+ } // end namespace Passenger
382
270
 
383
271
  #endif // JSON_CONFIG_H_INCLUDED
384
272
 
@@ -395,7 +283,7 @@ using JSONCPP_OSTREAM = Json::OStream;
395
283
  // Beginning of content of file: include/json/forwards.h
396
284
  // //////////////////////////////////////////////////////////////////////
397
285
 
398
- // Copyright 2007-2010 Baptiste Lepilleur and The JsonCpp Authors
286
+ // Copyright 2007-2010 Baptiste Lepilleur
399
287
  // Distributed under MIT license, or public domain if desired and
400
288
  // recognized in your jurisdiction.
401
289
  // See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
@@ -411,23 +299,17 @@ namespace Passenger {
411
299
  namespace Json {
412
300
 
413
301
  // writer.h
414
- class StreamWriter;
415
- class StreamWriterBuilder;
416
- class Writer;
417
302
  class FastWriter;
418
303
  class StyledWriter;
419
- class StyledStreamWriter;
420
304
 
421
305
  // reader.h
422
306
  class Reader;
423
- class CharReader;
424
- class CharReaderBuilder;
425
307
 
426
- // json_features.h
308
+ // features.h
427
309
  class Features;
428
310
 
429
311
  // value.h
430
- using ArrayIndex = unsigned int;
312
+ typedef unsigned int ArrayIndex;
431
313
  class StaticString;
432
314
  class Path;
433
315
  class PathArgument;
@@ -449,4 +331,4 @@ class ValueConstIterator;
449
331
 
450
332
 
451
333
 
452
- #endif //ifndef JSON_FORWARD_AMALGAMATED_H_INCLUDED
334
+ #endif //ifndef JSON_FORWARD_AMALGATED_H_INCLUDED