device_detector 1.0.0 → 1.0.5

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.
Files changed (96) hide show
  1. checksums.yaml +5 -5
  2. data/.rubocop.yml +49 -0
  3. data/.ruby-version +1 -0
  4. data/.travis.yml +5 -9
  5. data/CHANGELOG.md +18 -5
  6. data/README.md +7 -9
  7. data/Rakefile +20 -13
  8. data/device_detector.gemspec +1 -0
  9. data/lib/device_detector.rb +32 -28
  10. data/lib/device_detector/bot.rb +2 -2
  11. data/lib/device_detector/client.rb +3 -2
  12. data/lib/device_detector/device.rb +46 -20
  13. data/lib/device_detector/memory_cache.rb +26 -19
  14. data/lib/device_detector/metadata_extractor.rb +7 -8
  15. data/lib/device_detector/model_extractor.rb +3 -3
  16. data/lib/device_detector/name_extractor.rb +2 -2
  17. data/lib/device_detector/os.rb +121 -111
  18. data/lib/device_detector/parser.rb +22 -9
  19. data/lib/device_detector/version.rb +3 -1
  20. data/lib/device_detector/version_extractor.rb +2 -3
  21. data/regexes/bots.yml +895 -21
  22. data/regexes/client/browser_engine.yml +11 -2
  23. data/regexes/client/browsers.yml +1025 -205
  24. data/regexes/client/feed_readers.yml +38 -2
  25. data/regexes/client/libraries.yml +81 -2
  26. data/regexes/client/mediaplayers.yml +25 -5
  27. data/regexes/client/mobile_apps.yml +213 -2
  28. data/regexes/client/pim.yml +10 -1
  29. data/regexes/device/cameras.yml +1 -1
  30. data/regexes/device/car_browsers.yml +7 -3
  31. data/regexes/device/consoles.yml +3 -3
  32. data/regexes/device/mobiles.yml +12768 -571
  33. data/regexes/device/notebooks.yml +114 -0
  34. data/regexes/device/portable_media_player.yml +4 -6
  35. data/regexes/device/televisions.yml +33 -5
  36. data/regexes/oss.yml +138 -49
  37. data/regexes/vendorfragments.yml +6 -2
  38. data/spec/device_detector/concrete_user_agent_spec.rb +16 -17
  39. data/spec/device_detector/detector_fixtures_spec.rb +59 -24
  40. data/spec/device_detector/device_spec.rb +28 -48
  41. data/spec/device_detector/memory_cache_spec.rb +60 -28
  42. data/spec/device_detector/model_extractor_spec.rb +3 -3
  43. data/spec/device_detector/version_extractor_spec.rb +5 -6
  44. data/spec/device_detector_spec.rb +60 -69
  45. data/spec/fixtures/client/browser.yml +1810 -260
  46. data/spec/fixtures/client/feed_reader.yml +47 -35
  47. data/spec/fixtures/client/library.yml +118 -3
  48. data/spec/fixtures/client/mediaplayer.yml +32 -37
  49. data/spec/fixtures/client/mobile_app.yml +225 -5
  50. data/spec/fixtures/client/pim.yml +37 -18
  51. data/spec/fixtures/detector/bots.yml +1531 -136
  52. data/spec/fixtures/detector/camera.yml +36 -10
  53. data/spec/fixtures/detector/car_browser.yml +64 -3
  54. data/spec/fixtures/detector/console.yml +80 -26
  55. data/spec/fixtures/detector/desktop.yml +3865 -2238
  56. data/spec/fixtures/detector/feature_phone.yml +151 -42
  57. data/spec/fixtures/detector/feed_reader.yml +186 -121
  58. data/spec/fixtures/detector/mediaplayer.yml +113 -39
  59. data/spec/fixtures/detector/mobile_apps.yml +451 -21
  60. data/spec/fixtures/detector/phablet.yml +3847 -660
  61. data/spec/fixtures/detector/portable_media_player.yml +81 -16
  62. data/spec/fixtures/detector/smart_display.yml +8 -5
  63. data/spec/fixtures/detector/smart_speaker.yml +55 -0
  64. data/spec/fixtures/detector/smartphone-1.yml +5385 -4948
  65. data/spec/fixtures/detector/smartphone-10.yml +9973 -0
  66. data/spec/fixtures/detector/smartphone-11.yml +10015 -0
  67. data/spec/fixtures/detector/smartphone-12.yml +9897 -0
  68. data/spec/fixtures/detector/smartphone-13.yml +9912 -0
  69. data/spec/fixtures/detector/smartphone-14.yml +9935 -0
  70. data/spec/fixtures/detector/smartphone-15.yml +6595 -0
  71. data/spec/fixtures/detector/smartphone-16.yml +10021 -0
  72. data/spec/fixtures/detector/smartphone-17.yml +9408 -0
  73. data/spec/fixtures/detector/smartphone-2.yml +5221 -4646
  74. data/spec/fixtures/detector/smartphone-3.yml +5047 -4494
  75. data/spec/fixtures/detector/smartphone-4.yml +6958 -2761
  76. data/spec/fixtures/detector/smartphone-5.yml +9937 -0
  77. data/spec/fixtures/detector/smartphone-6.yml +10114 -0
  78. data/spec/fixtures/detector/smartphone-7.yml +9975 -0
  79. data/spec/fixtures/detector/smartphone-8.yml +9897 -0
  80. data/spec/fixtures/detector/smartphone-9.yml +9880 -0
  81. data/spec/fixtures/detector/smartphone.yml +5229 -4649
  82. data/spec/fixtures/detector/tablet-1.yml +4640 -4140
  83. data/spec/fixtures/detector/tablet-2.yml +9806 -71
  84. data/spec/fixtures/detector/tablet-3.yml +9968 -0
  85. data/spec/fixtures/detector/tablet-4.yml +7113 -0
  86. data/spec/fixtures/detector/tablet.yml +4619 -4132
  87. data/spec/fixtures/detector/tv.yml +4093 -1342
  88. data/spec/fixtures/detector/unknown.yml +1042 -1006
  89. data/spec/fixtures/detector/wearable.yml +61 -0
  90. data/spec/fixtures/device/camera.yml +4 -3
  91. data/spec/fixtures/device/car_browser.yml +9 -2
  92. data/spec/fixtures/device/console.yml +15 -14
  93. data/spec/fixtures/device/notebook.yml +7 -0
  94. data/spec/fixtures/parser/oss.yml +291 -2
  95. data/spec/fixtures/parser/vendorfragments.yml +8 -2
  96. metadata +59 -7
