This repository was archived by the owner on Apr 8, 2020. It is now read-only.
File tree Expand file tree Collapse file tree 13 files changed +93
-64
lines changed Expand file tree Collapse file tree 13 files changed +93
-64
lines changed Original file line number Diff line number Diff line change @@ -4,6 +4,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
44
55## [ 0.8.0] - in progress
66- save tutorial progress to localStorage
7+ - check for tutorial package updates
78
89## [ 0.7.0] - 2016-04-23
910
Original file line number Diff line number Diff line change 11"use strict" ;
22var check_system_1 = require ( './check-system' ) ;
33var store_1 = require ( '../../store' ) ;
4- var check_tutorials_1 = require ( '../tutorials/check-tutorials ' ) ;
4+ var check_1 = require ( '../tutorials/check' ) ;
55var result = function ( x ) { return x ; } ;
66function allTrue ( obj ) {
77 return Object . values ( obj ) . every ( function ( x ) { return x === true ; } ) ;
@@ -15,7 +15,7 @@ function setupVerify() {
1515 packageJson = ! ! pj ;
1616 }
1717 if ( dir && packageJson ) {
18- tutorial = ! ! check_tutorials_1 . searchForTutorials ( pj . dependencies ) . length || ! ! check_tutorials_1 . searchForTutorials ( pj . devDependencies ) . length ;
18+ tutorial = ! ! check_1 . searchForTutorials ( pj . dependencies ) . length || ! ! check_1 . searchForTutorials ( pj . devDependencies ) . length ;
1919 }
2020 var checks = {
2121 system : {
Original file line number Diff line number Diff line change @@ -4,6 +4,7 @@ var fs_1 = require('fs');
44var exists_1 = require ( '../../services/exists' ) ;
55var is_tutorial_1 = require ( './is-tutorial' ) ;
66var store_1 = require ( '../../store' ) ;
7+ var update_1 = require ( './update' ) ;
78function searchForTutorials ( deps ) {
89 if ( ! ! deps && Object . keys ( deps ) . length > 0 ) {
910 var dir_1 = store_1 . default . getState ( ) . dir ;
@@ -23,6 +24,7 @@ function searchForTutorials(deps) {
2324 return {
2425 name : name ,
2526 version : version ,
27+ latest : ! update_1 . canUpdateTutorial ( name , version )
2628 } ;
2729 } ) ) ;
2830 }
Original file line number Diff line number Diff line change 11"use strict" ;
22var _types_1 = require ( '../../actions/_types' ) ;
3- var update_tutorial_1 = require ( './update-tutorial ' ) ;
3+ var update_1 = require ( './update' ) ;
44var store_1 = require ( '../../store' ) ;
5- var check_tutorials_1 = require ( './check-tutorials ' ) ;
5+ var check_1 = require ( './check' ) ;
66function tutorialsReducer ( tutorials , action ) {
77 if ( tutorials === void 0 ) { tutorials = [ ] ; }
88 switch ( action . type ) {
99 case _types_1 . TUTORIAL_UPDATE :
10- update_tutorial_1 . tutorialUpdate ( action . payload . name ) ;
10+ update_1 . tutorialUpdate ( action . payload . name ) ;
1111 case _types_1 . TUTORIALS_FIND :
1212 var packageJson = store_1 . default . getState ( ) . packageJson ;
1313 return ( [ ]
14- . concat ( check_tutorials_1 . searchForTutorials ( packageJson . dependencies ) )
15- . concat ( check_tutorials_1 . searchForTutorials ( packageJson . devDependencies ) ) ) ;
14+ . concat ( check_1 . searchForTutorials ( packageJson . dependencies ) )
15+ . concat ( check_1 . searchForTutorials ( packageJson . devDependencies ) ) ) ;
1616 default :
1717 return tutorials ;
1818 }
Load Diff This file was deleted.
Original file line number Diff line number Diff line change 1+ "use strict" ;
2+ var command_line_1 = require ( '../../services/command-line' ) ;
3+ var store_1 = require ( '../../store' ) ;
4+ var actions_1 = require ( '../../actions' ) ;
5+ function tutorialUpdate ( name ) {
6+ command_line_1 . default ( 'npm' , "install --save-dev " + name )
7+ . then ( function ( ) {
8+ store_1 . default . dispatch ( actions_1 . tutorialsFind ( ) ) ;
9+ } ) ;
10+ }
11+ exports . tutorialUpdate = tutorialUpdate ;
12+ function canUpdateTutorial ( name , currentVersion ) {
13+ if ( ! navigator . onLine ) {
14+ return false ;
15+ }
16+ return ( command_line_1 . default ( 'npm' , "outdated " + name ) . then ( function ( res ) {
17+ console . log ( res ) ;
18+ if ( res . length > 0 ) {
19+ var linked = res . match ( / [ 0 - 9 \. ] + \s + l i n k e d / ) ;
20+ if ( linked ) {
21+ return false ;
22+ }
23+ var match = res . match ( / [ 0 - 9 \. ] + \s + [ 0 - 9 \. ] + \s + ( [ 0 - 9 \. ] + ) / ) ;
24+ if ( match . length >= 2 ) {
25+ return true ;
26+ }
27+ }
28+ return false ;
29+ } ) ) ;
30+ }
31+ exports . canUpdateTutorial = canUpdateTutorial ;
Original file line number Diff line number Diff line change 3838 "atom" : " >=1.0.0 <2.0.0"
3939 },
4040 "dependencies" : {
41- "classnames" : " 2.2.3 " ,
41+ "classnames" : " 2.2.4 " ,
4242 "highlights" : " 1.3.1" ,
4343 "marked" : " 0.3.5" ,
4444 "material-ui" : " 0.15.0-beta.2" ,
Original file line number Diff line number Diff line change 11import { npmMinVersion , nodeMinVersion } from './check-system' ;
22import store from '../../store' ;
3- import { searchForTutorials } from '../tutorials/check-tutorials ' ;
3+ import { searchForTutorials } from '../tutorials/check' ;
44
55const result = x => x ;
66function allTrue ( obj : Object ) : boolean {
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ import {readFileSync} from 'fs';
33import { fileExists } from '../../services/exists' ;
44import { isTutorial , tutorialError } from './is-tutorial' ;
55import store from '../../store' ;
6- // import {canUpdateTutorial} from './update-tutorial ';
6+ import { canUpdateTutorial } from './update' ;
77
88export function searchForTutorials ( deps : Object ) : Tutorial . Info [ ] {
99 if ( ! ! deps && Object . keys ( deps ) . length > 0 ) {
@@ -25,14 +25,14 @@ export function searchForTutorials(deps: Object): Tutorial.Info[] {
2525 }
2626
2727 let tutorialPackageJson = JSON . parse ( readFileSync ( pathToTutorialPackageJson , 'utf8' ) ) ;
28- const version = tutorialPackageJson . version ;
28+ const version = tutorialPackageJson . version ;
2929
30- return {
31- name,
32- version,
33- // latest: ! !canUpdateTutorial(name, version)
34- } ;
35- } ) ) ;
30+ return {
31+ name,
32+ version,
33+ latest : ! canUpdateTutorial ( name , version )
34+ } ;
35+ } ) ) ;
3636 } else {
3737 return [ ] ;
3838 }
Original file line number Diff line number Diff line change 11import { TUTORIAL_UPDATE , TUTORIALS_FIND } from '../../actions/_types' ;
2- import { tutorialUpdate } from './update-tutorial ' ;
2+ import { tutorialUpdate } from './update' ;
33import store from '../../store' ;
4- import { searchForTutorials } from './check-tutorials ' ;
4+ import { searchForTutorials } from './check' ;
55
66export default function tutorialsReducer (
77 tutorials = [ ] , action : Action
88) : Tutorial . Info [ ] {
99 switch ( action . type ) {
1010 case TUTORIAL_UPDATE :
1111 tutorialUpdate ( action . payload . name ) ;
12- /* falls through */
12+ /* falls through */
1313 case TUTORIALS_FIND :
14- const packageJson = store . getState ( ) . packageJson ;
15- return ( [ ]
16- . concat ( searchForTutorials ( packageJson . dependencies ) )
17- . concat ( searchForTutorials ( packageJson . devDependencies ) ) ) ;
14+ const packageJson = store . getState ( ) . packageJson ;
15+ return ( [ ]
16+ . concat ( searchForTutorials ( packageJson . dependencies ) )
17+ . concat ( searchForTutorials ( packageJson . devDependencies ) ) ) ;
1818 default :
1919 return tutorials ;
2020 }
You can’t perform that action at this time.
0 commit comments