browserino 4.4.1 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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