View difference between Paste ID: ULwa7hWM and 1ycXv9Hn
SHOW: | | - or go back to the newest paste.
1
Script started on Fri 19 Jun 2015 03:14:38 PM PDT
2
[www@foobar statetest]$ yo angular-fullstack test
3
4
     _-----_
5
    |	    |
6
    |--(o)--|	.--------------------------.
7
   `---------´	|    Welcome to Yeoman,	   |
8
    ( _´U`_ )	|   ladies and gentlemen!  |
9
    /___A___\	'__________________________'
10
     |	~  |
11
   __'.___.'__
12
 ´   `	|° ´ Y `
13
14
Out of the box I create an AngularJS app with an Express server.
15
16
# Client
17
18
? What would you like to write scripts with? (Use arrow keys)
19
❯ JavaScript
20
  CoffeeScript ? What would you like to write scripts with? JavaScript
21
? What would you like to write markup with? (Use arrow keys)
22
❯ HTML
23
  Jade ? What would you like to write markup with? HTML
24
? What would you like to write stylesheets with? (Use arrow keys)
25
  CSS
26
❯ Sass
27
  Stylus
28
  Less ? What would you like to write stylesheets with?
29
❯ CSS
30
  Sass
31
  Stylus
32
  Less ? What would you like to write stylesheets with? CSS
33
? What Angular router would you like to use? (Use arrow keys)
34
  ngRoute
35
❯ uiRouter ? What Angular router would you like to use? uiRouter
36
? Would you like to include Bootstrap? (Y/n)
37
? Would you like to include Bootstrap? Yes
38
? Would you like to include UI Bootstrap? (Y/n)
39
? Would you like to include UI Bootstrap? Yes
40
41
# Server
42
43
? Would you like to use mongoDB with Mongoose for data modeling? (Y/n)
44
? Would you like to use mongoDB with Mongoose for data modeling? Yes
45
? Would you scaffold out an authentication boilerplate? (Y/n)
46
? Would you scaffold out an authentication boilerplate? Yes
47
? Would you like to include additional oAuth strategies? (Press <space> to select)
48
❯◯ Google
49
 ◯ Facebook
50
 ◯ Twitter
51
? Would you like to include additional oAuth strategies?
52
? Would you like to use socket.io? (Y/n)
53
? Would you like to use socket.io? Yes
54
You're using the fantastic NgComponent generator.
55
56
Initializing yo-rc.json configuration.
57
58
   create .gitignore
59
   create bower.json
60
   create package.json
61
   create .bowerrc
62
   create .buildignore
63
   create .editorconfig
64
   create .gitattributes
65
   create .travis.yml
66
   create client/.htaccess
67
   create client/.jshintrc
68
   create client/app/account/account.js
69
   create client/app/account/login/login.controller.js
70
   create client/app/account/login/login.css
71
   create client/app/account/login/login.html
72
   create client/app/account/settings/settings.controller.js
73
   create client/app/account/settings/settings.html
74
   create client/app/account/signup/signup.controller.js
75
   create client/app/account/signup/signup.html
76
   create client/app/admin/admin.controller.js
77
   create client/app/admin/admin.css
78
   create client/app/admin/admin.html
79
   create client/app/admin/admin.js
80
   create client/app/app.css
81
   create client/app/app.js
82
   create client/app/main/main.controller.spec.js
83
   create client/app/main/main.controller.js
84
   create client/app/main/main.css
85
   create client/app/main/main.html
86
   create client/app/main/main.js
87
   create client/assets/images/yeoman.png
88
   create client/components/auth/auth.service.js
89
   create client/components/auth/user.service.js
90
   create client/components/modal/modal.service.js
91
   create client/components/modal/modal.css
92
   create client/components/modal/modal.html
93
   create client/components/mongoose-error/mongoose-error.directive.js
94
   create client/components/navbar/navbar.controller.js
95
   create client/components/navbar/navbar.html
96
   create client/components/socket/socket.mock.js
97
   create client/components/socket/socket.service.js
98
   create client/favicon.ico
99
   create client/index.html
100
   create client/robots.txt
101
   create e2e/main/main.po.js
102
   create e2e/main/main.spec.js
103
   create Gruntfile.js
104
   create karma.conf.js
105
   create protractor.conf.js
106
   create server/.jshintrc
107
   create server/.jshintrc-spec
108
   create server/api/thing/index.js
109
   create server/api/thing/thing.controller.js
110
   create server/api/thing/thing.model.js
111
   create server/api/thing/thing.socket.js
112
   create server/api/thing/thing.spec.js
113
   create server/api/user/index.js
114
   create server/api/user/user.controller.js
115
   create server/api/user/user.model.js
116
   create server/api/user/user.model.spec.js
117
   create server/app.js
118
   create server/auth/auth.service.js
119
   create server/auth/index.js
120
   create server/auth/local/index.js
121
   create server/auth/local/passport.js
122
   create server/components/errors/index.js
123
   create server/config/local.env.js
124
   create server/config/local.env.sample.js
125
   create server/config/environment/development.js
126
   create server/config/environment/index.js
127
   create server/config/environment/production.js
128
   create server/config/environment/test.js
129
   create server/config/express.js
130
   create server/config/seed.js
131
   create server/config/socketio.js
132
   create server/routes.js
133
   create server/views/404.html
