Rails5.2.2로 업데이트
1. 전제
환경: AWS Cloud9
Ruby 5.1.6→5.2.2로 업데이트한 경위와 했던 것을 정리합니다.
이번에는 아무 코딩도 되지 않은, 확실한 상태의 Rails 환경을 업데이트했습니다.
에러 등 나올 리가 없고, 재미없는 비망록입니다.
초보자이므로 손 부드럽게 지적하실 수 있으면 다행입니다.
리포지토리: htps : // 기주 b. 코 m / 유메 ぉ g / Dodo _ st
2. 경위
간단히 말해서 Github의 보안 경고를 받아 Rails를 업데이트했습니다.
3. 했던 일
Rails 튜토리얼을 참고로 웹 앱을 만들어 보려고 튜토리얼을 참고로 Rails new
$ rails _5.1.6_ new sample_app
Gemfile을 다음과 같이 업데이트
Gemfilesource 'https://rubygems.org'
gem 'rails', '5.1.6'
gem 'puma', '3.9.1'
gem 'sass-rails', '5.0.6'
gem 'uglifier', '3.2.0'
gem 'coffee-rails', '4.2.2'
gem 'jquery-rails', '4.3.1'
gem 'turbolinks', '5.0.1'
gem 'jbuilder', '2.7.0'
group :development, :test do
gem 'sqlite3', '1.3.13'
gem 'byebug', '9.0.6', platform: :mri
end
group :development do
gem 'web-console', '3.5.1'
gem 'listen', '3.1.5'
gem 'spring', '2.0.2'
gem 'spring-watcher-listen', '2.0.1'
end
group :test do
gem 'rails-controller-testing', '1.0.2'
gem 'minitest', '5.10.3'
gem 'minitest-reporters', '1.1.14'
gem 'guard', '2.13.0'
gem 'guard-minitest', '2.4.4'
end
group :production do
gem 'pg', '0.20.0'
end
Rails 튜토리얼(제4판)에서는 Bitbucket에 push입니다만 이번은 Github에 push했습니다.
위의 작업을 완료하면 Github에서 보안 경고 메일을 받았습니다.
actionview가 오래되었습니다.
puma가 오래되었습니다.
3.1 보안 경고에 대한 조치
3.1.1puma 업데이트
puma 버전을 새 버전으로 지정
Gemfile...
gem 'puma', '3.12.2'
...
저장하고 bundle update하고 Github에 push하면 경고가 하나 사라졌습니다.
3.1.2 actionview 업데이트
위의 Gemfile을 내려다 보더라도 actionview는 명시 적으로 지정하지 않았으며, 뭐, 어디에 쓰고 있습니까? 그리고 헤매었습니다.
Gemfile.lock에 쓰여 있었기 때문에 거기를 직접 고칠 것 같아 피로했습니다만 밟아 머물고,
우선 Gemfile에 명시적으로 지정하여 bundle update를 했습니다.
Gemfile...
gem 'actionview', '5.1.6.2'
...
그러면 다음 오류가 발생합니다.
Bundler could not find compatible versions for gem
"actionview":
In Gemfile:
actionview (= 5.1.6.2)
rails (= 5.1.6) was resolved to 5.1.6, which
depends on
actionview (= 5.1.6)
rails의 버전이 맞지 않을까 생각하고 착각하고 Rails의 버전을 올리기로 했습니다.
(이때 구그는 맨 위에 나온 결과가 Rails의 업데이트였는데, 만약 5.1.6.2라고 지정한 것이 안 되었는가···?)
3.1.3 Rails 업데이트
먼저 Gemfile의 Rails 버전을 다시 씁니다.
Gemfile...
gem 'rails', '5.2.2'
...
이 후에는 결정의 흐름입니다.
$ bundle update
$ git add -A
$ git commit -m "rails upate"
$ git push
오류없이 안전하게 업데이트가 완료되었습니다.
마지막으로
이 기사를 쓸 때 Gemfile의 actionview 지정이 오류의 원인이었다고 생각했지만 맞습니까?
프라이빗한 개발이기 때문에 결과 오라이입니다만 좀 더 신중하게 개발하지 않으면 끊임없이 생각합니다.
Reference
이 문제에 관하여(Rails5.2.2로 업데이트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yumelog/items/2bd8f8b871e63e528d27
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
간단히 말해서 Github의 보안 경고를 받아 Rails를 업데이트했습니다.
3. 했던 일
Rails 튜토리얼을 참고로 웹 앱을 만들어 보려고 튜토리얼을 참고로 Rails new
$ rails _5.1.6_ new sample_app
Gemfile을 다음과 같이 업데이트
Gemfilesource 'https://rubygems.org'
gem 'rails', '5.1.6'
gem 'puma', '3.9.1'
gem 'sass-rails', '5.0.6'
gem 'uglifier', '3.2.0'
gem 'coffee-rails', '4.2.2'
gem 'jquery-rails', '4.3.1'
gem 'turbolinks', '5.0.1'
gem 'jbuilder', '2.7.0'
group :development, :test do
gem 'sqlite3', '1.3.13'
gem 'byebug', '9.0.6', platform: :mri
end
group :development do
gem 'web-console', '3.5.1'
gem 'listen', '3.1.5'
gem 'spring', '2.0.2'
gem 'spring-watcher-listen', '2.0.1'
end
group :test do
gem 'rails-controller-testing', '1.0.2'
gem 'minitest', '5.10.3'
gem 'minitest-reporters', '1.1.14'
gem 'guard', '2.13.0'
gem 'guard-minitest', '2.4.4'
end
group :production do
gem 'pg', '0.20.0'
end
Rails 튜토리얼(제4판)에서는 Bitbucket에 push입니다만 이번은 Github에 push했습니다.
위의 작업을 완료하면 Github에서 보안 경고 메일을 받았습니다.
actionview가 오래되었습니다.
puma가 오래되었습니다.
3.1 보안 경고에 대한 조치
3.1.1puma 업데이트
puma 버전을 새 버전으로 지정
Gemfile...
gem 'puma', '3.12.2'
...
저장하고 bundle update하고 Github에 push하면 경고가 하나 사라졌습니다.
3.1.2 actionview 업데이트
위의 Gemfile을 내려다 보더라도 actionview는 명시 적으로 지정하지 않았으며, 뭐, 어디에 쓰고 있습니까? 그리고 헤매었습니다.
Gemfile.lock에 쓰여 있었기 때문에 거기를 직접 고칠 것 같아 피로했습니다만 밟아 머물고,
우선 Gemfile에 명시적으로 지정하여 bundle update를 했습니다.
Gemfile...
gem 'actionview', '5.1.6.2'
...
그러면 다음 오류가 발생합니다.
Bundler could not find compatible versions for gem
"actionview":
In Gemfile:
actionview (= 5.1.6.2)
rails (= 5.1.6) was resolved to 5.1.6, which
depends on
actionview (= 5.1.6)
rails의 버전이 맞지 않을까 생각하고 착각하고 Rails의 버전을 올리기로 했습니다.
(이때 구그는 맨 위에 나온 결과가 Rails의 업데이트였는데, 만약 5.1.6.2라고 지정한 것이 안 되었는가···?)
3.1.3 Rails 업데이트
먼저 Gemfile의 Rails 버전을 다시 씁니다.
Gemfile...
gem 'rails', '5.2.2'
...
이 후에는 결정의 흐름입니다.
$ bundle update
$ git add -A
$ git commit -m "rails upate"
$ git push
오류없이 안전하게 업데이트가 완료되었습니다.
마지막으로
이 기사를 쓸 때 Gemfile의 actionview 지정이 오류의 원인이었다고 생각했지만 맞습니까?
프라이빗한 개발이기 때문에 결과 오라이입니다만 좀 더 신중하게 개발하지 않으면 끊임없이 생각합니다.
Reference
이 문제에 관하여(Rails5.2.2로 업데이트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yumelog/items/2bd8f8b871e63e528d27
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ rails _5.1.6_ new sample_app
source 'https://rubygems.org'
gem 'rails', '5.1.6'
gem 'puma', '3.9.1'
gem 'sass-rails', '5.0.6'
gem 'uglifier', '3.2.0'
gem 'coffee-rails', '4.2.2'
gem 'jquery-rails', '4.3.1'
gem 'turbolinks', '5.0.1'
gem 'jbuilder', '2.7.0'
group :development, :test do
gem 'sqlite3', '1.3.13'
gem 'byebug', '9.0.6', platform: :mri
end
group :development do
gem 'web-console', '3.5.1'
gem 'listen', '3.1.5'
gem 'spring', '2.0.2'
gem 'spring-watcher-listen', '2.0.1'
end
group :test do
gem 'rails-controller-testing', '1.0.2'
gem 'minitest', '5.10.3'
gem 'minitest-reporters', '1.1.14'
gem 'guard', '2.13.0'
gem 'guard-minitest', '2.4.4'
end
group :production do
gem 'pg', '0.20.0'
end
...
gem 'puma', '3.12.2'
...
...
gem 'actionview', '5.1.6.2'
...
Bundler could not find compatible versions for gem
"actionview":
In Gemfile:
actionview (= 5.1.6.2)
rails (= 5.1.6) was resolved to 5.1.6, which
depends on
actionview (= 5.1.6)
...
gem 'rails', '5.2.2'
...
$ bundle update
$ git add -A
$ git commit -m "rails upate"
$ git push
이 기사를 쓸 때 Gemfile의 actionview 지정이 오류의 원인이었다고 생각했지만 맞습니까?
프라이빗한 개발이기 때문에 결과 오라이입니다만 좀 더 신중하게 개발하지 않으면 끊임없이 생각합니다.
Reference
이 문제에 관하여(Rails5.2.2로 업데이트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yumelog/items/2bd8f8b871e63e528d27텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)