rake 13.0.0 → 13.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9da686fceba23353d1a9b4263d039b67c5e1ac76055165091a21e9c0cddbeffa
4
- data.tar.gz: 3e650670e2aa77cd440555ac8283f14df42e465e3771c2a5e1da961de2dde444
3
+ metadata.gz: cb2619a08088454d6ba2ff07bb0706b31098e2442fb938fa90fbfadf5c57b12f
4
+ data.tar.gz: 645741fa2ddd07f6b115925d155a33d299e05e5b440bee92ddd9ee05ff9bfb9c
5
5
  SHA512:
6
- metadata.gz: 4d555cfe77533730f79bad9d9a430dadd800df2986a32d8885dc078f0c4b481b1c4b9ea99d4a637c662e860ec75a8a74f10a4374d7b00aaf6631f09666b1720b
7
- data.tar.gz: '03820d6035572fa9f3805f3190672265acd52dcfbc8bf8558351e1f4124031178ba70345647fae34a5770eaf32accb4ea337154f57055efbed2758c8862357f0'
6
+ metadata.gz: fc55106ca899e1ce3673115ff43a860ef839297fc6b8b952155ae4d253175681a5f585de0ff34c685c33b210447e0e04365c930a4f9dcbcdad7e012349fe36ed
7
+ data.tar.gz: 2e6f16af48a40c7abc19dd9e98d241af05225b0a7424fbf1f32c55252c5565ebcda2053557a78a94dec3123e9d3cc284a151309963458e9218d566151d6315a6
data/History.rdoc CHANGED
@@ -1,3 +1,42 @@
1
+ === 13.0.5
2
+
3
+ * Fixed the regression of #388
4
+ Pull request #389 by hsbt
5
+
6
+ === 13.0.4
7
+
8
+ * Fix rake test loader swallowing useful error information.
9
+ Pull request #367 by deivid-rodriguez
10
+ * Add -C/--directory option the same as GNU make.
11
+ Pull request #376 by nobu
12
+
13
+ === 13.0.3
14
+
15
+ * Fix breaking change of execution order on TestTask.
16
+ Pull request #368 by ysakasin
17
+
18
+ === 13.0.2
19
+
20
+ ==== Enhancements
21
+
22
+ * Fix tests to work with current FileUtils
23
+ Pull Request #358 by jeremyevans
24
+ * Simplify default rake test loader
25
+ Pull Request #357 by deivid-rodriguez
26
+ * Update rdoc
27
+ Pull Request #366 by bahasalien
28
+ * Update broken links to rake articles from Avdi in README
29
+ Pull Request #360 by svl7
30
+
31
+ === 13.0.1
32
+
33
+ ==== Bug fixes
34
+
35
+ * Fixed bug: Reenabled task raises previous exception on second invokation
36
+ Pull Request #271 by thorsteneckel
37
+ * Fix an incorrectly resolved arg pattern
38
+ Pull Request #327 by mjbellantoni
39
+
1
40
  === 13.0.0
2
41
 
3
42
  ==== Enhancements
data/README.rdoc CHANGED
@@ -82,27 +82,27 @@ Type "rake --help" for all available options.
82
82
  === Presentations and Articles about Rake
83
83
 
84
84
  * Avdi Grimm's rake series:
85
- 1. {Rake Basics}[http://devblog.avdi.org/2014/04/21/rake-part-1-basics/]
86
- 2. {Rake File Lists}[http://devblog.avdi.org/2014/04/22/rake-part-2-file-lists/]
87
- 3. {Rake Rules}[http://devblog.avdi.org/2014/04/23/rake-part-3-rules/]
88
- 4. {Rake Pathmap}[http://devblog.avdi.org/2014/04/24/rake-part-4-pathmap/]
89
- 5. {File Operations}[http://devblog.avdi.org/2014/04/25/rake-part-5-file-operations/]
90
- 6. {Clean and Clobber}[http://devblog.avdi.org/2014/04/28/rake-part-6-clean-and-clobber/]
91
- 7. {MultiTask}[http://devblog.avdi.org/2014/04/29/rake-part-7-multitask/]
92
- * {Jim Weirich's 2003 RubyConf presentation}[http://web.archive.org/web/20140221123354/http://onestepback.org/articles/buildingwithrake/]
93
- * Martin Fowler's article on Rake: http://martinfowler.com/articles/rake.html
85
+ 1. {Rake Basics}[https://avdi.codes/rake-part-1-basics/]
86
+ 2. {Rake File Lists}[https://avdi.codes/rake-part-2-file-lists-2/]
87
+ 3. {Rake Rules}[https://avdi.codes/rake-part-3-rules/]
88
+ 4. {Rake Pathmap}[https://avdi.codes/rake-part-4-pathmap/]
89
+ 5. {File Operations}[https://avdi.codes/rake-part-5-file-operations/]
90
+ 6. {Clean and Clobber}[https://avdi.codes/rake-part-6-clean-and-clobber/]
91
+ 7. {MultiTask}[https://avdi.codes/rake-part-7-multitask/]
92
+ * {Jim Weirich's 2003 RubyConf presentation}[https://web.archive.org/web/20140221123354/http://onestepback.org/articles/buildingwithrake/]
93
+ * Martin Fowler's article on Rake: https://martinfowler.com/articles/rake.html
94
94
 
95
95
  == Other Make Re-envisionings ...
96
96
 
97
97
  Rake is a late entry in the make replacement field. Here are links to
98
98
  other projects with similar (and not so similar) goals.
99
99
 
100
- * http://directory.fsf.org/wiki/Bras -- Bras, one of earliest
100
+ * https://directory.fsf.org/wiki/Bras -- Bras, one of earliest
101
101
  implementations of "make in a scripting language".
102
102
  * http://www.a-a-p.org -- Make in Python
103
- * http://ant.apache.org -- The Ant project
104
- * http://search.cpan.org/search?query=PerlBuildSystem -- The Perl Build System
105
- * http://www.rubydoc.info/gems/rant/0.5.7/frames -- Rant, another Ruby make tool.
103
+ * https://ant.apache.org -- The Ant project
104
+ * https://search.cpan.org/search?query=PerlBuildSystem -- The Perl Build System
105
+ * https://www.rubydoc.info/gems/rant/0.5.7/frames -- Rant, another Ruby make tool.
106
106
 
107
107
  == Credits
108
108
 
@@ -433,6 +433,13 @@ module Rake
433
433
  select_tasks_to_show(options, :describe, value)
434
434
  }
435
435
  ],
436
+ ["--directory", "-C [DIRECTORY]",
437
+ "Change to DIRECTORY before doing anything.",
438
+ lambda { |value|
439
+ Dir.chdir value
440
+ @original_dir = Dir.pwd
441
+ }
442
+ ],
436
443
  ["--dry-run", "-n",
437
444
  "Do a dry run without executing actions.",
438
445
  lambda { |value|
@@ -1,26 +1,26 @@
1
1
  # frozen_string_literal: true
2
- require "rake"
2
+
3
+ require "rake/file_list"
3
4
 
4
5
  # Load the test files from the command line.
5
6
  argv = ARGV.select do |argument|
6
- begin
7
- case argument
8
- when /^-/ then
9
- argument
10
- when /\*/ then
11
- FileList[argument].to_a.each do |file|
12
- require File.expand_path file
13
- end
7
+ case argument
8
+ when /^-/ then
9
+ argument
10
+ when /\*/ then
11
+ FileList[argument].to_a.each do |file|
12
+ require File.expand_path file
13
+ end
14
14
 
15
- false
16
- else
17
- require File.expand_path argument
15
+ false
16
+ else
17
+ path = File.expand_path argument
18
18
 
19
- false
20
- end
21
- rescue LoadError => e
22
- raise unless e.path
23
- abort "\nFile does not exist: #{e.path}\n\n"
19
+ abort "\nFile does not exist: #{path}\n\n" unless File.exist?(path)
20
+
21
+ require path
22
+
23
+ false
24
24
  end
25
25
  end
26
26
 
data/lib/rake/task.rb CHANGED
@@ -146,6 +146,7 @@ module Rake
146
146
  # is invoked again.
147
147
  def reenable
148
148
  @already_invoked = false
149
+ @invocation_exception = nil
149
150
  end
150
151
 
151
152
  # Clear the existing prerequisites, actions, comments, and arguments of a rake task.
@@ -83,8 +83,8 @@ module Rake
83
83
  define_task(Rake::FileTask, task_name)
84
84
  end
85
85
 
86
- # Resolve the arguments for a task/rule. Returns a triplet of
87
- # [task_name, arg_name_list, prerequisites].
86
+ # Resolve the arguments for a task/rule. Returns a tuple of
87
+ # [task_name, arg_name_list, prerequisites, order_only_prerequisites].
88
88
  def resolve_args(args)
89
89
  if args.last.is_a?(Hash)
90
90
  deps = args.pop
@@ -118,8 +118,11 @@ module Rake
118
118
  #
119
119
  # The patterns recognized by this argument resolving function are:
120
120
  #
121
+ # task :t, order_only: [:e]
121
122
  # task :t => [:d]
123
+ # task :t => [:d], order_only: [:e]
122
124
  # task :t, [a] => [:d]
125
+ # task :t, [a] => [:d], order_only: [:e]
123
126
  #
124
127
  def resolve_args_with_dependencies(args, hash) # :nodoc:
125
128
  fail "Task Argument Error" if
@@ -133,8 +136,8 @@ module Rake
133
136
  deps = value || []
134
137
  else
135
138
  task_name = args.shift
136
- arg_names = key
137
- deps = value
139
+ arg_names = key || args.shift|| []
140
+ deps = value || []
138
141
  end
139
142
  deps = [deps] unless deps.respond_to?(:to_ary)
140
143
  [task_name, arg_names, deps, order_only]
@@ -297,8 +300,8 @@ module Rake
297
300
  when /^\./
298
301
  source = task_name.sub(task_pattern, ext)
299
302
  source == ext ? task_name.ext(ext) : source
300
- when String
301
- ext
303
+ when String, Symbol
304
+ ext.to_s
302
305
  when Proc, Method
303
306
  if ext.arity == 1
304
307
  ext.call(task_name)
data/lib/rake/testtask.rb CHANGED
@@ -181,44 +181,9 @@ module Rake
181
181
  when :testrb
182
182
  "-S testrb"
183
183
  when :rake
184
- "#{rake_include_arg} \"#{rake_loader}\""
184
+ "#{__dir__}/rake_test_loader.rb"
185
185
  end
186
186
  end
187
187
 
188
- def rake_loader # :nodoc:
189
- find_file("rake/rake_test_loader") or
190
- fail "unable to find rake test loader"
191
- end
192
-
193
- def find_file(fn) # :nodoc:
194
- $LOAD_PATH.each do |path|
195
- file_path = File.join(path, "#{fn}.rb")
196
- return file_path if File.exist? file_path
197
- end
198
- nil
199
- end
200
-
201
- def rake_include_arg # :nodoc:
202
- spec = Gem.loaded_specs["rake"]
203
- if spec.respond_to?(:default_gem?) && spec.default_gem?
204
- ""
205
- else
206
- "-I\"#{rake_lib_dir}\""
207
- end
208
- end
209
-
210
- def rake_lib_dir # :nodoc:
211
- find_dir("rake") or
212
- fail "unable to find rake lib"
213
- end
214
-
215
- def find_dir(fn) # :nodoc:
216
- $LOAD_PATH.each do |path|
217
- file_path = File.join(path, "#{fn}.rb")
218
- return path if File.exist? file_path
219
- end
220
- nil
221
- end
222
-
223
188
  end
224
189
  end
@@ -1,5 +1,4 @@
1
1
  # frozen_string_literal: true
2
- require "set"
3
2
 
4
3
  require "rake/promise"
5
4
 
@@ -10,6 +9,7 @@ module Rake
10
9
  # Creates a ThreadPool object. The +thread_count+ parameter is the size
11
10
  # of the pool.
12
11
  def initialize(thread_count)
12
+ require "set"
13
13
  @max_active_threads = [thread_count, 0].max
14
14
  @threads = Set.new
15
15
  @threads_mon = Monitor.new
data/lib/rake/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  module Rake
3
- VERSION = "13.0.0"
3
+ VERSION = "13.0.5"
4
4
 
5
5
  module Version # :nodoc: all
6
6
  MAJOR, MINOR, BUILD, *OTHER = Rake::VERSION.split "."
data/rake.gemspec CHANGED
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
- $LOAD_PATH.unshift File.expand_path('../lib', __FILE__)
3
- require 'rake/version'
2
+ require_relative 'lib/rake/version'
4
3
 
5
4
  Gem::Specification.new do |s|
6
5
  s.name = "rake".freeze
@@ -23,14 +22,79 @@ Rake has the following features:
23
22
  s.homepage = "https://github.com/ruby/rake".freeze
24
23
  s.licenses = ["MIT".freeze]
25
24
 
26
- s.files = %x[git ls-files -z].split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) } -
27
- %w[.rubocop.yml .gitignore .travis.yml appveyor.yml]
25
+ s.metadata = {
26
+ "bug_tracker_uri" => "https://github.com/ruby/rake/issues",
27
+ "changelog_uri" => "https://github.com/ruby/rake/blob/v#{s.version}/History.rdoc",
28
+ "documentation_uri" => "https://ruby.github.io/rake",
29
+ "source_code_uri" => "https://github.com/ruby/rake/tree/v#{s.version}",
30
+ }
31
+
32
+ s.files = [
33
+ "History.rdoc",
34
+ "MIT-LICENSE",
35
+ "README.rdoc",
36
+ "doc/command_line_usage.rdoc",
37
+ "doc/example/Rakefile1",
38
+ "doc/example/Rakefile2",
39
+ "doc/example/a.c",
40
+ "doc/example/b.c",
41
+ "doc/example/main.c",
42
+ "doc/glossary.rdoc",
43
+ "doc/jamis.rb",
44
+ "doc/proto_rake.rdoc",
45
+ "doc/rake.1",
46
+ "doc/rakefile.rdoc",
47
+ "doc/rational.rdoc",
48
+ "exe/rake",
49
+ "lib/rake.rb",
50
+ "lib/rake/application.rb",
51
+ "lib/rake/backtrace.rb",
52
+ "lib/rake/clean.rb",
53
+ "lib/rake/cloneable.rb",
54
+ "lib/rake/cpu_counter.rb",
55
+ "lib/rake/default_loader.rb",
56
+ "lib/rake/dsl_definition.rb",
57
+ "lib/rake/early_time.rb",
58
+ "lib/rake/ext/core.rb",
59
+ "lib/rake/ext/string.rb",
60
+ "lib/rake/file_creation_task.rb",
61
+ "lib/rake/file_list.rb",
62
+ "lib/rake/file_task.rb",
63
+ "lib/rake/file_utils.rb",
64
+ "lib/rake/file_utils_ext.rb",
65
+ "lib/rake/invocation_chain.rb",
66
+ "lib/rake/invocation_exception_mixin.rb",
67
+ "lib/rake/late_time.rb",
68
+ "lib/rake/linked_list.rb",
69
+ "lib/rake/loaders/makefile.rb",
70
+ "lib/rake/multi_task.rb",
71
+ "lib/rake/name_space.rb",
72
+ "lib/rake/packagetask.rb",
73
+ "lib/rake/phony.rb",
74
+ "lib/rake/private_reader.rb",
75
+ "lib/rake/promise.rb",
76
+ "lib/rake/pseudo_status.rb",
77
+ "lib/rake/rake_module.rb",
78
+ "lib/rake/rake_test_loader.rb",
79
+ "lib/rake/rule_recursion_overflow_error.rb",
80
+ "lib/rake/scope.rb",
81
+ "lib/rake/task.rb",
82
+ "lib/rake/task_argument_error.rb",
83
+ "lib/rake/task_arguments.rb",
84
+ "lib/rake/task_manager.rb",
85
+ "lib/rake/tasklib.rb",
86
+ "lib/rake/testtask.rb",
87
+ "lib/rake/thread_history_display.rb",
88
+ "lib/rake/thread_pool.rb",
89
+ "lib/rake/trace_output.rb",
90
+ "lib/rake/version.rb",
91
+ "lib/rake/win32.rb",
92
+ "rake.gemspec"
93
+ ]
28
94
  s.bindir = "exe"
29
95
  s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) }
30
96
  s.require_paths = ["lib".freeze]
31
97
 
32
98
  s.required_ruby_version = Gem::Requirement.new(">= 2.2".freeze)
33
- s.rubygems_version = "2.6.1".freeze
34
- s.required_rubygems_version = Gem::Requirement.new(">= 1.3.2".freeze)
35
99
  s.rdoc_options = ["--main".freeze, "README.rdoc".freeze]
36
100
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.0.0
4
+ version: 13.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hiroshi SHIBATA
8
8
  - Eric Hodel
9
9
  - Jim Weirich
10
- autorequire:
10
+ autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2019-09-27 00:00:00.000000000 Z
13
+ date: 2021-07-08 00:00:00.000000000 Z
14
14
  dependencies: []
15
15
  description: |
16
16
  Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
@@ -31,22 +31,9 @@ executables:
31
31
  extensions: []
32
32
  extra_rdoc_files: []
33
33
  files:
34
- - ".github/workflows/macos.yml"
35
- - ".github/workflows/ubuntu-rvm.yml"
36
- - ".github/workflows/ubuntu.yml"
37
- - ".github/workflows/windows.yml"
38
- - CONTRIBUTING.rdoc
39
- - Gemfile
40
34
  - History.rdoc
41
35
  - MIT-LICENSE
42
36
  - README.rdoc
43
- - Rakefile
44
- - bin/bundle
45
- - bin/console
46
- - bin/rake
47
- - bin/rdoc
48
- - bin/rubocop
49
- - bin/setup
50
37
  - doc/command_line_usage.rdoc
51
38
  - doc/example/Rakefile1
52
39
  - doc/example/Rakefile2
@@ -107,8 +94,12 @@ files:
107
94
  homepage: https://github.com/ruby/rake
108
95
  licenses:
109
96
  - MIT
110
- metadata: {}
111
- post_install_message:
97
+ metadata:
98
+ bug_tracker_uri: https://github.com/ruby/rake/issues
99
+ changelog_uri: https://github.com/ruby/rake/blob/v13.0.5/History.rdoc
100
+ documentation_uri: https://ruby.github.io/rake
101
+ source_code_uri: https://github.com/ruby/rake/tree/v13.0.5
102
+ post_install_message:
112
103
  rdoc_options:
113
104
  - "--main"
114
105
  - README.rdoc
@@ -123,10 +114,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
114
  requirements:
124
115
  - - ">="
125
116
  - !ruby/object:Gem::Version
126
- version: 1.3.2
117
+ version: '0'
127
118
  requirements: []
128
- rubygems_version: 3.0.3
129
- signing_key:
119
+ rubygems_version: 3.3.0.dev
120
+ signing_key:
130
121
  specification_version: 4
131
122
  summary: Rake is a Make-like program implemented in Ruby
132
123
  test_files: []
@@ -1,22 +0,0 @@
1
- name: macos
2
-
3
- on: [push]
4
-
5
- jobs:
6
- build:
7
- runs-on: macos-latest
8
- strategy:
9
- matrix:
10
- ruby: [ '2.6.x', '2.5.x', '2.4.x', '2.3.x' ]
11
- steps:
12
- - uses: actions/checkout@master
13
- - name: Set up Ruby
14
- uses: actions/setup-ruby@v1
15
- with:
16
- version: ${{ matrix.ruby }}
17
- - name: Install dependencies
18
- run: gem install minitest
19
- - name: Run test
20
- env:
21
- COVERALLS: "yes"
22
- run: ruby -Ilib exe/rake
@@ -1,28 +0,0 @@
1
- name: ubuntu-rvm
2
-
3
- on: [push]
4
-
5
- jobs:
6
- build:
7
- runs-on: ubuntu-latest
8
- strategy:
9
- matrix:
10
- ruby: [ 'jruby-head', 'jruby-9.2.8.0', 'ruby-head', '2.2.10' ]
11
- steps:
12
- - uses: actions/checkout@master
13
- - name: Set up RVM
14
- run: |
15
- curl -sSL https://get.rvm.io | bash
16
- - name: Set up Ruby
17
- run: |
18
- source $HOME/.rvm/scripts/rvm
19
- rvm install ${{ matrix.ruby }} --binary
20
- rvm --default use ${{ matrix.ruby }}
21
- - name: Install dependencies
22
- run: |
23
- source $HOME/.rvm/scripts/rvm
24
- gem install minitest
25
- - name: Run test
26
- run: |
27
- source $HOME/.rvm/scripts/rvm
28
- ruby -Ilib exe/rake
@@ -1,20 +0,0 @@
1
- name: ubuntu
2
-
3
- on: [push]
4
-
5
- jobs:
6
- build:
7
- runs-on: ubuntu-latest
8
- strategy:
9
- matrix:
10
- ruby: [ '2.6.x', '2.5.x', '2.4.x', '2.3.x' ]
11
- steps:
12
- - uses: actions/checkout@master
13
- - name: Set up Ruby
14
- uses: actions/setup-ruby@v1
15
- with:
16
- version: ${{ matrix.ruby }}
17
- - name: Install dependencies
18
- run: gem install minitest
19
- - name: Run test
20
- run: ruby -Ilib exe/rake
@@ -1,20 +0,0 @@
1
- name: windows
2
-
3
- on: [push]
4
-
5
- jobs:
6
- build:
7
- runs-on: windows-latest
8
- strategy:
9
- matrix:
10
- ruby: [ '2.6.x', '2.5.x', '2.4.x' ]
11
- steps:
12
- - uses: actions/checkout@master
13
- - name: Set up Ruby
14
- uses: actions/setup-ruby@v1
15
- with:
16
- version: ${{ matrix.ruby }}
17
- - name: Install dependencies
18
- run: gem install minitest
19
- - name: Run test
20
- run: ruby -Ilib exe/rake
data/CONTRIBUTING.rdoc DELETED
@@ -1,43 +0,0 @@
1
- = Source Repository
2
-
3
- Rake is currently hosted at github. The github web page is
4
- https://github.com/ruby/rake . The public git clone URL is
5
-
6
- https://github.com/ruby/rake.git
7
-
8
- = Running the Rake Test Suite
9
-
10
- If you wish to run the unit and functional tests that come with Rake:
11
-
12
- * +cd+ into the top project directory of rake.
13
- * Install gem dependency using bundler:
14
-
15
- $ bundle install # Install bundler, minitest and rdoc
16
-
17
- * Run the test suite
18
-
19
- $ rake
20
-
21
- = Rubocop
22
-
23
- Rake uses Rubocop to enforce a consistent style on new changes being
24
- proposed. You can check your code with Rubocop using:
25
-
26
- $ ./bin/rubocop
27
-
28
- = Issues and Bug Reports
29
-
30
- Feel free to submit commits or feature requests. If you send a patch,
31
- remember to update the corresponding unit tests. In fact, I prefer
32
- new feature to be submitted in the form of new unit tests.
33
-
34
- For other information, feel free to ask on the ruby-talk mailing list.
35
-
36
- If you have found a bug in rake please try with the latest version of rake
37
- before filing an issue. Also check History.rdoc for bug fixes that may have
38
- addressed your issue.
39
-
40
- When submitting pull requests please check the rake Travis-CI page for test
41
- failures:
42
-
43
- https://travis-ci.org/ruby/rake
data/Gemfile DELETED
@@ -1,10 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gemspec
4
-
5
- group :development do
6
- gem "bundler"
7
- gem "minitest"
8
- gem "coveralls"
9
- gem "rubocop"
10
- end
data/Rakefile DELETED
@@ -1,41 +0,0 @@
1
- # Rakefile for rake -*- ruby -*-
2
-
3
- # Copyright 2003, 2004, 2005 by Jim Weirich (jim@weirichhouse.org)
4
- # All rights reserved.
5
-
6
- # This file may be distributed under an MIT style license. See
7
- # MIT-LICENSE for details.
8
-
9
- lib = File.expand_path("../lib", __FILE__)
10
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
11
-
12
- begin
13
- require "bundler/gem_tasks"
14
- rescue LoadError
15
- end
16
-
17
- require "rake/testtask"
18
- Rake::TestTask.new(:test) do |t|
19
- t.libs << "test"
20
- t.verbose = true
21
- t.test_files = FileList["test/**/test_*.rb"]
22
- end
23
-
24
- require "rdoc/task"
25
- RDoc::Task.new do |doc|
26
- doc.main = "README.rdoc"
27
- doc.title = "Rake -- Ruby Make"
28
- doc.rdoc_files = FileList.new %w[lib MIT-LICENSE doc/**/*.rdoc *.rdoc]
29
- doc.rdoc_dir = "html"
30
- end
31
-
32
- task ghpages: :rdoc do
33
- %x[git checkout gh-pages]
34
- require "fileutils"
35
- FileUtils.rm_rf "/tmp/html"
36
- FileUtils.mv "html", "/tmp"
37
- FileUtils.rm_rf "*"
38
- FileUtils.cp_r Dir.glob("/tmp/html/*"), "."
39
- end
40
-
41
- task default: :test
data/bin/bundle DELETED
@@ -1,105 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'bundle' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "rubygems"
12
-
13
- m = Module.new do
14
- module_function
15
-
16
- def invoked_as_script?
17
- File.expand_path($0) == File.expand_path(__FILE__)
18
- end
19
-
20
- def env_var_version
21
- ENV["BUNDLER_VERSION"]
22
- end
23
-
24
- def cli_arg_version
25
- return unless invoked_as_script? # don't want to hijack other binstubs
26
- return unless "update".start_with?(ARGV.first || " ") # must be running `bundle update`
27
- bundler_version = nil
28
- update_index = nil
29
- ARGV.each_with_index do |a, i|
30
- if update_index && update_index.succ == i && a =~ Gem::Version::ANCHORED_VERSION_PATTERN
31
- bundler_version = a
32
- end
33
- next unless a =~ /\A--bundler(?:[= ](#{Gem::Version::VERSION_PATTERN}))?\z/
34
- bundler_version = $1 || ">= 0.a"
35
- update_index = i
36
- end
37
- bundler_version
38
- end
39
-
40
- def gemfile
41
- gemfile = ENV["BUNDLE_GEMFILE"]
42
- return gemfile if gemfile && !gemfile.empty?
43
-
44
- File.expand_path("../../Gemfile", __FILE__)
45
- end
46
-
47
- def lockfile
48
- lockfile =
49
- case File.basename(gemfile)
50
- when "gems.rb" then gemfile.sub(/\.rb$/, gemfile)
51
- else "#{gemfile}.lock"
52
- end
53
- File.expand_path(lockfile)
54
- end
55
-
56
- def lockfile_version
57
- return unless File.file?(lockfile)
58
- lockfile_contents = File.read(lockfile)
59
- return unless lockfile_contents =~ /\n\nBUNDLED WITH\n\s{2,}(#{Gem::Version::VERSION_PATTERN})\n/
60
- Regexp.last_match(1)
61
- end
62
-
63
- def bundler_version
64
- @bundler_version ||= begin
65
- env_var_version || cli_arg_version ||
66
- lockfile_version || "#{Gem::Requirement.default}.a"
67
- end
68
- end
69
-
70
- def load_bundler!
71
- ENV["BUNDLE_GEMFILE"] ||= gemfile
72
-
73
- # must dup string for RG < 1.8 compatibility
74
- activate_bundler(bundler_version.dup)
75
- end
76
-
77
- def activate_bundler(bundler_version)
78
- if Gem::Version.correct?(bundler_version) && Gem::Version.new(bundler_version).release < Gem::Version.new("2.0")
79
- bundler_version = "< 2"
80
- end
81
- gem_error = activation_error_handling do
82
- gem "bundler", bundler_version
83
- end
84
- return if gem_error.nil?
85
- require_error = activation_error_handling do
86
- require "bundler/version"
87
- end
88
- return if require_error.nil? && Gem::Requirement.new(bundler_version).satisfied_by?(Gem::Version.new(Bundler::VERSION))
89
- warn "Activating bundler (#{bundler_version}) failed:\n#{gem_error.message}\n\nTo install the version of bundler this project requires, run `gem install bundler -v '#{bundler_version}'`"
90
- exit 42
91
- end
92
-
93
- def activation_error_handling
94
- yield
95
- nil
96
- rescue StandardError, LoadError => e
97
- e
98
- end
99
- end
100
-
101
- m.load_bundler!
102
-
103
- if m.invoked_as_script?
104
- load Gem.bin_path("bundler", "bundle")
105
- end
data/bin/console DELETED
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "bundler/setup"
4
- require "rake"
5
-
6
- require "irb"
7
- IRB.start
data/bin/rake DELETED
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'rake' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("rake", "rake")
data/bin/rdoc DELETED
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'rdoc' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("rdoc", "rdoc")
data/bin/rubocop DELETED
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'rubocop' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("rubocop", "rubocop")
data/bin/setup DELETED
@@ -1,6 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
4
- set -vx
5
-
6
- bundle install