@@ -26,10 +26,10 @@
26
26
  useragent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; CMNTDF; InfoPath.2; .NET4.0C; .NET4.0E)
27
27
  vendor: CQ
28
28
  -
29
- user_agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; CMDTDFJS; Tablet PC 2.0)
29
+ useragent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; CMDTDFJS; Tablet PC 2.0)
30
30
  vendor: CQ
31
31
  -
32
- user_agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; CMDTDF; InfoPath.3)
32
+ useragent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; CMDTDF; InfoPath.3)
33
33
  vendor: CQ
34
34
  -
35
35
  useragent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MDDC; .NET4.0C; .NET4.0E)
@@ -160,3 +160,9 @@
160
160
  -
161
161
  useragent: Mozilla/5.0 (Windows NT 6.3; Win64; x64; Trident/7.0; Touch; TAJB; rv:11.0) like Gecko
162
162
  vendor: TS
163
+ -
164
+ useragent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Firefox/45.0 Ordissimo/3.8.6.6+svn37147
165
+ vendor: OS
166
+ -
167
+ useragent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Firefox/45.0 webissimo3/3.7.30+svn32090
168
+ vendor: OS
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: device_detector
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mati Sójka
8
8
  - Ben Zimmer
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-10-10 00:00:00.000000000 Z
12
+ date: 2020-10-13 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
@@ -53,6 +53,20 @@ dependencies:
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0.10'
56
+ - !ruby/object:Gem::Dependency
57
+ name: rubocop
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - '='
61
+ - !ruby/object:Gem::Version
62
+ version: 0.85.1
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - '='
68
+ - !ruby/object:Gem::Version
69
+ version: 0.85.1
56
70
  description: Precise and fast user agent parser and device detector, backed by the
57
71
  largest and most up-to-date agent and device database
58
72
  email:
@@ -62,6 +76,8 @@ extensions: []
62
76
  extra_rdoc_files: []
63
77
  files:
64
78
  - ".gitignore"
79
+ - ".rubocop.yml"
80
+ - ".ruby-version"
65
81
  - ".travis.yml"
66
82
  - CHANGELOG.md
67
83
  - Gemfile
@@ -93,6 +109,7 @@ files:
93
109
  - regexes/device/car_browsers.yml
94
110
  - regexes/device/consoles.yml
95
111
  - regexes/device/mobiles.yml
112
+ - regexes/device/notebooks.yml
96
113
  - regexes/device/portable_media_player.yml
97
114
  - regexes/device/televisions.yml
98
115
  - regexes/oss.yml
@@ -126,19 +143,37 @@ files:
126
143
  - spec/fixtures/detector/phablet.yml
127
144
  - spec/fixtures/detector/portable_media_player.yml
128
145
  - spec/fixtures/detector/smart_display.yml
146
+ - spec/fixtures/detector/smart_speaker.yml
129
147
  - spec/fixtures/detector/smartphone-1.yml
