rack-freeze 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 3bc56dafbfc276a4b560e73d0043a29a42197022
4
- data.tar.gz: 7c17bb6e88b2b6cf4183b278a9d5e46bef0fb429
2
+ SHA256:
3
+ metadata.gz: 962fe9618607ca07c23d1e6322e0dc7b0adf799498ac454406c8c6edbed71f70
4
+ data.tar.gz: 296075f2f85a4ee92ebeb67a73f97c84012e15574f0a68b44858d30e5b0af1cb
5
5
  SHA512:
6
- metadata.gz: c42c134837c30103be30583c162d96e9ee70d6815aa09dfd8452a8d968aab7039b86c158854a6b607c4e461d9a2c54e8004cbd9aaa7707f4cadf4f82c95ae585
7
- data.tar.gz: ef9492576931fabef0b648e6cb441c537de7fdcca8eefdda294b1f31cd861054ca634319a01f309885ea16d4ff15d6847df290793b7ed3bd57cef081ca03a48b
6
+ metadata.gz: 2e9a6360dc40929083dbdec39ccb05298cff698a69cfab17cbb4752e53dba708da95ee5a29c028e6f931cabbc14df11a056264cbf3f87b9797279e18a01461c7
7
+ data.tar.gz: c3b9c4b4246e6bb45d6dce653e1b062d1a0c3eeabb25318888a3e65b42c3c5f855bf03568176e7dccbc149d39e7499b6a9e4ce3cab60c00169ad2d36057c43ac
data/.rspec CHANGED
@@ -1,4 +1,3 @@
1
1
  --format documentation
2
- --color
3
2
  --require spec_helper
4
3
  --warnings
@@ -1,13 +1,19 @@
1
1
  language: ruby
2
- sudo: false
3
- rvm:
4
- - 2.2.4
5
- - 2.3.2
6
- - 2.4.0
7
- - ruby-head
8
- - rbx-3.65
9
- env: COVERAGE=true
2
+ dist: xenial
3
+ cache: bundler
4
+
10
5
  matrix:
6
+ include:
7
+ - rvm: 2.4
8
+ - rvm: 2.5
9
+ - rvm: 2.6
10
+ - rvm: 2.6
11
+ env: COVERAGE=PartialSummary,Coveralls
12
+ - rvm: 2.7
13
+ - rvm: truffleruby
14
+ - rvm: jruby-head
15
+ - rvm: ruby-head
11
16
  allow_failures:
12
- - rvm: rbx-3.65
17
+ - rvm: truffleruby
13
18
  - rvm: ruby-head
19
+ - rvm: jruby-head
data/Gemfile CHANGED
@@ -2,8 +2,3 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in utopia.gemspec
4
4
  gemspec
5
-
6
- group :test do
7
- gem 'simplecov'
8
- gem 'coveralls', require: false
9
- end
data/README.md CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
  Provides a policy for Rack middleware which should be frozen by default to prevent mutability bugs in a multi-threaded environment.
4
4
 
