fix taint protection code to delete environment variables rather than leaving them as an empty string. fix author test for CPAN.pm's bootstrapping process to work with new versions
* [Perl] Text::CSVの拡張、Text::CSV::Encoded 久しぶりに新しいモジュールをCPANにアップしました。Text::CSV::Encodedです。基本はText::CSVですが、文字コードの変換も引き受けてくれます。 $csv = Text::CSV::Encoded->new ({ encoding_in => "cp932", encoding_out => "utf8", }); みたいにやっておくと、後はparse/getline/getline_hrではCSV文字列をencoding_inとしてdecodeします。反対にcombine/printでは出力CSV文字列をencoding_outでencodeします。parse/getlineで得たデータリストをUnicodeにしたくない、あるいはcombine/printに渡すリストはUnicodeで
いささか遅くなりましたが予告通り完全版の一覧を掲載します。このデータは基本的にYAPC直前、2008年5月15日時点でのものですが、抜けが判明したworemacxさんの分については先ほど目視で抽出しました。ほかの方のYAPC後の更新については反映されていませんのであしからずご了承ください。 ちなみに過去の選手権の結果はnipotanさんのサイトに掲載されています。 2006年度 2005年度 というわけで、あらためてなんちゃらかんちゃら出てこいや〜、とな。 モジュール数5個以上の部 過去二回の選手権ではモジュール数による分類はなかったのですが、この一覧のもとになっているCPANTSの仕組み上、モジュール登録数の少ない新しいAuthorの方が有利になる側面があるので、今回は本家CPANTSの分類にしたがってランキングを分けました。YAPC当日に発表したのはこのグループのベスト10です。表は、
Mac::Glueが腐ってる件(Mac::Growlがインストールできない場合) Mac::Growlというモジュールをインストールしようと思ったらひでぇエラーが出るので諦めてたのだが、しょうがなくなってソースコードみてみた。 エラーはMac::Glueの1375行目ででてくるんだけど、ここで変なファイルをtie()しようとしてる。Makefileとか。ひでぇ。なので、とりあえず1375行目のtieの前に next if $_ eq 'Makefile'; と入れたら直った。これでやっとTest::Continuous使えるよ。 カテゴリ 開発 2008年5月21日 16:26 D | ブログ記事のURL | コメント(0) | トラックバック(0) |
http://d.hatena.ne.jp/tokuhirom/20071220/1198106803 去年話題になった↑のエントリがあるわけですが、毎度おなじみのtokuhiromクオリティのため意図的に色々と端折ってあります。というわけで、準備の足らない人間が↑を鵜呑みにShipItを使ってひーひー言った記録ということで。 .shipitの書き方 http://coderepos.org/share/browser/lang/perl/ShipIt-Step-CommitMessageWrap/trunk/.shipit この辺のをコピペすると吉(via yappo)。ちなみに、本当にそのまんま使う場合はShipIt::Step::CommitMessageWrapもcpan installしておきましょう 事前準備(CPAN module編) AppConfig::Stdが必要なので
CPAN::Mini で CPAN のミラーをローカルに を参考にしてみました。install とか cpan shell からの使い方は上のページに書いてあるので割愛して、cpanmini の mirror を ports から使う設定をします。/etc/make.conf に FETCH_CMD?= fetch -l MASTER_SITE_PERL_CPAN?= \ file:///home/yourname/minicpan/modules/by-module/${MASTER_SITE_SUBDIR}/と書く。MASTER_SITE_OVERRIDE も記述してあると、その設定が優先されてしまうので外しておく。うまいこと同居できるといいんだけど、良くわかりませんでした。CPAN な ports は modules/by-module/MASTER_SITE_SUBDIR/tarb
パッチ作った。 descendantとdescendant-or-selfで出てくる順番がおかしかったのを修正 (id("1")//*)[1]/@att2 みたいにグルーピングしてるのの中にidがあって外側が@attrなときに実行時例外(Can't locate object method "getElementById" via package "XML::XPathEngine::NodeSet")が出るのの修正 amachangのテストコードはpiを除いて通るようになったけどamachangのテストコードはかっこをつかってるやつが少なくてそのへんでまだ問題が残ってる雰囲気が濃厚だった。 (id("1")//*)[1]/@att2 はいけるんだけど (.//*)[1]/@att2 にすると例外が出た気がする(axis axis_descendant not implemented [C
サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一本吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には食材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい食材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ
NAME __ - alias __::__ to __PACKAGE__ SYNOPSIS Now you can write: package Awesome; use __; __::__->some_class_method; instead of: __PACKAGE__->some_class_method; Think of the time you'll save. AUTHOR mst on #moose: <mst> Penfold: sub __::__ { scalar caller() } [12:23] PERSON INSANE ENOUGH TO CPAN THIS Jonathan Rockway jrockway@cpan.org COPYRIGHT Public domain.
参考:Shipwright - dann@catalyst - Catalystグループ Shipwright-1.01使ってみたよ。CPANモジュール群をSubversionリポジトリで管理できるよ。 どっかの誰かが『CPANモジュール群のバージョンを各マシンで合わせるためにrpmに変換して云々』ってのをやってたと思うけど、Shipwrightの用途は多分そんな感じです。 Subversionリポジトリにコミットすることになるので、野良パッチのバージョン管理も出来るかもね。 インストール 普通にCPANから。 # cpan Shipwright Shipwrightはsvnが必要です。 svkにも対応していてsvkが無い環境だとインストール時にエラーになるけど、運用上svkを使わないんだったらcpan -f Shipwrightで問題無いよ。 初期化 $ shipwright creat
The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending. use strict; use warnings; package pQuery; our $VERSION = '0.24'; use pQuery::DOM; use Carp; use HTML::TreeBuilder(); use base 'Exporter'; our $document; *pQuery = \$document; our @EXPORT = qw(pQuery $pQuery PQUERY); my $my = {}; my $lwp_user_agent; my $quick
ホーム ブログ DreamhostにSVN::Coreを入れ、PlaggerでGoogle CodeのSVNコミットログをtwitterに流す DreamhostにSVN::Coreを入れ、PlaggerでGoogle CodeのSVNコミットログをtwitterに流す PlaggerにはCustomFeed::SVNLogというモジュールが付属しているので、ありがたく使わせてもらおうと思ったら、perlモジュールのSVN::Coreが足りない、とエラーになった・・・。 % plagger -c ./svn2twitter.yaml Can't locate SVN/Core.pm in @INC なのでCPANからSVN::Coreをインストールしようと思ったが、SVN::CoreはCPANには登録されていないそうなので、インストールは少々やっかい。 (参考:ぶらぶら日記: SVN::C
追記:なーんだ、やっぱりありました。 cpan -a を使えばいいらしい。 id:hiboma ありがとうございました。 何台かのサーバを扱っていると、サーバによってインストール済みのモジュールのバージョンが違ったり、インストールされてなかったりしてよく困ります。デプロイしてからエラーになって気づいたりするので心臓に悪いです。 どうしたものかと考えて、パッケージ名とバージョン番号のリストだけテキストファイルに書き出しておいて、デイリーで更新するようにすれば最低限の世代管理?にはなるかな、と考えました。 先人の成果にあやかろうと CPAN を探したのですが、どうも望み通りのものが見つからない。 id:tomyhero に教えてもらった Pod::ProjectDocs はブラウザで見るにはとても便利ですが、肝心のパッケージ名が JS オブジェクトとして書かれていて、 Perl から扱うのがち
やっとCPANデビューしました。こんな感じです。 登録〜公開の手順は、川崎さんのページが詳しくてわかりやすいです。以下、概要をメモ。 PAUSEへアカウント登録 PAUSEにユーザ登録申請をする 辛抱強く待つ。「Welcome new user XXXXX」 ってメールが返ってきたら登録完了*1 (やらなくてもOK) Gravatarで XXXX@cpan.org に対してアバターを設定すると写真が貼れる 実装する 型紙作成〜パッケージングに関しては竹迫さんの記事が参考になりました。 モジュールの型紙を作る。(h2xsとかmodule-starterとかpmsetupとか) t/*.t (テスト) を実装。 *.pm (実体)を実装。 $VERSIONを設定 podを書く README、ChangeLog、MANIFESTを書く (Build.PLの場合)Makefile.PLも忘れずに書
一応、メモ。 ユーザー領域にCPANをインストールする方法を参照して設定。 .bashrcに以下を追加 export PATH=$HOME/local/bin:$HOME/local/script:$PATH perlversion=`perl -v | grep ‘built for’ | awk ‘{print $4}’ | sed -e ’s/v//;’` export PERL5LIB=$HOME/local/share/perl/$perlversion:$HOME/local/lib/perl/$perlversion:$HOME/local/lib:$PERL5LIB export PERL_AUTOINSTALL=”–defaultdeps” # インストール時にyの入力を抑止 export FTP_PASSIVE=1 # passive modeでFTPダウン
Posted by nene2001 at 22:56 / Tag(Edit): tokuhirom brain 100% pure geek / 73 Comments: Post / View / 2 TrackBack / Google Maps 1/3冒頭追記:今回のトリガになった記事につきまして、特に悪意がなかった件は、tokuhirom氏の追記により了解しました。 が、とりあえず書いてしまったモノは書いてしまったモノとして、そのまま残しておきます。理由はコメント欄参照。 DISられるほど俺のコードの品質が悪いしメモリ効率もよくないのは認めるが、それでもこの書き方はないだろう、ハゲ。脳みそ100%天然ギーク。 HTTP::MobileAgent::Locator を Location::Area::iArea に依存しなくした - TokuLog 改め だまってコ
pmsetup を http://svn.bulknews.net/repos/public/misc/ からダウンロード ※ Module::Install を使うので、予めインストールしておく。 実行権限を与え、モジュール名を引数つけて起動する 名前とメールアドレスを聞いてくるので、入力する。 モジュール名を「Module::Name」とした場合 pmsetup Module::Name モジュール名でディレクトリが作成され、なかに CPANize するのひ必要な雛形のファイルが作成されている。 ※ 入力した名前やメールアドレスは、 ~/.pmsetuprc に保存される。 $ pmsetup Module::Name Creating Makefile.PL Creating directory t mkdir t Creating t/00_compile.t Creating
XML::Atom::Ext::Threading という XML::Atom に Atom Threading Extensions (RFC4685) の拡張を加えるモジュールを書きました. http://search.cpan.org/~masaki/XML-Atom-Ext-Threading-0.01/ これでやっと CPAN Author になれました.ちなみに coderepos で開発しています. http://coderepos.org/share/browser/lang/perl/XML-Atom-Ext-Threading
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く