[Electron]アップデート方法(バージョン指定・ベータ版対応)

ElectronのUpdateはnpmコマンドで行います。

バージョンアップ手順

  1. 現在インストールされているバージョンの確認

    コマンドラインより、次のコマンドを実行します。

    npm list --depth=0 -g
    

    実行例 npm list --depth=0 -g

    D:\>npm list --depth=0 -g
    C:\Users\xxxx\AppData\Roaming\npm
    +-- electron@1.7.5
    +-- eslint@3.19.0
    +-- generator-code@1.1.20
    +-- vscode@1.1.0
    `-- yo@2.0.0
    
  2. 最新安定版とベータ版のバージョンを確認

    コマンドラインより、次のコマンドを実行します。

    npm view {パッケージ名} dist-tags
    

    実行例

    安定版の最新は「1.7.9」、ベータ版の最新は「1.8.2-beta.2」のようです。

    npm view electron dist-tags

    D:\>npm view electron dist-tags
    { latest: '1.7.9', beta: '1.8.2-beta.2' }
    
  3. アップデート実行

    コマンドラインより、次のコマンドを実行します。

    $ npm install {パッケージ名}@{バージョン番号} -g
    

    実行例 npm install electron@1.7.9 -g

    D:\>npm install electron@1.7.9 -g
    C:\Users\xxxx\AppData\Roaming\npm\electron -> C:\Users\xxxx\AppData\Roaming\np
    m\node_modules\electron\cli.js
    
    > electron@1.7.9 postinstall C:\Users\xxxx\AppData\Roaming\npm\node_modules\ele
    ctron
    > node install.js
    
    C:\Users\xxxx\AppData\Roaming\npm
    `-- electron@1.7.9
    +-- @types/node@7.0.48
    +-- electron-download@3.3.0
    | +-- debug@2.6.9
    | | `-- ms@2.0.0
    | +-- fs-extra@0.30.0
    | | +-- graceful-fs@4.1.11
    | | +-- jsonfile@2.4.0
    | | +-- klaw@1.3.1
    | | +-- path-is-absolute@1.0.1
    | | `-- rimraf@2.6.2
    | |   `-- glob@7.1.2
    | |     +-- fs.realpath@1.0.0
    | |     +-- inflight@1.0.6
    | |     | `-- wrappy@1.0.2
    | |     +-- minimatch@3.0.4
    | |     | `-- brace-expansion@1.1.8
    | |     |   +-- balanced-match@1.0.0
    | |     |   `-- concat-map@0.0.1
    | |     `-- once@1.4.0
    | +-- home-path@1.0.5
    | +-- minimist@1.2.0
    | +-- nugget@2.0.1
    | | +-- pretty-bytes@1.0.4
    | | | +-- get-stdin@4.0.1
    | | | `-- meow@3.7.0
    | | |   +-- camelcase-keys@2.1.0
    | | |   | `-- camelcase@2.1.1
    | | |   +-- decamelize@1.2.0
    | | |   +-- loud-rejection@1.6.0
    | | |   | +-- currently-unhandled@0.4.1
    | | |   | | `-- array-find-index@1.0.2
    | | |   | `-- signal-exit@3.0.2
    | | |   +-- map-obj@1.0.1
    | | |   +-- normalize-package-data@2.4.0
    | | |   | +-- hosted-git-info@2.5.0
    | | |   | +-- is-builtin-module@1.0.0
    | | |   | | `-- builtin-modules@1.1.1
    | | |   | `-- validate-npm-package-license@3.0.1
    | | |   |   +-- spdx-correct@1.0.2
    | | |   |   | `-- spdx-license-ids@1.2.2
    | | |   |   `-- spdx-expression-parse@1.0.4
    | | |   +-- object-assign@4.1.1
    | | |   +-- read-pkg-up@1.0.1
    | | |   | +-- find-up@1.1.2
    | | |   | `-- read-pkg@1.1.0
    | | |   |   +-- load-json-file@1.1.0
    | | |   |   | +-- parse-json@2.2.0
    | | |   |   | | `-- error-ex@1.3.1
    | | |   |   | |   `-- is-arrayish@0.2.1
    | | |   |   | +-- pify@2.3.0
    | | |   |   | `-- strip-bom@2.0.0
    | | |   |   |   `-- is-utf8@0.2.1
    | | |   |   `-- path-type@1.1.0
    | | |   +-- redent@1.0.0
    | | |   | +-- indent-string@2.1.0
    | | |   | | `-- repeating@2.0.1
    | | |   | |   `-- is-finite@1.0.2
    | | |   | `-- strip-indent@1.0.1
    | | |   `-- trim-newlines@1.0.0
    | | +-- progress-stream@1.2.0
    | | | +-- speedometer@0.1.4
    | | | `-- through2@0.2.3
    | | |   +-- readable-stream@1.1.14
    | | |   | +-- isarray@0.0.1
    | | |   | `-- string_decoder@0.10.31
    | | |   `-- xtend@2.1.2
    | | |     `-- object-keys@0.4.0
    | | +-- request@2.83.0
    | | | +-- aws-sign2@0.7.0
    | | | +-- aws4@1.6.0
    | | | +-- caseless@0.12.0
    | | | +-- combined-stream@1.0.5
    | | | | `-- delayed-stream@1.0.0
    | | | +-- extend@3.0.1
    | | | +-- forever-agent@0.6.1
    | | | +-- form-data@2.3.1
    | | | | `-- asynckit@0.4.0
    | | | +-- har-validator@5.0.3
    | | | | +-- ajv@5.3.0
    | | | | | +-- co@4.6.0
    | | | | | +-- fast-deep-equal@1.0.0
    | | | | | +-- fast-json-stable-stringify@2.0.0
    | | | | | `-- json-schema-traverse@0.3.1
    | | | | `-- har-schema@2.0.0
    | | | +-- hawk@6.0.2
    | | | | +-- boom@4.3.1
    | | | | +-- cryptiles@3.1.2
    | | | | | `-- boom@5.2.0
    | | | | +-- hoek@4.2.0
    | | | | `-- sntp@2.1.0
    | | | +-- http-signature@1.2.0
    | | | | +-- assert-plus@1.0.0
    | | | | +-- jsprim@1.4.1
    | | | | | +-- extsprintf@1.3.0
    | | | | | +-- json-schema@0.2.3
    | | | | | `-- verror@1.10.0
    | | | | `-- sshpk@1.13.1
    | | | |   +-- asn1@0.2.3
    | | | |   +-- bcrypt-pbkdf@1.0.1
    | | | |   +-- dashdash@1.14.1
    | | | |   +-- ecc-jsbn@0.1.1
    | | | |   +-- getpass@0.1.7
    | | | |   +-- jsbn@0.1.1
    | | | |   `-- tweetnacl@0.14.5
    | | | +-- is-typedarray@1.0.0
    | | | +-- isstream@0.1.2
    | | | +-- json-stringify-safe@5.0.1
    | | | +-- mime-types@2.1.17
    | | | | `-- mime-db@1.30.0
    | | | +-- oauth-sign@0.8.2
    | | | +-- performance-now@2.1.0
    | | | +-- qs@6.5.1
    | | | +-- safe-buffer@5.1.1
    | | | +-- stringstream@0.0.5
    | | | +-- tough-cookie@2.3.3
    | | | | `-- punycode@1.4.1
    | | | +-- tunnel-agent@0.6.0
    | | | `-- uuid@3.1.0
    | | +-- single-line-log@1.1.2
    | | | `-- string-width@1.0.2
    | | |   +-- code-point-at@1.1.0
    | | |   +-- is-fullwidth-code-point@1.0.0
    | | |   | `-- number-is-nan@1.0.1
    | | |   `-- strip-ansi@3.0.1
    | | |     `-- ansi-regex@2.1.1
    | | `-- throttleit@0.0.2
    | +-- path-exists@2.1.0
    | | `-- pinkie-promise@2.0.1
    | |   `-- pinkie@2.0.4
    | +-- rc@1.2.2
    | | +-- deep-extend@0.4.2
    | | +-- ini@1.3.4
    | | `-- strip-json-comments@2.0.1
    | +-- semver@5.4.1
    | `-- sumchecker@1.3.1
    |   `-- es6-promise@4.1.1
    `-- extract-zip@1.6.6
        +-- concat-stream@1.6.0
        | +-- inherits@2.0.3
        | +-- readable-stream@2.3.3
        | | +-- core-util-is@1.0.2
        | | +-- isarray@1.0.0
        | | +-- process-nextick-args@1.0.7
        | | +-- string_decoder@1.0.3
        | | `-- util-deprecate@1.0.2
        | `-- typedarray@0.0.6
        +-- mkdirp@0.5.0
        | `-- minimist@0.0.8
        `-- yauzl@2.4.1
        `-- fd-slicer@1.0.1
            `-- pend@1.2.0
    
    D:\>
    
  4. バージョンの再確認

    バージョン1.7.9にアップデートされました。

    npm list --depth=0 -g

    D:\>npm list --depth=0 -g
    C:\Users\xxxx\AppData\Roaming\npm
    +-- electron@1.7.9
    +-- eslint@3.19.0
    +-- generator-code@1.1.20
    +-- vscode@1.1.0
    `-- yo@2.0.0
    
    D:\>npm outdated -g
    Package         Current  Wanted  Latest  Location
    eslint           3.19.0  4.11.0  4.11.0
    generator-code   1.1.20  1.1.22  1.1.22
    vscode            1.1.0   1.1.7   1.1.7
    

参考

outdated コマンドを使うと、アップデート可能なパッケージの一覧が表示されます。 Currentがインストールされているバージョンです。
npm outdated -g
実行例 npm outdated -g
D:\>npm outdated -g
Package         Current  Wanted  Latest  Location
electron          1.7.5   1.7.5   1.7.9
eslint           3.19.0  4.11.0  4.11.0
generator-code   1.1.20  1.1.22  1.1.22
vscode            1.1.0   1.1.7   1.1.7

検証環境

関連ページ