134
135
136
I'm all done. Running bower install & npm install for you to install the required dependencies. If this fails, try running the command yourself.
137
138
139
bower bootstrap#~3.1.1	    not-cached git://github.com/twbs/bootstrap.git#~3.1.1
140
bower bootstrap#~3.1.1	       resolve git://github.com/twbs/bootstrap.git#~3.1.1
141
bower font-awesome#>=4.1.0  not-cached git://github.com/FortAwesome/Font-Awesome.git#>=4.1.0
142
bower font-awesome#>=4.1.0     resolve git://github.com/FortAwesome/Font-Awesome.git#>=4.1.0
143
bower jquery#~1.11.0	    not-cached git://github.com/jquery/jquery.git#~1.11.0
144
bower jquery#~1.11.0	       resolve git://github.com/jquery/jquery.git#~1.11.0
145
bower angular-socket-io#~0.6.0	     not-cached git://github.com/btford/angular-socket-io.git#~0.6.0
146
bower angular-socket-io#~0.6.0		resolve git://github.com/btford/angular-socket-io.git#~0.6.0
147
bower angular-resource#>=1.2.*		 cached git://github.com/angular/bower-angular-resource.git#1.3.15
148
bower angular-resource#>=1.2.*	       validate 1.3.15 against git://github.com/angular/bower-angular-resource.git#>=1.2.*
149
bower angular-mocks#>=1.2.*		 cached git://github.com/angular/bower-angular-mocks.git#1.3.15
150
bower angular-mocks#>=1.2.*	       validate 1.3.15 against git://github.com/angular/bower-angular-mocks.git#>=1.2.*
151
bower angular-cookies#>=1.2.*		 cached git://github.com/angular/bower-angular-cookies.git#1.3.15
152
bower angular-cookies#>=1.2.*	       validate 1.3.15 against git://github.com/angular/bower-angular-cookies.git#>=1.2.*
153
bower json3#~3.3.1		     not-cached git://github.com/bestiejs/json3.git#~3.3.1
154
bower json3#~3.3.1			resolve git://github.com/bestiejs/json3.git#~3.3.1
155
bower angular-sanitize#>=1.2.*		 cached git://github.com/angular/bower-angular-sanitize.git#1.3.15
156
bower angular-sanitize#>=1.2.*	       validate 1.3.15 against git://github.com/angular/bower-angular-sanitize.git#>=1.2.*
157
bower angular-bootstrap#~0.11.0	     not-cached git://github.com/angular-ui/bootstrap-bower.git#~0.11.0
158
bower angular-bootstrap#~0.11.0		resolve git://github.com/angular-ui/bootstrap-bower.git#~0.11.0
159
bower angular-scenario#>=1.2.*	     not-cached git://github.com/angular/bower-angular-scenario.git#>=1.2.*
160
bower angular-scenario#>=1.2.*		resolve git://github.com/angular/bower-angular-scenario.git#>=1.2.*
161
bower angular#>=1.2.*			 cached git://github.com/angular/bower-angular.git#1.3.15
162
bower angular#>=1.2.*		       validate 1.3.15 against git://github.com/angular/bower-angular.git#>=1.2.*
163
bower lodash#~2.4.1		     not-cached git://github.com/lodash/lodash.git#~2.4.1
164
bower lodash#~2.4.1			resolve git://github.com/lodash/lodash.git#~2.4.1
165
bower angular-socket-io#~0.6.0	       download https://github.com/btford/angular-socket-io/archive/v0.6.1.tar.gz
166
bower es5-shim#~3.0.1		     not-cached git://github.com/es-shims/es5-shim.git#~3.0.1
167
bower es5-shim#~3.0.1			resolve git://github.com/es-shims/es5-shim.git#~3.0.1
168
bower angular-ui-router#~0.2.10		 cached git://github.com/angular-ui/ui-router.git#0.2.14
169
bower angular-ui-router#~0.2.10	       validate 0.2.14 against git://github.com/angular-ui/ui-router.git#~0.2.10
170
bower font-awesome#>=4.1.0	       download https://github.com/FortAwesome/Font-Awesome/archive/v4.3.0.tar.gz
171
bower jquery#~1.11.0		       download https://github.com/jquery/jquery/archive/1.11.3.tar.gz
172
bower angular-resource#>=1.2.*		    new version for git://github.com/angular/bower-angular-resource.git#>=1.2.*
173
bower angular-resource#>=1.2.*		resolve git://github.com/angular/bower-angular-resource.git#>=1.2.*
174
bower json3#~3.3.1		       download https://github.com/bestiejs/json3/archive/v3.3.2.tar.gz
175
bower bootstrap#~3.1.1		       download https://github.com/twbs/bootstrap/archive/v3.1.1.tar.gz
176
bower angular-sanitize#>=1.2.*		    new version for git://github.com/angular/bower-angular-sanitize.git#>=1.2.*
177
bower angular-sanitize#>=1.2.*		resolve git://github.com/angular/bower-angular-sanitize.git#>=1.2.*
178
bower angular-cookies#>=1.2.*		    new version for git://github.com/angular/bower-angular-cookies.git#>=1.2.*
179
bower angular-cookies#>=1.2.*		resolve git://github.com/angular/bower-angular-cookies.git#>=1.2.*
180
bower angular-mocks#>=1.2.*		    new version for git://github.com/angular/bower-angular-mocks.git#>=1.2.*
181
bower angular-mocks#>=1.2.*		resolve git://github.com/angular/bower-angular-mocks.git#>=1.2.*
182
bower es5-shim#~3.0.1		       download https://github.com/es-shims/es5-shim/archive/v3.0.2.tar.gz
183
bower lodash#~2.4.1		       download https://github.com/lodash/lodash/archive/2.4.2.tar.gz
184
bower angular-bootstrap#~0.11.0	       download https://github.com/angular-ui/bootstrap-bower/archive/0.11.2.tar.gz
185
bower angular-resource#>=1.2.*	       download https://github.com/angular/bower-angular-resource/archive/v1.4.1.tar.gz
186
bower angular#>=1.2.*			    new version for git://github.com/angular/bower-angular.git#>=1.2.*
187
bower angular#>=1.2.*			resolve git://github.com/angular/bower-angular.git#>=1.2.*
188
bower angular-scenario#>=1.2.*	       download https://github.com/angular/bower-angular-scenario/archive/v1.4.1.tar.gz
189
bower angular-ui-router#~0.2.10		    new version for git://github.com/angular-ui/ui-router.git#~0.2.10
190
bower angular-ui-router#~0.2.10		resolve git://github.com/angular-ui/ui-router.git#~0.2.10
191
bower angular-sanitize#>=1.2.*	       download https://github.com/angular/bower-angular-sanitize/archive/v1.4.1.tar.gz
192
bower angular-cookies#>=1.2.*	       download https://github.com/angular/bower-angular-cookies/archive/v1.4.1.tar.gz
193
bower angular-mocks#>=1.2.*	       download https://github.com/angular/bower-angular-mocks/archive/v1.4.1.tar.gz
194
bower angular#>=1.2.*		       download https://github.com/angular/bower-angular/archive/v1.4.1.tar.gz
195
bower angular-ui-router#~0.2.10	       download https://github.com/angular-ui/ui-router/archive/0.2.15.tar.gz
196
bower angular-socket-io#~0.6.0		extract archive.tar.gz
197
bower angular-socket-io#~0.6.0	   invalid-meta angular-socket-io is missing "ignore" entry in bower.json
198
bower angular-socket-io#~0.6.0	       resolved git://github.com/btford/angular-socket-io.git#0.6.1
199
bower angular#^1.2.6			 cached git://github.com/angular/bower-angular.git#1.3.15
200
bower angular#^1.2.6		       validate 1.3.15 against git://github.com/angular/bower-angular.git#^1.2.6
201
bower angular#^1.2.6			    new version for git://github.com/angular/bower-angular.git#^1.2.6
202
bower angular#^1.2.6			resolve git://github.com/angular/bower-angular.git#^1.2.6
203
bower angular#^1.2.6		       download https://github.com/angular/bower-angular/archive/v1.4.1.tar.gz
204
bower angular-resource#>=1.2.*		extract archive.tar.gz
205
bower angular-cookies#>=1.2.*		extract archive.tar.gz
206
bower angular-sanitize#>=1.2.*		extract archive.tar.gz
207
bower angular-mocks#>=1.2.*		extract archive.tar.gz
208
bower es5-shim#~3.0.1			extract archive.tar.gz
209
bower angular-resource#>=1.2.*	       resolved git://github.com/angular/bower-angular-resource.git#1.4.1
210
bower angular-cookies#>=1.2.*	       resolved git://github.com/angular/bower-angular-cookies.git#1.4.1
211
bower angular-bootstrap#~0.11.0		extract archive.tar.gz
212
bower angular-sanitize#>=1.2.*	       resolved git://github.com/angular/bower-angular-sanitize.git#1.4.1
213
bower angular-mocks#>=1.2.*	       resolved git://github.com/angular/bower-angular-mocks.git#1.4.1
214
bower angular-bootstrap#~0.11.0	   invalid-meta angular-bootstrap is missing "ignore" entry in bower.json
215
bower angular-bootstrap#~0.11.0	       resolved git://github.com/angular-ui/bootstrap-bower.git#0.11.2
216
bower angular#>=1			 cached git://github.com/angular/bower-angular.git#1.3.15
217
bower angular#>=1		       validate 1.3.15 against git://github.com/angular/bower-angular.git#>=1
218
bower angular#>=1			    new version for git://github.com/angular/bower-angular.git#>=1
219
bower angular#>=1			resolve git://github.com/angular/bower-angular.git#>=1
220
bower angular#>=1		       download https://github.com/angular/bower-angular/archive/v1.4.1.tar.gz
221
bower json3#~3.3.1			extract archive.tar.gz
222
bower angular-scenario#>=1.2.*		extract archive.tar.gz
223
bower es5-shim#~3.0.1		       resolved git://github.com/es-shims/es5-shim.git#3.0.2
224
bower jquery#~1.11.0			extract archive.tar.gz
225
bower angular#>=1.2.*			extract archive.tar.gz
226
bower angular-scenario#>=1.2.*	       resolved git://github.com/angular/bower-angular-scenario.git#1.4.1
227
bower angular#^1.2.6			extract archive.tar.gz
228
bower lodash#~2.4.1			extract archive.tar.gz
229
bower angular#>=1.2.*		       resolved git://github.com/angular/bower-angular.git#1.4.1
230
bower angular#^1.2.6		       resolved git://github.com/angular/bower-angular.git#1.4.1
231
bower json3#~3.3.1		       resolved git://github.com/bestiejs/json3.git#3.3.2
232
bower angular-ui-router#~0.2.10		extract archive.tar.gz
233
bower angular#>=1			extract archive.tar.gz
234
bower angular#>=1		       resolved git://github.com/angular/bower-angular.git#1.4.1
235
bower lodash#~2.4.1		       resolved git://github.com/lodash/lodash.git#2.4.2
236
bower font-awesome#>=4.1.0		extract archive.tar.gz
237
bower bootstrap#~3.1.1			extract archive.tar.gz
238
bower jquery#~1.11.0		       resolved git://github.com/jquery/jquery.git#1.11.3
239
bower angular-ui-router#~0.2.10	       resolved git://github.com/angular-ui/ui-router.git#0.2.15
240
bower bootstrap#~3.1.1		       resolved git://github.com/twbs/bootstrap.git#3.1.1
241
bower font-awesome#>=4.1.0	       resolved git://github.com/FortAwesome/Font-Awesome.git#4.3.0
242
bower angular-socket-io#~0.6.0		install angular-socket-io#0.6.1
243
bower angular-resource#>=1.2.*		install angular-resource#1.4.1
244
bower angular-cookies#>=1.2.*		install angular-cookies#1.4.1
245
bower angular-sanitize#>=1.2.*		install angular-sanitize#1.4.1
246
bower angular-mocks#>=1.2.*		install angular-mocks#1.4.1
247
bower angular-bootstrap#~0.11.0		install angular-bootstrap#0.11.2
248
bower es5-shim#~3.0.1			install es5-shim#3.0.2
249
bower angular-scenario#>=1.2.*		install angular-scenario#1.4.1
250
bower angular#>=1.2.*			install angular#1.4.1
251
bower json3#~3.3.1			install json3#3.3.2
252
bower lodash#~2.4.1			install lodash#2.4.2
253
bower jquery#~1.11.0			install jquery#1.11.3
254
bower angular-ui-router#~0.2.10		install angular-ui-router#0.2.15
255
bower bootstrap#~3.1.1			install bootstrap#3.1.1
256
bower font-awesome#>=4.1.0		install font-awesome#4.3.0
257
258
angular-socket-io#0.6.1 client/bower_components/angular-socket-io
259
└── angular#1.4.1
260
261
angular-resource#1.4.1 client/bower_components/angular-resource
262
└── angular#1.4.1
263
264
angular-cookies#1.4.1 client/bower_components/angular-cookies
265
└── angular#1.4.1
266
267
angular-sanitize#1.4.1 client/bower_components/angular-sanitize
268
└── angular#1.4.1
269
270
angular-mocks#1.4.1 client/bower_components/angular-mocks
271
└── angular#1.4.1
272
273
angular-bootstrap#0.11.2 client/bower_components/angular-bootstrap
274
└── angular#1.4.1
275
276
es5-shim#3.0.2 client/bower_components/es5-shim
277
278
angular-scenario#1.4.1 client/bower_components/angular-scenario
279
└── angular#1.4.1
280
281
angular#1.4.1 client/bower_components/angular
282
283
json3#3.3.2 client/bower_components/json3
284
285
lodash#2.4.2 client/bower_components/lodash
286
287
jquery#1.11.3 client/bower_components/jquery
288
289
angular-ui-router#0.2.15 client/bower_components/angular-ui-router
290
└── angular#1.4.1
291
292
bootstrap#3.1.1 client/bower_components/bootstrap
293
└── jquery#1.11.3
294
295
font-awesome#4.3.0 client/bower_components/font-awesome
296
-\|/-\|/-\npm WARN deprecated jsonwebtoken@0.3.0: Critical vulnerability fix in v5.0.0. See https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/
297
|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\npm WARN deprecated jws@0.2.6: Security update: Versions below 3.0.0 are deprecated.
298
|/-\npm WARN deprecated jsonwebtoken@1.1.2: Critical vulnerability fix in v5.0.0. See https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/
299
|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-npm WARN deprecated find-file@0.1.4: Use the globby package instead
300
\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\npm WARN deprecated CSSselect@0.7.0: the module is now available as 'css-select'
301
|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\npm WARN deprecated CSSwhat@0.4.7: the module is now available as 'css-what'
302
|/-\|/-\|npm WARN optional dep failed, continuing fsevents@0.3.6
303
/-\|/-\|/-\|/-\|/--\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\
304
> phantomjs@1.9.17 install /home/www/dev/statetest/node_modules/karma-phantomjs-launcher/node_modules/phantomjs
305
> node install.js
306
307
|/-Downloading https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2
308
Saving to /tmp/phantomjs/phantomjs-1.9.8-linux-x86_64.tar.bz2
309
Receiving...
310
\|/-\|/-  [----------------------------------------] 0% 0.0s\|/-\|/-
311
Received 12854K total.
312
Extracting tar contents (via spawned process)
313
\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|Removing /home/www/dev/statetest/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/lib/phantom
314
Copying extracted folder /tmp/phantomjs/phantomjs-1.9.8-linux-x86_64.tar.bz2-extract-1434752227347/phantomjs-1.9.8-linux-x86_64 -> /home/www/dev/statetest/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/lib/phantom
315
/-\|/-Writing location.js file
316
Done. Phantomjs binary available at /home/www/dev/statetest/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/lib/phantom/bin/phantomjs
317
\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|
318
> ws@0.5.0 install /home/www/dev/statetest/node_modules/socket.io/node_modules/engine.io/node_modules/ws
319
> (node-gyp rebuild 2> builderror.log) || (exit 0)
320
321
/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/make: Entering directory `/home/www/dev/statetest/node_modules/socket.io/node_modules/engine.io/node_modules/ws/build'
322
-  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
323
\|/-\|/-\|/-\|/-  SOLINK_MODULE(target) Release/obj.target/bufferutil.node
324
\  SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
325
  COPY Release/bufferutil.node
326
  CXX(target) Release/obj.target/validation/src/validation.o
327
|/-\|/-\  SOLINK_MODULE(target) Release/obj.target/validation.node
328
|  SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
329
  COPY Release/validation.node
330
make: Leaving directory `/home/www/dev/statetest/node_modules/socket.io/node_modules/engine.io/node_modules/ws/build'
331
/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/
332
> gifsicle@0.1.7 postinstall /home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle
333
> node index.js
334
335
-\|/-\|/-\|/-\|/-\|/-\|/-\|⚠ pre-build test failed, compiling from source...
336
/-\|/-\|/stream.js:94
337
      throw er; // Unhandled stream error in pipe.
