Ruby
以下のようにしてrspecを実行することで、1つでもspecに失敗した時点でそれ以降のspecを停止できるようです。 $ rspec --fail-fast /path/to/specrake経由だと以下のような感じですよね。 $ rake SPEC='--fail-fast /path/to/spec'あと、よく使うrspecのオプ…
Railsアプリケーションのコントローラでは、なにかしらの例外が発生するとデータベースの変更をロールバックしますよね。 class ItemsController < ApplicationController def create Item.transaction do ... if エラー条件 raise ActiveRecord::Rollback e…
みなさんは全国高等専門学校プログラミングコンテスト(以下、高専プロコン)をご存じでしょうか? 簡単に言うと ロボコンの姉妹イベント ですね(ぉ なかなか良いイベントなんですよね、これが。私は松江高専の5年生のときにはじめて参加しました。そのときの…
ついにこの日がきました。そう、iPhone・iPadアプリ(iOSアプリ)をRubyで開発できるようになったのです。 さっそく、いっしょにやってみましょう。 [STEP1] RubyMotionのインストール iOSアプリをRubyで開発するには RubyMotion が必要です。 Write cross-pla…
RubyでRubyGemsを作るときにどのような方法を使っていますか?(えっ、Railsしか使ってないって!?まぁ、そういわずに便利なコマンドライン用のツールとかを作るのも楽しいよ〜) 最近では、 Bundlerを使ってRubyGemsを作るのが簡単 ですよね。 作りたいプ…
取り上げるのが遅くなりましたが、るびま37号が公開されました。 今回のるびまで私が印象に残っているのは 0037 号 巻頭言 、つまり高橋さんの記事です。「巻頭言」は37回も連続で続いている、るびまのテッパン記事です(笑) 今回は「Ruby のたのしさ」につ…
国内ソフトウェア開発者の実態調査結果を発表: http://www.idcjapan.co.jp/Press/Current/20120206Apr.html より ソフトウェア開発者がスキルを有する言語と、その中で最も使用している言語を尋ねた結果を見ると、多くの回答を集めた言語はC言語、Visual Bas…
ruby(MRI) 1.9にReadline.refresh_lineメソッドを追加しました。(r24020)これは、twitter:jugyoさんからご要望があり、twitter:koichirooさんからパッチをもらいました。 なお、このメソッドの使い方は[ruby-list:45922]から始まる一連のスレッドをみてくだ…
capistrano_colors とは Capistrano の実行結果を見やすいように色付けします。 例えば、以下のようになります。 インストール capistrano_colors は RubyGems を使ってインストールできます。 $ gem install capistrano_colors (環境によっては以下のコマン…
はじめに 趣味でも仕事でも ruby を使っている。趣味では ruby の 1.9 系を使えるが、仕事では使っていない。Rails が動かないからだ。だから、ruby 1.9 で Rails を動かす、のではなく、ruby 1.8 を使い続けることになる。そのためには、ruby 1.8.6 や ruby…
ruby-1.8.6 と ruby-1.8.7 の修正候補の一覧が以下の場所で公開されている。これは mput さんが管理されています。 http://svn.coderepos.org/share/docs/shyouhei/ruby%20development/revisions.txt http://coderepos.org/share/browser/docs/shyouhei/ruby…
ruby の trunk (r22013) に Readline.set_screen_size と Readline.get_screen_size を追加しました。それぞれのメソッドを以下に説明します。 Readline.set_screen_size(rows, columns) 端末のサイズを rows で指定した行数と、columns で指定したカラム数…
はじめに ruby 1.9 向けのアプリケーション(Google Code Archive - Long-term storage for Google Code Project Hosting.)を開発している。 そろそろリリースしようと思って、gem を作成してインストールを試した。インストールがうまくいったので、test も…
久しぶりに configure を実行した。以下のエラーが記録された。make できるので、configure 自体は問題なく終了しているようだが、これはなんだろう。 ragdoll$ ./configure --prefix=${HOME}/local --program-suffix=19trunk --with-readline-dir=/sw --ena…
明日、13:30から17:30まで、松江オープンソースラボにて、Matsue.rb#0を開催します。 Matsue.rb#0について、詳しくは以下のページをみてください。 https://matsuesns.jp/bbs/bbs_list.php?root_key=3389&bbs_id=80なお、当日はskypeのオープンチャットでや…
ruby 1.9 を利用しており Rake を使用してテストしている。 以下、使用している Rakefile。 require "rake" require "rake/testtask" Rake::TestTask.new do |t| t.libs << "lib" t.libs << "test" t.test_files = FileList["test/**/*_{helper,test}.rb"] e…
はじめに 本文書は、ruby 1.9 に導入された M17N 対応について、調査した結果や調査に関する作業ログである。 調査の目的は、私がメンテナンスしている Ruby の Readline モジュールを最近 (2008 年 10 月 25 日現在 ) 導入された Encode.default_internal …
はじめに Ruby の拡張ライブラリの作成方法の調査と、MP3 エンコード機能を含む LAMEの調査をかねて、Ruby の LAME ラッパーを作成しています。 LAME MP3 Encoder Google Code Archive - Long-term storage for Google Code Project Hosting. まだ、PCM から…
今日、Zope ガイドを購入した。そして、今日、読み終えた(マンガかよ)。 この本を購入したきっかけはenbug diary(2008-01-31)を読んだことです。この記事を読んで、Zope を知れば、未来を知ることができるかもしれない。と思ったのですが、この本には私が考…
IRCNet に接続できないことが多いため、 IRC の bot を takao7.net で動作させることにしました。 インストール persian$ cd ~/setup persian$ svn co http://www.atdot.net/svn/nadoka/trunk nadoka-trunk 設定 nadokarc を修正します。nick は kouji_ndk …
内容の理解 Subject: Readline and conditional tab results based on input From: Marc Heiler <shevegen linuxmail.org> Date: Fri, 18 Jul 2008 01:44:26 +0900最初に「cd」を入力してから TAB を押すとファイルやディレクトリのパスを補完するが、不正な文字 (例えば「blabalblab</shevegen>…
数日前からちまちま作業していた Readline の RDoc をようやくコミットしました。 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ext/readline/readline.c?view=markup&pathrev=18420 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=…
2008年8月1日に念願の Ruby のコミッタになりました。これで、今年の目標の一つをかなえることができました。 まつもとさんと Readline のメンテナをゆずってくださった前田さんに感謝します。そして、 libedit に感謝します。libedit の完成度が低かったか…
Mac OSX 10.4 の libedit の問題が Debian GNU/Linux etch の環境でも再現できることが分かりました。 この問題の詳細は、 ruby-dev:35551 からのスレッドを参照してくださいね。 havana$ cat /etc/debian_version 4.0 havana$ sudo apt-get install libedit…
はじめに 最近、ruby(MRI) の Readline モジュールの libedit 対応や rdoc の記述を行っています。しかし、私は ruby のコミッタではないので、作業の成果を trunk には反映できません。パッチを作成しては ruby-dev ML に報告し、それを revert して rdoc …
ruby の Readline へのパッチを作成した。パッチの概要を次に述べる。 GNU Readline を使用した場合の挙動は一切変えない。 パッチの適用前には、 EditLine(libedit) を使用する場合、次の問題がある。 libedit のバージョン (2.9より上?) によっては、 hist…
パッチを作成する前に、GNU Readline を使用した場合の ruby の Readline の仕様を明確にするため単体テストを記述する。 これがあればデグレードを防げる。ext/readline/gnu-readline 以下に GNU Readline 5.2 版。 ext/readline/editline 以下に Mac OSX 1…
私のパッチを ruby-dev に報告したあと、以下のことが ruby-dev([ruby-dev:35532]、[ruby-dev:35534]) で挙がった。 libedit の動作(history_base - 1)がバグなのか。バグなら将来のバージョンで修正されるのでは? libedit において、 history_get や remov…
Macのrubyのreadlineに不具合がある!?(4)の続き。Ruby の Readline ライブラリをデバッグする。 問題は以下。 http://redmine.ruby-lang.org/issues/show/212Ruby の Readline ライブラリが GNU Readline を使用するようにしてコンパイルされた場合、以下…
Macのrubyのreadlineに不具合がある!?(3)の続き。Editline Library (libedit) からたどることができるドキュメントを読もうと思ったが、閲覧できないようなのでソースを読むことにした。libedit/readline/readline.h 未実装のAPIが分かった。 extern KEYMA…