Closed shunsuke227ono closed 9 years ago
備考: そのgemのイシューからとっつきやすそうなものを探す gemどうしよ。選び出す基準が。
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.2.3'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.1.0'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.0'
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'
# Use Unicorn as the app server
# gem 'unicorn'
# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug'
# Access an IRB console on exception pages or by using <%= console %> in views
gem 'web-console', '~> 2.0'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'spring'
end
rails 4.2.3 ∟ actionmailer = 4.2.3 ∟ actionpack = 4.2.3 ∟ actionview = 4.2.3 ∟ activejob = 4.2.3 ∟ activemodel = 4.2.3 ∟ activerecord = 4.2.3 ∟ activesupport = 4.2.3 ∟ bundler < 2.0, >= 1.3.0 ∟ railties = 4.2.3 ∟ sprockets-rails >= 0
sqlite3 ∟ hoe ~> 3.13 ∟ hoe-bundler ~> 1.0 ∟ mini_portile ~> 0.6.1 ∟ minitest ~> 5.4 ∟ rake-compiler ~> 0.9.3 ∟ rdoc ~> 4.0
sass-rails ∟ railties < 5.0, >= 4.0.0 ∟ sass ~> 3.1 ∟ sprockets < 4.0, >= 2.8 ∟ sprockets-rails < 4.0, >= 2.0 ∟ tilt ~> 1.1
uglifier coffee-rails jquery-rails turbolinks jbuilder sdoc spring
備考: fix typoおじさん、version up おじさん。モチベ: 機能追加したい/貢献したい/経験積みたい
入れたら、rakeタスクみて、テストしてるタスクを見つける予定 cloneした。https://github.com/rails/rails/tree/master/activesupport/test にtestに関するコードはありそう。で、testを回してみたいが、test回すコマンドがわからない. test回してみた後に何をするかの見通しが立っていない.
rails が依存してるgemがinstallされてるのが見える。
備考:
onoshunsuke@localhost:(master) $ bundle install [/Users/onoshunsuke/rails/activesupport]
Fetching git://github.com/bkeepers/qu.git
Fetching git://github.com/rails/sprockets-rails.git
Fetching git://github.com/mikel/mail.git
Fetching git://github.com/rails/arel.git
Fetching git://github.com/rails/jquery-rails.git
Fetching git://github.com/rails/globalid.git
Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/...
Fetching dependency metadata from https://rubygems.org/..
Resolving dependencies......
Using rake 10.4.2
Using i18n 0.7.0
Using json 1.8.2
Installing minitest 5.3.3
Using thread_safe 0.3.5
Using tzinfo 1.2.2
Using activesupport 5.0.0.alpha from source at .
Using builder 3.2.2
Using erubis 2.7.0
Using mini_portile 0.6.2
Using nokogiri 1.6.6.2
Using rails-deprecated_sanitizer 1.0.3
Using rails-dom-testing 1.0.6
Using loofah 2.0.1
Using rails-html-sanitizer 1.0.2
Using actionview 5.0.0.alpha from source at .
Using rack 1.6.0
Using rack-test 0.6.3
Using actionpack 5.0.0.alpha from source at .
Using globalid 0.3.5 from git://github.com/rails/globalid.git (at master)
Using activejob 5.0.0.alpha from source at .
Using mime-types 2.4.3
Using mail 2.6.3.edge from git://github.com/mikel/mail.git (at master)
Using actionmailer 5.0.0.alpha from source at .
Using activemodel 5.0.0.alpha from source at .
Using arel 7.0.0.alpha from git://github.com/rails/arel.git (at master)
Using activerecord 5.0.0.alpha from source at .
Installing amq-protocol 1.9.2
Installing beaneater 0.3.3
Installing dante 0.1.5
Installing backburner 0.4.6
Installing bcrypt 3.1.10
Installing benchmark-ips 2.1.1
Using bundler 1.9.4
Installing bunny 1.7.0
Using columnize 0.9.0
Installing byebug 4.0.5
Using hitimes 1.2.2
Using timers 4.0.1
Using celluloid 0.16.0
Installing coffee-script-source 1.9.0
Installing execjs 2.3.0
Using coffee-script 2.3.0
Using method_source 0.8.2
Using thor 0.19.1
Using railties 5.0.0.alpha from source at .
Using coffee-rails 4.1.0
Installing connection_pool 2.1.1
Installing dalli 2.7.2
Using delayed_job 4.0.6
Using delayed_job_active_record 4.0.3
Using jquery-rails 4.0.3 from git://github.com/rails/jquery-rails.git (at master)
Installing mustache 1.0.0
Installing kindlerb 0.1.1
Installing metaclass 0.0.4
Installing mocha 0.14.0
Installing mono_logger 1.1.0
Using multi_json 1.11.0
Installing mysql 2.9.1
Using mysql2 0.3.18
Installing pg 0.18.1
Using qu 0.2.0 from git://github.com/bkeepers/qu.git (at master)
Using qu-rails 0.2.0 from git://github.com/bkeepers/qu.git (at master)
Installing redis 3.2.1
Installing redis-namespace 1.5.1
Using qu-redis 0.2.0 from git://github.com/bkeepers/qu.git (at master)
Installing que 0.9.2
Installing queue_classic 3.1.0
Installing racc 1.4.12
Installing rack-cache 1.2
Installing rack-protection 1.5.3
Installing sprockets 3.0.2
Using sprockets-rails 3.0.0.beta1 from git://github.com/rails/sprockets-rails.git (at master)
Using rails 5.0.0.alpha from source at .
Using rdoc 4.2.0
Installing redcarpet 3.2.3
Using tilt 1.4.1
Installing sinatra 1.4.5
Installing vegas 0.1.11
Installing resque 1.25.2
Installing rufus-scheduler 3.0.9
Installing resque-scheduler 4.0.0
Using sdoc 0.4.1
Installing sequel 4.19.0
Installing sigdump 0.2.2
Installing serverengine 1.5.10
Installing sidekiq 3.3.2
Installing thread 0.1.7
Installing sneakers 1.0.4
Using sqlite3 1.3.10
Installing stackprof 0.2.7
Installing sucker_punch 1.3.2
Using turbolinks 2.5.3
Using uglifier 2.7.0
Installing w3c_validators 1.2
Bundle complete! 47 Gemfile dependencies, 95 gems now installed.
Use `bundle show [gemname]` to see where a bundled gem is installed.
Post-install message from rufus-scheduler:
***
Thanks for installing rufus-scheduler 3.0.9
It might not be 100% compatible with rufus-scheduler 2.x.
If you encounter issues with this new rufus-scheduler, especially
if your app worked fine with previous versions of it, you can
A) Forget it and peg your Gemfile to rufus-scheduler 2.0.24
and / or
B) Take some time to carefully report the issue at
https://github.com/jmettraux/rufus-scheduler/issues
For general help about rufus-scheduler, ask via:
http://stackoverflow.com/questions/ask?tags=rufus-scheduler+ruby
Cheers.
***
% onoshunsuke@localhost:(master*) $ bundle exec rake test [/Users/onoshunsuke/rails/activesupport]
/Users/onoshunsuke/.rbenv/versions/2.1.4/bin/ruby -w -I"lib:test" -I"/Users/onoshunsuke/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/rake-10.4.2/lib" "/Users/onoshunsuke/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/rake-10.4.2/lib/rake/rake_test_loader.rb" "test/**/*_test.rb"
I, [2015-07-11T14:13:39.572091 #30875] INFO -- : localhost:11211 failed (count: 0) Errno::ECONNREFUSED: Connection refused - connect(2) for "localhost" port 11211
Skipping memcached tests. Start memcached and try again.
Run options: --seed 64103
# Running:
...............................................................................................................................................SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................E..E....................................................................................F...........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................E..SSS
Finished in 9.499247s, 339.0795 runs/s, 40116.5482 assertions/s.
1) Error:
NumericExtFormattingTest#test_negative:
NoMethodError: undefined method `next_float' for 0.0:Float
/Users/onoshunsuke/rails/activesupport/test/core_ext/numeric_ext_test.rb:447:in `test_negative'
2) Error:
NumericExtFormattingTest#test_positive:
NoMethodError: undefined method `next_float' for 0.0:Float
/Users/onoshunsuke/rails/activesupport/test/core_ext/numeric_ext_test.rb:409:in `test_positive'
3) Failure:
RangeTest#test_include_on_time_with_zone [/Users/onoshunsuke/rails/activesupport/test/core_ext/range_ext_test.rb:111]:
[TypeError] exception expected, not
Class: <SystemStackError>
Message: <"stack level too deep">
---Backtrace---
/Users/onoshunsuke/rails/activesupport/lib/active_support/time_with_zone.rb:399
---------------
4) Error:
MarshalTest#test_that_Marshal#load_still_works:
NoMethodError: undefined method `super_method' for #<Method: Module(ActiveSupport::MarshalWithAutoloading)#load>
/Users/onoshunsuke/rails/activesupport/test/core_ext/marshal_test.rb:18:in `block (2 levels) in <class:MarshalTest>'
/Users/onoshunsuke/rails/activesupport/test/core_ext/marshal_test.rb:16:in `each'
/Users/onoshunsuke/rails/activesupport/test/core_ext/marshal_test.rb:16:in `block in <class:MarshalTest>'
3221 runs, 381077 assertions, 1 failures, 3 errors, 158 skips
You have skipped tests. Run with --verbose for details.
rake aborted!
Command failed with status (1): [ruby -w -I"lib:test" -I"/Users/onoshunsuke/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/rake-10.4.2/lib" "/Users/onoshunsuke/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/rake-10.4.2/lib/rake/rake_test_loader.rb" "test/**/*_test.rb" ]
Tasks: TOP => test
(See full trace by running task with --trace)
-> branch変えてtest実行してみて、それでもエラーが出るかを試す。出るとすれば、マスターのみの問題に。
onoshunsuke@localhost:(4-2-stable*) $ git pull origin 4-2-stable:4-2-stable [/Users/onoshunsuke/rails/activesupport]
From https://github.com/shunsuke227ono/rails
! [rejected] 4-2-stable -> 4-2-stable (non-fast-forward)
マスターでテスト実行したらエラーでた。 -> https://travis-ci.org/rails/rails でテストの実行結果の状況確認できるが、ruby 2.2.2でテスト通ってるのがわかる。ローカルでは、versionが2.1.4だったゆえにエラーが起きていたよう。 -> version更新して、テスト実行しなおしてみる。
onoshunsuke@localhost:(master*) $ bundle exec rake test [/Users/onoshunsuke/rails/activesupport]
/Users/onoshunsuke/.rbenv/versions/2.2.2/bin/ruby -w -I"lib:test" -I"/Users/onoshunsuke/.rbenv/versions/2.2.2/lib/ruby/2.2.0" "/Users/onoshunsuke/.rbenv/versions/2.2.2/lib/ruby/2.2.0/rake/rake_test_loader.rb" "test/**/*_test.rb"
I, [2015-07-11T14:54:41.023598 #94941] INFO -- : localhost:11211 failed (count: 0) Errno::ECONNREFUSED: Connection refused - connect(2) for "localhost" port 11211
Skipping memcached tests. Start memcached and try again.
Run options: --seed 22404
# Running:
...............................................................................................................................................SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................SSS
Finished in 9.057228s, 355.6276 runs/s, 42078.1060 assertions/s.
3221 runs, 381111 assertions, 0 failures, 0 errors, 158 skips
You have skipped tests. Run with --verbose for details.
Run with --verbose for details.
に従ったがうまくいかなかったhttps://github.com/rails/rails/issues/13641 であるのと全く同じ問題を得た。このイシュー上にある解決方法で解決した。
そもそも、 Run with --verbose for details.
って出てくるのミスリードじゃないか
--verboseはminitestでのオプション。TESTOPTS="-v"はrake/testtaskの書き方。
rake taskをactivesupportから叩くと、minitestが、--verboseつけてとmsgだすが、rake test実行する場合は、TESTOPTS="-v" つける必要あり。--verboseつけても機能しない。
-> わかりにくい。
対応方法としては、
TESTOPTS="-v"
に変換して、そのmsgと整合性保ってあげる
or
TESTOPTS="-v"
をoptionにつけてくれ、というメッセージをつけるようにする。testtaskの内部でshell呼び出して、rubyを新しく起動してる。shとか描いてある。rake taskでのrubyと内部で呼び出してるrubyが違う可能性がある。そうなると、変数が引き継がれない。だから環境変数に入れる。TESTOPTS="-v"
で環境変数に入れると、rubyが変わっても引き継がれる。
-> どうすればいいか?いかにメッセージ出せばわかりやすいのか?挙動を変えるのか?
rake testtaskのコードを読みながら、そちら
--verbose -> 警告 --verbose -> 内部的に変換 TESTOPTS だよというのを、rakeの方のドキュメントに書く。
自分が実行した時にどうしたら迷わなかったかという観点で考える。
rakeの既存のコードでオプションをどう受け取ってるか、空気をみる。 オプションをよしなに判断してるところがあれば、参考にする。
CD -> cdへのプルリク出してみました
activesupport ∟テストfiles (minitestを指定)
rake(make file的な役割)を経由してそのminitestを使用しているテストsを実行している。
rakeへのオプションは、rake内でのコマンドにオプションとしてそのまま渡るとは限らない。なぜなら、他のrubyが起動しているから。ゆえに、rakeを経由したコマンド先で、オプションを引き継ぎたい時は、環境変数にオプションを入れてやる必要がある。
rakeタスクを経由してminitestを呼び出しているから、オプションの渡し方が違ってしまってる。
そのオプションの渡し方の違いゆえの、分かりにくさをどう解消するか。
linux 出力
--verboseてオプションがrakeタスクに渡された時に、TESTOPTS使ってねって書くのもありだな。
プルリクがruby-headでこけてたが、masterでも他のプルリクでもこけてたので 気にしない
ruby-headのbugであって、このプルリクが原因でこけたわけではない。
minitestの方でいかにエラーメッセージ出しているか知る。 https://github.com/seattlerb/minitest/blob/35ec0145be4ee09bd7b84088c809d27ce42ce746/lib/minitest.rb
rakeタスク側でのオプションのつけ方をどうメッセージで出すか。
--verbose
使ってね、と出るのは、minitestを使ってる時のみ。
TESTOPTS
使うべきなのは、rake/testtask使ってるとき。
案1) TESTOPTSつけてないときに、TESTOPTSつければoption追加できるよ、と追記すべき? -> minitest使ってるときは、確かにそれで助かる。が、他のときは?今まで別に必要なかった。 -> そこにそのメッセージを追加するモチベは、activesupportからの困惑を防ぐため。それをrakeの方に修正要求するってのは変か。
案2) activesupportからの分かりやすさ向上がモチベなので、activesupportの方で、optionがおかしいとき(OR 正しいoptionが付いていないとき) に TESTOPTS
つけてねと返す、
skipされたテストある、かつ、validなオプション付いていない -> エラーメッセージ表示、をしたい。 どうすればよいか。
「rakeタスクを通して、minitestクラスのテストを実行している場合、」 => 日本語としてmake sense?
英語にどうしよう?
お疲れ様でした!
https://github.com/ruby/rake
作業ログは、参加者が、このイベントを通して得るものをより増やすために重要になります。なぜなら作業ログがメンターからのフィードバックをより充実させるからです。
作業ログを元にメンターと「ふりかえり」をするタイミングがあります。「ふりかえり」では次のことをします。
メンターは次のようなフィードバックをします。これは、参加者とは違う視点から参加者の行動を観察することおよびメンターの経験があるからできることです。(「ふりかえり」の前にこんなフィードバックをよろしくお願いします!とお願いすると効果が高まるので実践してみましょう。)
このように、参加者の作業をメンター視点で一緒に整理し、参加者の今後の行動に活かす活動がここでいう「ふりかえり」です。そのため、「参加者にとって」ログに残すべきかどうか、という視点ではなく、「とりあえずログに残す」という視点でログを残してください。これは、参加者が重要だと判断しなくてもメンターの視点から見たら大事なこともあるからです。
ログに残すときは次のようなときです。
ログに残すことは次のことです。「備考」以外は作業の邪魔にならないように一言でよいです。備考は作業に役立つので必要な分だけ書いてください。
ログはコメントとして追記していってください。テンプレートは次の通りです。
例1(備考なし):
例2:
必要なファイルが足りないのかなぁ。