5
- [![Build Status](https://secure.travis-ci.org/ioquatix/rack-freeze.svg)](http://travis-ci.org/ioquatix/rack-freeze)
5
+ **In Rack 2.1+, you can use `Builder::freeze_app` instead of this gem.**
6
+
7
+ [![Build Status](https://travis-ci.com/ioquatix/rack-freeze.svg)](https://travis-ci.com/ioquatix/rack-freeze)
6
8
  [![Code Climate](https://codeclimate.com/github/ioquatix/rack-freeze.svg)](https://codeclimate.com/github/ioquatix/rack-freeze)
7
9
  [![Coverage Status](https://coveralls.io/repos/ioquatix/rack-freeze/badge.svg)](https://coveralls.io/r/ioquatix/rack-freeze)
8
10
 
@@ -70,10 +72,10 @@ class CacheEverythingForever
70
72
  @cache_all_the_things = Concurrent::Map.new
71
73
  end
72
74
 
73
- # Because you supply your own implementation of #freeze, Rack::Freeze won't touch this middleware.
74
75
  def freeze
75
76
  return self if frozen?
76
77
 
78
+ # Don't freeze @cache_all_the_things
77
79
  @app.freeze
78
80
 
79
81
  super
@@ -100,7 +102,7 @@ end
100
102
 
101
103
  Released under the MIT license.
102
104
 
103
- Copyright, 2017, by [Samuel G. D. Williams](http://www.codeotaku.com/samuel-williams).
105
+ Copyright, 2017, by [Samuel G. D. Williams](http://www.codeotaku.com).
104
106
 
105
107
  Permission is hereby granted, free of charge, to any person obtaining a copy
106
108
  of this software and associated documentation files (the "Software"), to deal
data/Rakefile CHANGED
@@ -1,6 +1,6 @@
1
1
  require "bundler/gem_tasks"
2
2
  require "rspec/core/rake_task"
3
3
 
4
- RSpec::Core::RakeTask.new(:spec)
4
+ RSpec::Core::RakeTask.new
5
5
 
6
6
  task :default => :spec
@@ -19,13 +19,15 @@
19
19
  # THE SOFTWARE.
20
20
 
21
21
  require 'rack/builder'
22
+ require 'ruby2_keywords'
23
+
22
24
  require_relative 'freezer'
23
25
 
24
26
  module Rack
25
27
  module Freeze
26
28
  module Builder
27
- def use(klass, *args, &block)
28
- super Freezer.new(klass), *args, &block
29
+ ruby2_keywords def use(klass, *arguments, &block)
30
+ super Freezer.new(klass), *arguments, &block
29
31
  end
30
32
 
31
33
  def run(app)
@@ -18,6 +18,8 @@
18
18
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
19
  # THE SOFTWARE.
20
20
 
21
+ require "ruby2_keywords"
22
+
21
23
  module Rack
22
24
  module Freeze
23
25
  class Freezer
@@ -29,8 +31,8 @@ module Rack
29
31
  "#{self.class}<#{@klass}>"
30
32
  end
31
33
 
32
- def new(*args, &block)
33
- @klass.new(*args, &block).freeze
34
+ ruby2_keywords def new(*arguments, &block)
35
+ @klass.new(*arguments, &block).freeze
34
36
  end
35
37
  end
36
38
  end
@@ -20,6 +20,6 @@
20
20
 
21
21
  module Rack
22
22
  module Freeze
23
- VERSION = "1.2.0"
23
+ VERSION = "1.3.0"
24
24
  end
25
25
  end
@@ -1,23 +1,25 @@
1
- # coding: utf-8
2
1
  require_relative 'lib/rack/freeze/version'
3
2
 
4
3
  Gem::Specification.new do |spec|
5
- spec.name = "rack-freeze"
6
- spec.version = Rack::Freeze::VERSION
7
- spec.authors = ["Samuel Williams"]
8
- spec.email = ["samuel.williams@oriontransfer.co.nz"]
9
-
10
- spec.summary = "Provides a policy for frozen rack middleware."
11
- spec.homepage = "https://github.com/ioquatix/rack-freeze"
12
-
13
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
4
+ spec.name = "rack-freeze"
5
+ spec.version = Rack::Freeze::VERSION
6
+ spec.authors = ["Samuel Williams"]
7
+ spec.email = ["samuel.williams@oriontransfer.co.nz"]
8
+
9
+ spec.summary = "Provides a policy for frozen rack middleware."
10
+ spec.homepage = "https://github.com/ioquatix/rack-freeze"
11
+
12
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
14
13
  f.match(%r{^(test|spec|features)/})
15
14
  end
16
15
  spec.require_paths = ["lib"]
17
16
 
18
17
  spec.add_dependency "rack", "~> 2.0"
19
-
20
- spec.add_development_dependency "bundler", "~> 1.14"
18
+
19
+ spec.add_dependency "ruby2_keywords"
20
+
21
+ spec.add_development_dependency "covered"
22
+ spec.add_development_dependency "bundler"
21
23
  spec.add_development_dependency "rake", "~> 10.0"
22
24
  spec.add_development_dependency "rspec", "~> 3.0"
23
25
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-freeze
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-11 00:00:00.000000000 Z
11
+ date: 2020-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -24,20 +24,48 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: ruby2_keywords
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: covered
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'
27
55
  - !ruby/object:Gem::Dependency
28
56
  name: bundler
29
57
  requirement: !ruby/object:Gem::Requirement
30
58
  requirements:
31
- - - "~>"
59
+ - - ">="
32
60
  - !ruby/object:Gem::Version
33
- version: '1.14'
61
+ version: '0'
34
62
  type: :development
35
63
  prerelease: false
36
64
  version_requirements: !ruby/object:Gem::Requirement
37
65
  requirements:
38
- - - "~>"
66
+ - - ">="
39
67
  - !ruby/object:Gem::Version
40
- version: '1.14'
68
+ version: '0'
41
69
  - !ruby/object:Gem::Dependency
42
70
  name: rake
43
71
  requirement: !ruby/object:Gem::Requirement
@@ -102,8 +130,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
130
  - !ruby/object:Gem::Version
103
131
  version: '0'
104
132
  requirements: []
105
- rubyforge_project:
106
- rubygems_version: 2.6.10
133
+ rubygems_version: 3.1.2
107
134
  signing_key:
108
135
  specification_version: 4
109
136
  summary: Provides a policy for frozen rack middleware.