autoloaded 1.6.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +8 -4
  3. data/.rspec +1 -1
  4. data/.travis.yml +1 -14
  5. data/Gemfile +10 -11
  6. data/Guardfile +22 -21
  7. data/History.md +12 -27
  8. data/README.md +48 -58
  9. data/Rakefile +0 -4
  10. data/autoloaded.gemspec +37 -41
  11. data/lib/autoloaded.rb +0 -40
  12. data/lib/autoloaded/autoloader.rb +8 -31
  13. data/lib/autoloaded/deprecation.rb +20 -11
  14. data/lib/autoloaded/inflection.rb +9 -7
  15. data/lib/autoloaded/load_pathed_directory.rb +4 -2
  16. data/lib/autoloaded/specification.rb +0 -2
  17. data/lib/autoloaded/specifications.rb +10 -16
  18. data/lib/autoloaded/version.rb +1 -1
  19. data/lib/autoloaded/warning.rb +44 -26
  20. data/lib/tasks/lib_each.rake +3 -15
  21. data/lib/tasks/spec.rake +6 -3
  22. data/spec/autoloaded/autoloader_spec.rb +469 -0
  23. data/spec/autoloaded/inflection_spec.rb +30 -0
  24. data/spec/autoloaded/load_pathed_directory_spec.rb +120 -0
  25. data/spec/autoloaded/specification_spec.rb +98 -0
  26. data/spec/autoloaded/specifications_spec.rb +191 -0
  27. data/spec/autoloaded/version_spec.rb +3 -0
  28. data/spec/autoloaded/warning_spec.rb +115 -0
  29. data/spec/autoloaded_macro_sharedspec.rb +24 -0
  30. data/spec/autoloaded_spec.rb +173 -0
  31. data/spec/fixtures/autoloaded_with_conventional_filename.rb +12 -0
  32. data/spec/fixtures/autoloaded_with_conventional_filename/N-est-ed.rb +1 -0
  33. data/spec/fixtures/autoloaded_with_conventional_filename/nest_ed.rb +1 -0
  34. data/spec/fixtures/autoloaded_with_conventional_filename/nested.rb +16 -0
  35. data/spec/fixtures/autoloaded_with_conventional_filename/nested/doubly_nested.rb +9 -0
  36. data/spec/fixtures/autoloaded_with_conventional_filename/old_school_autoload.rb +5 -0
  37. data/spec/fixtures/autoloaded_with_unconventional_filename.rb +12 -0
  38. data/spec/fixtures/autoloaded_with_unconventional_filename/N-est-ed.rb +7 -0
  39. data/spec/fixtures/autoloaded_with_unconventional_filename/nest_ed.rb +1 -0
  40. data/spec/fixtures/autoloaded_with_unconventional_filename/old_school_autoload.rb +5 -0
  41. data/spec/fixtures/filenames/AFilename.rb +0 -0
  42. data/spec/fixtures/filenames/a-file-name.rb +0 -0
  43. data/spec/fixtures/filenames/a-filename.rb +0 -0
  44. data/spec/fixtures/filenames/a_file_name.rb +0 -0
  45. data/spec/fixtures/filenames/a_filename.rb +0 -0
  46. data/spec/fixtures/filenames/afile-name.rb +0 -0
  47. data/spec/fixtures/filenames/afile_name.rb +0 -0
  48. data/spec/fixtures/not_autoloaded.rb +5 -0
  49. data/spec/fixtures/not_autoloaded/nested.rb +1 -0
  50. data/spec/fixtures/not_autoloaded/old_school_autoload.rb +5 -0
  51. data/spec/matchers.rb +85 -0
  52. data/spec/spec_helper.rb +91 -0
  53. data/spec/support/util.rb +42 -0
  54. data/spec/support/without_side_effects.rb +37 -0
  55. metadata +86 -22
  56. data/bin/console +0 -10
  57. data/bin/setup +0 -8
  58. data/lib/autoloaded/compatibility/refine_and_using.rb +0 -19
  59. data/lib/autoloaded/constant.rb +0 -94
  60. data/lib/autoloaded/refine.rb +0 -16
  61. data/lib/autoloaded/refine/string.rb +0 -20
  62. data/lib/autoloaded/refine/string/to_source_filename.rb +0 -58
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 4f05e57586f73870920a66d8f3dad6ddad3ec902be70e809668185bba4e9599f
4
- data.tar.gz: af8c4f8ad12bdb20de0284895e6c157a3038078c1c7d57f04b53ec34bb6a2560
2
+ SHA1:
3
+ metadata.gz: 925ea1aba0f2ef88679610b9991b59b47d1624bb
4
+ data.tar.gz: 9a76651fade295cb47f3aa0bb13d4a1d38da1bb6
5
5
  SHA512:
6
- metadata.gz: 1bdfcb7f1d7f76a6c39ec1898c582f42d177d63ac6ff8da9800f07810ab7ef96e40d1714984c3f9d97df6cacafda01e3d117b7e2957857fb3def77cad10225c0
7
- data.tar.gz: 8560f6707ea39d5d6298c3a90133b1e2b49d3e00c519f94fb5eb66eee2f42129b53afb1e40b8bd6ce75e1a0be24aee26ce1d7bd19c15d244feed0e9d1d9a8f7e
6
+ metadata.gz: ff3a0b9a5ad7f85e1302b6e3d9b1757e13e2dda0c85feeb8f06184b461773503acb41d5dadb487e4219e4c9a485bfebbf0bc7055c1c9e240a84d00d638fba0de
7
+ data.tar.gz: 2f438027039fa6e9fc1b23c5b2669864fe5dff3b5ed2a7576495d33f0552a14d8f063b67c8a0295b173001c12ff307ad1fda82f2ff498d10c87cfab47dd902fa
data/.gitignore CHANGED
@@ -1,12 +1,16 @@
1
1
  /.bundle/
2
- /.rbx
3
- /.ruby-*
4
- /.yardoc/
2
+ /.yardoc
5
3
  /Gemfile.lock
6
4
  /_yardoc/
7
5
  /coverage/
8
6
  /doc/
9
7
  /pkg/
10
- /spec/examples.txt
11
8
  /spec/reports/
12
9
  /tmp/
10
+ *.bundle
11
+ *.so
12
+ *.o
13
+ *.a
14
+ .ruby-gemset
15
+ .ruby-version
16
+ mkmf.log
data/.rspec CHANGED
@@ -1,3 +1,3 @@
1
1
  --color
2
- --format documentation
2
+ --format doc
3
3
  --require spec_helper
@@ -1,26 +1,13 @@
1
1
  language: ruby
2
2
  bundler_args: --without debug doc tooling
3
3
  rvm:
4
+ - 1.9
4
5
  - 2.0
5
6
  - 2.1
6
- - 2.2
7
- - 2.3
8
- - 2.4
9
- - 2.5
10
- - 2.6
11
- - 2.7
12
7
  - ruby-head
13
8
  - jruby-head
14
- - rbx
15
- - rbx-2
16
9
  script: "bundle exec rake test"
17
10
  matrix:
18
11
  allow_failures:
19
- - rvm: 1.9
20
12
  - rvm: ruby-head
21
13
  - rvm: jruby-head
22
- - rvm: rbx
23
- - rvm: rbx-2
24
- branches:
25
- except:
26
- - /^gh-pages.*$/
data/Gemfile CHANGED
@@ -3,23 +3,22 @@ source 'https://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  group :debug do
6
- gem 'pry-byebug', '~> 3', platforms: [:mri_20,
7
- :mri_21,
8
- :mri_22,
9
- :mri_23,
10
- :mri_24,
11
- :mri_25]
12
- gem 'pry-debugger', '~> 0', platforms: :mri_19
6
+ gem 'pry-byebug', '~> 2', platforms: [:mri_20, :mri_21]
7
+ gem 'pry-debugger', '~> 0', platforms: :mri_19
13
8
  end
14
9
 
15
10
  group :doc do
