@@ -216,7 +216,7 @@ define([
216
216
Jupyter . notebook . config . loaded . then ( function ( ) {
217
217
var data = Jupyter . notebook . config . data [ configKey ] ;
218
218
if ( data == undefined ) {
219
- reject ( 'No data available.' ) ;
219
+ resolve ( data ) ;
220
220
return ;
221
221
}
222
222
if ( dataKey == '' ) {
@@ -335,16 +335,21 @@ define([
335
335
return new Promise ( function ( resolve , reject ) {
336
336
try {
337
337
fetch ( url ) . then ( function ( response ) {
338
- if ( response . statusCode === 200 ) {
338
+ // if (response.statusCode === 200) {
339
+ // return response.json();
340
+ // } else if (response.statusCode === 204) {
341
+ // throw new Error('No Contents', response);
342
+ // } else if (response.statusCode === 404) {
343
+ // throw new Error('Page Not Found', response);
344
+ // } else if (response.statusCode === 500) {
345
+ // throw new Error('Internal Server Error', response);
346
+ // } else {
347
+ // throw new Error('Unexpected Http Status Code', response);
348
+ // }
349
+ if ( response . ok ) {
339
350
return response . json ( ) ;
340
- } else if ( response . statusCode === 204 ) {
341
- throw new Error ( 'No Contents' , response ) ;
342
- } else if ( response . statusCode === 404 ) {
343
- throw new Error ( 'Page Not Found' , response ) ;
344
- } else if ( response . statusCode === 500 ) {
345
- throw new Error ( 'Internal Server Error' , response ) ;
346
351
} else {
347
- throw new Error ( 'Unexpected Http Status Code ' , response ) ;
352
+ throw new Error ( 'Error ' , response ) ;
348
353
}
349
354
} ) . then ( function ( data ) {
350
355
resolve ( data . info . version ) ;
@@ -366,6 +371,7 @@ define([
366
371
}
367
372
368
373
checkVpVersion ( background = false ) {
374
+ let that = this ;
369
375
let nowVersion = this . getVpInstalledVersion ( ) ;
370
376
this . getPackageVersion ( ) . then ( function ( latestVersion ) {
371
377
if ( nowVersion === latestVersion ) {
@@ -377,8 +383,11 @@ define([
377
383
let msg = com_util . formatString ( 'Visualpython is up to date. ({0})' , latestVersion ) ;
378
384
com_util . renderInfoModal ( msg ) ;
379
385
}
386
+ // update version_timestamp
387
+ that . setData ( { 'version_timestamp' : new Date ( ) . getTime ( ) } , 'vpcfg' ) ;
380
388
} else {
381
- let msg = com_util . formatString ( 'Visualpython updates are available.\n(Latest version: {0})' , latestVersion ) ;
389
+ let msg = com_util . formatString ( 'Visualpython updates are available.<br/>(Latest version: {0} / Your version: {1})' ,
390
+ latestVersion , nowVersion ) ;
382
391
if ( background ) {
383
392
// show version update icon
384
393
$ ( '#vp_versionUpdater' ) . attr ( 'title' , msg ) ;
@@ -399,9 +408,20 @@ define([
399
408
break ;
400
409
case 1 :
401
410
// update
411
+ let info = [
412
+ '## Visual Python Upgrade' ,
413
+ 'NOTE: ' ,
414
+ '- Refresh your web browser to start a new version.' ,
415
+ '- Save VP Note before refreshing the page.'
416
+ ] ;
417
+ com_interface . insertCell ( 'markdown' , info . join ( '\n' ) ) ;
402
418
com_interface . insertCell ( 'code' , '!pip install visualpython --upgrade' ) ;
403
419
com_interface . insertCell ( 'code' , '!visualpy install' ) ;
404
- // TODO: refresh browser, after executed
420
+
421
+ // update version_timestamp
422
+ that . setData ( { 'version_timestamp' : new Date ( ) . getTime ( ) } , 'vpcfg' ) ;
423
+ // hide updater
424
+ $ ( '#vp_versionUpdater' ) . hide ( ) ;
405
425
break ;
406
426
}
407
427
}
0 commit comments