Remove internet explorer version check
This was in all stack traces, which confused people ... We currently only support IE11, so the version check was already old again ... When we break old browser versions, we don't check that for other browsers. So older IE browser just break, like very other older browser too. closes #7557
This commit is contained in:
parent
8f0c74f72e
commit
9240605ad5
4 changed files with 1 additions and 90 deletions
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
## Refactor
|
## Refactor
|
||||||
* Remove title from profile photo upload button [#7551](https://github.com/diaspora/diaspora/pull/7551)
|
* Remove title from profile photo upload button [#7551](https://github.com/diaspora/diaspora/pull/7551)
|
||||||
|
* Remove Internet Explorer workarounds [#7557](https://github.com/diaspora/diaspora/pull/7557)
|
||||||
|
|
||||||
## Bug fixes
|
## Bug fixes
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@
|
||||||
# This file is used by Rack-based servers to start the application.
|
# This file is used by Rack-based servers to start the application.
|
||||||
|
|
||||||
require ::File.expand_path("../config/environment", __FILE__)
|
require ::File.expand_path("../config/environment", __FILE__)
|
||||||
require ::File.expand_path("../lib/rack/internet_explorer_version", __FILE__)
|
|
||||||
|
|
||||||
# Kill unicorn workers really aggressively (at 300mb)
|
# Kill unicorn workers really aggressively (at 300mb)
|
||||||
if defined?(Unicorn)
|
if defined?(Unicorn)
|
||||||
|
|
@ -16,6 +15,5 @@ if defined?(Unicorn)
|
||||||
use Unicorn::WorkerKiller::Oom, oom_min, oom_max
|
use Unicorn::WorkerKiller::Oom, oom_min, oom_max
|
||||||
end
|
end
|
||||||
use Rack::Deflater
|
use Rack::Deflater
|
||||||
use Rack::InternetExplorerVersion, minimum: 9
|
|
||||||
|
|
||||||
run Diaspora::Application
|
run Diaspora::Application
|
||||||
|
|
|
||||||
|
|
@ -1,41 +0,0 @@
|
||||||
# Copyright (c) 2010-2011, Diaspora Inc. This file is
|
|
||||||
# licensed under the Affero General Public License version 3 or later. See
|
|
||||||
# the COPYRIGHT file.
|
|
||||||
|
|
||||||
module Rack
|
|
||||||
class InternetExplorerVersion
|
|
||||||
def initialize(app, options={})
|
|
||||||
@app = app
|
|
||||||
@options = options
|
|
||||||
end
|
|
||||||
|
|
||||||
def call(env)
|
|
||||||
if env["HTTP_USER_AGENT"] =~ /MSIE/ && ie_version(env["HTTP_USER_AGENT"]) < @options[:minimum]
|
|
||||||
html = <<-HTML
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
||||||
<head>
|
|
||||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
|
|
||||||
<title>Diaspora doesn't support your version of Internet Explorer. Try Firefox, Chrome or Opera!</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h1>Diaspora doesn't support your version of Internet Explorer.</h1>
|
|
||||||
You can use one of these browsers (and many more):
|
|
||||||
<ul>
|
|
||||||
<li><a href="https://www.mozilla.org/firefox/">Firefox</a></li>
|
|
||||||
<li><a href="https://www.google.com/chrome/">Chrome</a></li>
|
|
||||||
<li><a href="https://www.opera.com/">Opera</a></li>
|
|
||||||
</ul>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
HTML
|
|
||||||
return [200, {"Content-Type" => "text/html", "Content-Length" => html.size.to_s}, Rack::Response.new([html])]
|
|
||||||
end
|
|
||||||
@app.call(env)
|
|
||||||
end
|
|
||||||
|
|
||||||
def ie_version(ua_string)
|
|
||||||
ua_string.match(/MSIE ?(\S+)/)[1].to_f
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
@ -1,47 +0,0 @@
|
||||||
# Copyright (c) 2010-2011, Diaspora Inc. This file is
|
|
||||||
# licensed under the Affero General Public License version 3 or later. See
|
|
||||||
# the COPYRIGHT file.
|
|
||||||
|
|
||||||
describe Rack::InternetExplorerVersion do
|
|
||||||
before :all do
|
|
||||||
@app = Rack::Builder.parse_file(Rails.root.join("config.ru").to_s).first
|
|
||||||
end
|
|
||||||
|
|
||||||
subject { get_response_for_user_agent(@app, ua_string) }
|
|
||||||
|
|
||||||
context "non-IE browser" do
|
|
||||||
let(:ua_string) { "another browser chromeframe" }
|
|
||||||
|
|
||||||
it "shouldn't complain about the browser" do
|
|
||||||
expect(subject.body).not_to match(/Diaspora doesn't support your version of Internet Explorer/)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
context "new IE" do
|
|
||||||
let(:ua_string) { "MSIE 9" }
|
|
||||||
|
|
||||||
it "shouldn't complain about the browser" do
|
|
||||||
expect(subject.body).not_to match(/Diaspora doesn't support your version of Internet Explorer/)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
context "old IE" do
|
|
||||||
let(:ua_string) { "MSIE 7" }
|
|
||||||
|
|
||||||
it "should complain about the browser" do
|
|
||||||
expect(subject.body).to match(/Diaspora doesn't support your version of Internet Explorer/)
|
|
||||||
end
|
|
||||||
|
|
||||||
it "should have the correct content-length header" do
|
|
||||||
expect(subject.headers["Content-Length"]).to eq(subject.body.length.to_s)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
context "Specific case with no space after MSIE" do
|
|
||||||
let(:ua_string) { "Mozilla/4.0 (compatible; MSIE8.0; Windows NT 6.0) .NET CLR 2.0.50727" }
|
|
||||||
|
|
||||||
it "should complain about the browser" do
|
|
||||||
expect(subject.body).to match(/Diaspora doesn't support your version of Internet Explorer/)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
Loading…
Reference in a new issue