• Like
YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う

  • 2,515 views
Published

YAPC::Asia 2013 向けのトーク資料です

YAPC::Asia 2013 向けのトーク資料です

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,515
On SlideShare
0
From Embeds
0
Number of Embeds
12

Actions

Shares
Downloads
3
Comments
0
Likes
6

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. CPAN Testers Report の情報を上手に使う Hachioji.pm @moznion
  • 2. CPAN Testers Report の情報を上手に使う Hachioji.pm @moznion
  • 3. CPAN Testers Report の情報を上手に使う Hachioji.pm @moznion 全般の話
  • 4. @moznion 普段は働いて 暇な時に学生してます 今年の末あたりから 就活が始まります
  • 5. 本日は寝坊して 関係者各位にご迷惑 をおかけしました
  • 6. 本日は寝坊して 関係者各位にご迷惑 をおかけしました
  • 7. 本当に 申し訳ございません
  • 8. 宣伝
  • 9. はてなブログが AtomPub API の提供を開始しました http://staff.hatenablog.com/entry/ 2013/09/04/125926
  • 10. API を介したCRUD 処理が ひと通り実現可能
  • 11. それに伴って、 いくつか クライアントを実装 (プロトタイプ的ですが)
  • 12. 1
  • 13. Hateblo.vim
  • 14. Vim からはてなブログへの 投稿などが出来る
  • 15. API が提供している機能は (一応) ひと通り サポートしています
  • 16. 2
  • 17. hatenablog-post
  • 18. はてなブログへの投稿が できる Chrome 拡張
  • 19. こんな感じ
  • 20. クライアントの フィードバックやパッチ等 お待ちしております https://github.com/moznion/hateblo.vim https://github.com/moznion/google-chrome- hatena-blog-post
  • 21. 大変便利なAPIですので 皆様、どうぞご利用ください
  • 22. 宣伝ここまで
  • 23. 本題
  • 24. < Hello
  • 25. CPAN Testers Reports
  • 26. Perl の世界観
  • 27. テスト大事
  • 28. ぶっ壊れてるモジュール 必要なし http://livedoor.blogimg.jp/u0840153/imgs/a/3/a36ee17e.jpg
  • 29. デフォルトだとテストに コケるモジュールは インストールできない (ですよね?)
  • 30. なので、テスト結果に関する 情報は非常に重要
  • 31. CPAN Testers Reports そのモジュールが どれくらいテストに通って どれくらいテストにコケているかを 可視化してくれているサイト
  • 32. CPAN Testers Reports あと、そのモジュールが どの環境で動いて どの環境で動かないかも 確認できるので る
  • 33. CPAN Testers Reports 有志の Tester の人がローカルの環境で テストして、その結果を送ってくれる 事によって成り立っている。
  • 34. よく「Perl/CPANは枯れている」といいますが、 それを支えているのはPerlの歴史とか Perlerの性格といった形のないものではなく、 この CPAN Testers なのです。 これがすごくいいんですよ。 [出典] CPAN Testersの紹介 - Islands in the byte stream http://d.hatena.ne.jp/gfx/20130309/1362823135
  • 35. CPAN Testers Reports を使うと るシーン
  • 36. 1
  • 37. モジュール選定時
  • 38. - そのモジュールは安全か - 今もメンテが継続中か - 対象環境でも動作するか
  • 39. - そのモジュールは安全か - 今もメンテが継続中か - 対象環境でも動作するか ここらへんがわかる
  • 40. 2
  • 41. モジュールのメンテ時
  • 42. - どの環境でコケてるのか判 るから手元に再現環境作れる - ログが参照できるからトラ ブルシュートしやすい
  • 43. - どの環境でコケてるのか判 るから手元に再現環境作れる - ログが参照できるからトラ ブルシュートしやすい モジュールの質が上がる
  • 44. 後で紹介するTestament は 2 にフォーカス
  • 45. Report の読み方
  • 46. モジュールを利用する場合
  • 47. ここらへんは 普通に読むと良い
  • 48. 便利
  • 49. モジュールをメンテする場合
  • 50. 無愛想なテキストを読む 必要性があって難関
  • 51. とはいえ、読めば良い所は 絞ることが可能
  • 52. とはいえ、読めば良い所は 絞ることが可能
  • 53. とはいえ、読めば良い所は 絞ることが可能 どのテストがコケてるか 確認出来る
  • 54. 依存モジュールの インストール状況を 確認できる
  • 55. ここが問題になっている ケース、割と多い印象
  • 56. とはいえ、読めば良い所は 絞ることが可能
  • 57. とはいえ、読めば良い所は 絞ることが可能 色々わかる
  • 58. “LANG” と “PERL5LIB”、 “PERL5OPT” あたりを 見ると良い感じ
  • 59. その他は適宜
  • 60. ここら辺をよしなに 引っ張ってこれる君を 書いた
  • 61. Testament
  • 62. CPAN Testers Reports の 結果に基いて テストにコケている環境を 再現してくれるツール
  • 63. @ytnobody さんと共同開発
  • 64. モジュールのメンテする時、 テスト失敗している環境を 再現する事がままある
  • 65. そこら辺を自動化したい というモチベーション
  • 66. こういう環境を仮想マシン として再現してくれる
  • 67. - OS の構築 - 該当するバージョンの Perl をビルド
  • 68. - OS の構築 - 該当するバージョンの Perl をビルド ここまでやる
  • 69. 現状、OS は - OpenBSD - NetBSD - FreeBSD に対応
  • 70. バックエンドは QEMU と Vagrant (VirtualBox) に対応
  • 71. ちょっとデモ
  • 72. Patches Welcome! https://github.com/ytnobody/testament
  • 73. CPAN Testers Reports 便利!
  • 74. CPAN Testers Reports 有志の Tester の人がローカルの環境で テストして、その結果を送ってくれる 事によって成り立っている。
  • 75. CPAN Testers Reports 有志の Tester の人がローカルの環境で テストして、その結果を送ってくれる 事によって成り立っている。
  • 76. 恩返しをしよう!
  • 77. CPAN Testers Reports に レポートを送る
  • 78. cpanm を利用している場合
  • 79. cpanm を利用している場合 $ cpanm App::cpanminus::reporter $ cpanm-reporter --setup $ cpanm [--test-only] Foo::Bar $ cpanm-reporter
  • 80. これだけ!
  • 81. やってみる
  • 82. ね、簡単でしょ?
  • 83. こんな感じで CPAN Testers Reports は 素晴らしいシステムなのです
  • 84. 是非便利に使いたいですね!
  • 85. Thank you “Birmingham.pm”!!
  • 86. 他にも 「こんな便利な使い方があるよ」 とかあったら教えて下さい!
  • 87. 番外編
  • 88. Ukigumo を使った CPAN Testers Reports 風仕立て
  • 89. Ukigumo の説明
  • 90.
  • 91. まー、CIサーバッス
  • 92. とにかく出来そう
  • 93. 雰囲気としてはこんな感じ
  • 94. 課題
  • 95. レポートをパーズして よしなにパラメータとして セットする部分
  • 96. あと、文言が色々とおかしい のでマッチさせる必要有り
  • 97. 上手く行けば Perl 以外の 言語にもエクスポート できるのではないか
  • 98. という感じです
  • 99. Ukigumo の域を超えて いるのでは
  • 100.
  • 101. という感じです