Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

みなさんこんにちは。 突然ですがプロジェクトで使用しているライブラリのアップデートって面倒ですよね。 活動が活発なライブラリは嬉しい反面アップデートが辛かったり、セマンティックバージョニングを採用しているからガンガン自動で上がってくれないかと思いませんか。 そんなお悩みを解決するDependabotというものがありましたので導入してみました。 Dependabotとは package.jsonやgo.modといったマニュフェストファイルをみて古いライブラリやセキュアでないものを調べてくれます。 そして必要に応じてライブラリの更新を行いPull Requestを自動で作成してくれる優れものです。我々に残された仕事はPull Requestをmergeするだけなのです(そしてそれすらも自動化できる)。 こちら からも確認できますが現在サポートしている言語は下記のようになっています。 Ruby
require "rhymer" lyric = <<"LYRIC" 1853年(嘉永6年)、長崎の出島への折衝のみを前提としてきた幕府のこれまでの方針に反して、江戸湾の目と鼻の先である浦賀に黒船で強行上陸したアメリカ合衆国のマシュー・ペリーとやむなく交渉した幕府は、翌年の来航時には江戸湾への強行突入の構えを見せたペリー艦隊の威力に屈し、日米和親条約を締結、その後、米国の例に倣って高圧的に接触してきた西欧諸国ともうやむやのうちに同様の条約を締結、事実上「開国」してしまった>。 同年6月22日、12代将軍家慶が「今後の政治は徳川斉昭と阿部正弘に委ねる」と言い残して61歳で亡くなった。同年7月1日、幕府、国書を諸大名に示し意見を問い、3日にはお目見え以上の幕吏にも意見を問うた。260年間>「知らしむべからず、由らしむべし」を大法則としてきた幕府にとっては大方向転換であった[9]。 開国した後は
Rails 3.1 以降で良く使われるようになった therubyracer ですが、最近、これを含む bundle install がやたらと時間がかかったり、あるいはそもそも失敗してしまう、という事象が多数報告されています。 解決方法 以下の三つの方法が基本的な解決方法です。 その0 (※ 2013/1/11 追記) Gemfile にて、libv8 3.11 系を使用することを明記します*1 *2 gem 'therubyracer', '0.11.1' gem 'libv8', '~> 3.11.8.13' その1 Gemfile にて、 therubyracer のバージョンを 0.11.0beta8 に戻します gem 'therubyracer', '0.11.0beta8' gem 'libv8' その2 Gemfile にて、 therubyracer のバージョンを 0
Infrastracture as code流行の副産物として、もうOpsはある程度Rubyでライブラリを書けるようになりました。 折角Rubyでライブラリを書いたなら、安全&ラクに配布するためGemパッケージにしましょう、出来る人には今更でしょうが知らない人は真似してみてね。 ちなみに意外と誤解されてる点、gemにする=Rubygems.orgで公開する、ではありません、してもOKというだけで。 目標 gemファイルを置いて、gemコマンドで自分のライブラリをサーバに導入する。 こんなかんじで。 gem install -l my_libs-0.0.1.gem じゃあやってみましょう。 Gemの雛形をつくろう Gemの作り方は色々あるようですが、私はもっぱらbundlerです。 bundle gemで必要なファイル群を作成します、便利ですね。
本エントリでは僕が初めてつくった zsh プラグインを紹介します. Ruby を使っている人なら bundler のお世話になっている方が多いと思いますが, その bundler をより便利に使うためのプラグインになります.Ruby を使わない方 には直接は関係ないですが,アイデアは応用できるかもしれません. Bundler の問題点 Bundler は gem の依存関係をローカルな範囲で管理できる gem で,Rails を始め色々 なところで使われています.この bundler を使う上で,面倒くさいことの1つが bundle exec です. bundler でインストールされた gem をコマンドラインから実行する場合,$PATH が通っていないため, 実行する場合は bundle exec を使う必要があります. 例えば,rails を bundler でインストールした場合,
プログラムは、なるべく何もしなくても良い感じに動いてくれるのが理想的だけど、実際には何らかのかたちでユーザの設定を必要とすることがある。 Rails を使うときは config/application.rb でタイムゾーンを指定したり、DB へ接続するための情報を config/database.yml に指定する。 Bundler の挙動を変えたければ bundle config で設定を変更する。 Gem をインストールするときに毎回指定したいオプションがあれば、~/.gemrc に追記する。 もし自分の関わるプロダクトに「設定」のAPIが必要になったとき、何を判断の基準にして設計すればいいだろう。 ちょっと近所を見渡すだけでも、「設定」のやり方には色々ありそうだ。 設定という視点から、Rubyist にとって身近なプロダクトたちを資料として眺めてみた。 (NOTE: ちょっと悩みなが
会社の人にgemの作り方まとめてくれって言われたので標準的なgemの作り方をまとめます。 標準的な作り方なので他の人が作ったgemを読み解くヒントにもなります。 とはいえ有名なgemは(有名なgemに限って)メッチャクチャだったりするので読みづらかったりします。 歴史が古かったりすると特にね。 ジェネレータ まずはジェネレータを使ってプロジェクトを作りましょう。 昔はいろいろあったけど最近は bundle コマンドで大勢が決定してる感じです。 bundle gem test_gem -t -t はテストも作成するオプションです。デフォルトでrspecを使うようになってます。 その他のオプションは bundle help gem で確認できます。 Railsプラグインのgemを作る場合は rails plugin new test_gem を使う方法もあります。 別記事で詳しく書く予定です。
Rubyでプログラム書くにあたって、bundlerを使わないプログラムは1年ぐらい経つと動かなくなってる事が多々あって、bundlerマジ重要なのと ぐぐってもあまりbundlerの利点や説明がまとまってる記事がなかったので 研究室のwikiに書いた記事を転載しておく。 Bundlerとは Bundler: The best way to manage a Ruby application's gems プロジェクト内で使うRubygemsを管理するしくみ。 プロジェクトの一番上のディレクトリに「Gemfile」というテキストファイルを置き、その中にgemの名前(と必要あればバージョンも)書く。 % bundle install というコマンドで、gemが一括インストールできる プログラム内で require 'bundler' Bundler.require と書くと、gemが一括req
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く