From 47bb8f2945c75bb2c5dde52f09ed8c1617da45ad Mon Sep 17 00:00:00 2001 From: Alexander Popov Date: Thu, 18 Mar 2021 00:32:57 +0300 Subject: [PATCH] Move development dependencies to gemspec I saw commit 38fe194, but I don't think that it's a good practice: 1. Dependencies of gems should have locks, but not too strict. Without locks at all it's too dangerous, with `Gemfile.lock` there are unrelevant git changes. 2. We should use `development_dependency` of gemspecs instead of `Gemfile` for gems. An example article: https://yehudakatz.com/2010/12/16/clarifying-the-roles-of-the-gemspec-and-gemfile/ An example of failed CI: https://github.com/ruby/optparse/pull/4/checks?check_run_id=2134749228#step:3:10 --- .gitignore | 1 + Gemfile | 3 +-- Gemfile.lock | 17 ----------------- optparse.gemspec | 3 +++ 4 files changed, 5 insertions(+), 19 deletions(-) delete mode 100644 Gemfile.lock diff --git a/.gitignore b/.gitignore index 9106b2a..dc96cb9 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /pkg/ /spec/reports/ /tmp/ +/Gemfile.lock diff --git a/Gemfile b/Gemfile index eb86192..b4e2a20 100644 --- a/Gemfile +++ b/Gemfile @@ -1,4 +1,3 @@ source "https://rubygems.org" -gem "rake" -gem "test-unit" +gemspec diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index 98180a7..0000000 --- a/Gemfile.lock +++ /dev/null @@ -1,17 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - power_assert (1.2.0) - rake (13.0.1) - test-unit (3.3.5) - power_assert - -PLATFORMS - ruby - -DEPENDENCIES - rake - test-unit - -BUNDLED WITH - 2.2.0.dev diff --git a/optparse.gemspec b/optparse.gemspec index afb9042..e62f094 100644 --- a/optparse.gemspec +++ b/optparse.gemspec @@ -28,4 +28,7 @@ Gem::Specification.new do |spec| spec.bindir = "exe" spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) } spec.require_paths = ["lib"] + + spec.add_development_dependency "rake", "~> 13.0" + spec.add_development_dependency "test-unit", "~> 3.4" end