browserino 4.4.1 → 4.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 597faec37eace3e9c77500ad9cd772de79ec7c86f0b953c2605fc80f6a97e06e
4
- data.tar.gz: f0f2d1a2e854e12a8655376ef8dba356ed9bc0c79dfbcbe03c0ef48f760e6113
3
+ metadata.gz: cc0856af1072ba238a8318681fab1c07a9c1da2599baeddbd2b252c452f995ee
4
+ data.tar.gz: 689ef9af5c0614978aa13806182ae001eafba553014791a686b73300c63d4f8e
5
5
  SHA512:
6
- metadata.gz: f23d48cf2221a2325d4007577e9cf62d19450a52504b2dc0d919443c8c480cd66b3c3a427401c0bb774ba6acd40cef42c5330e0d8689fc791e3bff76a8579b9d
7
- data.tar.gz: 91e05182b4f451fc2ddcdf92e2e3bffa9f1c2ba6f67eec96eeb06d438eb4d5fd638bad924ea3559400bf6fa0a3a907fffb7d4c4f13ead73239756c0d4e5b5ef6
6
+ metadata.gz: ac0736339fafce9307bb432190af172527caee98c571446eb003f7ef7ee0e332302ff7e0c859ed9fb2d210922072f9433da6b7fed47f69a0c2cac292bfff5db6
7
+ data.tar.gz: a222926a210080bf02782bd3dff31975390844434c59d0baf8b8eb53d6c16c2807a9c73cf2e035eb0531179528765136d1d85cc291530fdd3741cfe6cfac9e78
data/.travis.yml CHANGED
@@ -2,12 +2,10 @@ sudo: false
2
2
  language: ruby
3
3
  cache: bundler
4
4
  rvm:
5
- - 2.0.0
6
- - 2.1.0
7
5
  - 2.2.0
8
6
  - 2.3.0
9
7
  - 2.4.0
10
8
  - 2.5.0
11
- before_install: gem update bundler
9
+ - ruby-head
12
10
  script:
13
11
  - bundle exec rspec spec
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  # Changelog
2
2
  _dates are in dd-mm-yyyy format_
3
3
 
4
+ ### 23-06-2018 VERSION 4.3.0
5
+
6
+ - Add macOS `mojave` label
7
+ - Add generic `android_*` labels for android versions `p` through `z`.
8
+
4
9
  ### 24-12-2017 VERSION 4.2.3
5
10
 
6
11
  - Loosened some Android label version ranges
data/README.md CHANGED
@@ -23,15 +23,15 @@ about their browser / OS versions.
23
23
  <li><a href="#table-of-contents">Table of Contents</a></li>
24
24
  <li><a href="#sources">Sources</a></li>
25
25
  <li><a href="#changelog">Changelog</a><ul>
26
+ <li><a href="#10-07-2019-version-450">10-07-2019 VERSION 4.5.0</a></li>
26
27
  <li><a href="#21-10-2018-version-441">21-10-2018 VERSION 4.4.1</a></li>
27
28
  <li><a href="#23-06-2018-version-440">23-06-2018 VERSION 4.4.0</a></li>
28
- <li><a href="#23-06-2018-version-430">23-06-2018 VERSION 4.3.0</a></li>
29
29
  </ul></li>
30
30
  <li><a href="#installation">Installation</a></li>
31
31
  <li><a href="#rails--320">Rails (>= 3.2.0)</a><ul>
32
32
  <li><a href="#initializer">Initializer</a></li>
33
- </ul></li>
34
- <li><a href="#usage">Usage</a><ul>
33
+ </ul></details></li>
34
+ <li><a href="#usage">Usage</a><details><summary>show 5 items</summary><ul>
35
35
  <li><a href="#client">Client</a></li>
36
36
  <li><a href="#formatting">Formatting</a><ul>
37
37
  <li><a href="#non-version-like-properties">Non version-like properties</a></li>
@@ -42,8 +42,8 @@ about their browser / OS versions.
42
42
  <li><a href="#aliasses">Aliasses</a></li>
43
43
  <li><a href="#labels">Labels</a></li>
44
44
  <li><a href="#http-headers">HTTP headers</a></li>
45
- </ul></li>
46
- <li><a href="#methods">Methods</a><ul>
45
+ </ul></details></li>
46
+ <li><a href="#methods">Methods</a><details><summary>show 31 items</summary><ul>
47
47
  <li><a href="#name">name</a></li>
48
48
  <li><a href="#namesym-opts--">name?(sym, opts = {})</a></li>
49
49
  <li><a href="#version">version</a></li>
@@ -79,8 +79,8 @@ about their browser / OS versions.
79
79
  <li><a href="#magic-methods">Magic methods</a><ul>
80
80
  <li><a href="#names">Names</a></li>
81
81
  <li><a href="#aliasses-1">Aliasses</a></li>
