@contrast/agent 4.5.2 → 4.6.0

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.
Files changed (121) hide show
  1. package/lib/assess/policy/propagators.json +20 -0
  2. package/lib/assess/policy/signatures.json +10 -0
  3. package/lib/core/config/options.js +3 -2
  4. package/lib/core/stacktrace.js +2 -1
  5. package/lib/hooks/frameworks/base.js +8 -2
  6. package/lib/hooks/frameworks/http.js +23 -16
  7. package/lib/hooks/frameworks/http2.js +73 -0
  8. package/lib/hooks/frameworks/index.js +8 -3
  9. package/lib/hooks/http.js +112 -128
  10. package/lib/hooks/require.js +16 -22
  11. package/lib/instrumentation.js +0 -3
  12. package/package.json +12 -15
  13. package/lib/hooks/frameworks/https.js +0 -42
  14. package/node_modules/bindings/LICENSE.md +0 -22
  15. package/node_modules/bindings/README.md +0 -98
  16. package/node_modules/bindings/bindings.js +0 -221
  17. package/node_modules/bindings/package.json +0 -32
  18. package/node_modules/file-uri-to-path/.npmignore +0 -1
  19. package/node_modules/file-uri-to-path/.travis.yml +0 -30
  20. package/node_modules/file-uri-to-path/History.md +0 -21
  21. package/node_modules/file-uri-to-path/LICENSE +0 -20
  22. package/node_modules/file-uri-to-path/README.md +0 -74
  23. package/node_modules/file-uri-to-path/index.d.ts +0 -2
  24. package/node_modules/file-uri-to-path/index.js +0 -66
  25. package/node_modules/file-uri-to-path/package.json +0 -36
  26. package/node_modules/file-uri-to-path/test/test.js +0 -24
  27. package/node_modules/file-uri-to-path/test/tests.json +0 -13
  28. package/node_modules/glossy/LICENSE +0 -19
  29. package/node_modules/glossy/README.md +0 -129
  30. package/node_modules/glossy/index.js +0 -12
  31. package/node_modules/glossy/lib/glossy/parse.js +0 -520
  32. package/node_modules/glossy/lib/glossy/produce.js +0 -459
  33. package/node_modules/glossy/package.json +0 -47
  34. package/node_modules/glossy/test/decide.js +0 -7
  35. package/node_modules/glossy/test/decode_pri.js +0 -24
  36. package/node_modules/glossy/test/parse_3164.js +0 -104
  37. package/node_modules/glossy/test/parse_5424.js +0 -106
  38. package/node_modules/glossy/test/parse_5848.js +0 -40
  39. package/node_modules/glossy/test/parse_8601.js +0 -14
  40. package/node_modules/glossy/test/parse_rfc3339.js +0 -9
  41. package/node_modules/glossy/test/produce.js +0 -162
  42. package/node_modules/glossy/test/runner.js +0 -40
  43. package/node_modules/glossy/test/structure_data.js +0 -24
  44. package/node_modules/nan/CHANGELOG.md +0 -537
  45. package/node_modules/nan/LICENSE.md +0 -13
  46. package/node_modules/nan/README.md +0 -455
  47. package/node_modules/nan/doc/asyncworker.md +0 -146
  48. package/node_modules/nan/doc/buffers.md +0 -54
  49. package/node_modules/nan/doc/callback.md +0 -76
  50. package/node_modules/nan/doc/converters.md +0 -41
  51. package/node_modules/nan/doc/errors.md +0 -226
  52. package/node_modules/nan/doc/json.md +0 -62
  53. package/node_modules/nan/doc/maybe_types.md +0 -583
  54. package/node_modules/nan/doc/methods.md +0 -664
  55. package/node_modules/nan/doc/new.md +0 -147
  56. package/node_modules/nan/doc/node_misc.md +0 -123
  57. package/node_modules/nan/doc/object_wrappers.md +0 -263
  58. package/node_modules/nan/doc/persistent.md +0 -296
  59. package/node_modules/nan/doc/scopes.md +0 -73
  60. package/node_modules/nan/doc/script.md +0 -38
  61. package/node_modules/nan/doc/string_bytes.md +0 -62
  62. package/node_modules/nan/doc/v8_internals.md +0 -199
  63. package/node_modules/nan/doc/v8_misc.md +0 -85
  64. package/node_modules/nan/include_dirs.js +0 -1
  65. package/node_modules/nan/nan.h +0 -2898
  66. package/node_modules/nan/nan_callbacks.h +0 -88
  67. package/node_modules/nan/nan_callbacks_12_inl.h +0 -514
  68. package/node_modules/nan/nan_callbacks_pre_12_inl.h +0 -520
  69. package/node_modules/nan/nan_converters.h +0 -72
  70. package/node_modules/nan/nan_converters_43_inl.h +0 -68
  71. package/node_modules/nan/nan_converters_pre_43_inl.h +0 -42
  72. package/node_modules/nan/nan_define_own_property_helper.h +0 -29
  73. package/node_modules/nan/nan_implementation_12_inl.h +0 -430
  74. package/node_modules/nan/nan_implementation_pre_12_inl.h +0 -263
  75. package/node_modules/nan/nan_json.h +0 -166
  76. package/node_modules/nan/nan_maybe_43_inl.h +0 -356
  77. package/node_modules/nan/nan_maybe_pre_43_inl.h +0 -268
  78. package/node_modules/nan/nan_new.h +0 -340
  79. package/node_modules/nan/nan_object_wrap.h +0 -156
  80. package/node_modules/nan/nan_persistent_12_inl.h +0 -132
  81. package/node_modules/nan/nan_persistent_pre_12_inl.h +0 -242
  82. package/node_modules/nan/nan_private.h +0 -73
  83. package/node_modules/nan/nan_string_bytes.h +0 -305
  84. package/node_modules/nan/nan_typedarray_contents.h +0 -96
  85. package/node_modules/nan/nan_weak.h +0 -437
  86. package/node_modules/nan/package.json +0 -41
  87. package/node_modules/nan/tools/1to2.js +0 -412
  88. package/node_modules/nan/tools/README.md +0 -14
  89. package/node_modules/nan/tools/package.json +0 -19
  90. package/node_modules/unix-dgram/LICENSE +0 -13
  91. package/node_modules/unix-dgram/README.md +0 -107
  92. package/node_modules/unix-dgram/binding.gyp +0 -20
  93. package/node_modules/unix-dgram/build/Makefile +0 -324
  94. package/node_modules/unix-dgram/build/Release/.deps/Release/obj.target/unix_dgram/src/unix_dgram.o.d +0 -58
  95. package/node_modules/unix-dgram/build/Release/.deps/Release/obj.target/unix_dgram.node.d +0 -1
  96. package/node_modules/unix-dgram/build/Release/.deps/Release/unix_dgram.node.d +0 -1
  97. package/node_modules/unix-dgram/build/Release/obj.target/unix_dgram/src/unix_dgram.o +0 -0
  98. package/node_modules/unix-dgram/build/Release/obj.target/unix_dgram.node +0 -0
  99. package/node_modules/unix-dgram/build/Release/unix_dgram.node +0 -0
  100. package/node_modules/unix-dgram/build/binding.Makefile +0 -6
  101. package/node_modules/unix-dgram/build/config.gypi +0 -213
  102. package/node_modules/unix-dgram/build/unix_dgram.target.mk +0 -159
  103. package/node_modules/unix-dgram/lib/unix_dgram.js +0 -168
  104. package/node_modules/unix-dgram/package.json +0 -36
  105. package/node_modules/unix-dgram/src/unix_dgram.cc +0 -404
  106. package/node_modules/unix-dgram/src/win_dummy.cc +0 -7
  107. package/node_modules/unix-dgram/test/test-connect-callback.js +0 -68
  108. package/node_modules/unix-dgram/test/test-connect.js +0 -53
  109. package/node_modules/unix-dgram/test/test-dgram-unix.js +0 -58
  110. package/node_modules/unix-dgram/test/test-send-error.js +0 -26
  111. package/node_modules/winston-syslog/.eslintrc +0 -7
  112. package/node_modules/winston-syslog/.travis.yml +0 -14
  113. package/node_modules/winston-syslog/CHANGELOG.md +0 -9
  114. package/node_modules/winston-syslog/LICENSE +0 -20
  115. package/node_modules/winston-syslog/README.md +0 -135
  116. package/node_modules/winston-syslog/lib/utils.js +0 -26
  117. package/node_modules/winston-syslog/lib/winston-syslog.js +0 -385
  118. package/node_modules/winston-syslog/package.json +0 -56
  119. package/node_modules/winston-syslog/test/format-test.js +0 -122
  120. package/node_modules/winston-syslog/test/syslog-test.js +0 -95
  121. package/node_modules/winston-syslog/test/unix-connect-test.js +0 -133
