YUI:オープン営業時間木曜5月24日
中| 11:10 2012年5月21日には、ルーク·スミスによって午前開発 | コメントはまだありませんYUIDocアップデートとトラビスCIの統合
とYUIDocの最新リリースと彼の最近のトラビスCI上で実行されているYUIのテストを取得する上でのポスト 、それは、DAVでチャットやQ&A持っている良い時間のように思える。 ダヴとチャットを持っている悪い時間がありませんこと。
時間と詳細
私たちは、 午前10時から午前11時PDTに、木曜日にオンラインになるでしょう。
空気のGoogle +たまり場からの放送の解像度が少し低かったので、我々はアドビシステムズ社が今週Connectを使用してに戻って、私たちはチャットが非IRCユーザにとってよりアクセスできるようにしたいと思います。 あなたはコメントに賛成か反対かどうか知らせ。
記録
録音はYUILibrary YouTubeチャンネルで利用できる 。
共有および拡張: del.icio.usでブックマーク | Diggそれ! | reddit!
YUIとトラビスはgitツリーに座っている
2012年5月11日12:47にダヴグラス|中開発 | 7コメント
最後の数週間にわたって、私が上で実行されるYUIのコアテストの取得多くの時間を費やしてきたトラヴィスCIを 。 今日のように、私たちのすべてのプッシュYUI 3 6000以上でGitHubの結果についてのレポ(6053正確には)、ユニットテストが実行され、ログに記録される。 これらのテストは内部でネイティブに実行する私たちのコアJavaScriptのみのユニットテストの1130が含まれNode.jsのバージョン0.4.xと0.6.x(近日追加される0.7.xサポート付き)にします。 私たちは、私のコマンドラインで実行されている、当社の完全なユニットテストスイート(テスト4923)であることに従ってくださいYUITest / PhantomJSラッパー、 グローバー 。
今日はどのように、なぜ我々はこれをやっているについてもう少しお話したいと思います。
なぜですか?
長い時間のため、私たちのテストとビルドはユーザーの皆様には謎でした。 彼らはすべて密室で起こった、誰も本当に我々は何をしていたか知りませんでした。 人々は積極的にテストしているかを見ることができるように、過去数年間にわたって、我々は、私たちのソースツリーに私たちのテストのより多くを追加しました。 これは少しを助けたが、それは我々がすべてのビルドのすべてのテストを実行することを示しているとテストが失敗した場合、我々はGitHubのを構築することをプッシュしていないことをしませんでした。
その後に沿ってトラヴィスCIは、GitHubに直接フック、オープンソースの継続的な統合プラットフォームが来ました。 私は一日のためにそれをいじって、すぐに我々はそれを使用することができますので、周りに我々のテストの移動を開始しました。 我々のプロセスで、より透明であると国民は我々がテストし、どのように我々はそれを行うかを確認できるようにしたい。
我々はこのプロセスに追加したいことの一つは、私たちの現在のコードカバレッジレポートへのアクセスです。 現在、我々はFF12、クロム最新のIE8で実行されるテストから毎日のコードカバレッジレポートを実行しますが、我々のユーザーのいずれも、我々は約80%カバーであることを見ることができません。