338
	    ^
339
Error: invalid tar file
340
    at Extract.Parse._startEntry (/home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/lib/parse.js:145:13)
341
    at Extract.Parse._process (/home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/lib/parse.js:127:12)
342
    at BlockStream.<anonymous> (/home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/lib/parse.js:47:8)
343
    at BlockStream.emit (events.js:107:17)
344
    at BlockStream._emitChunk (/home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/node_modules/block-stream/block-stream.js:145:10)
345
    at BlockStream.resume (/home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/node_modules/block-stream/block-stream.js:58:15)
346
    at Extract.Reader.resume (/home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/node_modules/fstream/lib/reader.js:255:34)
347
    at DirWriter.<anonymous> (/home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/lib/extract.js:57:8)
348
    at DirWriter.emit (events.js:104:17)
349
    at /home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-gifsicle/node_modules/gifsicle/node_modules/bin-build/node_modules/download/node_modules/decompress/node_modules/tar/node_modules/fstream/lib/dir-writer.js:39:8
350
-
351
> optipng-bin@0.3.11 postinstall /home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-optipng/node_modules/optipng-bin
352
> node index.js
353
354
\|/-\|/-\|/-\|/-\|✔ pre-build test passed successfully!
355
npm WARN optional dep failed, continuing imagemin-gifsicle@0.1.1
356
357
> jpegtran-bin@0.2.8 postinstall /home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-jpegtran/node_modules/jpegtran-bin
358
> node index.js
359
360
/-\|/-
361
> pngquant-bin@0.3.5 postinstall /home/www/dev/statetest/node_modules/grunt-contrib-imagemin/node_modules/imagemin/node_modules/imagemin-pngquant/node_modules/pngquant-bin
362
> node index.js
363
364
\|/-\|/-\|/-\|/-\|/-⚠ pre-build test failed, compiling from source...
365
\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|✔ pngquant built successfully!
366
367
> ws@0.4.31 install /home/www/dev/statetest/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws
368
> (node-gyp rebuild 2> builderror.log) || (exit 0)
369
370
/-\|/-\|/-\|/-make: Entering directory `/home/www/dev/statetest/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/build'
371
  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
372
\|/make: Leaving directory `/home/www/dev/statetest/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/build'
373
-\|/-\|/-\|/-\|/-\|/-\-\|/--\|/-\|/-\|/-\|/-\|/-\|
374
> kerberos@0.0.11 install /home/www/dev/statetest/node_modules/connect-mongo/node_modules/mongodb/node_modules/kerberos
375
> (node-gyp rebuild 2> builderror.log) || (exit 0)
376
377
/-\|/-\|/-\|/make: Entering directory `/home/www/dev/statetest/node_modules/connect-mongo/node_modules/mongodb/node_modules/kerberos/build'
378
  CXX(target) Release/obj.target/kerberos/lib/kerberos.o
379
  CXX(target) Release/obj.target/kerberos/lib/worker.o
380
  CC(target) Release/obj.target/kerberos/lib/kerberosgss.o
381
  CC(target) Release/obj.target/kerberos/lib/base64.o
382
-\  CXX(target) Release/obj.target/kerberos/lib/kerberos_context.o
383
|/-\|/-	 SOLINK_MODULE(target) Release/obj.target/kerberos.node
384
\  SOLINK_MODULE(target) Release/obj.target/kerberos.node: Finished
385
  COPY Release/kerberos.node
386
make: Leaving directory `/home/www/dev/statetest/node_modules/connect-mongo/node_modules/mongodb/node_modules/kerberos/build'
387
-\|/-\|-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\-\|-\|/--\-\|/-\|/-\|/--\|-\|/-\|/-\|/-\|
388
> kerberos@0.0.9 install /home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/node_modules/kerberos
389
> (node-gyp rebuild 2> builderror.log) || (exit 0)
390
391
/-\|/-\|/-\|/-\|make: Entering directory `/home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/node_modules/kerberos/build'
392
  CXX(target) Release/obj.target/kerberos/lib/kerberos.o
393
/-\|/-\|/-\|/-\	 CXX(target) Release/obj.target/kerberos/lib/worker.o
394
|/-\|/	CC(target) Release/obj.target/kerberos/lib/kerberosgss.o
395
-\|  CC(target) Release/obj.target/kerberos/lib/base64.o
396
  CXX(target) Release/obj.target/kerberos/lib/kerberos_context.o
397
/-\|  SOLINK_MODULE(target) Release/obj.target/kerberos.node
398
/  SOLINK_MODULE(target) Release/obj.target/kerberos.node: Finished
399
  COPY Release/kerberos.node
400
make: Leaving directory `/home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/node_modules/kerberos/build'
401
-\
402
> bson@0.2.21 install /home/www/dev/statetest/node_modules/connect-mongo/node_modules/mongodb/node_modules/bson
403
> (node-gyp rebuild 2> builderror.log) || (exit 0)
404
405
|/-\|/-\|/-\|/-\|/-make: Entering directory `/home/www/dev/statetest/node_modules/connect-mongo/node_modules/mongodb/node_modules/bson/build'
406
  CXX(target) Release/obj.target/bson/ext/bson.o
407
\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-  SOLINK_MODULE(target) Release/obj.target/bson.node
408
\|  SOLINK_MODULE(target) Release/obj.target/bson.node: Finished
409
  COPY Release/bson.node
410
make: Leaving directory `/home/www/dev/statetest/node_modules/connect-mongo/node_modules/mongodb/node_modules/bson/build'
411
/-\|/-\|/-\|/-\|/-\|/-
412
> bson@0.2.21 install /home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/node_modules/bson
413
> (node-gyp rebuild 2> builderror.log) || (exit 0)
414
415
\|/-\|/-\|/-\|/-make: Entering directory `/home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/node_modules/bson/build'
416
  CXX(target) Release/obj.target/bson/ext/bson.o
417
\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|	SOLINK_MODULE(target) Release/obj.target/bson.node
418
/  SOLINK_MODULE(target) Release/obj.target/bson.node: Finished
419
  COPY Release/bson.node
420
make: Leaving directory `/home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/node_modules/bson/build'
421
-\|/-\|/-\|/-\|/-\|/
422
> ws@0.4.32 install /home/www/dev/statetest/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
423
> (node-gyp rebuild 2> builderror.log) || (exit 0)
424
425
-\|/-\|/-\|/-\|/-\|make: Entering directory `/home/www/dev/statetest/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/build'
426
  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
427
/-\|/-\|  SOLINK_MODULE(target) Release/obj.target/bufferutil.node
428
/  SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
429
  COPY Release/bufferutil.node
430
  CXX(target) Release/obj.target/validation/src/validation.o
431
-\|/-\|	 SOLINK_MODULE(target) Release/obj.target/validation.node
432
/  SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
433
  COPY Release/validation.node
434
make: Leaving directory `/home/www/dev/statetest/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/build'
435
-\|/-\|/-\|/-\|/-\|/--\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/--\|/-\|/-\|
436
> v8-profiler@5.2.9 preinstall /home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/v8-profiler
437
>
438
439
/-\|/-\|/
440
> v8-debug@0.4.6 preinstall /home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/v8-debug
441
>
442
443
-\|/-\|/-\|/-\|/-npm WARN optional dep failed, continuing default-browser-id@1.0.2
444
\|/-\|/-\|/-\|/-\|/-
445
> ws@0.4.32 install /home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/ws
446
> (node-gyp rebuild 2> builderror.log) || (exit 0)
447
448
\|/-\|/-\|/-\|/-make: Entering directory `/home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/ws/build'
449
  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
450
\|/-\|/	 SOLINK_MODULE(target) Release/obj.target/bufferutil.node
451
-  SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
452
  COPY Release/bufferutil.node
453
  CXX(target) Release/obj.target/validation/src/validation.o
454
\|  SOLINK_MODULE(target) Release/obj.target/validation.node
455
  SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
456
  COPY Release/validation.node
457
make: Leaving directory `/home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/ws/build'
458
-\|/-npm WARN engine xmlbuilder@2.2.1: wanted: {"node":"0.8.x || 0.10.x"} (current: {"node":"0.12.4","npm":"2.10.1"})
459
-\|/-\|
460
> v8-debug@0.4.6 install /home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/v8-debug
461
> node-pre-gyp install --fallback-to-build
462
463
-\|/-[v8-debug] Success: "/home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/v8-debug/build/debug/v0.4.6/node-v14-linux-x64/debug.node" is installed via remote
464
465
> v8-profiler@5.2.9 install /home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/v8-profiler
466
> node-pre-gyp install --fallback-to-build
467
468
[v8-profiler] Success: "/home/www/dev/statetest/node_modules/grunt-node-inspector/node_modules/node-inspector/node_modules/v8-profiler/build/profiler/v5.2.9/node-v14-linux-x64/profiler.node" is installed via remote
469
karma-script-launcher@0.1.0 node_modules/karma-script-launcher
470
471
karma-ng-html2js-preprocessor@0.1.2 node_modules/karma-ng-html2js-preprocessor
472
473
karma-requirejs@0.2.2 node_modules/karma-requirejs
474
475
jit-grunt@0.5.0 node_modules/jit-grunt
476
477
karma-html2js-preprocessor@0.1.0 node_modules/karma-html2js-preprocessor
478
479
karma-firefox-launcher@0.1.6 node_modules/karma-firefox-launcher
480
481
grunt-contrib-copy@0.5.0 node_modules/grunt-contrib-copy
482
483
connect-livereload@0.4.1 node_modules/connect-livereload
484
485
errorhandler@1.0.2 node_modules/errorhandler
486
487
express-jwt@0.1.4 node_modules/express-jwt
488
489
composable-middleware@0.3.0 node_modules/composable-middleware
490
491
grunt-rev@0.1.0 node_modules/grunt-rev
492
493
open@0.0.5 node_modules/open
494
495
grunt-karma@0.8.3 node_modules/grunt-karma
496
497
grunt-open@0.2.3 node_modules/grunt-open
498
499
karma-jasmine@0.1.5 node_modules/karma-jasmine
500
501
grunt-express-server@0.4.19 node_modules/grunt-express-server
502
503
method-override@1.0.2 node_modules/method-override
504
└── methods@1.0.0
505
506
serve-favicon@2.0.1 node_modules/serve-favicon
507
└── fresh@0.2.2
508
509
morgan@1.0.1 node_modules/morgan
510
└── bytes@0.3.0
511
512
cookie-parser@1.0.1 node_modules/cookie-parser
513
├── cookie-signature@1.0.3
514
└── cookie@0.1.0
515
516
grunt-env@0.4.4 node_modules/grunt-env
517
└── ini@1.3.4
518
519
express-session@1.0.4 node_modules/express-session
520
├── uid2@0.0.3
521
├── utils-merge@1.0.0
522
├── cookie@0.1.2
523
├── cookie-signature@1.0.3
524
├── buffer-crc32@0.2.1
525
└── debug@0.8.1
526
527
grunt-contrib-concat@0.4.0 node_modules/grunt-contrib-concat
528
└── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
529
530
jshint-stylish@0.1.5 node_modules/jshint-stylish
531
├── text-table@0.2.0
532
└── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
533
534
grunt-contrib-htmlmin@0.2.0 node_modules/grunt-contrib-htmlmin
535
├── each-async@0.1.3
536
├── pretty-bytes@0.1.2
537
├── html-minifier@0.5.6
538
└── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
539
540
time-grunt@0.3.2 node_modules/time-grunt
541
├── date-time@0.1.1
542
├── pretty-ms@0.1.0
543
├── text-table@0.2.0
544
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
545
└── hooker@0.2.3
546
547
grunt-contrib-clean@0.5.0 node_modules/grunt-contrib-clean
548
└── rimraf@2.2.8
549
550
passport@0.2.2 node_modules/passport
551
├── pause@0.0.1
552
└── passport-strategy@1.0.0
553
554
grunt-concurrent@0.5.0 node_modules/grunt-concurrent
555
├── async@0.2.10
556
└── pad-stdio@0.1.1 (lpad@0.2.1)
557
558
ejs@0.8.8 node_modules/ejs
559
560
karma-chrome-launcher@0.1.12 node_modules/karma-chrome-launcher
561
└── which@1.1.1 (is-absolute@0.1.7)
562
563
passport-local@0.1.6 node_modules/passport-local
564
├── pkginfo@0.2.3
565
└── passport@0.1.18 (pause@0.0.1)
566
567
compression@1.0.11 node_modules/compression
568
├── on-headers@1.0.0
569
├── vary@1.0.0
570
├── bytes@1.0.0
571
├── compressible@1.1.1
572
├── debug@1.0.4 (ms@0.6.2)
573
└── accepts@1.0.7 (negotiator@0.4.7, mime-types@1.0.2)
574
575
grunt-build-control@0.1.3 node_modules/grunt-build-control
576
└── shelljs@0.2.6
577
578
grunt-newer@0.7.0 node_modules/grunt-newer
579
├── rimraf@2.2.6
580
└── async@0.2.10
581
582
should@3.3.2 node_modules/should
583
584
jsonwebtoken@0.3.0 node_modules/jsonwebtoken
585
└── jws@0.2.6 (jwa@0.0.1, base64url@0.0.6)
586
587
socketio-jwt@2.3.5 node_modules/socketio-jwt
588
├── xtend@2.1.2 (object-keys@0.4.0)
589
└── jsonwebtoken@1.1.2 (jws@0.2.6)
590
591
express@4.0.0 node_modules/express
592
├── methods@0.1.0
593
├── utils-merge@1.0.0
594
├── parseurl@1.0.1
595
├── debug@0.8.1
596
├── cookie-signature@1.0.3
597
├── fresh@0.2.2
598
├── qs@0.6.6
599
├── merge-descriptors@0.0.2
600
├── buffer-crc32@0.2.1
601
├── escape-html@1.0.1
602
├── range-parser@1.0.0
603
├── cookie@0.1.0
604
├── path-to-regexp@0.1.2
605
├── type-is@1.0.0 (mime@1.2.11)
606
├── send@0.2.0 (mime@1.2.11)
607
├── accepts@1.0.0 (mime@1.2.11, negotiator@0.3.0)
608
└── serve-static@1.0.1 (send@0.1.4)
609
610
body-parser@1.5.2 node_modules/body-parser
611
├── bytes@1.0.0
612
├── qs@0.6.6
613
├── media-typer@0.2.0
614
├── raw-body@1.3.0
615
├── depd@0.4.4
616
├── type-is@1.3.2 (mime-types@1.0.2)
617
└── iconv-lite@0.4.4
618
619
grunt-usemin@2.1.1 node_modules/grunt-usemin
620
├── debug@0.7.4
621
└── lodash@1.0.2
622
623
karma-coffee-preprocessor@0.2.1 node_modules/karma-coffee-preprocessor
624
└── coffee-script@1.7.1 (mkdirp@0.3.5)
625
626
grunt-contrib-cssmin@0.9.0 node_modules/grunt-contrib-cssmin
627
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
628
├── clean-css@2.1.8 (commander@2.1.0)
629
└── maxmin@0.1.0 (pretty-bytes@0.1.2, gzip-size@0.1.1)
630
631
supertest@0.11.0 node_modules/supertest
632
├── methods@0.1.0
633
└── superagent@0.17.0 (methods@0.0.1, debug@0.7.4, qs@0.6.5, cookiejar@1.3.0, extend@1.2.1, emitter-component@1.0.0, reduce-component@1.0.1, mime@1.2.5, formidable@1.0.14)
634
635
grunt-contrib-watch@0.6.1 node_modules/grunt-contrib-watch
636
├── async@0.2.10
637
├── tiny-lr-fork@0.0.5 (debug@0.7.4, faye-websocket@0.4.4, noptify@0.0.3, qs@0.5.6)
638
└── gaze@0.5.1 (globule@0.1.0)
639
640
karma-ng-scenario@0.1.0 node_modules/karma-ng-scenario
641
642
lodash@2.4.2 node_modules/lodash
643
644
requirejs@2.1.18 node_modules/requirejs
645
646
grunt-contrib-uglify@0.4.1 node_modules/grunt-contrib-uglify
647
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
648
├── maxmin@0.1.0 (pretty-bytes@0.1.2, gzip-size@0.1.1)
649
└── uglify-js@2.4.23 (uglify-to-browserify@1.0.2, async@0.2.10, yargs@3.5.4, source-map@0.1.34)
650
651
grunt-mocha-test@0.10.2 node_modules/grunt-mocha-test
652
├── hooker@0.2.3
653
├── fs-extra@0.8.1 (jsonfile@1.1.1, rimraf@2.2.8, ncp@0.4.2, mkdirp@0.3.5)
654
└── mocha@1.18.2 (diff@1.0.7, growl@1.7.0, commander@2.0.0, mkdirp@0.3.5, debug@2.2.0, glob@3.2.3, jade@0.26.3)
655
656
grunt-dom-munger@3.4.0 node_modules/grunt-dom-munger
657
└── cheerio@0.12.4 (entities@0.5.0, underscore@1.4.4, htmlparser2@3.1.4, cheerio-select@0.0.3)
658
659
karma-phantomjs-launcher@0.1.4 node_modules/karma-phantomjs-launcher
660
└── phantomjs@1.9.17 (which@1.0.9, progress@1.1.8, kew@0.4.0, request-progress@0.3.1, adm-zip@0.4.4, npmconf@2.1.1, fs-extra@0.18.4, request@2.42.0)
661
662
grunt@0.4.5 node_modules/grunt
663
├── which@1.0.9
664
├── dateformat@1.0.2-1.2.3
665
├── eventemitter2@0.4.14
666
├── getobject@0.1.0
667
├── rimraf@2.2.8
668
├── colors@0.6.2
669
├── async@0.1.22
670
├── grunt-legacy-util@0.2.0
671
├── hooker@0.2.3
672
├── exit@0.1.2
673
├── nopt@1.0.10 (abbrev@1.0.7)
674
├── minimatch@0.2.14 (sigmund@1.0.1, lru-cache@2.6.4)
675
├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.3)
676
├── lodash@0.9.2
677
├── coffee-script@1.3.3
678
├── underscore.string@2.2.1
679
├── iconv-lite@0.2.11
680
├── findup-sync@0.1.3 (glob@3.2.11, lodash@2.4.2)
681
├── grunt-legacy-log@0.1.2 (grunt-legacy-log-utils@0.1.1, underscore.string@2.3.3, lodash@2.4.2)
682
└── js-yaml@2.0.5 (argparse@0.1.16, esprima@1.0.4)
683
684
grunt-angular-templates@0.5.7 node_modules/grunt-angular-templates
685
└── html-minifier@0.6.9 (relateurl@0.2.6, change-case@2.1.6, clean-css@2.2.23, cli@0.6.6, uglify-js@2.4.23)
686
687
grunt-asset-injector@0.1.0 node_modules/grunt-asset-injector
688
└── wiredep@0.4.2 (chalk@0.1.1, lodash@1.3.1)
689
690
grunt-ng-annotate@0.2.3 node_modules/grunt-ng-annotate
691
└── ng-annotate@0.9.11 (tryor@0.1.2, simple-fmt@0.1.0, alter@0.2.0, simple-is@0.2.0, stringset@0.2.1, stringmap@0.2.2, stable@0.1.5, convert-source-map@0.4.1, ordered-ast-traverse@0.1.1, optimist@0.6.1, source-map@0.1.43, esprima@1.2.5)
692
693
grunt-svgmin@0.4.0 node_modules/grunt-svgmin
694
├── each-async@0.1.3
695
├── pretty-bytes@0.1.2
696
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
697
└── svgo@0.4.5 (colors@0.6.2, whet.extend@0.9.9, coa@0.4.1, sax@0.6.1, js-yaml@2.1.3)
698
699
grunt-contrib-imagemin@0.7.2 node_modules/grunt-contrib-imagemin
700
├── pretty-bytes@0.1.2
701
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
702
├── async@0.7.0
703
└── imagemin@0.4.9 (stat-mode@0.2.1, ware@0.3.0, image-type@0.1.4, nopt@3.0.2, tempfile@0.1.3, fs-extra@0.10.0, rimraf@2.4.0, imagemin-optipng@0.1.0, imagemin-jpegtran@0.1.0, imagemin-pngquant@0.1.3, imagemin-svgo@0.1.1)
704
705
karma-ng-jade2js-preprocessor@0.1.5 node_modules/karma-ng-jade2js-preprocessor
706
└── jade@1.3.1 (commander@2.1.0, character-parser@1.2.0, mkdirp@0.3.5, transformers@2.1.0, constantinople@2.0.1, with@3.0.1, monocle@1.1.51)
707
708
karma-jade-preprocessor@0.0.11 node_modules/karma-jade-preprocessor
709
└── jade@0.33.0 (character-parser@1.0.2, mkdirp@0.3.5, commander@1.2.0, with@1.1.1, constantinople@1.0.2, monocle@0.1.48, transformers@2.0.1)
710
711
socket.io-client@1.3.5 node_modules/socket.io-client
712
├── to-array@0.1.3
713
├── debug@0.7.4
714
├── indexof@0.0.1
715
├── object-component@0.0.3
716
├── component-bind@1.0.0
717
├── backo2@1.0.2
718
├── component-emitter@1.1.2
719
├── has-binary@0.1.6 (isarray@0.0.1)
720
├── parseuri@0.0.2 (better-assert@1.0.2)
721
├── engine.io-client@1.5.1 (component-inherit@0.0.3, xmlhttprequest@1.5.0, debug@1.0.4, parsejson@0.0.1, parseuri@0.0.4, parseqs@0.0.2, engine.io-parser@1.2.1, has-cors@1.0.3, ws@0.4.31)
722
└── socket.io-parser@2.2.4 (isarray@0.0.1, benchmark@1.0.0, json3@3.2.6)
723
724
socket.io@1.3.5 node_modules/socket.io
725
├── debug@2.1.0 (ms@0.6.2)
726
├── has-binary-data@0.1.3 (isarray@0.0.1)
727
├── socket.io-adapter@0.3.1 (object-keys@1.0.1, debug@1.0.2, socket.io-parser@2.2.2)
728
├── engine.io@1.5.1 (base64id@0.1.0, debug@1.0.3, engine.io-parser@1.2.1, ws@0.5.0)
729
└── socket.io-parser@2.2.4 (isarray@0.0.1, debug@0.7.4, component-emitter@1.1.2, benchmark@1.0.0, json3@3.2.6)
730
731
grunt-wiredep@1.8.0 node_modules/grunt-wiredep
732
└── wiredep@1.8.6 (propprop@0.3.0, minimist@1.1.1, chalk@0.5.1, through2@0.6.5, glob@4.5.3, bower-config@0.5.2)
733
734
grunt-contrib-jshint@0.10.0 node_modules/grunt-contrib-jshint
735
├── hooker@0.2.3
736
└── jshint@2.5.11 (strip-json-comments@1.0.2, underscore@1.6.0, exit@0.1.2, console-browserify@1.1.0, minimatch@1.0.0, shelljs@0.3.0, cli@0.6.6, htmlparser2@3.8.3)
737
738
connect-mongo@0.4.2 node_modules/connect-mongo
739
└── mongodb@1.4.38 (readable-stream@2.0.0, kerberos@0.0.11, bson@0.2.21)
740
741
grunt-nodemon@0.2.1 node_modules/grunt-nodemon
742
└── nodemon@1.0.20 (minimatch@0.2.14, ps-tree@0.0.3, update-notifier@0.1.10)
743
744
mongoose@3.8.30 node_modules/mongoose
745
├── regexp-clone@0.0.1
746
├── sliced@0.0.5
747
├── muri@1.1.0
748
├── hooks@0.2.1
749
├── mpath@0.1.1
750
├── mpromise@0.4.3
751
├── ms@0.1.0
752
├── mquery@1.4.0 (debug@0.7.4, bluebird@2.3.2)
753
└── mongodb@1.4.32 (readable-stream@2.0.0, kerberos@0.0.9, bson@0.2.21)
754
755
grunt-autoprefixer@0.7.6 node_modules/grunt-autoprefixer
756
├── diff@1.0.8
757
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
758
└── autoprefixer@1.3.1 (fs-extra@0.9.1, postcss@0.3.5, caniuse-db@1.0.30000213)
759
760
grunt-google-cdn@0.4.3 node_modules/grunt-google-cdn
761
├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.3, supports-color@0.2.0, strip-ansi@0.3.0, has-ansi@0.1.0)
762
├── bower@1.4.1 (is-root@1.0.0, junk@1.0.1, stringify-object@1.0.1, user-home@1.1.1, chmodr@0.1.0, abbrev@1.0.7, rimraf@2.4.0, archy@1.0.0, opn@1.0.2, bower-logger@0.2.2, bower-endpoint-parser@0.2.2, graceful-fs@3.0.8, lru-cache@2.6.4, lockfile@1.0.1, nopt@3.0.2, retry@0.6.1, tmp@0.0.24, request-progress@0.3.1, q@1.4.1, shell-quote@1.4.3, chalk@1.0.0, which@1.1.1, bower-json@0.4.0, semver@2.3.2, promptly@0.2.0, p-throttler@0.1.1, fstream@1.0.7, mkdirp@0.5.0, fstream-ignore@1.0.2, glob@4.5.3, insight@0.5.3, tar-fs@1.5.1, decompress-zip@0.1.0, update-notifier@0.3.2, request@2.53.0, github@0.2.4, bower-registry-client@0.3.0, cardinal@0.4.4, mout@0.11.0, bower-config@0.6.1, configstore@0.3.2, handlebars@2.0.0, inquirer@0.8.0)
763
└── google-cdn@0.7.0 (regexp-quote@0.0.0, google-cdn-data@0.1.17, debug@1.0.4, async@0.9.2, semver@2.3.2, cdnjs-cdn-data@0.1.1, bower@1.3.12)
764
765
karma@0.12.36 node_modules/karma
766
├── di@0.0.1
767
├── graceful-fs@3.0.8
768
├── mime@1.3.4
769
├── colors@1.1.2
770
├── q@1.4.1
771
├── glob@5.0.10 (path-is-absolute@1.0.0, inherits@2.0.1, once@1.3.2, inflight@1.0.4)
772
├── optimist@0.6.1 (wordwrap@0.0.3, minimist@0.0.10)
773
├── rimraf@2.4.0 (glob@4.5.3)
774
├── minimatch@2.0.8 (brace-expansion@1.1.0)
775
├── useragent@2.1.7 (lru-cache@2.2.4)
776
├── chokidar@1.0.3 (arrify@1.0.0, path-is-absolute@1.0.0, is-glob@1.1.3, glob-parent@1.2.0, async-each@0.1.6, is-binary-path@1.0.1, readdirp@1.3.0, anymatch@1.3.0)
777
├── source-map@0.4.2 (amdefine@0.1.1)
778
├── http-proxy@0.10.4 (colors@0.6.2, pkginfo@0.3.0, utile@0.2.1)
779
├── connect@2.30.0 (utils-merge@1.0.0, cookie-signature@1.0.6, pause@0.0.1, vhost@3.0.0, response-time@2.3.1, cookie@0.1.3, content-type@1.0.1, on-headers@1.0.0, bytes@2.1.0, basic-auth-connect@1.0.0, parseurl@1.3.0, fresh@0.3.0, cookie-parser@1.3.5, depd@1.0.1, connect-timeout@1.6.2, http-errors@1.3.1, qs@2.4.2, method-override@2.3.3, debug@2.2.0, serve-favicon@2.3.0, finalhandler@0.4.0, morgan@1.6.0, csurf@1.8.3, express-session@1.11.3, serve-static@1.10.0, type-is@1.6.3, multiparty@3.3.2, errorhandler@1.4.0, compression@1.5.0, body-parser@1.13.1, serve-index@1.7.0)
780
├── lodash@3.9.3
781
├── log4js@0.6.26 (async@0.2.10, underscore@1.8.2, readable-stream@1.0.33, semver@4.3.6)
782
└── socket.io@0.9.16 (base64id@0.1.0, policyfile@0.0.4, redis@0.7.3, socket.io-client@0.9.16)
783
784
grunt-protractor-runner@1.2.1 node_modules/grunt-protractor-runner
785
├── split@0.3.3 (through@2.3.7)
786
├── through2@0.5.1 (xtend@3.0.0, readable-stream@1.0.33)
787
└── protractor@1.8.0 (jasminewd@1.1.0, jasminewd2@0.0.2, saucelabs@0.1.1, html-entities@1.1.2, q@1.0.0, minijasminenode@1.1.1, optimist@0.6.1, adm-zip@0.4.4, glob@3.2.11, accessibility-developer-tools@2.6.0, source-map-support@0.2.10, request@2.36.0, jasmine@2.1.1, selenium-webdriver@2.44.0)
788
789
grunt-node-inspector@0.1.6 node_modules/grunt-node-inspector
790
└── node-inspector@0.9.2 (debug@1.0.4, async@0.9.2, serve-favicon@2.3.0, which@1.1.1, semver@3.0.1, rc@0.5.5, strong-data-uri@0.1.1, yargs@1.3.3, glob@4.5.3, express@4.12.4, ws@0.4.32, biased-opener@0.2.6, v8-debug@0.4.6, v8-profiler@5.2.9)
791
[www@foobar statetest]$ ls
792
bower.json  client  e2e	 Gruntfile.js  karma.conf.js  node_modules  package.json  protractor.conf.js  server  typescript
793
[www@foobar statetest]$ git init .
794
Initialized empty Git repository in /home/www/dev/statetest/.git/
795
[www@foobar statetest]$ vi client/app/app.js
796
"client/app/app.js" [noeol] 54L, 1497C'use strict';
797
798
angular.module('testApp', [
799
  'ngCookies',
800
  'ngResource',
801
  'ngSanitize',
802
  'btford.socket-io',
803
  'ui.router',
804
  'ui.bootstrap'
805
])
806
  .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