148
+ - spec/fixtures/detector/smartphone-10.yml
149
+ - spec/fixtures/detector/smartphone-11.yml
150
+ - spec/fixtures/detector/smartphone-12.yml
151
+ - spec/fixtures/detector/smartphone-13.yml
152
+ - spec/fixtures/detector/smartphone-14.yml
153
+ - spec/fixtures/detector/smartphone-15.yml
154
+ - spec/fixtures/detector/smartphone-16.yml
155
+ - spec/fixtures/detector/smartphone-17.yml
130
156
  - spec/fixtures/detector/smartphone-2.yml
131
157
  - spec/fixtures/detector/smartphone-3.yml
132
158
  - spec/fixtures/detector/smartphone-4.yml
159
+ - spec/fixtures/detector/smartphone-5.yml
160
+ - spec/fixtures/detector/smartphone-6.yml
161
+ - spec/fixtures/detector/smartphone-7.yml
162
+ - spec/fixtures/detector/smartphone-8.yml
163
+ - spec/fixtures/detector/smartphone-9.yml
133
164
  - spec/fixtures/detector/smartphone.yml
134
165
  - spec/fixtures/detector/tablet-1.yml
135
166
  - spec/fixtures/detector/tablet-2.yml
167
+ - spec/fixtures/detector/tablet-3.yml
168
+ - spec/fixtures/detector/tablet-4.yml
136
169
  - spec/fixtures/detector/tablet.yml
137
170
  - spec/fixtures/detector/tv.yml
138
171
  - spec/fixtures/detector/unknown.yml
172
+ - spec/fixtures/detector/wearable.yml
139
173
  - spec/fixtures/device/camera.yml
140
174
  - spec/fixtures/device/car_browser.yml
141
175
  - spec/fixtures/device/console.yml
176
+ - spec/fixtures/device/notebook.yml
142
177
  - spec/fixtures/parser/oss.yml
143
178
  - spec/fixtures/parser/vendorfragments.yml
144
179
  - spec/spec_helper.rb
@@ -146,7 +181,7 @@ homepage: http://podigee.github.io/device_detector
146
181
  licenses:
147
182
  - LGPL-3.0
148
183
  metadata: {}
149
- post_install_message:
184
+ post_install_message:
150
185
  rdoc_options: []
151
186
  require_paths:
152
187
  - lib
@@ -161,9 +196,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
161
196
  - !ruby/object:Gem::Version
162
197
  version: '0'
163
198
  requirements: []
164
- rubyforge_project:
165
- rubygems_version: 2.5.1
166
- signing_key:
199
+ rubygems_version: 3.0.3
200
+ signing_key:
167
201
  specification_version: 4
168
202
  summary: Precise and fast user agent parser and device detector
169
203
  test_files:
@@ -196,19 +230,37 @@ test_files:
196
230
  - spec/fixtures/detector/phablet.yml
197
231
  - spec/fixtures/detector/portable_media_player.yml
198
232
  - spec/fixtures/detector/smart_display.yml
233
+ - spec/fixtures/detector/smart_speaker.yml
199
234
  - spec/fixtures/detector/smartphone-1.yml
235
+ - spec/fixtures/detector/smartphone-10.yml
236
+ - spec/fixtures/detector/smartphone-11.yml
237
+ - spec/fixtures/detector/smartphone-12.yml
238
+ - spec/fixtures/detector/smartphone-13.yml
239
+ - spec/fixtures/detector/smartphone-14.yml
240
+ - spec/fixtures/detector/smartphone-15.yml
241
+ - spec/fixtures/detector/smartphone-16.yml
242
+ - spec/fixtures/detector/smartphone-17.yml
200
243
  - spec/fixtures/detector/smartphone-2.yml
201
244
  - spec/fixtures/detector/smartphone-3.yml
202
245
  - spec/fixtures/detector/smartphone-4.yml
246
+ - spec/fixtures/detector/smartphone-5.yml
247
+ - spec/fixtures/detector/smartphone-6.yml
248
+ - spec/fixtures/detector/smartphone-7.yml
249
+ - spec/fixtures/detector/smartphone-8.yml
250
+ - spec/fixtures/detector/smartphone-9.yml
203
251
  - spec/fixtures/detector/smartphone.yml
204
252
  - spec/fixtures/detector/tablet-1.yml
205
253
  - spec/fixtures/detector/tablet-2.yml
254
+ - spec/fixtures/detector/tablet-3.yml
255
+ - spec/fixtures/detector/tablet-4.yml
206
256
  - spec/fixtures/detector/tablet.yml
207
257
  - spec/fixtures/detector/tv.yml
208
258
  - spec/fixtures/detector/unknown.yml
259
+ - spec/fixtures/detector/wearable.yml
209
260
  - spec/fixtures/device/camera.yml
210
261
  - spec/fixtures/device/car_browser.yml
211
262
  - spec/fixtures/device/console.yml
263
+ - spec/fixtures/device/notebook.yml
212
264
  - spec/fixtures/parser/oss.yml
213
265
  - spec/fixtures/parser/vendorfragments.yml
214
266
  - spec/spec_helper.rb