16
- gem 'yard', '>= 0.9.11', '< 1', require: false
17
- gem 'rdiscount', '~> 2', require: false
11
+ gem 'yard', '~> 0', require: false
12
+ gem 'rdiscount', '~> 2', require: false, platforms: :mri
13
+ end
14
+
15
+ group :test do
16
+ gem 'codeclimate-test-reporter', '~> 0', require: false
18
17
  end
19
18
 
20
19
  group :tooling do
21
- gem 'guard-rspec', '~> 4', require: false
20
+ gem 'guard-rspec', '~> 4', require: false
22
21
  if RUBY_PLATFORM =~ /darwin/i
23
- gem 'rb-fsevent', '~> 0', require: false
22
+ gem 'rb-fsevent', '~> 0', require: false
24
23
  end
25
24
  end
data/Guardfile CHANGED
@@ -1,37 +1,38 @@
1
- require 'guard/rspec/dsl'
1
+ interactor :off
2
2
 
3
3
  debugger_gem = %w(pry-byebug pry-debugger).detect do |gem|
4
4
  `bundle show #{gem} 2>&1 >/dev/null`
5
5
  $?.success?
6
6
  end
7
7
  debugger_require = debugger_gem ? " --require #{debugger_gem}" : nil
8
+ guard :rspec, all_after_pass: true,
9
+ all_on_start: true,
10
+ cmd: "bundle exec rspec#{debugger_require} --format progress" do
11
+ # Run the corresponding spec (or all specs) when code changes.
12
+ watch( %r{^lib/(.+)\.rb$} ) do |match|
13
+ Dir["spec/#{match[1]}_spec.rb"].first || 'spec'
14
+ end
8
15
 
9
- guard :rspec, all_on_start: true,
10
- all_after_pass: true,
11
- cmd: "bundle exec rspec --format progress#{debugger_require}" do
12
- dsl = Guard::RSpec::Dsl.new(self)
13
- rspec, ruby = dsl.rspec, dsl.ruby
16
+ # Run a spec when it changes.
17
+ watch %r{^spec/.+_spec\.rb$}
14
18
 
15
- # RSpec files
16
- watch('.rspec') { rspec.spec_dir }
17
- watch rspec.spec_helper { rspec.spec_dir }
18
- watch rspec.spec_support { rspec.spec_dir }
19
- watch(%r{^spec/support}) { rspec.spec_dir } # This should not be necessary.
20
- watch rspec.spec_files
19
+ # Run all specs when a shared spec changes.
20
+ watch( %r{^spec/.+_sharedspec\.rb$} ) { 'spec' }
21
21
 
22
22
  # Run all specs when a matcher changes.
23
- watch('spec/matchers.rb') { 'spec' }
23
+ watch( 'spec/matchers.rb' ) { 'spec' }
24
24
 
25
- # Run all specs when a shared spec changes.
26
- watch(%r{^spec/.+_sharedspec\.rb$}) { rspec.spec_dir }
25
+ # Run all specs when a support file changes.
26
+ watch( %r{^spec/support} ) { 'spec' }
27
27
 
28
28
  # Run all specs when a fixture changes.
29
- watch(%r{^spec/fixtures}) { rspec.spec_dir }
29
+ watch( %r{^spec/fixtures} ) { 'spec' }
30
30
 
31
- # Run all specs when the bundle changes.
32
- watch('Gemfile.lock') { rspec.spec_dir }
33
- watch(%r{^(.+)\.gemspec$}) { rspec.spec_dir }
31
+ # Run all specs when the RSpec configuration changes.
32
+ watch( '.rspec' ) { 'spec' }
33
+ watch( 'spec/spec_helper.rb' ) { 'spec' }
34
34
 
35
- # Ruby files
36
- dsl.watch_spec_files_for ruby.lib_files
35
+ # Run all specs when the bundle changes.
36
+ watch( 'Gemfile.lock' ) { 'spec' }
37
+ watch( %r{^(.+)\.gemspec$} ) { 'spec' }
37
38
  end
data/History.md CHANGED
@@ -1,32 +1,19 @@
1
1
  # Version history for the _Autoloaded_ project
2
2
 