我々はこの問題を修正していけば見て皆のためのオープンで、このデータを取得するために一生懸命働いています。
方法は?
私は彼らがトラビスCIのNode.jsの下で実行するように取得するために、当社のコアテストスイートに最小限の変更を加える必要がありました。 "コアのテスト·スイート"で、私は作業DOMを必要とせずに実行することができる任意のYUIモジュールを意味します。 これには含まれていますが、これらに限定されません:YUIコア、ローダー、YQL、Y.Array、Y.Object、等これらのモジュールは変更せずにNode.jsのすべての完全に使用可能な内部です。
見てみましょうYQLのテスト例として。
私がしなければならなかったすべては私たちがブラウザで使用して、ブラウザで実行されているまったく同じテストを含む標準的なテストのラッパーに似てNode.jsのラッパーを作成しました。
ここではYQLモジュールのラッパーは、次のとおりです。
今、この同じテストモジュールは、ブラウザで、変更せずにNode.jsのに実行することができます!
注意事項?
Node.jsのでネイティブに実行するためにこれらのテストのために、彼らは、DOMと相互作用しないようにする必要があります。 たとえば、 Y.Array対処するためのヘルパーメソッドで構成されてArray JavaScriptでの。 しかし、ヘルパー·メソッドが正しい値を返すことを保証するためにDOM要素を扱う含まれるいくつかのテストがあります。 これらのテストのために、私は、新しいテストにDOM関連のコードを移動したときに無視されたテストのリストにそのテストを追加する必要がありましたY.UA.nodejs検出されます。 この方法では、そのようなテストはNode.jsのでは無視されますが、それでもブラウザで実行されます。
ここでの例は次のとおりです。
あなたが見ることができるように、それは両方の環境で実行する私たちのテストはNode.jsのに使用されるときにブラウザにあるので、コードが安定して完全に機能するであることを確認できるようにするため、比較的簡単です。
グローバーとは何ですか?
グローバーはPhantomJSでYUITestベースのテストを実行することができますコマンドラインツールです。 PhantomJSは、GUIが存在しないHTMLページをレンダリングすることができレスWebkitのインスタンスです。 したがって、グローバーは、この上にギャップを閉じて、あなたはトラヴィスのようなCIシステムのコマンドラインの内側から私たちのユニットテストを実行することができます。
グローバーは、を介して無料利用可能です: npm install -g grover (あなたはグローバーを使用する前にインストールされているPhantomJSバイナリを持っている必要があります)
どのように我々はこのすべてを見ていますか?
トラビスCIは、以前のビルドの完全な報告書と同様に、最新のステータス情報を提供します。 以下トラビスCIでホストされている当社の現在のプロジェクトへのリンクは、次のとおりです。
ここで私たちのビルド出力(からどのように見えるかの小さな断片であるyui3レポのビルド履歴 ):

それは他に何をするのでしょうか?
我々はすべてのプロジェクトに新しいトラビス/ GitHubのプル要求の機能を試している。 これにより、開発者は私たちにプル要求を送信するたびに、トラビスは自動的に、そのコードを引っ張ってマスターにマージ(そのサーバ上で)、それに対して私たちの完全なユニットテストスイートを実行することを意味します。 彼らの "トラビスボット"が自動的にそれらのパッチは、そのテストに合格するかどうかを開発者に伝えるプル要求に戻ってコメントを投稿します。
ここでプル要求の受け渡しの例は次のとおりです。

それが失敗し、いずれか

