rack-forceie7 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/.document ADDED
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
data/.gitignore ADDED
@@ -0,0 +1,21 @@
1
+ ## MAC OS
2
+ .DS_Store
3
+
4
+ ## TEXTMATE
5
+ *.tmproj
6
+ tmtags
7
+
8
+ ## EMACS
9
+ *~
10
+ \#*
11
+ .\#*
12
+
13
+ ## VIM
14
+ *.swp
15
+
16
+ ## PROJECT::GENERAL
17
+ coverage
18
+ rdoc
19
+ pkg
20
+
21
+ ## PROJECT::SPECIFIC
data/LICENSE ADDED
@@ -0,0 +1,13 @@
1
+ THE MIT LICENSE
2
+
3
+ Copyright (c) 2010 Andrew Chalkley
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
6
+ documentation files (the "Software"), to deal in the Software without restriction, including without limitation
7
+ the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
8
+
9
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
10
+
11
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
12
+
13
+ http://creativecommons.org/licenses/MIT/
data/README.rdoc ADDED
@@ -0,0 +1,36 @@
1
+ = rack-forceie7
2
+
3
+ Rack::ForceIE7 adds the X-UA-Compatible header with the value of IE=7 to the response headers so that there is no need to include anything in the head of your HTML document. Unlike some other middleware this doesn't edit your body - it just adds the additional header to the response.
4
+
5
+ Rack::ForceIE7 is lightweight and tested.
6
+
7
+ == Install
8
+
9
+ sudo gem install rack-forceie7 -s http://gemcutter.org
10
+
11
+ == Usage
12
+
13
+ require 'rack-forceie7'
14
+
15
+ use Rack::ForceIE7
16
+
17
+ == Rails Usage
18
+
19
+ In your environments.rb
20
+
21
+ config.gem 'rack-forceie7'
22
+ config.middleware.use "Rack::ForceIE7"
23
+
24
+
25
+ == Note on Patches/Pull Requests
26
+
27
+ * Fork the project.
28
+ * Make your feature addition or bug fix.
29
+ * Add tests for it. This is important so I don't break it in a future version unintentionally.
30
+ * Commit, do not mess with rakefile, version, or history.
31
+ (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
32
+ * Send me a pull request. Bonus points for topic branches.
33
+
34
+ == Copyright
35
+
36
+ Copyright (c) 2010 Andrew Chalkley. See LICENSE for details.
data/Rakefile ADDED
@@ -0,0 +1,53 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "rack-forceie7"
8
+ gem.summary = "Rack middleware to force Internet Explorer 8 to render pages in Internet Explorer 7 Compatibilty mode unobtrusively"
9
+ gem.description = "Rack::ForceIE7 adds the X-UA-Compatible header with the value of IE=7 to the response headers so that there is no need to include anything in the head of your HTML document. Unlike some other middleware this doesn't edit your body - it just adds the additional header to the response."
10
+ gem.email = "andrew@chalkley.org"
11
+ gem.homepage = "http://github.com/chalkers/rack-forceie7"
12
+ gem.authors = ["Andrew Chalkley"]
13
+ gem.add_development_dependency "shoulda", ">= 0"
14
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
15
+ end
16
+ Jeweler::GemcutterTasks.new
17
+ rescue LoadError
18
+ puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
19
+ end
20
+
21
+ require 'rake/testtask'
22
+ Rake::TestTask.new(:test) do |test|
23
+ test.libs << 'lib' << 'test'
24
+ test.pattern = 'test/**/test_*.rb'
25
+ test.verbose = true
26
+ end
27
+
28
+ begin
29
+ require 'rcov/rcovtask'
30
+ Rcov::RcovTask.new do |test|
31
+ test.libs << 'test'
32
+ test.pattern = 'test/**/test_*.rb'
33
+ test.verbose = true
34
+ end
35
+ rescue LoadError
36
+ task :rcov do
37
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
38
+ end
39
+ end
40
+
41
+ task :test => :check_dependencies
42
+
43
+ task :default => :test
44
+
45
+ require 'rake/rdoctask'
46
+ Rake::RDocTask.new do |rdoc|
47
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
+
49
+ rdoc.rdoc_dir = 'rdoc'
50
+ rdoc.title = "rack-forceie7 #{version}"
51
+ rdoc.rdoc_files.include('README*')
52
+ rdoc.rdoc_files.include('lib/**/*.rb')
53
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.0.0
@@ -0,0 +1,13 @@
1
+ module Rack
2
+ class ForceIE7
3
+ def initialize app, options = { }
4
+ @app = app
5
+ end
6
+
7
+ def call env
8
+ status, headers, body = @app.call(env)
9
+ headers["X-UA-Compatible"] = "IE=7"
10
+ [status, headers, body]
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,54 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{rack-forceie7}
8
+ s.version = "1.0.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Andrew Chalkley"]
12
+ s.date = %q{2010-01-31}
13
+ s.description = %q{Rack::ForceIE7 adds the X-UA-Compatible header with the value of IE=7 to the response headers so that there is no need to include anything in the head of your HTML document. Unlike some other middleware this doesn't edit your body - it just adds the additional header to the response.}
14
+ s.email = %q{andrew@chalkley.org}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".gitignore",
22
+ "LICENSE",
23
+ "README.rdoc",
24
+ "Rakefile",
25
+ "VERSION",
26
+ "lib/rack-forceie7.rb",
27
+ "rack-forceie7.gemspec",
28
+ "test/helper.rb",
29
+ "test/test_rack-forceie7.rb"
30
+ ]
31
+ s.homepage = %q{http://github.com/chalkers/rack-forceie7}
32
+ s.rdoc_options = ["--charset=UTF-8"]
33
+ s.require_paths = ["lib"]
34
+ s.rubygems_version = %q{1.3.5}
35
+ s.summary = %q{Rack middleware to force Internet Explorer 8 to render pages in Internet Explorer 7 Compatibilty mode unobtrusively}
36
+ s.test_files = [
37
+ "test/helper.rb",
38
+ "test/test_rack-forceie7.rb"
39
+ ]
40
+
41
+ if s.respond_to? :specification_version then
42
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
43
+ s.specification_version = 3
44
+
45
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
46
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
47
+ else
48
+ s.add_dependency(%q<shoulda>, [">= 0"])
49
+ end
50
+ else
51
+ s.add_dependency(%q<shoulda>, [">= 0"])
52
+ end
53
+ end
54
+
data/test/helper.rb ADDED
@@ -0,0 +1,17 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+ require 'shoulda'
4
+ require 'rack/mock'
5
+
6
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
7
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
8
+ require 'rack-forceie7'
9
+
10
+ class TestApp
11
+ def call(env)
12
+ [200, {}, 'Body']
13
+ end
14
+ end
15
+
16
+ class Test::Unit::TestCase
17
+ end
@@ -0,0 +1,10 @@
1
+ require 'helper'
2
+
3
+ class TestRackForceie7 < Test::Unit::TestCase
4
+ should "have new header added and the body not modified" do
5
+ request = Rack::MockRequest.new(Rack::ForceIE7.new(TestApp.new))
6
+ response = request.get('/')
7
+ assert_equal "IE=7", response.headers["X-UA-Compatible"]
8
+ assert_equal "Body", response.body
9
+ end
10
+ end
metadata ADDED
@@ -0,0 +1,75 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rack-forceie7
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Andrew Chalkley
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2010-01-31 00:00:00 +00:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: shoulda
17
+ type: :development
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ description: Rack::ForceIE7 adds the X-UA-Compatible header with the value of IE=7 to the response headers so that there is no need to include anything in the head of your HTML document. Unlike some other middleware this doesn't edit your body - it just adds the additional header to the response.
26
+ email: andrew@chalkley.org
27
+ executables: []
28
+
29
+ extensions: []
30
+
31
+ extra_rdoc_files:
32
+ - LICENSE
33
+ - README.rdoc
34
+ files:
35
+ - .document
36
+ - .gitignore
37
+ - LICENSE
38
+ - README.rdoc
39
+ - Rakefile
40
+ - VERSION
41
+ - lib/rack-forceie7.rb
42
+ - rack-forceie7.gemspec
43
+ - test/helper.rb
44
+ - test/test_rack-forceie7.rb
45
+ has_rdoc: true
46
+ homepage: http://github.com/chalkers/rack-forceie7
47
+ licenses: []
48
+
49
+ post_install_message:
50
+ rdoc_options:
51
+ - --charset=UTF-8
52
+ require_paths:
53
+ - lib
54
+ required_ruby_version: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - ">="
57
+ - !ruby/object:Gem::Version
58
+ version: "0"
59
+ version:
60
+ required_rubygems_version: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: "0"
65
+ version:
66
+ requirements: []
67
+
68
+ rubyforge_project:
69
+ rubygems_version: 1.3.5
70
+ signing_key:
71
+ specification_version: 3
72
+ summary: Rack middleware to force Internet Explorer 8 to render pages in Internet Explorer 7 Compatibilty mode unobtrusively
73
+ test_files:
74
+ - test/helper.rb
75
+ - test/test_rack-forceie7.rb