Composerで必要なrepositoriesは全部書け、の話

分かったこと

composer で install する package が pear など外部の repository に依存している場合、その依存 repository は composer install の実行対象の composer.json に書かれていなければいけない。

+----------------+    +-------------------+    +---------------+
|(1)composer.json| -> |(2)composer package| -> |(3)pear package|
+----------------+    +-------------------+    +---------------+

上の図のようになっている場合、(2) の composer.json だけでなく、(1) の composer.json にも repository の追加が必要。

composer 1.0-dev (d79427f1a7b15e8f4d46ce8124a4d0c58ba1479c) で試した。

composerでpear packageを扱う場合

  1. 自作ライブラリ(非公開)をcomposer対応した
  2. このライブラリは pear に依存しているので以下のような記述を追加した
"repositories": [
   {
     "type": "pear",
     "url":  "http://pear.php.net"
   }
]

ここまでは前回も実験してるし、探せば出てくる情報。

cf. 今さらComposer - あーありがち(2014-07-02)

composerはrepositoriesを再帰的に解決しない

みたい。

上の図で言うと (2) で repositories を追加しているので (1) には書かなくていいんじゃないかと思ったんだけど、そんなことはなくて、(1) に repositories を追加しないと、

requires pear-pear.php.net/http * -> no matching package found.

みたいなエラーが出る。

頑張って package の指定のミスを探したけど、何のことはない、単に repository を追加していなかったからであった。

まとめ

  • pear など repositories の追加が必要な composer package を利用する場合は install の実行対象となっている composer.json にも repositories の追記が必要
  • 自分でそのような package を作る場合は README など install 方法にもその旨但し書きせよ

というお話でした。以上。

Kanazawa.rb meetup #4 に行って来た

開催までに苦労した点と良かった点

今回は今まででいちばんの綱渡りだった。

  • 周辺の富山、石川、福井のイベントを避けた結果、この日しか空いてない
  • 逆にこの日はちょうどいい施設がみんな埋まってる

という状態で、なんとか金沢市文化ホールを借りたけど、実はここ立地が良すぎてやや高い。あと今どきのライトなミーティングにも普通に使われるプロジェクタのレンタル料がまた高い。

まぁプロジェクタなしでもできんことはないんだけど、それには逆に読書会などの相応の準備が必要だし、正直 kanazawa.rb は全員が同じ方向を向いた Rubyist ではないので、準備の設計がとても難しい。やっぱプロジェクタは欲しいよなぁ。

ということでなんとか文化ホール以外から調達できないかなと思って声を掛けたら

「安心・安全・安定・信頼」できるインターネットサービスを - 株式会社クルウィット

さんのご好意で借りることができた。助かった。

※ 高専の学生さんも備品を借りることができるそうなんだけど、さすがに高専の備品を持ったまま飲み歩くのはまずいよなーと思って遠慮させてもらった。

もう一つ、11月途中から本格的に自分の手を動かせる時間がなくなってしまったので、beerup の準備が進まなかった。

これもなんとか当日2次会まで @kiyohara さんに全面的に頼りきりでなんとかなった。本当に助かった。

