Почему оба гема sqlite3 и sqlite3-ruby упоминаются в Rails 3 Gemfile? - PullRequest
2 голосов
/ 20 июня 2011

Я создал новый проект Rails 3.0.9.Среди прочего в Gemfile он включает:

gem 'sqlite3'
# gem 'sqlite3-ruby', :require => 'sqlite3'

Я знаю, что вторая показанная строка закомментирована по умолчанию, но почему она включена и когда она должна использоваться?

Я прочитал объявление , которое:

Это объявление должно сообщить вам, что гем sqlite3-ruby переименовывается (барабанная дробь, пожалуйста) в "sqlite3".

Исходя из этого объявления, я предполагаю, что вторая строка - ссылка на гем sqlite3-ruby - включена в устаревших целях, но я не уверен, так как я новичок в Ruby и Rails.

1 Ответ

1 голос
/ 20 июня 2011

Согласно объявлению

Мы будем поддерживать обратную совместимость, выпуская пустой гем "sqlite3-ruby", который зависит от "sqlite3".

Поэтому, используялюбой из них по существу приведет к установке sqlite3.Если он выглядит как sqlite3-ruby в вашем наборе, посмотрите на ваш Gemfile.lock, и я уверен, что у него будет зависимость sqlite3.

PS, так как вы упомянули, что вы новичокВам может быть интересно, что я имею в виду под "гемсетом".Ruby Version Manager (RVM) является обязательным - вы можете прочитать все о в моем блоге .

...