@appzung/react-native-code-push 5.7.1 → 6.4.2

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 (114) hide show
  1. package/CONTRIBUTING.md +17 -19
  2. package/CodePush.js +11 -4
  3. package/CodePush.podspec +3 -3
  4. package/README.md +93 -37
  5. package/android/app/src/main/java/com/microsoft/codepush/react/CodePush.java +44 -7
  6. package/android/app/src/main/java/com/microsoft/codepush/react/CodePushInvalidPublicKeyException.java +0 -0
  7. package/android/app/src/main/java/com/microsoft/codepush/react/CodePushNativeModule.java +77 -22
  8. package/android/app/src/main/java/com/microsoft/codepush/react/CodePushUpdateManager.java +14 -0
  9. package/android/app/src/main/java/com/microsoft/codepush/react/FileUtils.java +15 -1
  10. package/android/app/src/main/java/com/microsoft/codepush/react/TLSSocketFactory.java +72 -0
  11. package/android/codepush.gradle +1 -1
  12. package/docs/api-android.md +21 -3
  13. package/docs/api-js.md +3 -3
  14. package/docs/multi-deployment-testing-android.md +63 -22
  15. package/docs/multi-deployment-testing-ios.md +17 -11
  16. package/docs/setup-android.md +79 -19
  17. package/docs/setup-ios.md +57 -7
  18. package/docs/setup-windows.md +1 -1
  19. package/ios/CodePush/Base64/Base64/MF_Base64Additions.m +0 -0
  20. package/ios/CodePush/CodePush.m +104 -24
  21. package/ios/CodePush/JWT/Core/Algorithms/Base/JWTAlgorithm.h +0 -0
  22. package/ios/CodePush/JWT/Core/Algorithms/Base/JWTAlgorithmFactory.h +0 -0
  23. package/ios/CodePush/JWT/Core/Algorithms/Base/JWTAlgorithmFactory.m +0 -0
  24. package/ios/CodePush/JWT/Core/Algorithms/Base/JWTAlgorithmNone.h +0 -0
  25. package/ios/CodePush/JWT/Core/Algorithms/Base/JWTAlgorithmNone.m +0 -0
  26. package/ios/CodePush/JWT/Core/Algorithms/ESFamily/JWTAlgorithmESBase.h +0 -0
  27. package/ios/CodePush/JWT/Core/Algorithms/ESFamily/JWTAlgorithmESBase.m +0 -0
  28. package/ios/CodePush/JWT/Core/Algorithms/HSFamily/JWTAlgorithmHSBase.h +0 -0
  29. package/ios/CodePush/JWT/Core/Algorithms/HSFamily/JWTAlgorithmHSBase.m +0 -0
  30. package/ios/CodePush/JWT/Core/Algorithms/Holders/JWTAlgorithmDataHolder.h +0 -0
  31. package/ios/CodePush/JWT/Core/Algorithms/Holders/JWTAlgorithmDataHolder.m +0 -0
  32. package/ios/CodePush/JWT/Core/Algorithms/Holders/JWTAlgorithmDataHolderChain.h +0 -0
  33. package/ios/CodePush/JWT/Core/Algorithms/Holders/JWTAlgorithmDataHolderChain.m +0 -0
  34. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/JWTAlgorithmRSBase.h +0 -0
  35. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/JWTAlgorithmRSBase.m +0 -0
  36. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/JWTRSAlgorithm.h +0 -0
  37. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/RSKeys/JWTCryptoKey.h +0 -0
  38. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/RSKeys/JWTCryptoKey.m +0 -0
  39. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/RSKeys/JWTCryptoKeyExtractor.h +0 -0
  40. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/RSKeys/JWTCryptoKeyExtractor.m +0 -0
  41. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/RSKeys/JWTCryptoSecurity.h +0 -0
  42. package/ios/CodePush/JWT/Core/Algorithms/RSFamily/RSKeys/JWTCryptoSecurity.m +0 -0
  43. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaim.h +0 -0
  44. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaim.m +0 -0
  45. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaimsSet.h +0 -0
  46. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaimsSet.m +0 -0
  47. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaimsSetSerializer.h +0 -0
  48. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaimsSetSerializer.m +0 -0
  49. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaimsSetVerifier.h +0 -0
  50. package/ios/CodePush/JWT/Core/ClaimSet/JWTClaimsSetVerifier.m +0 -0
  51. package/ios/CodePush/JWT/Core/Coding/JWTCoding+ResultTypes.h +0 -0
  52. package/ios/CodePush/JWT/Core/Coding/JWTCoding+ResultTypes.m +0 -0
  53. package/ios/CodePush/JWT/Core/Coding/JWTCoding+VersionOne.h +0 -0
  54. package/ios/CodePush/JWT/Core/Coding/JWTCoding+VersionOne.m +0 -0
  55. package/ios/CodePush/JWT/Core/Coding/JWTCoding+VersionThree.h +0 -0
  56. package/ios/CodePush/JWT/Core/Coding/JWTCoding+VersionThree.m +0 -0
  57. package/ios/CodePush/JWT/Core/Coding/JWTCoding+VersionTwo.h +0 -0
  58. package/ios/CodePush/JWT/Core/Coding/JWTCoding+VersionTwo.m +0 -0
  59. package/ios/CodePush/JWT/Core/Coding/JWTCoding.h +0 -0
  60. package/ios/CodePush/JWT/Core/Coding/JWTCoding.m +0 -0
  61. package/ios/CodePush/JWT/Core/FrameworkSupplement/JWT.h +0 -0
  62. package/ios/CodePush/JWT/Core/FrameworkSupplement/Map.modulemap +0 -0
  63. package/ios/CodePush/JWT/Core/Supplement/JWTBase64Coder.h +0 -0
  64. package/ios/CodePush/JWT/Core/Supplement/JWTBase64Coder.m +0 -0
  65. package/ios/CodePush/JWT/Core/Supplement/JWTDeprecations.h +0 -0
  66. package/ios/CodePush/JWT/Core/Supplement/JWTErrorDescription.h +0 -0
  67. package/ios/CodePush/JWT/Core/Supplement/JWTErrorDescription.m +0 -0
  68. package/ios/CodePush/SSZipArchive/Common.h +0 -0
  69. package/ios/CodePush/SSZipArchive/SSZipArchive.h +0 -0
  70. package/ios/CodePush/SSZipArchive/SSZipArchive.m +0 -0
  71. package/ios/CodePush/SSZipArchive/aes/aes.h +0 -0
  72. package/ios/CodePush/SSZipArchive/aes/aes_via_ace.h +0 -0
  73. package/ios/CodePush/SSZipArchive/aes/aescrypt.c +0 -0
  74. package/ios/CodePush/SSZipArchive/aes/aeskey.c +0 -0
  75. package/ios/CodePush/SSZipArchive/aes/aesopt.h +0 -0
  76. package/ios/CodePush/SSZipArchive/aes/aestab.c +0 -0
  77. package/ios/CodePush/SSZipArchive/aes/aestab.h +0 -0
  78. package/ios/CodePush/SSZipArchive/aes/brg_endian.h +0 -0
  79. package/ios/CodePush/SSZipArchive/aes/brg_types.h +0 -0
  80. package/ios/CodePush/SSZipArchive/aes/entropy.c +0 -0
  81. package/ios/CodePush/SSZipArchive/aes/entropy.h +0 -0
  82. package/ios/CodePush/SSZipArchive/aes/fileenc.c +0 -0
  83. package/ios/CodePush/SSZipArchive/aes/fileenc.h +0 -0
  84. package/ios/CodePush/SSZipArchive/aes/hmac.c +0 -0
  85. package/ios/CodePush/SSZipArchive/aes/hmac.h +0 -0
  86. package/ios/CodePush/SSZipArchive/aes/prng.c +0 -0
  87. package/ios/CodePush/SSZipArchive/aes/prng.h +0 -0
  88. package/ios/CodePush/SSZipArchive/aes/pwd2key.c +0 -0
  89. package/ios/CodePush/SSZipArchive/aes/pwd2key.h +0 -0
  90. package/ios/CodePush/SSZipArchive/aes/sha1.c +0 -0
  91. package/ios/CodePush/SSZipArchive/aes/sha1.h +0 -0
  92. package/ios/CodePush/SSZipArchive/minizip/crypt.h +0 -0
  93. package/ios/CodePush/SSZipArchive/minizip/ioapi.c +0 -0
  94. package/ios/CodePush/SSZipArchive/minizip/ioapi.h +0 -0
  95. package/ios/CodePush/SSZipArchive/minizip/mztools.c +0 -0
  96. package/ios/CodePush/SSZipArchive/minizip/mztools.h +0 -0
  97. package/ios/CodePush/SSZipArchive/minizip/unzip.c +0 -0
  98. package/ios/CodePush/SSZipArchive/minizip/unzip.h +0 -0
  99. package/ios/CodePush/SSZipArchive/minizip/zip.c +0 -0
  100. package/ios/CodePush/SSZipArchive/minizip/zip.h +0 -0
  101. package/package-mixins.js +2 -3
  102. package/package.json +36 -13
  103. package/react-native.config.js +10 -0
  104. package/request-fetch-adapter.js +1 -1
  105. package/scripts/generateBundledResourcesHash.js +1 -1
  106. package/scripts/postlink/android/postlink.js +2 -2
  107. package/scripts/postunlink/android/postunlink.js +3 -3
  108. package/scripts/tools/linkToolsAndroid.js +1 -1
  109. package/scripts/tools/linkToolsIos.js +2 -2
  110. package/tsconfig.json +14 -0
  111. package/tslint.json +32 -0
  112. package/typings/react-native-code-push.d.ts +14 -5
  113. package/RestartManager.js +0 -59
  114. package/gulpfile.js +0 -302