82
- </ul></li></ul></li>
83
- <li><a href="#supported">Supported</a><ul>
82
+ </ul></li></ul></details></li>
83
+ <li><a href="#supported">Supported</a><details><summary>show 8 items</summary><ul>
84
84
  <li><a href="#browsers">Browsers</a></li>
85
85
  <li><a href="#bots">Bots</a></li>
86
86
  <li><a href="#validators">Validators</a></li>
@@ -93,7 +93,7 @@ about their browser / OS versions.
93
93
  <li><a href="#macintosh">Macintosh</a></li>
94
94
  </ul></li>
95
95
  <li><a href="#devices">Devices</a></li>
96
- </ul></li></ul></li>
96
+ </ul></li></ul></li>
97
97
  </ul>
98
98
  </details>
99
99
 
@@ -116,6 +116,14 @@ Many thanks to the creators and maintainers of the following sources of user age
116
116
  _dates are in dd-mm-yyyy format_
117
117
  older changes can be found in the [changelog](/projects/browserino/changelog/)
118
118
 
119
+ ### 10-07-2019 VERSION 4.5.0
120
+
121
+ - Add: browser user-agents
122
+ - `:basilisk`
123
+ - `:facebook_app`
124
+ - Add: `:goanna` rendering engine detection
125
+ - Add: `:catalina` label for MacOS 10.15.x
126
+
119
127
  ### 21-10-2018 VERSION 4.4.1
120
128
 
121
129
  - Fix: `Browserino.parse` handles `nil` and `false` by converting them to an empty string
@@ -157,11 +165,6 @@ older changes can be found in the [changelog](/projects/browserino/changelog/)
157
165
  - Add: `:jig_browser_web`
158
166
  - Add: `:blazer`
159
167
 
160
- ### 23-06-2018 VERSION 4.3.0
161
-
162
- - Add macOS `mojave` label
163
- - Add generic `android_*` labels for android versions `p` through `z`.
164
-
165
168
  ## Installation
166
169
 
167
170
  Add this line to your application's Gemfile:
@@ -28,6 +28,7 @@ Browserino.config.define do
28
28
  subs << [%r{awesomium}i, ''] if ua =~ %r{flashfire}i
29
29
  subs << [%r{firefox}i, ''] if ua =~ %r{ips-agent}i
30
30
  subs << [%r{newsgator}i, ''] if ua =~ %r{newswire}i
31
+ subs << [%r{gecko|rv:}i, ''] if ua =~ %r{goanna}i
31
32
 
32
33
  subs.reduce(ua) { |acc, elem| acc.gsub(*elem) }
33
34
  end
@@ -27,6 +27,7 @@ Browserino.config.define do
27
27
  label :oreo, for: :android, range: '8'..'8.9.9'
28
28
  label :pie, for: :android, range: '9'..'9.9.9'
29
29
 
30
+ # NOTE: these can not be removed due to backwards compatibility.
30
31
  # support android up to the letter Z by following their version scheme which
31
32
  # uses versions X.0.0 up to X.9.9. the callable methods will be named like
32
33
  # android_[LETTER] where letter can be anything between 'p' and 'z' inclusive
@@ -51,6 +52,7 @@ Browserino.config.define do
51
52
  label :sierra, for: :macintosh, range: '10.12'..'10.12.9'
52
53
  label :high_sierra, for: :macintosh, range: '10.13'..'10.13.9'
53
54
  label :mojave, for: :macintosh, range: '10.14'..'10.14.9'
55
+ label :catalina, for: :macintosh, range: '10.15'..'10.15.9'
54
56
 
55
57
  label :dos, for: :windows, range: '3.1'..'4.0'
56
58
  label :windows98, for: :windows, range: '98'..'98.9.9'
@@ -89,38 +89,41 @@ Browserino.config.browsers do
89
89
  match %r{spray\-can}i, name: :spray_can
90
90
  match %r{bunjalloo}i, name: :bunjalloo
91
91
 
92
- match %r{sraf}i, name: :seraphic_sraf,
93
- version: %r{sraf/([\d\.]+)}i
92
+ match %r{sraf}i, name: :seraphic_sraf,
93
+ version: %r{sraf/([\d\.]+)}i
94
94
 
95
- match %r{phantomjs}i, name: :phantomjs,
96
- engine: %r{(webkit|gecko|servo|trident|blink)}i
95
+ match %r{phantomjs}i, name: :phantomjs,
96
+ engine: %r{(webkit|gecko|servo|trident|blink)}i
97
97
 
