Skip to content

Instantly share code, notes, and snippets.

@uupaa
Last active August 29, 2015 14:12
Show Gist options
  • Select an option

  • Save uupaa/0b326ded3e3053ee2881 to your computer and use it in GitHub Desktop.

Select an option

Save uupaa/0b326ded3e3053ee2881 to your computer and use it in GitHub Desktop.
WebModule Change log

最近の WebModule の Change log です。

  • 2014-12-14 WebModule version 0.2.5

    • モジュールの依存関係の解決に失敗することがあるバグを修正しました
  • 2015-01-06 WebModule version 0.3.0

    • package.json のフォーマットを更新しました。
    • webmodule.target を廃止し、develop を追加、さらに webmodule.browser, worker, node, nw を個別に設定可能にしました
    • version 0.3.0 で実施した package.json のフォーマットの大幅な修正は、npm run sync コマンドを実行することで自動的に補正が行われます。
    // 2014-mid style
    {
      "webmodule": {
        "source": [...],
        "output": "...",
        "target": ["all"]
      }
    }
    
    // 2015-early style
    {
      "webmodule": {
        "develop": false,
        "browser": {
            "source": [...],
            "output": "..."
        },
        "worker": {
            "source": [...],
            "output": "..."
        },
        "node": {
            "source": [...],
            "output": "..."
        },
        "nw": {
            "source": [...],
            "output": "..."
        }
      }
    }
    • node-webkit をサポートしました

    • 動作環境を判別するコードを node-webkit のサポートに合わせて更新しました

    // --- define / local variables ----------------------------
    // var _isNodeOrNodeWebKit = !!global.global;
    // var _runOnNodeWebKit =  _isNodeOrNodeWebKit && /native/.test(setTimeout);
    // var _runOnNode       =  _isNodeOrNodeWebKit && !/native/.test(setTimeout);
    // var _runOnWorker     = !_isNodeOrNodeWebKit && "WorkerLocation" in global;
    // var _runOnBrowser    = !_isNodeOrNodeWebKit && "document" in global;
    
    // 動作環境確認用
    // console.log({ nw: _runOnNodeWebKit, node: _runOnNode, worker: _runOnWorker, browser: _runOnBrowser });
    • test/template ディレクトリの追加と test/template 以下に browser.html, node.js, nw.html, nw.package.json, worker.js を追加しました。

      • npm run syncnpm run page コマンドを実行するタイミングで、これらテンプレートファイルを元に test/browser.html, test/node.js, test/nw.html, test/package.json, test/worker.js を生成します
    • test/wmtools.js を追加しました

      • 中身は WebModule/lib 以下の Reflection.js, Console.js, Valid.js, Help.js, Task.js, Test.js を concat し1つのファイルにまとめたものです。
        • おかげでテストの消化が早くなりました
    • WebModuleIdiom を更新しました。

    • WebModulePattern を更新しました。

      • WebModulePattern の環境判別コードを node-webkit に対応させました
    • 古いモジュールを最新の仕様にするための手順を記した Migration を追加しました。

    • 依存モジュールが古いフォーマットの package.json であっても、問題なくビルドできるようにしました

      • 依存モジュールを検索する処理の途中で、動的に package.json の中身を最新のフォーマットにアップグレードします
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment