1
- var fs = require ( "fs" ) ;
2
- var pkg = require ( './package.json' ) ;
3
- var gulp = require ( 'gulp' ) ;
4
- var $ = require ( 'gulp-load-plugins' ) ( { lazy :true } ) ;
5
- var tsProject = require ( 'tsproject' ) ;
6
- var eventStream = require ( 'event-stream' ) ;
7
-
8
- gulp . task ( 'clean' , function ( ) {
9
- var del = require ( 'del' ) ;
1
+ const fs = require ( "fs" ) ;
2
+ const pkg = require ( './package.json' ) ;
3
+ const gulp = require ( 'gulp' ) ;
4
+ const $ = require ( 'gulp-load-plugins' ) ( { lazy :true } ) ;
5
+ const tsProject = require ( 'tsproject' ) ;
6
+ const eventStream = require ( 'event-stream' ) ;
7
+
8
+ gulp . task ( 'clean' , function clean ( done ) {
9
+ const del = require ( 'del' ) ;
10
10
del . sync ( [ 'dist' ] , { force : true } ) ;
11
+ done ( ) ;
11
12
} ) ;
12
13
13
- gulp . task ( 'typescript' , function ( ) {
14
- return tsProject . src ( 'src/tsconfig.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
14
+ gulp . task ( 'typescript' , function typescript ( done ) {
15
+ const stream = tsProject . src ( 'src/tsconfig.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
16
+ stream . on ( 'finish' , done ) ;
15
17
} ) ;
16
18
17
- gulp . task ( 'typescript.integrations' , [ 'typescript' ] , function ( ) {
18
- return tsProject . src ( 'src/integrations/tsconfig.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
19
- } ) ;
19
+ gulp . task ( 'typescript.integrations' , gulp . series ( 'typescript' , function typescriptIntegrations ( done ) {
20
+ const stream = tsProject . src ( 'src/integrations/tsconfig.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
21
+ stream . on ( 'finish' , done ) ;
22
+ } ) ) ;
20
23
21
- gulp . task ( 'typescript.node' , function ( ) {
22
- return tsProject . src ( 'src/tsconfig.node.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
24
+ gulp . task ( 'typescript.node' , function typescriptNode ( done ) {
25
+ const stream = tsProject . src ( 'src/tsconfig.node.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
26
+ stream . on ( 'finish' , done ) ;
23
27
} ) ;
24
28
25
- gulp . task ( 'typescript.universal' , function ( ) {
26
- return tsProject . src ( 'src/tsconfig.universal.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
29
+ gulp . task ( 'typescript.universal' , function typescriptUniversal ( done ) {
30
+ const stream = tsProject . src ( 'src/tsconfig.universal.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
31
+ stream . on ( 'finish' , done ) ;
27
32
} ) ;
28
33
29
- gulp . task ( 'exceptionless.umd' , [ 'typescript' , 'typescript .integrations'] , function ( ) {
34
+ gulp . task ( 'exceptionless.umd' , gulp . series ( 'typescript.integrations' , function exceptionlessUmd ( ) {
30
35
return gulp . src ( 'dist/temp/src/exceptionless.js' )
31
36
. pipe ( $ . sourcemaps . init ( { loadMaps : true } ) )
32
37
. pipe ( $ . wrapUmd ( {
@@ -38,9 +43,9 @@ gulp.task('exceptionless.umd', ['typescript', 'typescript.integrations'], functi
38
43
} ) )
39
44
. pipe ( $ . sourcemaps . write ( '.' ) )
40
45
. pipe ( gulp . dest ( 'dist/temp' ) ) ;
41
- } ) ;
46
+ } ) ) ;
42
47
43
- gulp . task ( 'exceptionless.universal.umd' , [ 'typescript.universal' ] , function ( ) {
48
+ gulp . task ( 'exceptionless.universal.umd' , gulp . series ( 'typescript.universal' , function universalUmd ( ) {
44
49
return gulp . src ( 'dist/temp/src/exceptionless.universal.js' )
45
50
. pipe ( $ . sourcemaps . init ( { loadMaps : true } ) )
46
51
. pipe ( $ . wrapUmd ( {
@@ -52,19 +57,19 @@ gulp.task('exceptionless.universal.umd', ['typescript.universal'], function () {
52
57
} ) )
53
58
. pipe ( $ . sourcemaps . write ( '.' ) )
54
59
. pipe ( gulp . dest ( 'dist/temp' ) ) ;
55
- } ) ;
60
+ } ) ) ;
56
61
57
- gulp . task ( 'exceptionless' , [ 'exceptionless.umd' ] , function ( ) {
62
+ gulp . task ( 'exceptionless' , gulp . series ( 'exceptionless.umd' , function exceptionless ( ) {
58
63
gulp . src ( 'dist/temp/src/exceptionless.d.ts' )
59
64
. pipe ( gulp . dest ( 'dist' ) ) ;
60
- var integrations = [
65
+ const integrations = [
61
66
'dist/temp/src/integrations/angular.js'
62
67
] ;
63
68
64
69
gulp . src ( integrations )
65
70
. pipe ( gulp . dest ( 'dist/integrations' ) ) ;
66
71
67
- var files = [
72
+ const files = [
68
73
'node_modules/tracekit/tracekit.js' ,
69
74
'dist/temp/exceptionless.js'
70
75
] ;
@@ -85,23 +90,23 @@ gulp.task('exceptionless', ['exceptionless.umd'], function () {
85
90
. pipe ( $ . uglify ( { output : { beautify : false } } ) )
86
91
. pipe ( $ . sourcemaps . write ( '.' ) )
87
92
. pipe ( gulp . dest ( 'dist' ) ) ;
88
- } ) ;
93
+ } ) ) ;
89
94
90
- gulp . task ( 'exceptionless.node' , [ 'typescript.node' ] , function ( ) {
91
- var files = [
95
+ gulp . task ( 'exceptionless.node' , gulp . series ( 'typescript.node' , function node ( ) {
96
+ const files = [
92
97
'dist/temp/src/exceptionless.node.js' ,
93
98
'dist/temp/src/submitSync.js'
94
99
] ;
95
100
96
- gulp . src ( files )
101
+ return gulp . src ( files )
97
102
. pipe ( $ . sourcemaps . init ( { loadMaps : true } ) )
98
103
. pipe ( $ . replace ( 'exceptionless-js/1.0.0.0' , 'exceptionless-node/' + pkg . version ) )
99
104
. pipe ( $ . sourcemaps . write ( '.' ) )
100
105
. pipe ( gulp . dest ( 'dist' ) ) ;
101
- } ) ;
106
+ } ) ) ;
102
107
103
- gulp . task ( 'exceptionless.universal' , [ 'exceptionless.universal.umd' ] , function ( ) {
104
- var files = [
108
+ gulp . task ( 'exceptionless.universal' , gulp . series ( 'exceptionless.universal.umd' , function universal ( ) {
109
+ const files = [
105
110
'node_modules/tracekit/tracekit.js' ,
106
111
'dist/temp/exceptionless.universal.js'
107
112
] ;
@@ -125,25 +130,26 @@ gulp.task('exceptionless.universal', ['exceptionless.universal.umd'], function (
125
130
. pipe ( $ . uglify ( { output : { beautify : false } } ) )
126
131
. pipe ( $ . sourcemaps . write ( '.' ) )
127
132
. pipe ( gulp . dest ( 'dist' ) ) ;
128
- } ) ;
133
+ } ) ) ;
129
134
130
- gulp . task ( 'watch' , [ 'build' ] , function ( ) {
131
- gulp . watch ( 'src/**/*.ts' , [ 'build' ] ) ;
132
- } ) ;
133
-
134
- gulp . task ( 'lint' , function ( ) {
135
+ gulp . task ( 'lint' , function lint ( ) {
135
136
return gulp . src ( [ 'src/**/*.ts' ] )
136
137
. pipe ( $ . tslint ( { formatter : 'verbose' } ) )
137
138
. pipe ( $ . tslint . report ( ) ) ;
138
139
} ) ;
139
140
140
- gulp . task ( 'build' , [ 'clean' , 'lint' , 'exceptionless' , 'exceptionless.node' , 'exceptionless.universal' ] ) ;
141
+ gulp . task ( 'build' , gulp . series ( 'clean' , 'lint' , 'exceptionless' , 'exceptionless.node' , 'exceptionless.universal' ) ) ;
141
142
142
- gulp . task ( 'typescript.test' , function ( ) {
143
- return tsProject . src ( 'src/tsconfig.test.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
143
+ gulp . task ( 'watch' , gulp . series ( 'build' , function watch ( ) {
144
+ return gulp . watch ( 'src/**/*.ts' , gulp . series ( 'build' ) ) ;
145
+ } ) ) ;
146
+
147
+ gulp . task ( 'typescript.test' , function test ( done ) {
148
+ const stream = tsProject . src ( 'src/tsconfig.test.json' ) . pipe ( gulp . dest ( 'dist/temp' ) ) ;
149
+ stream . on ( 'finish' , done ) ;
144
150
} ) ;
145
151
146
- gulp . task ( 'exceptionless.test.umd' , [ 'typescript.test' ] , function ( ) {
152
+ gulp . task ( 'exceptionless.test.umd' , gulp . series ( 'typescript.test' , function testUmd ( done ) {
147
153
var wrap = function ( filename ) {
148
154
return gulp . src ( filename )
149
155
. pipe ( $ . sourcemaps . init ( { loadMaps : true } ) )
@@ -156,12 +162,14 @@ gulp.task('exceptionless.test.umd', ['typescript.test'], function () {
156
162
. pipe ( gulp . dest ( 'dist/temp' ) ) ;
157
163
} ;
158
164
159
- return eventStream . merge (
165
+ eventStream . merge (
160
166
wrap ( 'dist/temp/src/exceptionless-nodespec.js' ) ,
161
167
wrap ( 'dist/temp/src/exceptionless-browserspec.js' ) ) ;
162
- } ) ;
163
168
164
- gulp . task ( 'test-node' , [ 'exceptionless.test.umd' ] , function ( done ) {
169
+ done ( ) ;
170
+ } ) ) ;
171
+
172
+ gulp . task ( 'test-node' , gulp . series ( 'exceptionless.test.umd' , function testNode ( ) {
165
173
return gulp . src ( 'dist/temp/exceptionless-nodespec.js' , { read : false } )
166
174
. pipe ( $ . mocha ( {
167
175
require : [ 'source-map-support/register' ] ,
@@ -170,24 +178,21 @@ gulp.task('test-node', ['exceptionless.test.umd'], function(done) {
170
178
. once ( 'end' , function ( ) {
171
179
process . exit ( ) ;
172
180
} ) ;
173
- } ) ;
181
+ } ) ) ;
174
182
175
- gulp . task ( 'test-browser' , [ 'exceptionless.test.umd' ] , function ( ) {
183
+ gulp . task ( 'test-browser' , gulp . series ( 'exceptionless.test.umd' , function testBrowser ( ) {
176
184
return gulp
177
185
. src ( 'testrunner.html' )
178
186
. pipe ( $ . mochaPhantomjs ( ) ) ;
179
- } ) ;
187
+ } ) ) ;
180
188
181
- gulp . task ( 'test' , function ( ) {
182
- // test-node calls process.exit(), so run browser tests before node tests
183
- var runSequence = require ( 'run-sequence' ) ;
184
- runSequence ( 'test-browser' , 'test-node' ) ;
185
- } ) ;
189
+ // test-node calls process.exit(), so run browser tests before node tests
190
+ gulp . task ( 'test' , gulp . series ( 'test-browser' , 'test-node' ) ) ;
186
191
187
- gulp . task ( 'format' , function ( ) {
192
+ gulp . task ( 'format' , function format ( ) {
188
193
return gulp . src ( [ 'src/**/*.ts' ] )
189
194
. pipe ( $ . exec ( 'node_modules/typescript-formatter/bin/tsfmt -r <%= file.path %>' ) )
190
195
. pipe ( $ . exec . reporter ( ) ) ;
191
196
} ) ;
192
197
193
- gulp . task ( 'default' , [ 'watch' , 'build' , ' test'] ) ;
198
+ gulp . task ( 'default' , gulp . series ( 'watch' , 'test' ) ) ;
0 commit comments