manifold 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,3 @@
1
+ rvm:
2
+ - "1.9.3"
3
+ - "2.0.0"
data/README.md CHANGED
@@ -1,6 +1,14 @@
1
- # Manifold
1
+ # Manifold: Cross Origin Resource Sharing for Public API's
2
2
 
3
- Mainfold: A generous CORS implementation designed for public APIs.
3
+ [![Build Status](https://secure.travis-ci.org/twinturbo/manifold.png?branch=master)][travis]
4
+ [![Gem Version](https://badge.fury.io/rb/manifold.png)][gem]
5
+ [![Code Climate](https://codeclimate.com/github/twinturbo/manifold.png)][codeclimate]
6
+ [![Dependency Status](https://gemnasium.com/twinturbo/manifold.png?travis)][gemnasium]
7
+
8
+ [gem]: https://rubygems.org/gems/manifold
9
+ [travis]: http://travis-ci.org/twinturbo/manifold
10
+ [gemnasium]: https://gemnasium.com/twinturbo/manifold
11
+ [codeclimate]: https://codeclimate.com/github/twinturbo/manifold
4
12
 
5
13
  Use this if you don't care about CORS problems and never want to see
6
14
  them again.
@@ -33,6 +33,8 @@ module Manifold
33
33
 
34
34
  headers['Access-Control-Allow-Origin'] = "*"
35
35
 
36
+ headers['Access-Control-Expose-Headers'] = Manifold.config.expose.join(', ') if Manifold.config.expose
37
+
36
38
  [status, headers, body]
37
39
  end
38
40
  end
@@ -50,10 +52,6 @@ module Manifold
50
52
  'Authorization'
51
53
  ].compact.join(', ')
52
54
 
53
- if Manifold.config.expose
54
- headers['Access-Control-Expose-Headers'] = Manifold.config.expose.join(', ')
55
- end
56
-
57
55
  headers['Access-Control-Allow-Credentials'] = "true"
58
56
 
59
57
  headers['Access-Control-Max-Age'] = "1728000"
@@ -1,3 +1,3 @@
1
1
  module Manifold
2
- VERSION = "1.0.1"
2
+ VERSION = "1.0.2"
3
3
  end
@@ -16,6 +16,6 @@ Gem::Specification.new do |gem|
16
16
  gem.version = Manifold::VERSION
17
17
 
18
18
  gem.add_development_dependency "rack-test"
19
- gem.add_development_dependency "rails"
19
+ gem.add_development_dependency "rails", '>= 3.0.0'
20
20
  gem.add_development_dependency "simplecov"
21
21
  end
@@ -70,16 +70,6 @@ class ManifoldTest < MiniTest::Unit::TestCase
70
70
  assert_equal 'text/plain', last_response.content_type
71
71
  end
72
72
 
73
- def test_allows_for_custom_headers_exposed
74
- Manifold.config.expose = ["X-Request-ID"]
75
-
76
- preflight "PATCH"
77
-
78
- assert last_response.ok?
79
- headers = last_response.headers
80
- assert_equal "X-Request-ID", headers['Access-Control-Expose-Headers']
81
- end
82
-
83
73
  def tests_allow_for_custom_headers_accept
84
74
  Manifold.config.accept = ["X-Rate-Limit"]
85
75
 
@@ -98,6 +88,16 @@ class ManifoldTest < MiniTest::Unit::TestCase
98
88
  assert headers['Access-Control-Max-Age']
99
89
  end
100
90
 
91
+ def test_allows_for_custom_headers_exposed
92
+ Manifold.config.expose = ["X-Request-ID"]
93
+
94
+ get "/"
95
+
96
+ assert last_response.ok?
97
+ headers = last_response.headers
98
+ assert_equal "X-Request-ID", headers['Access-Control-Expose-Headers']
99
+ end
100
+
101
101
  def test_adds_cors_support_for_simple_requests
102
102
  get '/'
103
103
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manifold
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-14 00:00:00.000000000 Z
12
+ date: 2013-02-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rack-test
16
- requirement: &70230096650200 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,21 +21,31 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70230096650200
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: rails
27
- requirement: &70230096649780 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
31
36
  - !ruby/object:Gem::Version
32
- version: '0'
37
+ version: 3.0.0
33
38
  type: :development
34
39
  prerelease: false
35
- version_requirements: *70230096649780
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 3.0.0
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: simplecov
38
- requirement: &70230096649360 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,7 +53,12 @@ dependencies:
43
53
  version: '0'
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *70230096649360
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  description: Rack middleware to enabled CORS
48
63
  email:
49
64
  - me@broadcastingadam.com
@@ -52,6 +67,7 @@ extensions: []
52
67
  extra_rdoc_files: []
53
68
  files:
54
69
  - .gitignore
70
+ - .travis.yml
55
71
  - Gemfile
56
72
  - LICENSE
57
73
  - README.md
@@ -77,7 +93,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
77
93
  version: '0'
78
94
  segments:
79
95
  - 0
80
- hash: 886249696393047432
96
+ hash: -560821971248689139
81
97
  required_rubygems_version: !ruby/object:Gem::Requirement
82
98
  none: false
83
99
  requirements:
@@ -86,10 +102,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
102
  version: '0'
87
103
  segments:
88
104
  - 0
89
- hash: 886249696393047432
105
+ hash: -560821971248689139
90
106
  requirements: []
91
107
  rubyforge_project:
92
- rubygems_version: 1.8.11
108
+ rubygems_version: 1.8.25
93
109
  signing_key:
94
110
  specification_version: 3
95
111
  summary: ''