次は何
我々はできるだけ早く、それが各ビルド上で実行するのに十分な安定になるとイエティと我々のテストを実行するサポートを追加する予定です。 また、同様に我々のコード·カバレッジ·番号を導入検討しています。 それ以外に、我々は今よりも我々はより開放的になることができるもの、他の方法で私達に告げること自由に感じなさい。
私は、1つのため、これらの新機能のすべてに非常に満足していると私はあなたもですね!
共有および拡張: del.icio.usでブックマーク | Diggそれ! | reddit!
YUI 3.6.0 PR1は、利用可能になりました
中| 12時18時2012年5月11日はジェニードネリーによって午前開発 | 2コメント我々は、コミュニティのテストとフィードバックのためのYUI 3.6.0 PR1の空室状況をお知らせいたします。 それを経由してチェックアウトする時間を割いてください。 注文またはダウンロードする 。
ここではすべてのYUI 3.6.0マイルストーンの目標期日は、次のとおりです。
- PR1 - 2012年5月8日
- PR2 - 2012年6月12日
- PR3 - 2012年7月17日
- GA - 2012年7月31日
我々はYUI 3.6.0のために働いている項目の概要は、次のとおりです。
- ScrollViewの機能強化
- DataTableの機能とパフォーマンスの改善
- チャートのバグ修正
- アップローダの画像プレビュー機能
- ポップアップカレンダー
- パフォーマンスのためのリファクタリングYUIシードとグローバル
また、我々は近い将来に毎月のリリースに移行することができるように我々の開発サイクルを凝縮するための措置を取っている。
リスト3.6.0 PR1で解決された問題との完全なリストは3.6.0を対象に問題が私たちのバグトラッカーでご利用いただけます。
私たちはあなたを招待し継続的な開発の議論 GitHub上の上のチームで起こっています。
私たちはあなたの継続的なフィードバックを楽しみにしています!
共有および拡張: del.icio.usでブックマーク | Diggそれ! | reddit!
YUIDoc 0.3.0公式です!
2012年5月9日14:05にダヴグラス|中開発 | コメントはまだありません今日は新しいの正式リリースをお知らせいたします。 YUIDoc 、我々のJavaScriptのドキュメントジェネレータを。 YUIDocはNode.jsの JavadocとDoxygenのようなツールに似た構文を使用して、ソース内のコメントからAPIドキュメントを生成するアプリケーション。 YUIDocは、現在電源が入っているYUIのAPIドキュメントをとされています積極的に昨年を更新 。
[拡大表示]
YUIDocは以下を提供します。
- プレビューを生きている。YUIDoc皆さんがお書きのようにドキュメントをプレビューすることは些細な作成、スタンドアロンのドキュメントのサーバーが含まれています。
- 現代的なマークアップ。YUIDocの生成されたドキュメントは、実際のURLとJavaScriptを実行することはできませんスパイダーと他のエージェントのための優雅なフォールバックと魅力的、機能的なWebアプリケーションです。
- 幅広い言語をサポートしています。YUIDocはもともとYUIのプロジェクトのために設計されましたが、それは、特定のライブラリやプログラミング言語に縛られていません。 あなたがサポートする任意の言語で使用でき
/* */コメントブロックします。
このバージョンに追加された新機能のいくつかは、次のとおりです。
- コードのコメントで値下げのサポート
- ボックスのうち、より多くのタグのサポート
- ロジックは簡単な拡張を可能にするために分離され
- 優れたテーマ設定をサポート
- 開発時間のプレビュー用のサーバー·モード
- 混合外部データ
- 簡単なクロスプラットフォームのインストール
- 現在のプロジェクトの内と外の架橋
- JSONベースのコンフィギュレーション
これらのいくつかについて、もう少し詳細に取得してみましょう:
シンプルなインストール
あなたはNode.jsのとNPMがインストールされている場合、インストールは簡単です。
NPM-Gインストールyuidocjs コードのコメントで値下げのサポート
YUIDocは使ってコメントを解析しますMarkdownをそれはあなたのドキュメントを書いて大きな柔軟性を与えるハンドルテンプレートを適用する前に。
ロジックは簡単な拡張を可能にするために分離され
あなたは時YUIDocは、これらのすべてのモジュールを内部的にYUIのクラスのインフラストラクチャを使用して、輸出require yuidocjsモジュールを。 これは、エンドユーザーがYUIDocの内部にフック、それは物事を行う方法を変更することができます。 あなたは、クラスを拡張し、それらを強化あるいは単にフラットアウトスイートニーズに合わせて方法を変更することができます。
優れたテーマ設定をサポート
このリリースでは、組み込みの使用Y.Handlebarsすべてのテンプレートの生成を処理するためにヘルパーを。 この機能をビルドするときに、我々はまた考慮に入れ開発をとっている。 YUIDocが最初にそれはパーシャルのテーマディレクトリに組み込まれている検索します、それはあなたのローカルテーマディレクトリを検索します。 これはあなただけ、あなたのテーマに変更して、それを変更されていない場合でも、すべての部分をコピーする必要はありませんしたいファイルを維持するために持つことができます。
開発時間のプレビュー用のサーバー·モード
これは私のお気に入りの新機能です! あなたは、サーバー·モードでYUIDocを起動することができますし、それを編集すると、それはあなたの文書のライブプレビューを提供します。 単にファイルを保存し、サーバの組み込みからページをリロードして、変更が住んで参照してください。 外部データとの架橋を含む。 あなたは、もはや単なるドキュメントの変更を確認するには、プロジェクト全体のドキュメントを生成する必要がありません!
混合外部データ
YUIDocは、今、あなたは別のYUIDocインスタンスからレンダリング出力に、ドキュメントをリンクすることができます。 あなたのプロジェクトがYUIを使用して、当社のコアクラスの一部を拡張している場合たとえば、私たちのエクスポートにリンクすることができます。 data.jsonファイル(当社YUIDocビルドから)YUIDocは、あなたのドキュメントを解析するとき、それは我々のデータとクロスリンクをフェッチし、すべての戻って我々に拡張したクラスです。 それはあなたの一部であったように、別のプロジェクトのコードを文書化する必要はありませんこの方法では、単にそれらのドキュメントを上に指しています。
プロジェクトの変更
将来のすべてのYUIDoc開発は完全にGitHub上で実施されます。 私たちは彼らのwiki上のプロジェクトを追跡し、私たちのチケットを管理するためにそれらの問題を使用することになります。 これは、オープンで完全にネイティブNode.jsのプロジェクトのように実行されます。 また、サポート要求のためにGoogleグループを使用するので、 今日サインアップ !
また、YUIDocのユニットテストは上でホストされていることを報告して幸せであるトラビス-CIやGithubプッシュごとに実行されます!
YUIDocの古いバージョンについてはどうですか?
YUIDocの古いPythonのソースがで分岐それは永遠に残る現在のGitHubのレポで。 すべてのプル要求を受け入れるか、そのコードベースへの更新を行う上で計画はありません。
共有および拡張: del.icio.usでブックマーク | Diggそれ! | reddit!
YUI:木は5月10日営業時間
中| 10時44分に2012年5月9日には、ルーク·スミスによって午前開発 | コメントはまだありませんYUI 3.5.0アップローダ
アップローダは、 3.5.0にメジャーアップグレードを見た別のコンポーネントであった。 多くの変更のうち、一つの大きな一つはHTML5をサポートしているブラウザのネイティブ機能に対するサポートが追加されました。
その作者、との議論にご参加くださいアレンラビノビチ我々はアップローダが構成されているかについてお話ししている、対処する必要が、と次期バージョンのロードマップ上にあるものを現代の技術と課題の一部。
時間と詳細
私たちは、 午前10時から午前11時PDTに、木曜日にオンラインになるでしょう。
今週、私たちはエアでGoogleプラスたまり場を試してみることでしょう、オーディオとビデオのフィードがG +を通じて提供されるので、我々のチャットを監視することでしょうfreenodeの#ゆいIRCチャンネル 。
共有および拡張: del.icio.usでブックマーク | Diggそれ! | reddit!
YUI 3.5.1を発表
2012年5月7日17:04で、ジェニー·ドネリーから|で開発 | 1件のコメント我々は上YUI 3.5.1の可用性を発表に満足しているCDNまたはダウンロード 。 YUI 3.5.1の小さいスコープのリリースでのバグフィックスのみ。
お楽しみください!
共有および拡張: del.icio.usでブックマーク | Diggそれ! | reddit!
DataTableにコントロールを表示する:概要
中| 10時09時2012年5月7日はジョンLindalによって午前開発 | 1件のコメント最近では、DataTableに入力フィールドを使用する方法についてフォーラムで質問がありました。 ブラウザでこれまで以上に複雑なアプリケーションを構築するための継続的なプッシュで、私は表形式のデータを編集するための使用可能なオプションの概要は有用かもしれないことを決めた。
データを編集する最も簡単な方法は、インライン編集を使用することですが、これはまだYUI 3のDataTableでは使用できません。 その間に、1つのオプションは、テーブルのセルに直接、独自の入力フィールドをロールバックすることに似ていますこの例 。
あなたはそれが起こるごとに、変更を保存したくない場合は、使用することができます簡易の代わりにギャラリーモジュールを。 これは、すべての可視セルを編集して、単一の操作で変更内容を保存することができます。
上記のソリューションはモーダルです。 あなたはすべてのセルを編集するには、非モーダル方法を好む場合は、使用することができバルクエディタウィジェットを。 これは、ページネーションで動作するので、単一の操作で、テーブルのすべてのページにわたってすべての変更を保存することができます。 あなたがリモートデータソースを使用しているときにも - それも、あなたは簡単に追加および行を削除することができます!
バルクエディタは、しかし、YUIのDataTableの上に構築されていません。 あなたはYUIのDataTableから、他の機能が必要な場合は、使用することができ、状態保存のプラグイン YUI 3 DataTableのを。 これは、ページネーションで動作するので、単一の操作ですべてのページですべての値を保存することができますが、それはあなたが簡単に行を追加または削除できるように設計されていません。
状態の保存プラグインは 、テーブル内の行を選択するためのチェックボックスを表示するような単純な何かをしたい場合にも便利です。
すべてのこれらの異なるソリューションの理由は、エンジニアリングトレードオフはかなり複雑であるということですので、上記のすべての機能をサポートする単一の台所の流しの
ソリューションを構築することはお勧めできません。 うまくいけば、この概要では、あなたの次の大きなテーブルベースのアプリケーションに取り組むための適切なモジュールを選択するのに役立ちます。
共有および拡張: del.icio.usでブックマーク | Diggそれ! | reddit!

