All slide content and descriptions are owned by their creators.
All slide content and descriptions are owned by their creators.
だいたいこのへんで教えてもらった話のまとめです。 http://lingr.com/room/perl_jp/archives/2013/04/03 CPANで名前空間を取るのは簡単です。今ならCPANに上げるコードベースの「どこか」に package Hoge; と書けば、CPAN Indexerにインデックスされていとも簡単にHoge名前空間のオーナーになれます。 (執筆時現在Hogeのオーナーはいません) これはlib/以下の.pmファイルやファイル先頭のpackage宣言だけに限った話ではありません。 例えば、example/MyApp.pmとかも対象です。 ちなみに誰がどの名前空間を持っているかは以下を見ることでわかります。 http://www.cpan.org/modules/02packages.details.txt 多くの場合この挙動に困ることはありませんが、以下の様な
http://shanon-tech.blogspot.jp/2013/05/perl.html Perl モジュールの作り方、2013年においては Authoring tool をつかって作るのがよいです。具体的には Minilla でつくるのがオススメであります。 perlbrew なり plenv なりで perl をいれたあとは、 % cpanm Minillaとして Minilla をインストールします。 % minil new Fooとすると、Foo.pm のスケルトンができあがります。作者の名前などは ~/.gitconfig などから自動的にさがしてきますので、設定不要です。 できあがったディレクトリは以下のような形になっています。 Foo ├── Build.PL ├── Changes ├── cpanfile ├── lib │ └── Foo.pm ├── LI
http://shibayu36.hatenablog.com/entry/2013/04/11/191322 ExtUtils::MakeMaker → Module::Build → Module::Install → Module::Build → そして今、Minilla が颯爽と登場! というわけで、2013年は Module::Build や ExtUtils::MakeMaker を直につかわない時代がきています。 Authoring tool をつかって管理していきましょう。くわしくは https://metacpan.org/module/TOKUHIROM/Minilla-v0.0.53/lib/Minilla/Tutorial.pod
本物の KEN_ALL.csv の処理が簡単に出来る Parse::JapanesePostalCode をリリースした 空前の KEN_ALL.csv ブームが凄かったのが記憶に新しいばかりですが、この郵政さんが公開している郵便番号ファイルをカジュアルにパース出来るモジュールを作りました。 https://metacpan.org/release/Parse-JapanesePostalCode https://github.com/yappo/p5-Parse-JapanesePostalCode 使い方はとても簡単で use Parse::JapanesePostalCode; my $parser = Parse::JapanesePostalCode->new( file => 'KEN_ALL.csv' ); while (my $obj = $parser->fetch_ob
Perl Mongersの皆様へ: PrePANというサイトをオープンしたので、お知らせいたします(実装は僕、デザインは同僚のスーパーデザイナid:kudakurage)。 http://prepan.org/ PrePANとは? 社内でこんな話をしたことがありました。 業務や個人的な活動なので、便利モジュールができた〜ということがあった時、んじゃ、せっかくなのでCPANize(CPANに公開)しよっかなと思っても、いくつか不安に思うことがあったりします。 既に似たようなものがあるのでは? 実装について不安が……。 CPANizeするに際しての名前やファイル構成の慣習がわからない 誰かにちょっとチェックしてもらいたい そのような問題に対する解決の一助となればと思い、サイトを作ってみました。「こんなの作ったけどどうだろう?」とか「こういうモジュール他にある?」とか、いろいろなことに使ってもら
クローリング楽しいですよね! perlで高速にクロールしたいのであればGunghoなど使うのがいいかもしれませんが、 基本手軽にやりたいことが多いので WWW::Mechanize+Web::Scraper という組み合わせでクロールするのが定番でした。 しかしたまたま Scrappy を知り、 少し触ってみたところすごくいいのではないか!?と思い 記事にしてみました。*1 基本系(crawlコマンドを利用する場合) my $scrappy = Scrappy->new; $scrappy->crawl('1.クロールするルートURL', '2.URLにマッチするパス' => { '3.コンテンツにマッチするxpath or CSSセレクタ' => sub { my ($self, $item) = @_; # 4.キューに追加 $self->queue->add($item->{href
みなさんCPANモジュールの管理どうしてますか? rpm? deb?いやーメンドクサイですね。 メンドクサすぎて日がくれます。 それにそんな一元管理の方法したらコンポーネントが複数ある場合、 簡単にmoduleのバージョンがupでいないじゃないですか。 so badですね。 いまだとperlbrewとextlibでコンポーネント毎にcpanモジュールを管理することが 大分と楽にはなりましたが、OSの差はどう仕様も無い! 実際にサービスに撒くmoduleに関してはサービスのosで作ったperlbrew+extlibで管理していいとおもいますが、 localの開発環境が、MacOSとかだとすると激しくメンドクサイですね! さらにextlibとかに入れてるバージョンと全く同じバージョンのモジュールを 手元のmacに入れるとか実は結構むずかしいんですよね。 Makefile.PLでバージョンを指定
AAAA AAAAAAAAA - Aaaaaa aaaaa aa aaaaaa Aaaaa aaaa AAAAAAAA use AAAAAAAAA; AAAAAAAAAAA AAAAAAA AA AAA AAAAAAAAA AAAAA AA AAAAAA AAAAAA, AAAAAAA AA AAAAAA AAAAAA, AAAAA AAAAAAA AAA! AA AAA AAAA AAAA AAAAAAAA AAAA AA AAAAAA AAAAA AAAA AAAA AAAAAA AA AAA! AAA AAAA AAAA AAA! AAAAAAA AAAAA AAA! AAAAA AAAA AAA! AAAA AAAAA AAA! AAA AAAAAA "A" AAAA AAA! AAAAA AAA AAA, AAAAAAA AAA AAAA, AA AAAAAA AAAAAA, A
@sugyanのエントリに触発されて。 CPANは毎日それはそれは大量にモジュールがリリースされます。 自分が使っているモジュールの場合はモジュール名を覚えているので、「あ、Test::Moreがリリースされている、Changesチェックしよう」とできるのですが、まったく新しい名前のモジュールの場合、名前空間と作者名と一行説明のところを見て、詳しく見るか判断する場合が多いです。 その意味で、たまに新しいことを仕掛けてくるような方々は要チェックなので名前を覚えておくようにしています。この人も要チェックだよ! というような抜けがあればおしえてください。あと、日本人の作者についてはちらほら含まれてますが、ブログなど別な経路で知ることが多いのであまり気にしていません。 ABW (github: abw)ADAMK (gitrepo)CHOCOLATE (github: chocolateboy)D
Twitter CPAN New Modules (@cpan_new) | Twitter ドキュメントへのリンクは FrePAN を使わせてもらってます 雑感 http://friendfeed.com/cpan からリアルタイムでデータを取ってくる。 使ったモジュールはこれだけで、全体で60行弱。機能のわりに短くかけた。 use common::sense; use Data::Dumper; use AnyEvent::Twitter; use AnyEvent::FriendFeed::Realtime; repository GitHub - punytan/cpan_new: http://twitter.com/cpan_new なんと見つかった既存のものは全部止まってた Perl CPAN (@cpanlive) | Twitter CPAN uploads (@cpan
あらかじめ必要なもの Developer Tools MacPorts MySQLのインストール " +server"を付けると自動起動用のスクリプトが付いてくる。 sudo port install mysql5 +server 自動起動を登録する sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist 自動起動を登録を解除する sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist 初期化 sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist パーミッション設定 sudo chown -R mysql:mysql /
perl の場合、CPAN モジュールは sudo cpan -i Module の1コマンドでインストールできる。でも、svn や git レポジトリのコードは、チェックアウトして perl Makefile.PL && make all test && sudo make install とか、めんどくさい。 なので、svn や git レポジトリからソースコードをダウンロードしてインストールするツールを作り始めた。名前は、CPAN モジュール以外も簡単にインストールできるところから、Not-only CPAN、略して nopan。 こんな感じで動きます。まだ適当だけど。 $ sudo nopan http://github.com/kazuho/kaztools.git downloading files from URL:http://github.com/kazuho/kazto
Mac OS Xでもlocal::libをつかってCPANモジュールを入れよう - JPerl Advent Calendar 2009 Perl に関するちょっとした Tips をのっけてみるよ。ちゃんと続くかな? 概要 local::libは簡単にいうとCPANモジュールをシステム標準とは違う任意のディレクトリにインストールする設定を支援してくれる便利ツールです。root権限の無いレンタルサーバーでCPANモジュールをインストールするために使われたり、Remedieのように依存CPANモジュールごとまとめて配布するのに使われたりします。 今回はMac OS Xでsudo権限を使わずにCPANモジュールをインストールするための方法を解説します。 標準のPerlのモジュールと後からインストールしたCPANモジュールを別ディレクトリに分けておけるので OSのインストールしなおしでもバージョン
KiokuDBがちょっと前から気になってて、そしたらたまたまid:tokuhiromがブログで使い方などを書いてたので、それを見ながら試してみようと思いインストールしていたら、requiredに入ってるProc::InvokeEditorというモジュールが目につきました。なにをするモジュールだろと思って調べてみたら便利そうだったので紹介。 これ、なにをするモジュールかと言うとよくcvsとかsvnとかgitとかでコミットする際に「-m」でコメント指定しないとエディタが開いて編集させたりすると思うんですが、その挙動を簡単に記述できるようになるモジュールです。 use Proc::InvokeEditor; my $unedited_text = '元々のテキスト'; my $edited_text = Proc::InvokeEditor->edit($unedited_text); warn
えーっと、一応 CPAN サイトを読みまくったのですが、英語が苦手なためか、ずーっと CPAN Author の登録手順やら CPAN へのモジュール登録手順がわかりませんでした・・・orz 幸いなことに、社内のモヒカン族な方に PAUSE ってキーワードを教えて頂きました。ググッたらすぐに情報でてきました。この前の Shibuya.pm でライトトークされてた、kawasaki さんのサイトに [Perl] 作成したモジュールをCPANで公開する手順 とそのまんまのタイトルで手順でてました。PAUSE ってキーワードがわからないと、このページにすらたどり着けなかったです・・・orz ってことで、以下登録までの備忘録。 1. PAUSE(Perl Authors Upload Server)のアカウントを取得します http://pause.perl.org/pause/query?ACT
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
by Jon Allen (JJ) - posted on Wednesday, 26 August 2009 ここ2、3年にわたって、Perlでの開発はCatalystやDBIx::Class、Moose等のエキサイティングな新技術により変わってました。 しかしながら、これらや他のツールに共通して言える事が1つあります - それらはこれらがPerl本体の配布物ではなくCPANの一部という事です。共有ホスティングサーバなど信頼されている環境においては、ユーザはルート権限なしでCPANモジュールをシステムにインストールする事が難しいでしょう。 ただ幸い、単純解があります - それが local::lib です。 local::lib の紹介 local::lib は CPAN ディストリビューションをホームディレクトリににインストールできる様にあらゆる設定を行うPerlモジュールです。これは
ExtUtils::Install, ExtUtils::Installed を使うと cpan コマンドでインストールしたモジュールについてあれやこれや調べる事が出来ます。 インストールされているモジュール一覧 perl -MExtUtils::Installed -le 'print join "\n" => sort ExtUtils::Installed->new->modules;' 特定のモジュール名が属する dist に含まれるファイル一覧 $ perl -MExtUtils::Installed -le 'print join "\n" => sort ExtUtils::Installed->new->files(shift @ARGV);' YAML::Syck /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く