package/gulpfile.js DELETED
@@ -1,302 +0,0 @@
1
- var del = require("del");
2
- var gulp = require("gulp");
3
- var path = require("path");
4
- var child_process = require("child_process");
5
- var Q = require("q");
6
- var runSequence = require("run-sequence");
7
-
8
- var testPath = "./test";
9
- var binPath = "./bin";
10
- var tsFiles = "/**/*.ts";
11
-
12
- var iOSSimulatorProcessName = "Simulator";
13
- var emulatorReadyCheckDelay = 30 * 1000;
14
- var emulatorMaxReadyAttempts = 5;
15
-
16
- /* This message is appended to the compiled JS files to avoid contributions to the compiled sources.*/
17
- var compiledSourceWarningMessage = "\n \
18
- /******************************************************************************************** \n \
19
- THIS FILE HAS BEEN COMPILED FROM TYPESCRIPT SOURCES. \n \
20
- PLEASE DO NOT MODIFY THIS FILE AS YOU WILL LOSE YOUR CHANGES WHEN RECOMPILING. \n \
21
- ALSO, PLEASE DO NOT SUBMIT PULL REQUESTS WITH CHANGES TO THIS FILE. \n \
22
- INSTEAD, EDIT THE TYPESCRIPT SOURCES UNDER THE WWW FOLDER. \n \
23
- FOR MORE INFORMATION, PLEASE SEE CONTRIBUTING.md. \n \
24
- *********************************************************************************************/ \n\n\n";
25
-
26
- /* TypeScript compilation parameters */
27
- var tsCompileOptions = {
28
- "noImplicitAny": true,
29
- "noEmitOnError": true,
30
- "target": "ES5",
31
- "module": "commonjs",
32
- "sourceMap": false,
33
- "sortOutput": true,
34
- "removeComments": true
35
- };
36
-
37
- function spawnCommand(command, args, callback, silent, detached) {
38
- var options = { maxBuffer: 1024 * 1024 };
39
- if (detached) {
40
- options.detached = true;
41
- options.stdio = ["ignore"];
42
- }
43
-
44
- var spawnProcess = child_process.spawn(command, args, options);
45
-
46
- if (!silent) spawnProcess.stdout.pipe(process.stdout);
47
- if (!silent) spawnProcess.stderr.pipe(process.stderr);
48
-
49
- if (!detached) {
50
- spawnProcess.on('exit', function (code) {
51
- callback && callback(code === 0 ? undefined : "Error code: " + code);
52
- });
53
- }
54
-
55
- return spawnProcess;
56
- };
57
-
58
- function execCommand(command, args, callback, silent) {
59
- var execProcess = child_process.exec(command + " " + args.join(" "), { maxBuffer: 1024 * 1024 });
60
-
61
- if (!silent) execProcess.stdout.pipe(process.stdout);
62
- if (!silent) execProcess.stderr.pipe(process.stderr);
63
-
64
- execProcess.on('error', function (error) {
65
- callback && callback(error);
66
- })
67
-
68
- execProcess.on('exit', function (code) {
69
- callback && callback(code === 0 ? undefined : "Error code: " + code);
70
- });
71
-
72
- return execProcess;
73
- };
74
-
75
- function runTests(callback, options) {
76
- var command = "mocha";
77
- var args = ["./bin/test"];
78
-
79
- // pass arguments supplied by test tasks
80
- if (options.android) args.push("--android");
81
- if (options.ios) args.push("--ios");
82
- if (options.setup) args.push("--setup");
83
-
84
- // pass arguments from command line
85
- // the fourth argument is the first argument after the task name
86
- for (var i = 3; i < process.argv.length; i++) {
87
- if (process.argv[i] === "--report") {
88
- // Set up the mocha junit reporter.
89
- args.push("--reporter");
90
- args.push("mocha-junit-reporter");
91
-
92
- // Set the mocha reporter to the correct output file.
93
- args.push("--reporter-options");
94
- var filename = "./test-results.xml";
95
- if (options.android && !options.ios) filename = "./test-android.xml";
96
- else if (options.ios && !options.android) filename = "./test-ios.xml";
97
- args.push("mochaFile=" + filename);
98
- // Delete previous test result file so TFS doesn't read the old file if the tests exit before saving
99
- del(filename);
100
- } else args.push(process.argv[i]);
101
- }
102
-
103
- execCommand(command, args, callback);
104
- }
105
-
106
- gulp.task("compile", function (callback) {
107
- runSequence("compile-test", callback);
108
- });
109
-
110
- gulp.task("compile-test", function () {
111
- var ts = require("gulp-typescript");
112
- var insert = require("gulp-insert");
113
-
114
- return gulp.src([testPath + tsFiles])
115
- .pipe(ts(tsCompileOptions))
116
- .pipe(insert.prepend(compiledSourceWarningMessage))
117
- .pipe(gulp.dest(path.join(binPath, testPath)));
118
- });
119
-
120
- gulp.task("tslint", function () {
121
- var tslint = require('gulp-tslint');
122
-
123
- // Configuration options adapted from TypeScript project:
124
- // https://github.com/Microsoft/TypeScript/blob/master/tslint.json
125
-
126
- var config = {
127
- "rules": {
128
- "class-name": true,
129
- "comment-format": [true,
130
- "check-space"
131
- ],
132
- "indent": [true,
133
- "spaces"
134
- ],
135
- "one-line": [true,
136
- "check-open-brace"
137
- ],
138
- "no-unreachable": true,
139
- "no-unused-variable": true,
140
- "no-use-before-declare": true,
141
- "quotemark": [true,
142
- "double"
143
- ],
144
- "semicolon": true,
145
- "whitespace": [true,
146
- "check-branch",
147
- "check-operator",
148
- "check-separator",
149
- "check-type"
150
- ],
151
- "typedef-whitespace": [true, {
152
- "call-signature": "nospace",
153
- "index-signature": "nospace",
154
- "parameter": "nospace",
155
- "property-declaration": "nospace",
156
- "variable-declaration": "nospace"
157
- }]
158
- }
159
- }
160
-
161
- return gulp.src([testPath + tsFiles, "!" + testPath + "/typings/*"])
162
- .pipe(tslint({ configuration: config }))
163
- .pipe(tslint.report("verbose"));
164
- });
165
-
166
- gulp.task("clean", function () {
167
- return del([binPath + "/**"], { force: true });
168
- });
169
-
170
- gulp.task("default", function (callback) {
171
- runSequence("clean", "compile", "tslint", callback);
172
- });
173
-
174
- ////////////////////////////////////////////////////////////////////////
175
- // Test Tasks //////////////////////////////////////////////////////////
176
-
177
- ////////////////////////////////////////////////////////////////////////
178
- // Standalone Tasks
179
- //
180
- // Run the tests without setting up the test projects.
181
- // Don't run these without running a setup task first!
182
-
183
- // Run on Android standalone
184
- gulp.task("test-run-android", function (callback) {
185
- var options = {
186
- android: true
187
- };
188
-
189
- runTests(callback, options);
190
- });
191
-
192
- // Run on iOS standalone
193
- gulp.task("test-run-ios", function (callback) {
194
- var options = {
195
- ios: true,
196
- ui: true,
197
- };
198
-
199
- runTests(callback, options);
200
- });
201
-
202
- ////////////////////////////////////////////////////////////////////////
203
- // Setup Tasks
204
- //
205
- // Sets up the test project directories that the tests use and starts emulators.
206
- // Must run before running a standalone suite of tests!
207
-
208
- // Sets up the test projects and starts an Android emulator
209
- gulp.task("test-setup-android", function (callback) {
210
- var options = {
211
- setup: true,
212
- android: true
213
- };
214
-
215
- runTests(callback, options);
216
- });
217
-
218
- // Sets up the test projects and starts an iOS emulator
219
- gulp.task("test-setup-ios", function (callback) {
220
- var options = {
221
- setup: true,
222
- ios: true
223
- };
224
-
225
- runTests(callback, options);
226
- });
227
-
228
- // Sets up the test projects and starts both emulators
229
- gulp.task("test-setup-both", function (callback) {
230
- var options = {
231
- setup: true,
232
- android: true,
233
- ios: true
234
- };
235
-
236
- runTests(callback, options);
237
- });
238
-
239
- // Builds, sets up test projects, and starts the Android emulator
240
- gulp.task("test-setup-build-android", function (callback) {
241
- runSequence("default", "test-setup-android", callback);
242
- });
243
-
244
- // Builds, sets up test projects, and starts the iOS emulator
245
- gulp.task("test-setup-build-ios", function (callback) {
246
- runSequence("default", "test-setup-ios", callback);
247
- });
248
-
249
- // Builds, sets up test projects, and starts both emulators
250
- gulp.task("test-setup-build-both", function (callback) {
251
- runSequence("default", "test-setup-both", callback);
252
- });
253
-
254
- ////////////////////////////////////////////////////////////////////////
255
- // Fast Test Tasks
256
- //
257
- // Runs tests but doesn't build or start emulators.
258
-
259
- // Run on Android fast
260
- gulp.task("test-android-fast", ["test-setup-android"], function (callback) {
261
- runSequence("test-run-android", callback);
262
- });
263
-
264
- // Run on iOS fast
265
- gulp.task("test-ios-fast", ["test-setup-ios"], function (callback) {
266
- runSequence("test-run-ios", callback);
267
- });
268
-
269
- ////////////////////////////////////////////////////////////////////////
270
- // Fast Composition Test Tasks
271
- //
272
- // Run tests but doesn't build or start emulators.
273
-
274
- // Run on iOS fast
275
- gulp.task("test-fast", ["test-setup-both"], function (callback) {
276
- runSequence("test-run-android", "test-run-ios", callback);
277
- });
278
-
279
- ////////////////////////////////////////////////////////////////////////
280
- // Test Tasks
281
- //
282
- // Run tests, build, and start emulators.
283
-
284
- // Run on Android
285
- gulp.task("test-android", ["test-setup-build-android"], function (callback) {
286
- runSequence("test-run-android", callback);
287
- });
288
-
289
- // Run on iOS
290
- gulp.task("test-ios", ["test-setup-build-ios"], function (callback) {
291
- runSequence("test-run-ios", callback);
292
- });
293
-
294
- ////////////////////////////////////////////////////////////////////////
295
- // Composition Test Tasks
296
- //
297
- // Run tests, build, and start emulators.
298
-
299
- // Run on Android and iOS
300
- gulp.task("test", ["test-setup-build-both"], function (callback) {
301
- runSequence("test-run-android", "test-run-ios", callback);
302
- });