807
    $urlRouterProvider .otherwise('/'); $locationProvider.html5Mode(true);
808
    $httpProvider.interceptors.push('authInterceptor');
809
  })
810
811
  .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) {
812
    return { // Add authorization token to headers request: function (config) { config.headers = config.headers || {}; if ($cookieStore.get('token')) { config.headers.Authorization = 'Bearer ' + $cookieStore.get('token'); } return config; }, // Intercept 401s and redirect you to login responseError: function(response) {1,1Top+q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b31 // Intercept 401s and redirect you to login responseError: function(response) { if(response.status === 401) { $location.path('/login'); // remove any stale tokens $cookieStore.remove('token'); return $q.reject(response); } else { return $q.reject(response); } }
813
    };
814
  })
815
816
  .run(function ($rootScope, $location, Auth) {
817
    // Redirect to login if route requires auth and you're not logged in
818
    $rootScope.$on('$stateChangeStart', function (event, next) { Auth.isLoggedInAsync(function(loggedIn) { if (next.authenticate && !loggedIn) { $location.path('/login'); } });
819
    });
820
  });
821
[www@foobar/statetest]$,git9addw-Atten13,20Top13,20Top:qchange; before #1  3 seconds ago/');13,20Top:w												   ~																								      ~																									 ~																								    ~																								       ~																								  30,7Bot29,0-1Bot },28,7Bot return config;27,7Bot }26,7Bot config.headers.Authorization = 'Bearer ' + $cookieStore.get('token');25,7Bot if ($cookieStore.get('token')) {24,7Bot54 config.headers = config.headers || {};23,795% request: function (config) {22,791% // Add authorization token to headers21,786% return {20,782% .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) {19,778%18,0-173% })17,469% $httpProvider.interceptors.push('authInterceptor');16,765% $locationProvider.html5Mode(true);15,760%14,0-156% .otherwise('/');13,752% $urlRouterProvider12,747% .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {11,743%])10,239% 'ui.bootstrap'9,734% 'ui.router',8,730% 'btford.socket-io',7,726% 'ngSanitize',6,721% 'ngResource',5,717% 'ngCookies',4,713%angular.module('testApp', [3,78%2,0-14%'use strict';1,7Top2,0-13,7  456789()10,2()1,7234,0-13()0--2INSERT --13,20To/l');lo');og');gi');in');513,24Top:w
822
[www@foobar statetest]$ vitclient/app/app.js
823
"client/app/app.js" 54L, 1498C'use strict';
824
825
angular.module('testApp', [
826
  'ngCookies',
827
  'ngResource',
828
  'ngSanitize',
829
  'btford.socket-io',
830
  'ui.router',
831
  'ui.bootstrap'
832
])
833
  .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
