Gist Ubiquitifi
このたび、拡張パラメータを指定することによって、 コマンドのインストールページをカスタマイズできるようになりました。
例えば、以下のように、QueryStrin
name
以外のパラメータは、インストールページ上で
表示されるだけで、実際のインストールの動作には影響しません。
Gist Ubiquitifi
このたび、拡張パラメータを指定することによって、 コマンドのインストールページをカスタマイズできるようになりました。
例えば、以下のように、QueryStrin
name
以外のパラメータは、インストールページ上で
表示されるだけで、実際のインストールの動作には影響しません。
Capistrano
Rails-2.1以降、config/env
で、config.gem
を指定することによって、アプリケーションが依存するGemを簡単に指定することができるようになりました。
また、ここで指定したGemは、
1 % sudo rake gems:install
とするだけで、インストールすることができます。
しかし、今のところ、capistrano
そこで、cap deploy
を実行した時に、必要なGemをサーバ上でインストールさせるためのレシピを紹介します。
config/dep
1 namespace :deploy do 2 task :restart, :roles => :app do 3 sudo "rake -f #{current_path}/Rakefile gems:insta ll" 4 end 5 end
上記のように、deploy:res
のタスクで、Rakeコマンドを実行させるだけです。
簡単ですね。
今度はtrident
を実行した結果、以下のようなWARNINGが出ました。
DEPRECATIO
N WARNING: Inflector is deprecated ! Use ActiveSupp ort::Infle ctor instead. See http://www .rubyonrai ls.org/dep recation for details. (called from formula/co nfig/initi alizers/in flections. rb:5)
なるほど。とりあえず、いわれたとおりに修正してみます。 Globalの名前空間を掃除する方向なのかな。
とりあえず、それ以外は特に問題なく移行完了。
s21gブログを動かしているEC2インスタンスのRailsを 2.1.1にバージョンアップしました。
Rails 2.1.1: Lots of bug fixes
Rails 2.1.1 is another maintenanc
e release that includes a bunch of bug fixes and a fix for the REXML vulnerabil ity. I’ve extracted all the changes from the CHANGELOGs into a single Gist. Enjoy!
以下、バージョンアップに関する作業ログです。
まずは
trident
を立ち上げると以下のようなWARNINGが。
DEPRECATIO
N WARNING: Dependenci es is deprecated ! Use ActiveSupp ort::Depen dencies instead. See http://www .rubyonrai ls.org/dep recation for details. (called from evaluate_i nit_rb at blog/vendo r/plugins/ background _fu/init.r b:1)
とりあえず最新版のBackground
config/env
1 config.gem 'ncr-background_fu', 2 :lib => 'background _fu', 3 :source => 'http://gem s.github.c om'
そして
1 % sudo rake gems:install
そして不要になったプラグインを削除。
1 % ./script/plugin remove background _fu 2 svn: '/home/taki uchi/blog/ vendor/plu gins' is not a working copy
おっと。script/plu
はまだGitには対応してないのかな?
しかし警告メッセージは出ましたが、当該ディレクトリはきちんと削除されていた模様。
もう一度trident
を立ち上げるが、また同様の警告が出た。
ということで、background
config/env
1 config.gem 'genki-background_fu', 2 :lib => 'background _fu', 3 :source => 'http://gem s.github.c om'
これで警告は出なくなった。
rake -T
は特に問題なく実行できる。
rake test
を実行。
DEPRECATIO
N WARNING: follow_red irect is deprecated and will be removed from Rails 2.2 (If you wish to follow redirects, you should use integratio n tests) See http://www .rubyonrai ls.org/dep recation for details. (called from test_clean ing_up_bla nk_page at ./test/fun ctional/ar ticles_con troller_te st.rb:305)
とのこと。follow_red
を使いたい場合は
インテグレーションテストを使ってね、ということらしい。
いわれてみればその通りですね。
これを機にIntegratio
とりあえず、該当箇所をIntegratioscript/gen
コマンドがUpdateされてる可能性があったので、
rake rails:upda
を実行してみたが、config/boo
が数行変わっただけであった。どうやらRubyGemsの最低要求バージョンが1.1.1
以降となった模様。
Integratiofollow_red
ではなく、follow_red
を使う必要があった。
と、ここまででテストでのWARNINGもすべて解消。
あとはローカル環境で動作テストをした後に、
cap shell
で必要なGemをインストールしてcap deploy
WARNINGを消すためにひと手間かかりましたが、 基本的には特に大きな修正も必要なくアップグレードできました。
最近、
NeverBlock
NeverBlock
is a Ruby library that allows developers to write non-blocki ng, concurrent code in a transparen t manner. Meaning that you will keep coding in your traditiona l ways while you get the benefit of non-blocki ng IO operations .
LL futureの講演者控え室で、まつもとさん、高橋さんから、
その辺の話を伺う機会がありましたが、
NeverBlock
Building the Never Blocking Rails, Making Rails 12X Faster
They told you it can't be done, they told you it has no scale. They told you lies!
What if you suddenly had the ability to serve mutliple concurrent
requests in a single Rails instance? What if you had the ability to multiplex IO operations from a single Rails instance? No more what ifs. It has been done.
NeverBlock
MySQLPlus:
MySQLPlus is billed as a new general purpose MySQL driver that supports "threaded access and async operations
"
NeverBlock
See Also
Formula を使って、Ubiquityから数式を投稿するUbiquityコマンドを作ってみました。 こんな感じに、Previewも実装しています。
これを使えば、いつでもどこからでも、数式を投稿することができます。 コマンドを実行すると、Formula上の数式ページにジャンプするので、 埋め込みようタグを使ってブログに投稿することも簡単にできます。
インストール
formula用Ubiquityコマンドは、以下のページからインストールできます。
配布には拙作の
Gist Ubiquitifi
ご注意
スパムプログラムからの投稿などを避けるために、 SSL+Basic認証による認証をかけています。
本コマンドを最初に実行する時に、Basic認証のダイアログが出ます。 Basic認証に使うユーザ名とパスワードは、 Formula上でコメントをする時に使ったものをご利用ください。 Formula上に1つでもコメントがあれば、本コマンドが利用可能になります。
Rails-2.0.
1 request.env['HTTP_AUTHORIZATION'] = 2 'Basic ' + Base64::encode64("name:passw ord")
テストコードのなかで、上記のように環境変数を設定してから アクションを実行すればOkです。
早速 GoogleのChrome を使ってみました。 Firefoxでは3秒かかるこのブログのレンダリングも、 2秒程度で完了するなど、非常に軽快に動作しますね。 デフォルトでFirebug的な開発環境がついてくるのも素晴らしいです。
Google ChromeのFAQ を読んでみたところ、
18. How can I include my site's search in Google Chrome's search options?
By providing an OpenSearch
descriptio n document (OSDD), you enable Google Chrome to include your site in the list of search engines in the browser. For more informatio n about OpenSearch , please visit http://www .opensearc h.org.
と書かれていたので、XMLファイルを色々変更して試してみましたが、
なぜかまだOpenSearch
自動検出はしてくれませんでしたが、 アドレスバーを右クリックして「検索エンジンを編集」から、 検索エンジンを追加することで、同様のことが実現できそうです。
ちなみに、s21gブログの検索をGoogle Chromeから実現するためには、 キーワードとともに、URLを以下のように指定すればOkです。
これによって、以下のようにアドレスバーから、 指定したキーワードに続いて検索ワードを入力することにより、 s21gブログ内を検索できるようになります。
必要な機能は実装されているようなので、 あとは自動検出ができたらいいんですけどね。 何か方法があるのかな。
s21gブログが、記事の投稿時と記事を修正した時に Google Blog Search にPingを送るようになりました。
よろしくお願いします。
たびたび参照したくなるのでチートシート的にまとめておきます。 より詳細な情報は Phusion Passenger users guide をご確認ください。
See Also