そしてドラ用にタブレット持って来てーとお願いしたら @kitak は Titanium でドラアプリ作ってきてくれた。やりすぎだろ(笑

meetupで年忘れLT大会をやった

どういう流れで全員LTを思いついたのか今となってはちょっと思い出せないんだけど、

  • kanazawa.rbが始まってコミュニティスピーカーデビューが6人になった(うち2人は本当に苦しんでいたけど、そこを乗り越えてくれたのは本当に嬉しかった)
  • 案外みんな喋れる
  • LTを知らないと言ってるけど実は仕事で喋ってた経験のある人もいて、思ったよりドラ芸ができる

正直、meetup #3 のときにはまぁこんなもんかなと思ったけど、少し

「あ、本当にこのままいくと先あぶないかも」

と思って、年末だし景気づけの意味もこめて meetup #4 を年忘れLT大会にしたのかもしれない。やれる範囲で Twitter を中心にプロモートと、あと github pages の方で LT の補足したりしながら、まぁなんとか平常運転と言っていい人数は集まってくれてなんとか格好はついたかなと思っています。

みんな他の人の話を興味深く聞くことができたし、いつもはあまり起きない、「あぁそこはこういう風に書いたらいいんじゃないの」「え、今こうなってんだけど」「あれ?思ってたのと違うな」って話が弾んだし、

「なんとかなってよかった!」って顔がよかった。

どうだい、そのビール、うまいだろ?(笑

課題の話をしていたらしい

二次会の秋吉で今後の課題とか運営の話をしていたような気がするんだけど、実はあんまり覚えていない(笑

本当は組織として考えるならもっと指示出しをして役割を与える方がうまく回るんだろうなとは思っている。でも今のところ指示出しはあまりしてない。「お願い」している格好だ。

みんなができるところを自分で見つけて回せるようになるといいなと思っている。これは恐らく理想論だし、たぶんそこにたどり着くには時間は掛かるけど、続けられる範囲で「お願い」は続けるつもり。そんなとろいの待ってられないからこっちで指示出すわ、って人がいるならそれはそれでやりましょう(笑

もちろんこういう声が二次会とは言え出てくるのは良い傾向だと思ってる。「みんな」かどうかは分からないけど、自分のこととして課題を考えてくれる人がいるだけで、始まった当初の kanazawa.rb とは少しレベルが違うと思う。あの頃は運営っぽい人が何人か集まっても不安の方が大きかったもんね。

ただその「一歩を踏み出すきっかけ」として全員LTを考えていたのかもしれないなーと振り返って今思う。なんとなくだけど。

まとめ

楽しかったね! またやろう!

次回 meetup #5 は 1/19(土) です!

Twitter だけのプロモーションは見逃しちゃうよ!という方は doorkeeper 登録しとくと連絡いくから登録しとくといいよ!

http://kzrb.doorkeeper.jp/

picture-modeメモ

Emacs には picture-mode っていう mode があって、簡単に言うと完全に上書きモードで何も入力されていないところへもグイグイカーソルを持っていけるモードです。上のようなメモを書く際に使えるんだけど、凝った画を描くのにはやっぱ向いてなくて、ちょっと使いどころが難しいですまる。

Macのインターネット共有メモ

えーとインターネット共有ってこういうやつ。結構古くから Windows にもあるやつ。いわゆるブリッジ。

+--------------+  +--------+    +------+
| LAN/Internet |--| MacOSX |-+--| PC 1 |
+--------------+  +--------+ |  +------+
                             |  +------+
                             +--| PC 2 |
                             |  +------+
                             |  +------------+
                             +--| iPod touch |
                                +------------+

なんとなく Mac 側からはちょっかい出せないものと思っていたけど、特に何の設定もなく、単に正しい IP アドレスを指定しただけで上の図で言う PC 1 の vnc サーバに Mac から繋がってしまった。VirtualBox の VM みたいに forward 設定みたいなの要るのかと思ってたからちょっと驚いた。

便利なんだけど、OSX 側の設定次第ではぶら下がっている機械に OSX の参加してるネットワークからそのままいろいろできるので気をつけないといけないなと思った。

え、「気をつける」は具体策ないから意味ない? そーですね。

さりとてどうしたものか

ときどきの雑記帖 リターンズ 2006年11月

ソートの基準を読みがなにすると

だいいち
だいさん
だいに

になっちゃうよという話。じゃあ読みがなに数字を入れちゃえばいいのかというと、それもなんだかなという感じがしないでもない。

いっそランダムに表示されるとか。個人の習熟度も考慮する傾向の強い業務アプリには絶対に使えない方法を思いついちゃうのは Web 脳になってるからかしら。

ゴロゴロきてます

くるよくるよ冬将軍が。

本格的なのはまだだろうけど、この音を聞くと……ブリと日本酒が恋しくなってくるな。あーデミグラスソースと赤ワインもいいな。

サーバがちょっとうるさい

やっとコンテンツも含めてすべて移行できた。まだ Apache 2.0 を 2.2 に上げた方がいいなー(trac で利用してる apache runtime のバージョンと合わないから)とか、syslog-ng にして監視しやすくしよう、とか調整したいところはあるんだけど、これはおいおいやっていこう。

それより気になってるのは音。風切音はあんまり気にならないんだけど、微妙に低周波っぽい音が出てるのでこれは振動だな、きっと。今までのものはハードディスクの回転数も低めでファンのパワーも全然ないやつだったので気にならなかったけど、今回のものはどっちもエネルギーの大きなものになってるのでケースの方に影響が出ていると見た。防振のパーツを足してやらないといかんな。

なんかしかし、すでにかなり面倒くさい。つくづくハードウェアいじりには興味ないんだな。かと言って小さいだけでコストパフォーマンスの悪い機械や 2.5" HDD で連続運転もやりたくない。連続運転を前提にした、でかすぎず小さすぎずメンテナンス性と見た目のよいケースを採用した省電力で超静音で安価なマシンがあればそれ買うのにな。

贅沢ですかそうですか。

のどがいがらっぽくなる

タバコも吸っていないし風邪引いたわけでもないのに、妙に喉がいがらっぽくなるのは、普段あまり喋らないからでしょうか。それともおっさんになったからでしょうか。なんか後者のような気がするのですが…。

※ 常に緊張感を持っていて喉が渇きやすいとかそういうことであればまぁ許せる。

プログラミングの楽しみと苦しみ

プログラマと付き合う (ソリッドウェブ)

なるほどー。これはうまいこと表現していると思う。

「美しい」というのはキモですな。ただ、どんなに美しくても「明日の自分は今日の自分の成果を覚えていないことがよくある」のも事実で、美しく、変更に強いコードに対しても実際の変更を加えるのが極めて短時間で済むかというとそんなことはない。そのためにはドキュメントの自動生成とバージョン管理をしっかり意識しながら作業しないとダメだと思う。

Web付箋紙

を見ていて思ったんだけど、

  • プロキシ動作するようにして
  • query を除く uri ごとに付箋の情報を保持できるようにする

と、いろんな Web サイトに付箋でコメントをばしばしつけることができるんじゃなかろうか。実際にはあらゆるサイトに対してプロキシ動作を許可すると uri 情報と付箋の紐付けが相当ヘビーになるので、

  • プロキシ動作を許可するサイトを設定して使う

ことになるだろう。

これが実現すれば Web サイトの新規開発やリニューアルなどの作業がとてもやりやすくなるような気がするんだけど、どうだろう。実際には qwikWeb のような ML 連動型でシーケンシャルにデータをストックする仕掛け1るびまが裏でやってる、Wiki の diff をメールで送るような仕掛けがないと ToDo リストの作成や作業の進捗の把握はなかなか大変になってしまうかもしれない。でもまぁそういうのはすでに実現しているので、あとから考えて付け足すのはそんなに難しくないだろう、なんて勝手なことを妄想しておく。

ほしいなぁ。Web サイトに付箋を貼れるシステム。ちょうど Acrobat で PDF に付箋を貼って推敲していくようなプロセスを Web ベースで行える感じ。しかもバックエンドで履歴の管理も差分の管理も行えるスグレモノだ。

  1. ツッコミの取りまとめを各ページを実際に見ながらコピペするのはうざすぎる 

物欲と闘う

http://www.zdnet.co.jp/products/0311/27/kyocera.html

いい。

やっぱツァイスは CONTAX ブランドでないと。誰ですか、たかが京セラだろとか思っている人は。でもなぁ、別に世界最薄でなんかある必要ないし。(かえってグリップが安定しないので薄いのはあまり好きじゃない。)回転式は手軽さに掛けるし、CCD は小さいし、電池も充電池でフィルム3本分。仕様を見る限りは光学ファインダーがないような。。。

でも所有欲は満たすな、これ(笑) 使い勝手よかったら転んぢゃおうか。。。

Pdoc 発見

http://pdoc.sourceforge.net/

JavaDoc, PHPDoc を知って以来、こういうの Perl にもないのかなぁと思っていたのですが、見つけました。日本語周りの対応とか、日本語で使っている人の情報とか、全然調べてないんですけど、とりあえずメモ。

Ruby だと RDoc ですね。

THE LAST SAMURAI を見た

すげーかっこよかった! 久しぶりの先行上映。

ちょっと琴とか尺八とかの音が入りすぎてる気がするけど、それはハリウッドだものしょうがない。富士山がでかすぎるのもまぁ仕方あるまい(笑) 横浜港からあんな大きさで見えるわけねーぞ。

ちょっと残念なのは、ロケ地が日本じゃないっていう違和感がどうしても出てる。いくら山間の村と言ってもそんなに外界から隔離された地域ではなかなか生活できるもんじゃない。というか田んぼとか畑とかが景観に入ってこなさ過ぎ。まーこれはネイティブの田舎者じゃないと感じない違和感かもしれない。扇状地とか、そういう土地を再現するのは外国のセットじゃいくらなんでも無理だべ。それこそ CG バリバリに使わないと。 あと、最後の超重要シーン。そんなとこでみんなでひざまずいたりしません。そりゃいくらなんでもねーべ。話の流れからするとやりそうだなとは思うけど、ちょっとなぁ。

でもあれですな。CG 全盛のご時世に、(そりゃ随所で使ってるだろうけど)基本的に人間と自然を中心に撮られた、しかも昔の日本を題材にした映像ってのはやはり心が落ち着きます。あの映像を日本人じゃない監督が作ったってのは見事としか言いようがないでしょう。よー勉強してるわ。 それと日本人のキャスティングがうまい。ま、これは日本人がやってるんだから当然ちゃー当然なんだけど、目立つところでは小雪以外はハマり役。小雪は日本女性にしてはスタイル良すぎます。あと、未亡人にしては生活感なさすぎ。まぁ、スタイルが良くて顔がくどくなく、髪が長く、色気もあるのでハリウッド的には申し分ないでしょうな。でも天皇役とか渡辺謙とか真田広之とかいいですな。真田広之の、こう、抜き身の刀のようなとがった感じがたまらんです。ある意味最も侍らしいのは彼ではないかと。主に忠誠を誓い、たゆまぬ鍛錬を続け、ときに後進の指導に当たったりと実際にいちばん働いている。おいしいところは全部渡辺謙とトムクルーズに持っていかれる辺りも実にそれらしい。好きだなぁ、真田広之。この報われない感じがサイコー。トムクルーズも大好きだが、報われなさ感は皆無なのが惜しい。いや渡辺謙も好きですよ。同郷ですし。でも渡辺謙については語ることはないです。一言、見事すぎます。どう見たってこの映画の主役は彼です。

正直、THE LAST OF MOHICANS は完全に越えてますな。比べるなって? あ、この映画、なんで好きかって、ハリウッドお約束のあまりに簡単に恋に落ちる主人公がいないってのが大きいのかもしれん。

追試、Mozilla.org な Mac のブラウザ

Netscape 6.23
Netscape 7×
Netscape 7.0.1×
Mozilla 1.0.1×
Mozilla 1.1×
Mozilla 1.2×
Chimera 0.6J×
IE 5.21

となりました。いずれも OS X 版。なんだかなぁ…。ちなみに、設定でいじれるのかどうか、ちょっと見たところよく分かりませんでした。うーん。考えたらちゃんと Mozilla について調べたりしたことないな。

Netscape 6.23 ができるのはまだ救いなのですが、今さらタブのないブラウザに戻れるかってんだ、このすっとこどっこいが。(誰が。)

About

例によって個人のなんちゃらです

Recent Posts

Categories

Tool 日々 Web Biz Net Apple MS ことば News Unix howto Food PHP Movie Edu Community Book Security Text TV Perl Ruby Music Pdoc 生き方 RDoc ViewCVS CVS Rsync Disk Mail FreeBSD Cygwin PDF Photo Zebedee Debian OSX Comic Cron Sysadmin Font Analog iCal Sunbird DNS Linux Wiki Emacs Thunderbird Sitecopy Terminal Drawing tDiary AppleScript Life Money Omni PukiWiki Xen XREA Zsh Screen CASL Firefox Fink zsh haXe Ecmascript PATH_INFO SQLite PEAR Lighttpd FastCGI Subversion au prototype.js jsUnit Apache Trac Template Java Rhino Mochikit Feed Bloglines CSS del.icio.us SBS qwikWeb gettext Ajax JSDoc Rails HTML CHM EPWING NDTP EB IE CLI ck ThinkPad Toy WSH RFC readline rlwrap ImageMagick epeg Frenzy sysprep Ubuntu MeCab DTP ERD DBMS eclipse Eclipse Awk RD Diigo XAMPP RubyGems PHPDoc iCab DOM YAML Camino Geekmonkey w3m Scheme Gauche Lisp JSAN Google VMware DSL SLAX Safari Markdown Textile IRC Jabber Fastladder MacPorts LLSpirit CPAN Mozilla Twitter OpenFL Rswatch ITS NTP GUI Pragger Yapra XML Mobile Git Study JSON VirtualBox Samba Pear Growl Mercurial Rack Capistrano Rake Win RSS Mechanize Sitemaps Android JavaScript Python RTM OOo iPod Yahoo Unicode Github iTunes God SBM friendfeed Friendfeed HokuUn Sinatra TDD Test Project Evernote iPad Geohash Location Map Search Simplenote Image WebKit RSpec Phone CSV WiMAX USB Chrome RubyKaigi RubyKaigi2011 Space CoffeeScript Nokogiri Hpricot Rubygems jQuery Node GTD CI UX Design VCS Kanazawa.rb Kindle Amazon Agile Vagrant Chef Windows Composer Dotenv PaaS Itamae SaaS Docker Swagger Grape WebAPI Microservices OmniAuth HTTP 分析基盤 CDN Terraform IaaS HCL Webpack Vue.js BigQuery Middleman CMS AWS PNG Laravel Selenium OAuth OpenAPI GitHub UML GCP TypeScript SQL Hanami Document SVG AsciiDoc Pandoc DocBook Develop Jekyll macOS Node.js Vite Heroku Transformer AI Data Cloud Wasm