@@ -1,412 +0,0 @@
1
- #!/usr/bin/env node
2
- /*********************************************************************
3
- * NAN - Native Abstractions for Node.js
4
- *
5
- * Copyright (c) 2018 NAN contributors
6
- *
7
- * MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
8
- ********************************************************************/
9
-
10
- var commander = require('commander'),
11
- fs = require('fs'),
12
- glob = require('glob'),
13
- groups = [],
14
- total = 0,
15
- warning1 = '/* ERROR: Rewrite using Buffer */\n',
16
- warning2 = '\\/\\* ERROR\\: Rewrite using Buffer \\*\\/\\n',
17
- length,
18
- i;
19
-
20
- fs.readFile(__dirname + '/package.json', 'utf8', function (err, data) {
21
- if (err) {
22
- throw err;
23
- }
24
-
25
- commander
26
- .version(JSON.parse(data).version)
27
- .usage('[options] <file ...>')
28
- .parse(process.argv);
29
-
30
- if (!process.argv.slice(2).length) {
31
- commander.outputHelp();
32
- }
33
- });
34
-
35
- /* construct strings representing regular expressions
36
- each expression contains a unique group allowing for identification of the match
37
- the index of this key group, relative to the regular expression in question,
38
- is indicated by the first array member */
39
-
40
- /* simple substistutions, key group is the entire match, 0 */
41
- groups.push([0, [
42
- '_NAN_',
43
- 'NODE_SET_METHOD',
44
- 'NODE_SET_PROTOTYPE_METHOD',
45
- 'NanAsciiString',
46
- 'NanEscapeScope',
47
- 'NanReturnValue',
48
- 'NanUcs2String'].join('|')]);
49
-
50
- /* substitutions of parameterless macros, key group is 1 */
51
- groups.push([1, ['(', [
52
- 'NanEscapableScope',
53
- 'NanReturnNull',
54
- 'NanReturnUndefined',
55
- 'NanScope'].join('|'), ')\\(\\)'].join('')]);
56
-
57
- /* replace TryCatch with NanTryCatch once, gobbling possible namespace, key group 2 */
58
- groups.push([2, '(?:(?:v8\\:\\:)?|(Nan)?)(TryCatch)']);
59
-
60
- /* NanNew("string") will likely not fail a ToLocalChecked(), key group 1 */
61
- groups.push([1, ['(NanNew)', '(\\("[^\\"]*"[^\\)]*\\))(?!\\.ToLocalChecked\\(\\))'].join('')]);
62
-
63
- /* Removed v8 APIs, warn that the code needs rewriting using node::Buffer, key group 2 */
64
- groups.push([2, ['(', warning2, ')?', '^.*?(', [
65
- 'GetIndexedPropertiesExternalArrayDataLength',
66
- 'GetIndexedPropertiesExternalArrayData',
67
- 'GetIndexedPropertiesExternalArrayDataType',
68
- 'GetIndexedPropertiesPixelData',
69
- 'GetIndexedPropertiesPixelDataLength',
70
- 'HasIndexedPropertiesInExternalArrayData',
71
- 'HasIndexedPropertiesInPixelData',
72
- 'SetIndexedPropertiesToExternalArrayData',
73
- 'SetIndexedPropertiesToPixelData'].join('|'), ')'].join('')]);
74
-
75
- /* No need for NanScope in V8-exposed methods, key group 2 */
76
- groups.push([2, ['((', [
77
- 'NAN_METHOD',
78
- 'NAN_GETTER',
79
- 'NAN_SETTER',
80
- 'NAN_PROPERTY_GETTER',
81
- 'NAN_PROPERTY_SETTER',
82
- 'NAN_PROPERTY_ENUMERATOR',
83
- 'NAN_PROPERTY_DELETER',
84
- 'NAN_PROPERTY_QUERY',
85
- 'NAN_INDEX_GETTER',
86
- 'NAN_INDEX_SETTER',
87
- 'NAN_INDEX_ENUMERATOR',
88
- 'NAN_INDEX_DELETER',
89
- 'NAN_INDEX_QUERY'].join('|'), ')\\([^\\)]*\\)\\s*\\{)\\s*NanScope\\(\\)\\s*;'].join('')]);
90
-
91
- /* v8::Value::ToXXXXXXX returns v8::MaybeLocal<T>, key group 3 */
92
- groups.push([3, ['([\\s\\(\\)])([^\\s\\(\\)]+)->(', [
93
- 'Boolean',
94
- 'Number',
95
- 'String',
96
- 'Object',
97
- 'Integer',
98
- 'Uint32',
99
- 'Int32'].join('|'), ')\\('].join('')]);
100
-
101
- /* v8::Value::XXXXXXXValue returns v8::Maybe<T>, key group 3 */
102
- groups.push([3, ['([\\s\\(\\)])([^\\s\\(\\)]+)->((?:', [
103
- 'Boolean',
104
- 'Number',
105
- 'Integer',
106
- 'Uint32',
107
- 'Int32'].join('|'), ')Value)\\('].join('')]);
108
-
109
- /* NAN_WEAK_CALLBACK macro was removed, write out callback definition, key group 1 */
110
- groups.push([1, '(NAN_WEAK_CALLBACK)\\(([^\\s\\)]+)\\)']);
111
-
112
- /* node::ObjectWrap and v8::Persistent have been replaced with Nan implementations, key group 1 */
113
- groups.push([1, ['(', [
114
- 'NanDisposePersistent',
115
- 'NanObjectWrapHandle'].join('|'), ')\\s*\\(\\s*([^\\s\\)]+)'].join('')]);
116
-
117
- /* Since NanPersistent there is no need for NanMakeWeakPersistent, key group 1 */
118
- groups.push([1, '(NanMakeWeakPersistent)\\s*\\(\\s*([^\\s,]+)\\s*,\\s*']);
119
-
120
- /* Many methods of v8::Object and others now return v8::MaybeLocal<T>, key group 3 */
121
- groups.push([3, ['([\\s])([^\\s]+)->(', [
122
- 'GetEndColumn',
123
- 'GetFunction',
124
- 'GetLineNumber',
125
- 'NewInstance',
126
- 'GetPropertyNames',
127
- 'GetOwnPropertyNames',
128
- 'GetSourceLine',
129
- 'GetStartColumn',
130
- 'ObjectProtoToString',
131
- 'ToArrayIndex',
132
- 'ToDetailString',
133
- 'CallAsConstructor',
134
- 'CallAsFunction',
135
- 'CloneElementAt',
136
- 'Delete',
137
- 'ForceSet',
138
- 'Get',
139
- 'GetPropertyAttributes',
140
- 'GetRealNamedProperty',
141
- 'GetRealNamedPropertyInPrototypeChain',
142
- 'Has',
143
- 'HasOwnProperty',
144
- 'HasRealIndexedProperty',
145
- 'HasRealNamedCallbackProperty',
146
- 'HasRealNamedProperty',
147
- 'Set',
148
- 'SetAccessor',
149
- 'SetIndexedPropertyHandler',
150
- 'SetNamedPropertyHandler',
151
- 'SetPrototype'].join('|'), ')\\('].join('')]);
152
-
153
- /* You should get an error if any of these fail anyways,
154
- or handle the error better, it is indicated either way, key group 2 */
155
- groups.push([2, ['NanNew(<(?:v8\\:\\:)?(', ['Date', 'String', 'RegExp'].join('|'), ')>)(\\([^\\)]*\\))(?!\\.ToLocalChecked\\(\\))'].join('')]);
156
-
157
- /* v8::Value::Equals now returns a v8::Maybe, key group 3 */
158
- groups.push([3, '([\\s\\(\\)])([^\\s\\(\\)]+)->(Equals)\\(([^\\s\\)]+)']);
159
-
160
- /* NanPersistent makes this unnecessary, key group 1 */
161
- groups.push([1, '(NanAssignPersistent)(?:<v8\\:\\:[^>]+>)?\\(([^,]+),\\s*']);
162
-
163
- /* args has been renamed to info, key group 2 */
164
- groups.push([2, '(\\W)(args)(\\W)'])
165
-
166
- /* node::ObjectWrap was replaced with NanObjectWrap, key group 2 */
167
- groups.push([2, '(\\W)(?:node\\:\\:)?(ObjectWrap)(\\W)']);
168
-
169
- /* v8::Persistent was replaced with NanPersistent, key group 2 */
170
- groups.push([2, '(\\W)(?:v8\\:\\:)?(Persistent)(\\W)']);
171
-
172
- /* counts the number of capturing groups in a well-formed regular expression,
173
- ignoring non-capturing groups and escaped parentheses */
174
- function groupcount(s) {
175
- var positive = s.match(/\((?!\?)/g),
176
- negative = s.match(/\\\(/g);
177
- return (positive ? positive.length : 0) - (negative ? negative.length : 0);
178
- }
179
-
180
- /* compute the absolute position of each key group in the joined master RegExp */
181
- for (i = 1, length = groups.length; i < length; i++) {
182
- total += groupcount(groups[i - 1][1]);
183
- groups[i][0] += total;
184
- }
185
-
186
- /* create the master RegExp, whis is the union of all the groups' expressions */
187
- master = new RegExp(groups.map(function (a) { return a[1]; }).join('|'), 'gm');
188
-
189
- /* replacement function for String.replace, receives 21 arguments */
190
- function replace() {
191
- /* simple expressions */
192
- switch (arguments[groups[0][0]]) {
193
- case '_NAN_':
194
- return 'NAN_';
195
- case 'NODE_SET_METHOD':
196
- return 'NanSetMethod';
197
- case 'NODE_SET_PROTOTYPE_METHOD':
198
- return 'NanSetPrototypeMethod';
199
- case 'NanAsciiString':
200
- return 'NanUtf8String';
201
- case 'NanEscapeScope':
202
- return 'scope.Escape';
203
- case 'NanReturnNull':
204
- return 'info.GetReturnValue().SetNull';
205
- case 'NanReturnValue':
206
- return 'info.GetReturnValue().Set';
207
- case 'NanUcs2String':
208
- return 'v8::String::Value';
209
- default:
210
- }
211
-
212
- /* macros without arguments */
213
- switch (arguments[groups[1][0]]) {
214
- case 'NanEscapableScope':
215
- return 'NanEscapableScope scope'
216
- case 'NanReturnUndefined':
217
- return 'return';
218
- case 'NanScope':
219
- return 'NanScope scope';
220
- default:
221
- }
222
-
223
- /* TryCatch, emulate negative backref */
224
- if (arguments[groups[2][0]] === 'TryCatch') {
225
- return arguments[groups[2][0] - 1] ? arguments[0] : 'NanTryCatch';
226
- }
227
-
228
- /* NanNew("foo") --> NanNew("foo").ToLocalChecked() */
229
- if (arguments[groups[3][0]] === 'NanNew') {
230
- return [arguments[0], '.ToLocalChecked()'].join('');
231
- }
232
-
233
- /* insert warning for removed functions as comment on new line above */
234
- switch (arguments[groups[4][0]]) {
235
- case 'GetIndexedPropertiesExternalArrayData':
236
- case 'GetIndexedPropertiesExternalArrayDataLength':
237
- case 'GetIndexedPropertiesExternalArrayDataType':
238
- case 'GetIndexedPropertiesPixelData':
239
- case 'GetIndexedPropertiesPixelDataLength':
240
- case 'HasIndexedPropertiesInExternalArrayData':
241
- case 'HasIndexedPropertiesInPixelData':
242
- case 'SetIndexedPropertiesToExternalArrayData':
243
- case 'SetIndexedPropertiesToPixelData':
244
- return arguments[groups[4][0] - 1] ? arguments[0] : [warning1, arguments[0]].join('');
245
- default:
246
- }
247
-
248
- /* remove unnecessary NanScope() */
249
- switch (arguments[groups[5][0]]) {
250
- case 'NAN_GETTER':
251
- case 'NAN_METHOD':
252
- case 'NAN_SETTER':
253
- case 'NAN_INDEX_DELETER':
254
- case 'NAN_INDEX_ENUMERATOR':
255
- case 'NAN_INDEX_GETTER':
256
- case 'NAN_INDEX_QUERY':
257
- case 'NAN_INDEX_SETTER':
258
- case 'NAN_PROPERTY_DELETER':
259
- case 'NAN_PROPERTY_ENUMERATOR':
260
- case 'NAN_PROPERTY_GETTER':
261
- case 'NAN_PROPERTY_QUERY':
262
- case 'NAN_PROPERTY_SETTER':
263
- return arguments[groups[5][0] - 1];
264
- default:
265
- }
266
-
267
- /* Value conversion */
268
- switch (arguments[groups[6][0]]) {
269
- case 'Boolean':
270
- case 'Int32':
271
- case 'Integer':
272
- case 'Number':
273
- case 'Object':
274
- case 'String':
275
- case 'Uint32':
276
- return [arguments[groups[6][0] - 2], 'NanTo<v8::', arguments[groups[6][0]], '>(', arguments[groups[6][0] - 1]].join('');
277
- default:
278
- }
279
-
280
- /* other value conversion */
281
- switch (arguments[groups[7][0]]) {
282
- case 'BooleanValue':
283
- return [arguments[groups[7][0] - 2], 'NanTo<bool>(', arguments[groups[7][0] - 1]].join('');
284
- case 'Int32Value':
285
- return [arguments[groups[7][0] - 2], 'NanTo<int32_t>(', arguments[groups[7][0] - 1]].join('');
286
- case 'IntegerValue':
287
- return [arguments[groups[7][0] - 2], 'NanTo<int64_t>(', arguments[groups[7][0] - 1]].join('');
288
- case 'Uint32Value':
289
- return [arguments[groups[7][0] - 2], 'NanTo<uint32_t>(', arguments[groups[7][0] - 1]].join('');
290
- default:
291
- }
292
-
293
- /* NAN_WEAK_CALLBACK */
294
- if (arguments[groups[8][0]] === 'NAN_WEAK_CALLBACK') {
295
- return ['template<typename T>\nvoid ',
296
- arguments[groups[8][0] + 1], '(const NanWeakCallbackInfo<T> &data)'].join('');
297
- }
298
-
299
- /* use methods on NAN classes instead */
300
- switch (arguments[groups[9][0]]) {
301
- case 'NanDisposePersistent':
302
- return [arguments[groups[9][0] + 1], '.Reset('].join('');
303
- case 'NanObjectWrapHandle':
304
- return [arguments[groups[9][0] + 1], '->handle('].join('');
305
- default:
306
- }
307
-
308
- /* use method on NanPersistent instead */
309
- if (arguments[groups[10][0]] === 'NanMakeWeakPersistent') {
310
- return arguments[groups[10][0] + 1] + '.SetWeak(';
311
- }
312
-
313
- /* These return Maybes, the upper ones take no arguments */
314
- switch (arguments[groups[11][0]]) {
315
- case 'GetEndColumn':
316
- case 'GetFunction':
317
- case 'GetLineNumber':
318
- case 'GetOwnPropertyNames':
319
- case 'GetPropertyNames':
320
- case 'GetSourceLine':
321
- case 'GetStartColumn':
322
- case 'NewInstance':
323
- case 'ObjectProtoToString':
324
- case 'ToArrayIndex':
325
- case 'ToDetailString':
326
- return [arguments[groups[11][0] - 2], 'Nan', arguments[groups[11][0]], '(', arguments[groups[11][0] - 1]].join('');
327
- case 'CallAsConstructor':
328
- case 'CallAsFunction':
329
- case 'CloneElementAt':
330
- case 'Delete':
331
- case 'ForceSet':
332
- case 'Get':
333
- case 'GetPropertyAttributes':
334
- case 'GetRealNamedProperty':
335
- case 'GetRealNamedPropertyInPrototypeChain':
336
- case 'Has':
337
- case 'HasOwnProperty':
338
- case 'HasRealIndexedProperty':
339
- case 'HasRealNamedCallbackProperty':
340
- case 'HasRealNamedProperty':
341
- case 'Set':
342
- case 'SetAccessor':
343
- case 'SetIndexedPropertyHandler':
344
- case 'SetNamedPropertyHandler':
345
- case 'SetPrototype':
346
- return [arguments[groups[11][0] - 2], 'Nan', arguments[groups[11][0]], '(', arguments[groups[11][0] - 1], ', '].join('');
347
- default:
348
- }
349
-
350
- /* Automatic ToLocalChecked(), take it or leave it */
351
- switch (arguments[groups[12][0]]) {
352
- case 'Date':
353
- case 'String':
354
- case 'RegExp':
355
- return ['NanNew', arguments[groups[12][0] - 1], arguments[groups[12][0] + 1], '.ToLocalChecked()'].join('');
356
- default:
357
- }
358
-
359
- /* NanEquals is now required for uniformity */
360
- if (arguments[groups[13][0]] === 'Equals') {
361
- return [arguments[groups[13][0] - 1], 'NanEquals(', arguments[groups[13][0] - 1], ', ', arguments[groups[13][0] + 1]].join('');
362
- }
363
-
364
- /* use method on replacement class instead */
365
- if (arguments[groups[14][0]] === 'NanAssignPersistent') {
366
- return [arguments[groups[14][0] + 1], '.Reset('].join('');
367
- }
368
-
369
- /* args --> info */
370
- if (arguments[groups[15][0]] === 'args') {
371
- return [arguments[groups[15][0] - 1], 'info', arguments[groups[15][0] + 1]].join('');
372
- }
373
-
374
- /* ObjectWrap --> NanObjectWrap */
375
- if (arguments[groups[16][0]] === 'ObjectWrap') {
376
- return [arguments[groups[16][0] - 1], 'NanObjectWrap', arguments[groups[16][0] + 1]].join('');
377
- }
378
-
379
- /* Persistent --> NanPersistent */
380
- if (arguments[groups[17][0]] === 'Persistent') {
381
- return [arguments[groups[17][0] - 1], 'NanPersistent', arguments[groups[17][0] + 1]].join('');
382
- }
383
-
384
- /* This should not happen. A switch is probably missing a case if it does. */
385
- throw 'Unhandled match: ' + arguments[0];
386
- }
387
-
388
- /* reads a file, runs replacement and writes it back */
389
- function processFile(file) {
390
- fs.readFile(file, {encoding: 'utf8'}, function (err, data) {
391
- if (err) {
392
- throw err;
393
- }
394
-
395
- /* run replacement twice, might need more runs */
396
- fs.writeFile(file, data.replace(master, replace).replace(master, replace), function (err) {
397
- if (err) {
398
- throw err;
399
- }
400
- });
401
- });
402
- }
403
-
404
- /* process file names from command line and process the identified files */
405
- for (i = 2, length = process.argv.length; i < length; i++) {
406
- glob(process.argv[i], function (err, matches) {
407
- if (err) {
408
- throw err;
409
- }
410
- matches.forEach(processFile);
411
- });
412
- }
@@ -1,14 +0,0 @@
1
- 1to2 naively converts source code files from NAN 1 to NAN 2. There will be erroneous conversions,
2
- false positives and missed opportunities. The input files are rewritten in place. Make sure that
3
- you have backups. You will have to manually review the changes afterwards and do some touchups.
4
-
5
- ```sh
6
- $ tools/1to2.js
7
-
8
- Usage: 1to2 [options] <file ...>
9
-
10
- Options:
11
-
12
- -h, --help output usage information
13
- -V, --version output the version number
14
- ```
@@ -1,19 +0,0 @@
1
- {
2
- "name": "1to2",
3
- "version": "1.0.0",
4
- "description": "NAN 1 -> 2 Migration Script",
5
- "main": "1to2.js",
6
- "repository": {
7
- "type": "git",
8
- "url": "git://github.com/nodejs/nan.git"
9
- },
10
- "contributors": [
11
- "Benjamin Byholm <bbyholm@abo.fi> (https://github.com/kkoopa/)",
12
- "Mathias Küsel (https://github.com/mathiask88/)"
13
- ],
14
- "dependencies": {
15
- "glob": "~5.0.10",
16
- "commander": "~2.8.1"
17
- },
18
- "license": "MIT"
19
- }
@@ -1,13 +0,0 @@
1
- Copyright (c) 2011, Ben Noordhuis <info@bnoordhuis.nl>
2
-
3
- Permission to use, copy, modify, and/or distribute this software for any
4
- purpose with or without fee is hereby granted, provided that the above
5
- copyright notice and this permission notice appear in all copies.
6
-
7
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
10
- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
12
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
13
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
@@ -1,107 +0,0 @@
1
- # node-unix-dgram
2
-
3
- Communicate over UNIX datagram sockets.
4
-
5
- ## Usage
6
-
7
- Server:
8
-
9
- // One-shot server. Note that the server cannot send a reply;
10
- // UNIX datagram sockets are unconnected and the client is not addressable.
11
- var unix = require('unix-dgram');
12
- var server = unix.createSocket('unix_dgram', function(buf) {
13
- console.log('received ' + buf);
14
- server.close();
15
- });
16
- server.bind('/path/to/socket');
17
-
18
- Client:
19
-
20
- // Send a single message to the server.
21
- var message = Buffer('ping');
22
- var client = unix.createSocket('unix_dgram');
23
- client.on('error', console.error);
24
- client.send(message, 0, message.length, '/path/to/socket');
25
- client.close();
26
-
27
-
28
- ## API
29
-
30
- Caveat emptor: events and callbacks are synchronous for efficiency reasons.
31
-
32
- ### unix.createSocket(type, [listener])
33
-
34
- Returns a new unix.Socket object. `type` should be `'unix_dgram'`.
35
- Throws an exception if the `socket(2)` system call fails.
36
-
37
- The optional `listener` argument is added as a listener for the `'message'`
38
- event. The event listener receives the message as a `Buffer` object as its
39
- first argument.
40
-
41
- ### socket.bind(path)
42
-
43
- Create a server at `path`. Emits a `'listening'` event on success or
44
- an `'error'` event if the `bind(2)` system call fails.
45
-
46
- ### socket.connect(remote_path)
47
-
48
- Associate a socket with a remote path so you can send a message without setting
49
- the remote path. Once the socket is **connected** it emits a `'connect'` event.
50
- It also allows to perform some kind of congestion control as it emits a
51
- `'congestion'` event when the receiving buffer is full, and a `'writable'` event
52
- when it stops being full.
53
-
54
- ### socket.send(buf, [callback])
55
-
56
- Only to be used with **connected** sockets. It sends a message to the remote
57
- path associated with the socket
58
-
59
- Example:
60
-
61
- var unix = require('unix-dgram');
62
-
63
- var client = unix.createSocket('unix_dgram');
64
-
65
- client.on('error', function(err) {
66
- console.error(err);
67
- });
68
-
69
- client.on('connect', function() {
70
- console.log('connected');
71
- client.on('congestion', function() {
72
- console.log('congestion');
73
- /* The server is not accepting data */
74
- });
75
-
76
- client.on('writable', function() {
77
- console.log('writable');
78
- /* The server can accept data */
79
- });
80
-
81
- var message = new Buffer('PING');
82
- client.send(message);
83
- });
84
-
85
- client.connect('/tmp/server');
86
-
87
-
88
- ### socket.send_to(buf, offset, length, path, [callback]);
89
-
90
- Send a message to the server listening at `path`.
91
-
92
- `buf` is a `Buffer` object containing the message to send, `offset` is
93
- the offset into the buffer and `length` is the length of the message.
94
-
95
- For backwards compatibility, you can still use the `socket.send` function with
96
- this same signature.
97
-
98
- Example:
99
-
100
- var buf = new Buffer('foobarbaz');
101
- socket.send(buf, 3, 4, '/path/to/socket'); // Sends 'barb'.
102
-
103
- ### socket.close()
104
-
105
- Close the socket. If the socket was bound to a path with `socket.bind()`,
106
- then you will no longer receive new messages. The file system entity
107
- (the socket file) is not automatically unlinked.
@@ -1,20 +0,0 @@
1
- {
2
- 'conditions': [
3
- [ 'OS!="win"', {
4
- 'targets': [ {
5
- 'target_name': 'unix_dgram',
6
- 'sources': [ 'src/unix_dgram.cc' ],
7
- 'include_dirs': [
8
- '<!(node -e "require(\'nan\')")'
9
- ]
10
- } ]
11
- }
12
- ],
13
- [ 'OS=="win"', {
14
- 'targets': [ {
15
- 'target_name': 'unix_dgram',
16
- 'sources': [ 'src/win_dummy.cc' ],
17
- } ]
18
- } ]
19
- ]
20
- }