834
    $urlRouterProvider .otherwise('/'); $locationProvider.html5Mode(true);
835
    $httpProvider.interceptors.push('authInterceptor');
836
  })
837
838
  .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) {
839
[www@foobar/statetest]$,git0diffritten13,24Top13,24Top:qst: function (config) { config.headers = config.headers || {}; if ($cookieStore.get('token')) { config.headers.Authorization = 'Bearer ' + $cookieStore.get('token'); } return config; }, // Intercept 401s and redirect you to login responseError: function(response) {13,7Top+q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q()0--2INSERT --13,20To/l');lo');og');gi');in');513,24Top:w
840
diff --git a/client/app/app.js b/client/app/app.js
841
index 06f98ed..be5cb98 100644
842
--- a/client/app/app.js
843
+++ b/client/app/app.js
844
@@ -10,7 +10,7 @@ angular.module('testApp', [
845
 ])
846
   .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
847
     $urlRouterProvider
848
-      .otherwise('/');
849
+      .otherwise('/login');
850
851
     $locationProvider.html5Mode(true);
852
     $httpProvider.interceptors.push('authInterceptor');
853
diff --git a/typescript b/typescript
854
index fd4ec25..f806471 100644
855
--- a/typescript
856
+++ b/typescript
857
@@ -818,4 +818,22 @@ angular.module('testApp', [
858
     $rootScope.$on('$stateChangeStart', function (event, next) { Auth.isLoggedInAsync(function(loggedIn) { if (next.authenticate && !loggedIn) { $location.path('/login'); } });
859
     });
860
   });
861
-~
862
\ No newline at end of file
863
+~
864
+0;www@foobar:~/dev/statetest^G[www@foobar statetest]$ vi client/app/app.js
865
+"client/app/app.js" 54L, 1498Cc'use strict';
866
+
867
+angular.module('testApp', [
868
+  'ngCookies',
869
+  'ngResource',
870
+  'ngSanitize',
871
+  'btford.socket-io',
872
+  'ui.router',
873
+  'ui.bootstrap'
874
+])
875
+  .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
876
+    $urlRouterProvider .otherwise('/'); $locationProvider.html5Mode(true);
877
+    $httpProvider.interceptors.push('authInterceptor');
878
+  })
879
+
880
+  .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) {
881
+    return { // Add authorization token to headers request: function (config) { config.headers = config.headers || {}; if ($cookieStore.get('token')) { config.headers.Authorization = 'Bearer ' +
882
\ No newline at end of file
883
[www@foobar statetest]$ git diff
884
diff --git a/client/app/app.js b/client/app/app.js
885
index 06f98ed..be5cb98 100644
886
--- a/client/app/app.js
887
+++ b/client/app/app.js
888
@@ -10,7 +10,7 @@ angular.module('testApp', [
889
 ])
890
   .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
891
     $urlRouterProvider
892
-      .otherwise('/');
893
+      .otherwise('/login');
894
895
     $locationProvider.html5Mode(true);
896
     $httpProvider.interceptors.push('authInterceptor');
897
diff --git a/typescript b/typescript
898
index fd4ec25..f806471 100644
899
--- a/typescript
900
+++ b/typescript
901
@@ -818,4 +818,22 @@ angular.module('testApp', [
902
     $rootScope.$on('$stateChangeStart', function (event, next) { Auth.isLoggedInAsync(function(loggedIn) { if (next.authenticate && !loggedIn) { $location.path('/login'); } });
903
     });
904
   });
905
-~
906
\ No newline at end of file
907
+~
908
+0;www@foobar:~/dev/statetest^G[www@foobar statetest]$ vi client/app/app.js
909
+"client/app/app.js" 54L, 1498Cc'use strict';
910
+
911
+angular.module('testApp', [
912
+  'ngCookies',
913
+  'ngResource',
914
+  'ngSanitize',
915
[www@foobar statetest]$ !vi
916
vi client/app/app.js
917
"client/app/app.js" 54L, 1503C'use strict';
918
919
angular.module('testApp', [
920
  'ngCookies',
921
  'ngResource',
922
  'ngSanitize',
923
  'btford.socket-io',
924
  'ui.router',
925
  'ui.bootstrap'
926
])
927
  .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
928
    $urlRouterProvider .otherwise('/login'); $locationProvider.html5Mode(true);
929
    $httpProvider.interceptors.push('authInterceptor');
930
  })
931
932
  .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) {
933
[www@foobar{statetest]$hcleartion token to headers request: function (config) { config.headers = config.headers || {}; if ($cookieStore.get('token')) { config.headers.Authorization = 'Bearer ' + $cookieStore.get('token'); } return config; }, // Intercept 401s and redirect you to login responseError: function(response) {13,7Top+q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b314,0-13,7  :q
934
[www@foobar statetest]$ git diff
935
diff --git a/client/app/app.js b/client/app/app.js
936
index 06f98ed..be5cb98 100644
937
--- a/client/app/app.js
938
+++ b/client/app/app.js
939
@@ -10,7 +10,7 @@ angular.module('testApp', [
940
 ])
941
   .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
942
     $urlRouterProvider
943
-      .otherwise('/');
944
+      .otherwise('/login');
945
946
     $locationProvider.html5Mode(true);
947
     $httpProvider.interceptors.push('authInterceptor');
948
diff --git a/typescript b/typescript
949
index fd4ec25..5a5c286 100644
950
--- a/typescript
951
+++ b/typescript
952
@@ -818,4 +818,88 @@ angular.module('testApp', [
953
     $rootScope.$on('$stateChangeStart', function (event, next) { Auth.isLoggedInAsync(function(loggedIn) { if (next.authenticate && !loggedIn) { $location.path('/login'); } });
954
     });
955
   });
956
-~
957
\ No newline at end of file
958
+~
959
+0;www@foobar:~/dev/statetest^G[www@foobar statetest]$ vi client/app/app.js
960
+"client/app/app.js" 54L, 1498Cc'use strict';
961
+
962
+angular.module('testApp', [
963
+  'ngCookies',
964
+  'ngResource',
965
+  'ngSanitize',
966
+  'btford.socket-io',
967
+  'ui.router',
968
+  'ui.bootstrap'
969
+])
970
+  .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
971
+    $urlRouterProvider .otherwise('/'); $locationProvider.html5Mode(true);
972
+    $httpProvider.interceptors.push('authInterceptor');
973
+  })
974
+
975
+  .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) {
976
+    return { // Add authorization token to headers request: function (config) { config.headers = config.headers || {}; if ($cookieStore.get('token')) { config.headers.Authorization = 'Bearer ' +
977
+^Mdiff --git a/client/app/app.js b/client/app/app.js
978
+index 06f98ed..be5cb98 100644
979
+--- a/client/app/app.js
980
++++ b/client/app/app.js
981
+@@ -10,7 +10,7 @@ angular.module('testApp', [
982
+ ])
983
+   .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
984
+     $urlRouterProvider
985
+-	.otherwise('/');
986
++	.otherwise('/login');
987
+
988
+     $locationProvider.html5Mode(true);
989
+     $httpProvider.interceptors.push('authInterceptor');
990
+diff --git a/typescript b/typescript
991
+index fd4ec25..f806471 100644
992
+--- a/typescript
993
++++ b/typescript
994
+@@ -818,4 +818,22 @@ angular.module('testApp', [
995
+     $rootScope.$on('$stateChangeStart', function (event, next) { Auth.isLoggedInAsync(function(loggedIn) { if (next.authenticate && !loggedIn) { $location.path('/login'); } });
996
+     });
997
+   });
998
+-~
999
+\ No newline at end of file
1000
++~
1001
++0;www@foobar:~/dev/statetest^G[www@foobar statetest]$ vi client/app/app.js
1002
++"client/app/app.js" 54L, 1498Cc'use strict';
1003
++
1004
++angular.module('testApp', [
1005
++  'ngCookies',
1006
++  'ngResource',
1007
++  'ngSanitize',
1008
+:^M+  'btford.socket-io',
1009
++  'ui.router',
1010
++  'ui.bootstrap'
1011
++])
1012
++  .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
1013
++    $urlRouterProvider .otherwise('/'); $locationProvider.html5Mode(true);
1014
++    $httpProvider.interceptors.push('authInterceptor');
1015
++  })
1016
++
1017
++  .factory('authInterceptor', function ($rootScope, $q, $cookieStore, $location) {
1018
++    return { // Add authorization token to headers request: function (config) { config.headers = config.headers || {}; if ($cookieStore.get('token')) { config.headers.Authorization = 'Bearer '
1019
+\ No newline at end of file
1020
+(END) ^M^G^M(END) ^M^G^M(END) ^M0;www@foobar:~/dev/statetest^G[www@foobar statetest]$ git diff
1021
+^Mdiff --git a/client/app/app.js b/client/app/app.js
1022
+index 06f98ed..be5cb98 100644
1023
+--- a/client/app/app.js
1024
++++ b/client/app/app.js
1025
+@@ -10,7 +10,7 @@ angular.module('testApp', [
1026
+ ])
1027
+   .config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
1028
+     $urlRouterProvider
1029
+-	.otherwise('/');
1030
++	.otherwise('/login');
1031
+
1032
+     $locationProvider.html5Mode(true);
1033
+     $httpProvider.interceptors.push('authInterceptor');
1034
+diff --git a/typescript b/typescript
1035
+index fd4ec25..f806471 100644
1036
+--- a/typescript
1037
++++ b/typescript
1038
+@@ -818,4 +818,22 @@ angular.module('testApp', [
1039
+     $rootScope.$on('$stateChangeStart', function (event, next) { Auth.isLoggedInAsync(function(loggedIn) { if (next.authenticate && !loggedIn) { $location.path('/login'); } });
1040
+     });
1041
+   });
1042
+-~
1043
\ No newline at end of file
1044
[www@foobar statetest]$ ls -latr
1045
total 176
1046
drwxrwxr-x  3 www www  4096 Jun 19 15:14 ..
1047
-rw-r--r--  1 www www	 87 Jun 19 15:15 .gitignore
1048
-rw-rw-r--  1 www www  1185 Jun 19 15:15 .yo-rc.json
1049
-rw-r--r--  1 www www	554 Jun 19 15:15 bower.json
1050
-rw-r--r--  1 www www  2820 Jun 19 15:15 package.json
1051
-rw-r--r--  1 www www	 47 Jun 19 15:15 .bowerrc
1052
-rw-r--r--  1 www www	  8 Jun 19 15:15 .buildignore
1053
-rw-r--r--  1 www www	415 Jun 19 15:15 .editorconfig
1054
-rw-r--r--  1 www www	 11 Jun 19 15:15 .gitattributes
1055
-rw-r--r--  1 www www	134 Jun 19 15:15 .travis.yml
1056
drwxrwxr-x  3 www www  4096 Jun 19 15:15 e2e
1057
-rw-r--r--  1 www www  2387 Jun 19 15:15 karma.conf.js
1058
-rw-r--r--  1 www www 15184 Jun 19 15:15 Gruntfile.js
1059
-rw-r--r--  1 www www  1598 Jun 19 15:15 protractor.conf.js
1060
drwxrwxr-x  7 www www  4096 Jun 19 15:15 server
1061
drwxrwxr-x  6 www www  4096 Jun 19 15:15 client
1062
drwxrwxr-x 76 www www  4096 Jun 19 15:15 node_modules
1063
drwxrwxr-x  7 www www  4096 Jun 19 15:19 .
1064
drwxrwxr-x  7 www www  4096 Jun 19 15:19 .git
1065
-rw-rw-r--  1 www www 86016 Jun 19 15:21 typescript
1066
[www@foobar statetest]$ git status
1067
# On branch master
1068
#
1069
# Initial commit
1070
#
1071
# Changes to be committed:
1072
#   (use "git rm --cached <file>..." to unstage)
1073
#
1074
#	new file:   .bowerrc
1075
#	new file:   .buildignore
1076
#	new file:   .editorconfig
1077
#	new file:   .gitattributes
1078
#	new file:   .gitignore
1079
#	new file:   .travis.yml
1080
#	new file:   .yo-rc.json
1081
#	new file:   Gruntfile.js
1082
#	new file:   bower.json
1083
#	new file:   client/.htaccess
1084
#	new file:   client/.jshintrc
1085
#	new file:   client/app/account/account.js
1086
#	new file:   client/app/account/login/login.controller.js
1087
#	new file:   client/app/account/login/login.css
1088
#	new file:   client/app/account/login/login.html
1089
#	new file:   client/app/account/settings/settings.controller.js
1090
#	new file:   client/app/account/settings/settings.html
1091
#	new file:   client/app/account/signup/signup.controller.js
1092
#	new file:   client/app/account/signup/signup.html
1093
#	new file:   client/app/admin/admin.controller.js
1094
#	new file:   client/app/admin/admin.css
1095
#	new file:   client/app/admin/admin.html
1096
#	new file:   client/app/admin/admin.js
1097
#	new file:   client/app/app.css
1098
#	new file:   client/app/app.js
1099
#	new file:   client/app/main/main.controller.js
1100
#	new file:   client/app/main/main.controller.spec.js
1101
#	new file:   client/app/main/main.css
1102
#	new file:   client/app/main/main.html
1103
#	new file:   client/app/main/main.js
1104
#	new file:   client/assets/images/yeoman.png
1105
#	new file:   client/components/auth/auth.service.js
1106
#	new file:   client/components/auth/user.service.js
1107
#	new file:   client/components/modal/modal.css
1108
#	new file:   client/components/modal/modal.html
1109
#	new file:   client/components/modal/modal.service.js
1110
#	new file:   client/components/mongoose-error/mongoose-error.directive.js
1111
#	new file:   client/components/navbar/navbar.controller.js
1112
#	new file:   client/components/navbar/navbar.html
1113
#	new file:   client/components/socket/socket.mock.js
1114
#	new file:   client/components/socket/socket.service.js
1115
#	new file:   client/favicon.ico
1116
#	new file:   client/index.html
1117
#	new file:   client/robots.txt
1118
#	new file:   e2e/main/main.po.js
1119
#	new file:   e2e/main/main.spec.js
1120
#	new file:   karma.conf.js
1121
#	new file:   package.json
1122
#	new file:   protractor.conf.js
1123
#	new file:   server/.jshintrc
1124
#	new file:   server/.jshintrc-spec
1125
#	new file:   server/api/thing/index.js
1126
#	new file:   server/api/thing/thing.controller.js
1127
#	new file:   server/api/thing/thing.model.js
1128
#	new file:   server/api/thing/thing.socket.js
1129
#	new file:   server/api/thing/thing.spec.js
1130
#	new file:   server/api/user/index.js
1131
#	new file:   server/api/user/user.controller.js
1132
#	new file:   server/api/user/user.model.js
1133
#	new file:   server/api/user/user.model.spec.js
1134
#	new file:   server/app.js
1135
#	new file:   server/auth/auth.service.js
1136
#	new file:   server/auth/index.js
1137
#	new file:   server/auth/local/index.js
1138
#	new file:   server/auth/local/passport.js
1139
#	new file:   server/components/errors/index.js
1140
#	new file:   server/config/environment/development.js
1141
#	new file:   server/config/environment/index.js
1142
#	new file:   server/config/environment/production.js
1143
#	new file:   server/config/environment/test.js
1144
#	new file:   server/config/express.js
1145
#	new file:   server/config/local.env.sample.js
1146
#	new file:   server/config/seed.js
1147
#	new file:   server/config/socketio.js
1148
#	new file:   server/routes.js
1149
#	new file:   server/views/404.html
1150
#	new file:   typescript
1151
#
1152
# Changed but not updated:
1153
#   (use "git add <file>..." to update what will be committed)
1154
#   (use "git checkout -- <file>..." to discard changes in working directory)
1155
#
1156
#	modified:   client/app/app.js
1157
#	modified:   typescript
1158
#
1159
[www@foobar statetest]$ jobs
1160
[www@foobar statetest]$ ps
1161
  PID TTY	   TIME CMD
1162
 2884 pts/3    00:00:00 bash
1163
 3825 pts/3    00:00:00 ps
1164
[www@foobar statetest]$ grunt serve
1165
Running "serve" task
1166
1167
Running "clean:server" (clean) task
1168
1169
Running "env:all" (env) task
1170
1171
Running "concurrent:server" (concurrent) task
1172
1173
Running "injector:scripts" (injector) task
1174
Missing option `template`, using `dest` as template instead
1175
Injecting js files (14 files)
1176
1177
Running "injector:css" (injector) task
1178
Missing option `template`, using `dest` as template instead
1179
Injecting css files (5 files)
1180
1181
Running "wiredep:target" (wiredep) task
1182
client/index.html modified.
1183
1184
Running "autoprefixer:dist" (autoprefixer) task
1185
1186
Running "express:dev" (express) task
1187
Starting background Express server
1188
Debugger listening on port 5858
1189
Express server listening on 9000, in development mode
1190
1191
Running "wait" task
1192
>> Waiting for server reload...
1193
events.js:85
1194
      throw er; // Unhandled 'error' event
1195
	    ^
1196
Error: failed to connect to [localhost:27017]
1197
    at null.<anonymous> (/home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:555:25)
1198
    at emit (events.js:118:17)
1199
    at null.<anonymous> (/home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:156:15)
1200
    at emit (events.js:110:17)
1201
    at Socket.<anonymous> (/home/www/dev/statetest/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection.js:534:10)
1202
    at Socket.emit (events.js:107:17)
1203
    at net.js:459:14
1204
    at process._tickCallback (node.js:355:11)
1205
Done waiting!
1206
1207
Running "open:server" (open) task
1208
Warning: Command failed: /bin/sh -c /home/www/dev/statetest/node_modules/open/vendor/xdg-open "http://localhost:9000"
1209
xdg-open: no method available for opening 'http://localhost:9000'
1210
 Use --force to continue.
1211
1212
Aborted due to warnings.
1213
1214
1215
Execution Time (2015-06-19 22:21:36 UTC)
1216
loading tasks	   179ms  ▇▇▇▇▇▇▇ 4%
1217
clean:server	    50ms  ▇▇ 1%
1218
injector:scripts    54ms  ▇▇ 1%
1219
wiredep:target	   739ms  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 17%
1220
autoprefixer:dist   61ms  ▇▇▇ 1%
1221
express:dev	    1.6s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 37%
1222
wait		    1.5s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 34%
1223
open:server	   115ms  ▇▇▇▇▇ 3%
1224
Total 4.5s
1225
1226
[www@foobar statetest]$ grunt serve
1227
Running "serve" task
1228
1229
Running "clean:server" (clean) task
1230
1231
Running "env:all" (env) task
1232
1233
Running "concurrent:server" (concurrent) task
1234
1235
Running "injector:scripts" (injector) task
1236
Missing option `template`, using `dest` as template instead
1237
Injecting js files (14 files)
1238
>> Nothing changed
1239
1240
Running "injector:css" (injector) task
1241
Missing option `template`, using `dest` as template instead
1242
Injecting css files (5 files)
1243
>> Nothing changed
1244
1245
Running "wiredep:target" (wiredep) task
1246
1247
Running "autoprefixer:dist" (autoprefixer) task
1248
1249
Running "express:dev" (express) task
1250
Starting background Express server
1251
Debugger listening on port 5858
1252
Express server listening on 9000, in development mode
1253
1254
Running "wait" task
1255
>> Waiting for server reload...
1256
finished populating users
1257
Done waiting!
1258
1259
Running "open:server" (open) task
1260
Warning: Command failed: /bin/sh -c /home/www/dev/statetest/node_modules/open/vendor/xdg-open "http://localhost:9000"
1261
xdg-open: no method available for opening 'http://localhost:9000'
1262
 Use --force to continue.
1263
1264
Aborted due to warnings.
1265
1266
1267
Execution Time (2015-06-19 22:28:44 UTC)
1268
loading tasks	   223ms  ▇▇▇▇▇▇▇▇▇ 6%
1269
clean:server	    65ms  ▇▇▇ 2%
1270
injector:scripts    68ms  ▇▇▇ 2%
1271
wiredep:target	   865ms  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 21%
1272
autoprefixer:dist   74ms  ▇▇▇ 2%
1273
express:dev	    1.1s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 26%
1274
wait		    1.5s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 37%
1275
open:server	    76ms  ▇▇▇ 2%
1276
Total 4s
1277
1278
[www@foobar statetest]$
1279
[www@foobar statetest]$ grunt serve --force
1280
Running "serve" task
1281
1282
Running "clean:server" (clean) task
1283
1284
Running "env:all" (env) task
1285
1286
Running "concurrent:server" (concurrent) task
1287
1288
Running "injector:scripts" (injector) task
1289
Missing option `template`, using `dest` as template instead
1290
Injecting js files (14 files)
1291
>> Nothing changed
1292
1293
Running "injector:css" (injector) task
1294
Missing option `template`, using `dest` as template instead
1295
Injecting css files (5 files)
1296
>> Nothing changed
1297
1298
Running "wiredep:target" (wiredep) task
1299
1300
Running "autoprefixer:dist" (autoprefixer) task
1301
1302
Running "express:dev" (express) task
1303
Starting background Express server
1304
Debugger listening on port 5858
1305
Express server listening on 9000, in development mode
1306
1307
Running "wait" task
1308
>> Waiting for server reload...
1309
finished populating users
1310
Done waiting!
1311
1312
Running "open:server" (open) task
1313
Warning: Command failed: /bin/sh -c /home/www/dev/statetest/node_modules/open/vendor/xdg-open "http://localhost:9000"
1314
xdg-open: no method available for opening 'http://localhost:9000'
1315
 Used --force, continuing.
1316
1317
Running "watch" task
1318
Waiting...
1319
[undefined:undefined] CONNECTED
1320
GET /api/things 200 11ms
1321
^C
1322
1323
Execution Time (2015-06-19 22:29:31 UTC)
1324
wiredep:target	476ms  ▇▇ 1%
1325
express:dev	 1.1s  ▇▇▇▇▇ 3%
1326
wait		 1.5s  ▇▇▇▇▇▇ 3%
1327
watch		40.5s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 92%
1328
Total 44.2s
1329
1330
Stopping Express server
1331
[www@foobar statetest]$ git
1332
[www@foobar statetest]$ ^C
1333
[www@foobar statetest]$ exit
1334
1335
Script done on Fri 19 Jun 2015 03:30:23 PM PDT