passenger 6.0.15 → 6.0.16

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: 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