3
- ## <a name="v1.6.0"></a>v1.6.0, Sun 4/05/2020
3
+ ## <a name="v2.0.0"></a>v2.0.0, Sat 12/27/2013
4
4
 
5
- * Eliminate Ruby warnings about
6
- [_Binding#source_location_][Ruby-Core-Binding-source_location]
5
+ * Add support for Ruby v1.9.x
6
+ * Remove deprecated API
7
7
 
8
- ## <a name="v1.5.1"></a>v1.5.1, Wed 10/18/2017
9
-
10
- * Eliminate Ruby warnings about undefined instance variables
11
-
12
- ## <a name="v1.5.0"></a>v1.5.0, Wed 2/22/2017
13
-
14
- * Add support for Ruby load paths (`$:`) that contain one or more
15
- [_Pathname_][Ruby-Stdlib-Pathname] objects
16
-
17
- ## <a name="v1.4.1"></a>v1.4.1, Sat 1/24/2015
18
-
19
- * Don’t warn about a _VERSION_ constant presumably loaded by a _.gemspec_
20
-
21
- ## <a name="v1.3.0"></a>v1.3.0, Fri 12/26/2014
8
+ ## <a name="v1.3.0"></a>v1.3.0, Fri 12/26/2013
22
9
 
23
10
  * Add support for relative class references with a new API
24
11
 
25
- ## <a name="v1.2.0"></a>v1.2.0, Fri 11/28/2014
12
+ ## <a name="v1.2.0"></a>v1.2.0, Fri 11/28/2013
26
13
 
27
14
  * Add support for [JRuby][JRuby] (Ruby v2.x-compatible versions)
28
15
 
29
- ## <a name="v1.1.0"></a>v1.1.0, Tue 11/04/2014
16
+ ## <a name="v1.1.0"></a>v1.1.0, Tue 11/04/2013
30
17
 
31
18
  * Correct/improve autoload behavior
32
19
  * Instead of returning the source **directory** path from
@@ -37,7 +24,7 @@
37
24
  [_Module#constants_][Ruby-Core-Module-constants] in the [readme][readme] and
38
25
  in [inline documentation][inline-documentation]
39
26
 
40
- ## <a name="v1.0.0"></a>v1.0.0, Wed 10/29/2014
27
+ ## <a name="v1.0.0"></a>v1.0.0, Wed 10/29/2013
41
28
 
42
29
  * Add support for Ruby v2.0
43
30
 
@@ -45,10 +32,8 @@
45
32
 
46
33
  (First release)
47
34
 
48
- [JRuby]: https://www.jruby.org/
49
- [Ruby-Core-Binding-source_location]: https://ruby-doc.org/core/Binding.html#method-i-source_location "‘Binding#source_location’ method in the Ruby Core Library"
50
- [Ruby-Core-Module-autoload]: https://ruby-doc.org/core/Module.html#method-i-autoload-3F "‘Module#autoload’ method in the Ruby Core Library"
51
- [Ruby-Core-Module-constants]: https://ruby-doc.org/core/Module.html#method-i-constants "‘Module#constants’ method in the Ruby Core Library"
52
- [Ruby-Stdlib-Pathname]: https://ruby-doc.org/stdlib/libdoc/pathname/rdoc/Pathname.html "‘Pathname’ class in the Ruby Standard Library"
53
- [readme]: https://github.com/njonsson/autoloaded/blob/master/README.md "Autoloaded readme"
54
- [inline-documentation]: https://www.rubydoc.info/github/njonsson/autoloaded "Autoloaded inline documentation"
35
+ [JRuby]: http://jruby.org
36
+ [Ruby-Core-Module-autoload]: http://ruby-doc.org/core/Module.html#method-i-autoload-3F "‘Module#autoload’ method in the Ruby Core Library"
37
+ [Ruby-Core-Module-constants]: http://ruby-doc.org/core/Module.html#method-i-constants "‘Module#constants’ method in the Ruby Core Library"
38
+ [readme]: http://github.com/njonsson/autoloaded/blob/master/README.md "Autoloaded readme"
39
+ [inline-documentation]: http://www.rubydoc.info/github/njonsson/autoloaded "Autoloaded inline documentation"
data/README.md CHANGED
@@ -6,6 +6,7 @@
6
6
  [![Code Climate quality report] ][Code-Climate-report]
7
7
  [![Code Climate coverage report]][Code-Climate-report]
8
8
 
9
+ [![Gemnasium build status] ][Gemnasium-build-status]
9
10
  [![Inch CI build status] ][Inch-CI-build-status]
10
11
  [![RubyGems release] ][RubyGems-release]
11
12
 
@@ -44,7 +45,7 @@ Or you may want to make _Autoloaded_ a dependency of your project by using
44
45
  ```ruby
45
46
  # Gemfile
46
47
 
47
- source 'https://rubygems.org'
48
+ source 'http://rubygems.org'
48
49
 
49
50
  gem 'autoloaded', '~> 1'
50
51
  ```
@@ -172,21 +173,21 @@ You can specify `with` multiple times, and its effects are cumulative.
172
173
  # lib/my_awesome_gem.rb
173
174
  module MyAwesomeGem
174
175
 
175
- Autoloaded.module do |autoloading|
176
- autoloading.with :DB, :VERSION
176
+ Autoloaded.module do |autoloaded|
177
+ autoloaded.with :DB, :VERSION
177
178
  # Or:
178
- # autoloading.with :DB
179
- # autoloading.with :VERSION
179
+ # autoloaded.with :DB
180
+ # autoloaded.with :VERSION
180
181
  # Or:
181
- # autoloading.with DB: 'db', VERSION: 'version'
182
+ # autoloaded.with DB: 'db', VERSION: 'version'
182
183
  # Or:
183
- # autoloading.with DB: 'db'
184
- # autoloading.with VERSION: 'version'
184
+ # autoloaded.with DB: 'db'
185
+ # autoloaded.with VERSION: 'version'
185
186
  # Or:
186
- # autoloading.with 'db' => :DB, 'version' => :VERSION
187
+ # autoloaded.with 'db' => :DB, 'version' => :VERSION
187
188
  # Or:
188
- # autoloading.with 'db' => :DB
189
- # autoloading.with 'version' => :VERSION
189
+ # autoloaded.with 'db' => :DB
190
+ # autoloaded.with 'version' => :VERSION
190
191
  end
191
192
 
192
193
  # The above is the equivalent of:
@@ -201,20 +202,20 @@ module MyAwesomeGem
201
202
 
202
203
  class DB
203
204
 
204
- Autoloaded.class do |autoloading|
205
- autoloading.with :MySQL, :PostgreSQL, [:Access, :SQLServer] => 'MicroSoft'
205
+ Autoloaded.class do |autoloaded|
206
+ autoloaded.with :MySQL, :PostgreSQL, [:Access, :SQLServer] => 'MicroSoft'
206
207
  # Or:
207
- # autoloading.with :MySQL,
208
- # :PostgreSQL,
209
- # Access: 'MicroSoft',
210
- # SQLServer: 'MicroSoft'
208
+ # autoloaded.with :MySQL,
209
+ # :PostgreSQL,
210
+ # Access: 'MicroSoft',
211
+ # SQLServer: 'MicroSoft'
211
212
  # Or:
212
- # autoloading.with :MySQL, :PostgreSQL, 'MicroSoft' => [:Access, :SQLServer]
213
+ # autoloaded.with :MySQL, :PostgreSQL, 'MicroSoft' => [:Access, :SQLServer]
213
214
  # Or:
214
- # autoloading.with :MySQL,
215
- # :PostgreSQL,
216
- # 'MicroSoft' => :Access,
217
- # 'MicroSoft' => :SQLServer
215
+ # autoloaded.with :MySQL,
216
+ # :PostgreSQL,
217
+ # 'MicroSoft' => :Access,
218
+ # 'MicroSoft' => :SQLServer
218
219
  # Or ...
219
220
  end
220
221
 
@@ -282,12 +283,12 @@ module MyAwesomeGem
282
283
 
283
284
  class DB
284
285
 
285
- Autoloaded.class do |autoloading|
286
- autoloading.with :MySQL, :PostgreSQL, [:Access, :SQLServer] => 'MicroSoft'
286
+ Autoloaded.class do |autoloaded|
287
+ autoloaded.with :MySQL, :PostgreSQL, [:Access, :SQLServer] => 'MicroSoft'
287
288
 
288
- autoloading.except 'SELF-DESTRUCT!'
289
+ autoloaded.except 'SELF-DESTRUCT!'
289
290
  # Or:
290
- # autoloading.except :SELF_DESTRUCT_
291
+ # autoloaded.except :SELF_DESTRUCT_
291
292
  # Or ...
292
293
  end
293
294
 
@@ -356,12 +357,12 @@ which source files should be autoloaded.
356
357
 
357
358
  module MyAwesomeGem
358
359
 
359
- Autoloaded.module do |autoloading|
360
+ Autoloaded.module do |autoloaded|
360
361
  # The following code is not actually very useful since the installed location
361
362
  # of a RubyGem varies with the operating system and user preferences. How to
362
363
  # compute the path properly is outside the scope of this readme and is left
363
364
  # as an exercise for the reader.
364
- autoloading.from '/absolute/path/to/my_awesome_gem'
365
+ autoloaded.from '/absolute/path/to/my_awesome_gem'
365
366
  end
366
367
 
367
368
  end
@@ -447,9 +448,9 @@ module MyAwesomeGem
447
448
 
448
449
  class DB
449
450
 
450
- results = Autoloaded.class do |autoloading|
451
- autoloading.with :MySQL, :PostgreSQL, [:Access, :SQLServer] => 'MicroSoft'
452
- autoloading.except 'SELF-DESTRUCT!'
451
+ results = Autoloaded.class do |autoloaded|
452
+ autoloaded.with :MySQL, :PostgreSQL, [:Access, :SQLServer] => 'MicroSoft'
453
+ autoloaded.except 'SELF-DESTRUCT!'
453
454
  end
454
455
  STDOUT.puts results.inspect # See output below.
455
456
 
@@ -488,39 +489,28 @@ directories. This is by design.
488
489
  4. Push to the branch: `git push origin my-new-feature`.
489
490
  5. [Create][compare-Autoloaded-branches] a new pull request.
490
491
 
491
- Development
492
- -----------
493
-
494
- After cloning the repository, `bin/setup` to install dependencies. Then `rake` to
495
- run the tests. You can also `bin/console` to get an interactive prompt that will
496
- allow you to experiment.
497
-
498
- To install this gem onto your local machine, `bundle exec rake install`. To
499
- release a new version, update the version number in _lib/autoloaded/version.rb_,
500
- and then `bundle exec rake release`, which will create a Git tag for the version,
501
- push Git commits and tags, and push the _.gem_ file to
502
- [RubyGems.org](RubyGems-release).
503
-
504
492
  ## License
505
493
 
506
494
  Released under the [MIT License][MIT-License].
507
495
 
508
496
  [Autoloaded graphic]: https://farm5.staticflickr.com/4134/4941065976_54737fe145.jpg
509
- [Travis CI build status]: https://secure.travis-ci.org/njonsson/autoloaded.svg?branch=v1.x
497
+ [Travis CI build status]: https://secure.travis-ci.org/njonsson/autoloaded.svg?branch=master
510
498
  [Code Climate quality report]: https://codeclimate.com/github/njonsson/autoloaded/badges/gpa.svg
511
499
  [Code Climate coverage report]: https://codeclimate.com/github/njonsson/autoloaded/badges/coverage.svg
512
- [Inch CI build status]: https://www.inch-ci.org/github/njonsson/autoloaded.svg?branch=v1.x
500
+ [Gemnasium build status]: https://gemnasium.com/njonsson/autoloaded.svg
501
+ [Inch CI build status]: http://inch-ci.org/github/njonsson/autoloaded.svg?branch=master
513
502
  [RubyGems release]: https://badge.fury.io/rb/autoloaded.svg
514
503
 
515
- [spider-gear-image]: https://www.flickr.com/photos/dongkwan/4941065976 "spider gear image by Ernesto Andrade"
516
- [Travis-CI-build-status]: https://www.travis-ci.org/njonsson/autoloaded "Travis CI build status for Autoloaded"
517
- [Code-Climate-report]: https://codeclimate.com/github/njonsson/autoloaded "Code Climate report for Autoloaded"
518
- [Inch-CI-build-status]: https://www.inch-ci.org/github/njonsson/autoloaded "Inch CI build status for Autoloaded"
519
- [RubyGems-release]: https://rubygems.org/gems/autoloaded "RubyGems release of Autoloaded"
520
- [Ruby-Core-Module-autoload]: https://ruby-doc.org/core/Module.html#method-i-autoload "‘Module#autoload’ method in the Ruby Core Library"
521
- [ActiveSupport-Autoload]: https://api.rubyonrails.org/classes/ActiveSupport/Autoload.html "‘ActiveSupport::Autoloadmodule in the Rails API"
522
- [Bundler]: https://bundler.io/
523
- [Ruby-Core-Kernel-autoload]: https://ruby-doc.org/core/Kernel.html#method-i-autoload "‘Kernel#autoload’ method in the Ruby Core Library"
524
- [fork-Autoloaded]: https://github.com/njonsson/autoloaded/fork "Fork the official repository of Autoloaded"
525
- [compare-Autoloaded-branches]: https://github.com/njonsson/autoloaded/compare "Compare branches of Autoloaded repositories"
526
- [MIT-License]: https://github.com/njonsson/autoloaded/blob/master/License.md "MIT License claim for Autoloaded"
504
+ [spider-gear-image]: https://www.flickr.com/photos/dongkwan/4941065976 "spider gear image by Ernesto Andrade"
505
+ [Travis-CI-build-status]: http://travis-ci.org/njonsson/autoloaded "Travis CI build status for Autoloaded"
506
+ [Code-Climate-report]: http://codeclimate.com/github/njonsson/autoloaded "Code Climate report for Autoloaded"
507
+ [Gemnasium-build-status]: http://gemnasium.com/njonsson/autoloaded "Gemnasium build status for Autoloaded"
508
+ [Inch-CI-build-status]: http://inch-ci.org/github/njonsson/autoloaded "Inch CI build status for Autoloaded"
509
+ [RubyGems-release]: http://rubygems.org/gems/autoloaded "RubyGems release of Autoloaded"
510
+ [Ruby-Core-Module-autoload]: http://ruby-doc.org/core/Module.html#method-i-autoload "‘Module#autoloadmethod in the Ruby Core Library"
511
+ [ActiveSupport-Autoload]: http://api.rubyonrails.org/classes/ActiveSupport/Autoload.html "‘ActiveSupport::Autoload’ module in the Rails API"
512
+ [Bundler]: http://bundler.io
513
+ [Ruby-Core-Kernel-autoload]: http://ruby-doc.org/core/Kernel.html#method-i-autoload "‘Kernel#autoload’ method in the Ruby Core Library"
514
+ [fork-Autoloaded]: https://github.com/njonsson/autoloaded/fork "Fork the official repository of Autoloaded"
515
+ [compare-Autoloaded-branches]: https://github.com/njonsson/autoloaded/compare "Compare branches of Autoloaded repositories"
516
+ [MIT-License]: http://github.com/njonsson/autoloaded/blob/master/License.md "MIT License claim for Autoloaded"
data/Rakefile CHANGED
@@ -1,6 +1,2 @@
1
1
  require 'bundler/gem_tasks'
2
2
  require_relative 'lib/tasks'
3
-
4
- desc 'Run all specs'
5
- task '' => :spec
6
- task default: :spec
@@ -1,50 +1,46 @@
1
1
  # coding: utf-8
2
+
2
3
  lib = File.expand_path('../lib', __FILE__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'autoloaded/version'
5
5
 
6
- Gem::Specification.new do |spec|
7
- spec.name = 'autoloaded'
8
- spec.version = Autoloaded::VERSION
9
- spec.authors = ['Nils Jonsson']
10
- spec.email = ['autoloaded@nilsjonsson.com']
6
+ require 'autoloaded'
11
7
 
12
- spec.summary = <<-end_summary.chomp.gsub(/^\s+/, '').gsub("\n", ' ')
13
- Eliminates the drudgery of handcrafting a Ruby Core
14
- library `autoload` statement for each Ruby source code
15
- file in your project. It also avoids the limitations of
16
- rigid convention-driven facilities such as those provided
17
- by the ActiveSupport RubyGem.
18
- end_summary
19
- spec.description = <<-end_description.chomp.gsub(/^\s+/, '').gsub("\n", ' ')
20
- If you like the ‘Module#autoload’ feature of the Ruby Core
21
- library, you may have wished for Autoloaded. It eliminates
22
- the drudgery of handcrafting an `autoload` statement for
23
- each Ruby source code file in your project. It also avoids
24
- the limitations of rigid convention-driven facilities such
25
- as those provided by the ActiveSupport RubyGem. Autoloaded
26
- assumes, but does not enforce, `CamelCase`-to-`snake_case`
27
- correspondence between the names of constants and source
28
- files. You can combine conventions, even putting multiple
29
- autoloaded constants in a single source file.
30
- end_description
31
- spec.homepage = 'https://njonsson.github.io/autoloaded'
32
- spec.license = 'MIT'
8
+ Gem::Specification.new do |spec|
9
+ spec.name = 'autoloaded'
10
+ spec.version = Autoloaded::VERSION
11
+ spec.authors = ['Nils Jonsson']
12
+ spec.email = ['autoloaded@nilsjonsson.com']
13
+ spec.summary = <<-end_summary.chomp.gsub(/^\s+/, '').gsub("\n", ' ')
14
+ Eliminates the drudgery of handcrafting a Ruby Core
15
+ library `autoload` statement for each Ruby source code
16
+ file in your project. It also avoids the limitations of
17
+ rigid convention-driven facilities such as those
18
+ provided by the ActiveSupport RubyGem.
19
+ end_summary
20
+ spec.description = <<-end_description.chomp.gsub(/^\s+/, '').gsub("\n", ' ')
21
+ If you like the ‘Module#autoload’ feature of the Ruby
22
+ Core library, you may have wished for Autoloaded. It
23
+ eliminates the drudgery of handcrafting an `autoload`
24
+ statement for each Ruby source code file in your
25
+ project. It also avoids the limitations of rigid
26
+ convention-driven facilities such as those provided by
27
+ the ActiveSupport RubyGem. Autoloaded assumes, but does
28
+ not enforce, `CamelCase`-to-`snake_case` correspondence
29
+ between the names of constants and source files. You can
30
+ combine conventions, even putting multiple autoloaded
31
+ constants in a single source file.
32
+ end_description
33
+ spec.homepage = 'http://njonsson.github.io/autoloaded'
34
+ spec.license = 'MIT'
33
35
 
34
- spec.required_ruby_version = '~> 2'
36
+ spec.files = `git ls-files -z`.split("\x0")
37
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename f }
38
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
39
+ spec.require_paths = ['lib']
35
40
 
36
- spec.add_development_dependency 'codeclimate-test-reporter', '~> 0'
37
- if RUBY_VERSION < '2.2'
38
- spec.add_development_dependency 'rake', '~> 12'
39
- else
40
- spec.add_development_dependency 'rake', '~> 13'
41
- end
42
- spec.add_development_dependency 'rspec', '~> 3.3'
41
+ spec.required_ruby_version = '>= 1.9', '< 3'
43
42
 
44
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
45
- f.match(%r{^(test|spec|features)/})
46
- end
47
- spec.bindir = 'exe'
48
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename f }
49
- spec.require_paths = %w(lib)
43
+ spec.add_development_dependency 'bundler', '~> 1'
44
+ spec.add_development_dependency 'rake', '~> 10'
45
+ spec.add_development_dependency 'rspec', '~> 3'
50
46
  end