Hello community,
here is the log from the commit of package rubygem-http_accept_language for
openSUSE:Factory checked in at 2015-02-11 16:45:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-http_accept_language (Old)
and /work/SRC/openSUSE:Factory/.rubygem-http_accept_language.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-http_accept_language"
Changes:
--------
---
/work/SRC/openSUSE:Factory/rubygem-http_accept_language/rubygem-http_accept_language.changes
2014-11-18 22:45:01.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.rubygem-http_accept_language.new/rubygem-http_accept_language.changes
2015-02-11 16:45:39.000000000 +0100
@@ -1,0 +2,5 @@
+Mon Feb 9 08:06:38 UTC 2015 - [email protected]
+
+- updated to version 2.0.5
+
+-------------------------------------------------------------------
Old:
----
http_accept_language-2.0.2.gem
New:
----
http_accept_language-2.0.5.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-http_accept_language.spec ++++++
--- /var/tmp/diff_new_pack.SvJM1f/_old 2015-02-11 16:45:40.000000000 +0100
+++ /var/tmp/diff_new_pack.SvJM1f/_new 2015-02-11 16:45:40.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package rubygem-http_accept_language
#
-# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -24,7 +24,7 @@
#
Name: rubygem-http_accept_language
-Version: 2.0.2
+Version: 2.0.5
Release: 0
%define mod_name http_accept_language
%define mod_full_name %{mod_name}-%{version}
++++++ http_accept_language-2.0.2.gem -> http_accept_language-2.0.5.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md 1970-01-01 01:00:00.000000000 +0100
+++ new/README.md 2015-01-25 19:47:23.000000000 +0100
@@ -2,8 +2,8 @@
A gem which helps you detect the users preferred language, as sent by the
"Accept-Language" HTTP header.
-The algorithm is based on [RFC
2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html), with one
exception:
-when a user requests "en-US" and "en" is an available language, "en" is deemed
compatible with "en-US".
+The algorithm is based on [RFC
2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html), with one
exception:
+when a user requests "en-US" and "en" is an available language, "en" is deemed
compatible with "en-US".
The RFC specifies that the requested language must either exactly match the
available language or must exactly match a prefix of the available language.
This means that when the user requests "en" and "en-US" is available, "en-US"
would be compatible, but not the other way around. This is usually not what
you're looking for.
Since version 2.0, this gem is Rack middleware.
@@ -43,6 +43,16 @@
end
```
+If you want to enable this behavior by default in your controllers, you can
just include the provided concern:
+
+```ruby
+class ApplicationController < ActionController::Base
+ include HttpAcceptLanguage::AutoLocale
+
+#...
+end
+```
+
To use the middleware in any Rack application, simply add the middleware:
``` ruby
Files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/http_accept_language/auto_locale.rb
new/lib/http_accept_language/auto_locale.rb
--- old/lib/http_accept_language/auto_locale.rb 1970-01-01 01:00:00.000000000
+0100
+++ new/lib/http_accept_language/auto_locale.rb 2015-01-25 19:47:23.000000000
+0100
@@ -0,0 +1,17 @@
+require 'active_support/concern'
+
+module HttpAcceptLanguage
+ module AutoLocale
+ extend ActiveSupport::Concern
+
+ included do
+ before_filter :set_locale
+ end
+
+ private
+
+ def set_locale
+ I18n.locale =
http_accept_language.compatible_language_from(I18n.available_locales)
+ end
+ end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/http_accept_language/middleware.rb
new/lib/http_accept_language/middleware.rb
--- old/lib/http_accept_language/middleware.rb 1970-01-01 01:00:00.000000000
+0100
+++ new/lib/http_accept_language/middleware.rb 2015-01-25 19:47:23.000000000
+0100
@@ -6,6 +6,7 @@
def call(env)
env["http_accept_language.parser"] =
Parser.new(env["HTTP_ACCEPT_LANGUAGE"])
+
def env.http_accept_language
self["http_accept_language.parser"]
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/http_accept_language/railtie.rb
new/lib/http_accept_language/railtie.rb
--- old/lib/http_accept_language/railtie.rb 1970-01-01 01:00:00.000000000
+0100
+++ new/lib/http_accept_language/railtie.rb 2015-01-25 19:47:23.000000000
+0100
@@ -2,7 +2,7 @@
class Railtie < ::Rails::Railtie
initializer "http_accept_language.add_middleware" do |app|
app.middleware.use Middleware
-
+
ActiveSupport.on_load :action_controller do
include EasyAccess
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/http_accept_language/version.rb
new/lib/http_accept_language/version.rb
--- old/lib/http_accept_language/version.rb 1970-01-01 01:00:00.000000000
+0100
+++ new/lib/http_accept_language/version.rb 2015-01-25 19:47:23.000000000
+0100
@@ -1,3 +1,3 @@
module HttpAcceptLanguage
- VERSION = '2.0.2'
+ VERSION = '2.0.5'
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/http_accept_language.rb
new/lib/http_accept_language.rb
--- old/lib/http_accept_language.rb 1970-01-01 01:00:00.000000000 +0100
+++ new/lib/http_accept_language.rb 2015-01-25 19:47:23.000000000 +0100
@@ -1,3 +1,4 @@
+require 'http_accept_language/auto_locale'
require 'http_accept_language/parser'
require 'http_accept_language/middleware'
require 'http_accept_language/railtie' if defined?(Rails::Railtie)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 1970-01-01 01:00:00.000000000 +0100
+++ new/metadata 2015-01-25 19:47:23.000000000 +0100
@@ -1,93 +1,113 @@
--- !ruby/object:Gem::Specification
name: http_accept_language
version: !ruby/object:Gem::Version
- version: 2.0.2
- prerelease:
+ version: 2.0.5
platform: ruby
authors:
- iain
autorequire:
bindir: bin
cert_chain: []
-date: 2014-07-31 00:00:00.000000000 Z
+date: 2015-01-25 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: rake
- requirement: &70189984251240 !ruby/object:Gem::Requirement
- none: false
+ requirement: !ruby/object:Gem::Requirement
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
type: :development
prerelease: false
- version_requirements: *70189984251240
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '0'
- !ruby/object:Gem::Dependency
name: rspec
- requirement: &70189984250560 !ruby/object:Gem::Requirement
- none: false
+ requirement: !ruby/object:Gem::Requirement
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
type: :development
prerelease: false
- version_requirements: *70189984250560
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '0'
- !ruby/object:Gem::Dependency
name: rack-test
- requirement: &70189984250020 !ruby/object:Gem::Requirement
- none: false
+ requirement: !ruby/object:Gem::Requirement
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
type: :development
prerelease: false
- version_requirements: *70189984250020
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '0'
- !ruby/object:Gem::Dependency
name: guard-rspec
- requirement: &70189984249400 !ruby/object:Gem::Requirement
- none: false
+ requirement: !ruby/object:Gem::Requirement
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
type: :development
prerelease: false
- version_requirements: *70189984249400
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '0'
- !ruby/object:Gem::Dependency
name: rails
- requirement: &70189984248760 !ruby/object:Gem::Requirement
- none: false
+ requirement: !ruby/object:Gem::Requirement
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: 3.2.6
type: :development
prerelease: false
- version_requirements: *70189984248760
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: 3.2.6
- !ruby/object:Gem::Dependency
name: cucumber
- requirement: &70189984248160 !ruby/object:Gem::Requirement
- none: false
+ requirement: !ruby/object:Gem::Requirement
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
type: :development
prerelease: false
- version_requirements: *70189984248160
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '0'
- !ruby/object:Gem::Dependency
name: aruba
- requirement: &70189984247480 !ruby/object:Gem::Requirement
- none: false
+ requirement: !ruby/object:Gem::Requirement
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
type: :development
prerelease: false
- version_requirements: *70189984247480
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '0'
description: Find out which locale the user preferes by reading the languages
they
specified in their browser
email:
@@ -96,8 +116,8 @@
extensions: []
extra_rdoc_files: []
files:
-- .gitignore
-- .rspec
+- ".gitignore"
+- ".rspec"
- Gemfile
- Guardfile
- README.md
@@ -108,47 +128,44 @@
- features/support/rails_driver.rb
- http_accept_language.gemspec
- lib/http_accept_language.rb
+- lib/http_accept_language/auto_locale.rb
- lib/http_accept_language/middleware.rb
- lib/http_accept_language/parser.rb
- lib/http_accept_language/railtie.rb
- lib/http_accept_language/version.rb
+- spec/auto_locale_spec.rb
- spec/middleware_spec.rb
- spec/parser_spec.rb
homepage: https://github.com/iain/http_accept_language
licenses:
- MIT
+metadata: {}
post_install_message:
rdoc_options: []
require_paths:
- lib
required_ruby_version: !ruby/object:Gem::Requirement
- none: false
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
- segments:
- - 0
- hash: 3432813774343238940
required_rubygems_version: !ruby/object:Gem::Requirement
- none: false
requirements:
- - - ! '>='
+ - - ">="
- !ruby/object:Gem::Version
version: '0'
- segments:
- - 0
- hash: 3432813774343238940
requirements: []
rubyforge_project: http_accept_language
-rubygems_version: 1.8.6
+rubygems_version: 2.2.2
signing_key:
-specification_version: 3
+specification_version: 4
summary: Find out which locale the user preferes by reading the languages they
specified
in their browser
test_files:
- features/rails_integration.feature
- features/steps/rails.rb
- features/support/rails_driver.rb
+- spec/auto_locale_spec.rb
- spec/middleware_spec.rb
- spec/parser_spec.rb
+has_rdoc:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/spec/auto_locale_spec.rb new/spec/auto_locale_spec.rb
--- old/spec/auto_locale_spec.rb 1970-01-01 01:00:00.000000000 +0100
+++ new/spec/auto_locale_spec.rb 2015-01-25 19:47:23.000000000 +0100
@@ -0,0 +1,34 @@
+require 'i18n'
+require 'http_accept_language/auto_locale'
+require 'http_accept_language/parser'
+require 'http_accept_language/middleware'
+
+describe HttpAcceptLanguage::AutoLocale do
+ let(:controller_class) do
+ Class.new do
+ def self.before_filter(dummy)
+ # dummy method
+ end
+
+ def http_accept_language
+ HttpAcceptLanguage::Parser.new("ja,en-us;q=0.7,en;q=0.3")
+ end
+
+ include HttpAcceptLanguage::AutoLocale
+ end
+ end
+
+ let(:controller) { controller_class.new }
+
+ context "available languages includes accept_languages" do
+ before do
+ I18n.available_locales = [:en, :ja]
+ end
+
+ it "take a suitable locale" do
+ controller.send(:set_locale)
+
+ expect(I18n.locale).to eq(:ja)
+ end
+ end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/spec/middleware_spec.rb new/spec/middleware_spec.rb
--- old/spec/middleware_spec.rb 1970-01-01 01:00:00.000000000 +0100
+++ new/spec/middleware_spec.rb 2015-01-25 19:47:23.000000000 +0100
@@ -33,20 +33,20 @@
app = lambda { |env| env }
middleware = HttpAcceptLanguage::Middleware.new(app)
middleware.call(env)
- env.http_accept_language.user_preferred_languages.should eq %w{en}
+ expect(env.http_accept_language.user_preferred_languages).to eq %w{en}
env["HTTP_ACCEPT_LANGUAGE"] = "de"
middleware.call(env)
- env.http_accept_language.user_preferred_languages.should eq %w{de}
+ expect(env.http_accept_language.user_preferred_languages).to eq %w{de}
end
it "decodes the HTTP_ACCEPT_LANGUAGE header" do
request_with_header 'en-us,en-gb;q=0.8,en;q=0.6,es-419'
- r['user_preferred_languages'].should eq %w{en-US es-419 en-GB en}
+ expect(r['user_preferred_languages']).to eq %w{en-US es-419 en-GB en}
end
it "finds the first available language" do
request_with_header 'en-us,en-gb;q=0.8,en;q=0.6,es-419', :preferred =>
%w(en en-GB)
- r['preferred_language_from'].should eq 'en-GB'
+ expect(r['preferred_language_from']).to eq 'en-GB'
end
def request_with_header(header, params = {})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/spec/parser_spec.rb new/spec/parser_spec.rb
--- old/spec/parser_spec.rb 1970-01-01 01:00:00.000000000 +0100
+++ new/spec/parser_spec.rb 2015-01-25 19:47:23.000000000 +0100
@@ -8,58 +8,58 @@
it "should return empty array" do
parser.header = nil
- parser.user_preferred_languages.should eq []
+ expect(parser.user_preferred_languages).to eq []
end
it "should properly split" do
- parser.user_preferred_languages.should eq %w{en-US es-419 en-GB en}
+ expect(parser.user_preferred_languages).to eq %w{en-US es-419 en-GB en}
end
it "should ignore jambled header" do
parser.header = 'odkhjf89fioma098jq .,.,'
- parser.user_preferred_languages.should eq []
+ expect(parser.user_preferred_languages).to eq []
end
it "should properly respect whitespace" do
parser.header = 'en-us, en-gb; q=0.8,en;q = 0.6,es-419'
- parser.user_preferred_languages.should eq %w{en-US es-419 en-GB en}
+ expect(parser.user_preferred_languages).to eq %w{en-US es-419 en-GB en}
end
it "should find first available language" do
- parser.preferred_language_from(%w{en en-GB}).should eq "en-GB"
+ expect(parser.preferred_language_from(%w{en en-GB})).to eq "en-GB"
end
it "should find first compatible language" do
- parser.compatible_language_from(%w{en-hk}).should eq "en-hk"
- parser.compatible_language_from(%w{en}).should eq "en"
+ expect(parser.compatible_language_from(%w{en-hk})).to eq "en-hk"
+ expect(parser.compatible_language_from(%w{en})).to eq "en"
end
it "should find first compatible from user preferred" do
parser.header = 'en-us,de-de'
- parser.compatible_language_from(%w{de en}).should eq 'en'
+ expect(parser.compatible_language_from(%w{de en})).to eq 'en'
end
it "should accept symbols as available languages" do
parser.header = 'en-us'
- parser.compatible_language_from([:"en-HK"]).should eq :"en-HK"
+ expect(parser.compatible_language_from([:"en-HK"])).to eq :"en-HK"
end
it "should accept and ignore wildcards" do
parser.header = 'en-US,en,*'
- parser.compatible_language_from([:"en-US"]).should eq :"en-US"
+ expect(parser.compatible_language_from([:"en-US"])).to eq :"en-US"
end
it "should sanitize available language names" do
- parser.sanitize_available_locales(%w{en_UK-x3 en-US-x1 ja_JP-x2 pt-BR-x5
es-419-x4}).should eq ["en-UK", "en-US", "ja-JP", "pt-BR", "es-419"]
+ expect(parser.sanitize_available_locales(%w{en_UK-x3 en-US-x1 ja_JP-x2
pt-BR-x5 es-419-x4})).to eq ["en-UK", "en-US", "ja-JP", "pt-BR", "es-419"]
end
it "should accept available language names as symbols and return them as
strings" do
- parser.sanitize_available_locales([:en, :"en-US", :ca, :"ca-ES"]).should
eq ["en", "en-US", "ca", "ca-ES"]
+ expect(parser.sanitize_available_locales([:en, :"en-US", :ca,
:"ca-ES"])).to eq ["en", "en-US", "ca", "ca-ES"]
end
it "should find most compatible language from user preferred" do
parser.header = 'ja,en-gb,en-us,fr-fr'
- parser.language_region_compatible_from(%w{en-UK en-US ja-JP}).should eq
"ja-JP"
+ expect(parser.language_region_compatible_from(%w{en-UK en-US ja-JP})).to
eq "ja-JP"
end
end
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]