98
- match %r{slimerjs}i, name: :slimerjs,
99
- engine: %r{(webkit|gecko|servo|trident|blink)}i,
100
- engine_version: %r{(?:webkit|gecko|servo|
101
- trident|blink|rv)
102
- [:/]([\d\.]+)}xi
98
+ match %r{slimerjs}i, name: :slimerjs,
99
+ engine: %r{(webkit|gecko|servo|trident|blink)}i,
100
+ engine_version: %r{(?:webkit|gecko|servo|
101
+ trident|blink|rv)
102
+ [:/]([\d\.]+)}xi
103
103
 
104
- match %r{liebao}i, name: :liebao, engine: :webkit,
105
- version: %r{liebao(?:fast)/([\d\.]+)}i
104
+ match %r{liebao}i, name: :liebao, engine: :webkit,
105
+ version: %r{liebao(?:fast)/([\d\.]+)}i
106
106
 
107
- match %r{qupzilla|falkon}i, name: :qupzilla, engine: :webkit,
108
- version: %r{(?:qupzilla|falkon)/([\d\.]+)}i
107
+ match %r{qupzilla|falkon}i, name: :qupzilla, engine: :webkit,
108
+ version: %r{(?:qupzilla|falkon)/([\d\.]+)}i
109
109
 
110
- match %r{inet\sbrowser}i, name: :inet_browser,
111
- platform: :star_blade_os
110
+ match %r{inet\sbrowser}i, name: :inet_browser,
111
+ platform: :star_blade_os
112
112
 
113
- match %r{webpro}i, name: :webpro,
114
- locale: %r{\[(\w{2}(?:\-\w{2})?)\]}i
113
+ match %r{webpro}i, name: :webpro,
114
+ locale: %r{\[(\w{2}(?:\-\w{2})?)\]}i
115
115
 
116
- match %r{sundance}i, name: :sundance,
117
- version: %r{(?:version/|sundance/)([\d\.]+)}i
116
+ match %r{sundance}i, name: :sundance,
117
+ version: %r{(?:version/|sundance/)([\d\.]+)}i
118
118
 
119
- match %r{ibm\swebexplorer}i, name: :ibm_webexplorer, platform: :os2,
120
- version: %r{bexplorer\s?/v?([\d\.]+)}i
119
+ match %r{ibm\swebexplorer}i, name: :ibm_webexplorer, platform: :os2,
120
+ version: %r{bexplorer\s?/v?([\d\.]+)}i
121
121
 
122
- match %r{navscape}i, name: :navscape, engine: :webkit,
123
- version: %r{navscape/(?:\w+-)?([\d\.]+)}i
122
+ match %r{navscape}i, name: :navscape, engine: :webkit,
123
+ version: %r{navscape/(?:\w+-)?([\d\.]+)}i
124
+
125
+ match %r{FBAN/FB(?:IOS|W);}i, name: :facebook_app, version: %r{FBAV\/([\d\.]+)}i,
126
+ engine: :webkit
124
127
 
125
128
  match %r{firefox|phoenix}i do
126
129
  name :firefox
@@ -337,7 +340,6 @@ Browserino.config.browsers do
337
340
  match %r{icedragon}i, name: :icedragon
338
341
  match %r{cunaguaro}i, name: :cunaguaro
339
342
  match %r{swiftfox}i, name: :swiftfox
340
- match %r{palemoon}i, name: :palemoon
341
343
  match %r{cyberfox}i, name: :cyberfox
342
344
  match %r{namoroka}i, name: :namoroka
343
345
  match %r{songbird}i, name: :songbird
@@ -372,6 +374,18 @@ Browserino.config.browsers do
372
374
  match %r{epic}i, name: :epic
373
375
  match %r{pogo}i, name: :pogo
374
376
  match %r{orca}i, name: :orca
377
+
378
+ match %r{palemoon}i do
379
+ name :palemoon
380
+ engine %r{(gecko|servo|goanna)}i
381
+ engine_version %r{(?:rv:\s?|servo/|goanna/)([\d\.]+)}i
382
+ end
383
+
384
+ match %r{basilisk}i do
385
+ name :basilisk
386
+ engine %r{(gecko|servo|goanna)}i
387
+ engine_version %r{(?:rv:\s?|servo/|goanna/)([\d\.]+)}i
388
+ end
375
389
  end
376
390
 
377
391
  # never thought a browser would want to be like IE...
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Browserino
4
- def self.version(current = '4.4.1')
4
+ def self.version(current = '4.5.0')
5
5
  @version ||= Version.new current
6
6
  end
7
7
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: browserino
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.1
4
+ version: 4.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sidney Liebrand
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-22 00:00:00.000000000 Z
11
+ date: 2019-07-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -173,8 +173,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
173
173
  - !ruby/object:Gem::Version
174
174
  version: '0'
175
175
  requirements: []
176
- rubyforge_project:
177
- rubygems_version: 2.7.6
176
+ rubygems_version: 3.0.3
178
177
  signing_key:
179
178
  specification_version: 4
180
179
  summary: A browser identification gem with command line and Rails (>= 3.2.0) integration