rack-unreloader 1.6.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-unreloader
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Evans
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-24 00:00:00.000000000 Z
11
+ date: 2022-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: minitest-global_expectations
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  description: |
42
56
  Rack::Unreloader is a rack middleware that reloads application files when it
43
57
  detects changes, unloading constants defined in those files before reloading.
@@ -52,16 +66,16 @@ files:
52
66
  - CHANGELOG
53
67
  - MIT-LICENSE
54
68
  - README.rdoc
55
- - Rakefile
56
69
  - lib/rack/unreloader.rb
57
70
  - lib/rack/unreloader/reloader.rb
58
- - spec/spec_helper.rb
59
- - spec/strip_paths_spec.rb
60
- - spec/unreloader_spec.rb
61
71
  homepage: http://github.com/jeremyevans/rack-unreloader
62
72
  licenses:
63
73
  - MIT
64
- metadata: {}
74
+ metadata:
75
+ bug_tracker_uri: https://github.com/jeremyevans/rack-unreloader/issues
76
+ changelog_uri: https://github.com/jeremyevans/rack-unreloader/blob/master/CHANGELOG
77
+ mailing_list_uri: https://github.com/jeremyevans/rack-unreloader/discussions
78
+ source_code_uri: https://github.com/jeremyevans/rack-unreloader
65
79
  post_install_message:
66
80
  rdoc_options:
67
81
  - "--quiet"
@@ -77,15 +91,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
77
91
  requirements:
78
92
  - - ">="
79
93
  - !ruby/object:Gem::Version
80
- version: '0'
94
+ version: 1.9.2
81
95
  required_rubygems_version: !ruby/object:Gem::Requirement
82
96
  requirements:
83
97
  - - ">="
84
98
  - !ruby/object:Gem::Version
85
99
  version: '0'
86
100
  requirements: []
87
- rubyforge_project:
88
- rubygems_version: 2.6.8
101
+ rubygems_version: 3.3.7
89
102
  signing_key:
90
103
  specification_version: 4
91
104
  summary: Reload application when files change, unloading constants first
data/Rakefile DELETED
@@ -1,45 +0,0 @@
1
- require "rake"
2
- require "rake/clean"
3
-
4
- CLEAN.include ["rack-unreloader-*.gem", "rdoc"]
5
-
6
- desc "Build rack-unreloader gem"
7
- task :package=>[:clean] do |p|
8
- sh %{#{FileUtils::RUBY} -S gem build rack-unreloader.gemspec}
9
- end
10
-
11
- ### Specs
12
-
13
- desc "Run specs"
14
- task :spec do
15
- sh "#{FileUtils::RUBY} spec/unreloader_spec.rb"
16
- end
17
-
18
- task :default => :spec
19
-
20
- ### RDoc
21
-
22
- RDOC_DEFAULT_OPTS = ["--quiet", "--line-numbers", "--inline-source", '--title', 'Rack::Unreloader: Reload application when files change, unloading constants first']
23
-
24
- begin
25
- gem 'hanna-nouveau'
26
- RDOC_DEFAULT_OPTS.concat(['-f', 'hanna'])
27
- rescue Gem::LoadError
28
- end
29
-
30
- rdoc_task_class = begin
31
- require "rdoc/task"
32
- RDoc::Task
33
- rescue LoadError
34
- require "rake/rdoctask"
35
- Rake::RDocTask
36
- end
37
-
38
- RDOC_OPTS = RDOC_DEFAULT_OPTS + ['--main', 'README.rdoc']
39
-
40
- rdoc_task_class.new do |rdoc|
41
- rdoc.rdoc_dir = "rdoc"
42
- rdoc.options += RDOC_OPTS
43
- rdoc.rdoc_files.add %w"README.rdoc CHANGELOG MIT-LICENSE lib/**/*.rb"
44
- end
45
-
data/spec/spec_helper.rb DELETED
@@ -1,76 +0,0 @@
1
- require File.join(File.dirname(File.expand_path(__FILE__)), '../lib/rack/unreloader')
2
- require 'rubygems'
3
- $: << 'lib'
4
- gem 'minitest'
5
- require 'minitest/autorun'
6
- require 'minitest/hooks'
7
-
8
- module ModifiedAt
9
- def set_modified_time(file, time)
10
- time = Time.now + time if time.is_a?(Integer)
11
- modified_times[File.expand_path(file)] = time
12
- end
13
-
14
- def modified_times
15
- @modified_times ||= {}
16
- end
17
-
18
- private
19
-
20
- def modified_at(file)
21
- modified_times[file] || super
22
- end
23
- end
24
-
25
- class Minitest::Spec
26
- def code(i)
27
- "class App; def self.call(env) @a end; @a ||= []; @a << #{i}; end"
28
- end
29
-
30
- def update_app(code, file=@filename)
31
- ru.reloader.set_modified_time(file, @i += 1) if ru.reloader
32
- File.open(file, 'wb'){|f| f.write(code)}
33
- end
34
-
35
- def logger
36
- return @logger if @logger
37
- @logger = []
38
- def @logger.method_missing(meth, log)
39
- self << log
40
- end
41
- @logger
42
- end
43
-
44
- def base_ru(opts={})
45
- block = opts[:block] || proc{App}
46
- @ru = Rack::Unreloader.new({:logger=>logger, :cooldown=>0}.merge(opts), &block)
47
- @ru.reloader.extend ModifiedAt if @ru.reloader
48
- Object.const_set(:RU, @ru)
49
- end
50
-
51
- def ru(opts={})
52
- return @ru if @ru
53
- base_ru(opts)
54
- update_app(opts[:code]||code(1))
55
- @ru.require @filename
56
- @ru
57
- end
58
-
59
- def log_match(*logs)
60
- @logger.length.must_equal logs.length
61
- logs.zip(@logger).each{|l, log| l.is_a?(String) ? log.must_equal(l) : log.must_match(l)}
62
- end
63
-
64
- before do
65
- @i = 0
66
- @filename = 'spec/app.rb'
67
- end
68
-
69
- after do
70
- ru.reloader.clear! if ru.reloader
71
- Object.send(:remove_const, :RU)
72
- Object.send(:remove_const, :App) if defined?(::App)
73
- Object.send(:remove_const, :App2) if defined?(::App2)
74
- Dir['spec/app*.rb'].each{|f| File.delete(f)}
75
- end
76
- end