パッケージの詳細

ua-parser2

commenthol13.6k(MIT OR Apache-2.0)0.5.1

An improved user agent parser.

Parser, User-Agent, ua-parser

readme

ua-parser2

NPM version Build Status

This is an improved fork from ua-parser which contains the following changes documented in the Changelog.

The crux of the original parser --the data collected by Steve Souders over the years-- has been extracted into a separate YAML file so as to be reusable as is by implementations in other programming languages.

The main differences to ua-parser are:

  • Parsing Engines - Detection of MSIE compatibility modes
  • Grouping of regexes - Speeds up User-Agent detection by > 200%
  • Adding type attribute - tag a user-agent category with a specific type such as. 'bot', 'mail', 'feedreader', 'app', ...
  • Bundled tools for contribution.
  • Running your own regexes.yaml file
  • Backwards Compatibility using the "old" UAParser result object is broken.

Contributing Changes to regexes.yaml

Please read the contributors' guide

Specification

A Specification, e.g. for porting into other computer languages of the parsing rules for the regexes.yaml file is available.

Usage

API Documentation

var uaParser = require('ua-parser2')(/* [optional] path to your regexes.yaml file */);

var res,
    userAgent = "Mozilla/5.0 (Linux; Android 4.3.1; LG-E980 Build/JLS36I) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.59 Mobile Safari/537.36";

res = uaParser.parse(userAgent);

console.log(res);

There is a sample in ./js/test/sample.js which can be executed from the commandline.

node js/test/sample.js "Mozilla/5.0 (Linux; Android 4.3.1; LG-E980 Build/JLS36I) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.59 Mobile Safari/537.36"
#> {
  "ua": {
    "family": "Chrome Mobile",
    "major": "31",
    "minor": "0",
    "patch": "1650"
  },
  "engine": {
    "family": "Blink",
    "major": "31",
    "minor": "0",
    "patch": "1650"
  },
  "os": {
    "family": "Android",
    "major": "4",
    "minor": "3",
    "patch": "1",
    "patchMinor": null
  },
  "device": {
    "family": "LG-E980",
    "brand": "LG",
    "model": "E980",
    "type": "smartphone"
  },
  "string": "Mozilla/5.0 (Linux; Android 4.3.1; LG-E980 Build/JLS36I) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.59 Mobile Safari/537.36"
}

node js/test/sample.js "AdsBot-Google-Mobile ( http://www.google.com/mobile/adsbot.html) Mozilla (iPhone; U; CPU iPhone OS 3 0 like Mac OS X) AppleWebKit (KHTML, like Gecko)"
#> {
  "ua": {
    "family": "AdsBot-Google-Mobile",
    ...
    "type": "bot"
  },
  "engine": {
    "family": "Webkit",
    ...
    "type": "Apple"
  },
  "os": {
    "family": "Other",
    ...
  },
  "device": {
    "family": "iPhone",
    "brand": "Apple",
    "model": "iPhone",
    "type": "smartphone"    
  },
  "string": "AdsBot-Google-Mobile ( http://www.google.com/mobile/adsbot.html) Mozilla (iPhone; U; CPU iPhone OS 3 0 like Mac OS X) AppleWebKit (KHTML, like Gecko)"
}

Note if you're only interested in one of the ua, device or os objects, you will getter better performance by using the more specific methods (uaParser.parseUA, uaParser.parseOS and uaParser.parseDevice respectively), e.g.:

var p = require('ua-parser2')();

var userAgent = "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) CriOS/27.0.1453.10 Mobile/9B179 Safari/7534.48.3";

console.log(p.parseUA(userAgent).toString());
//> "Chrome Mobile iOS 27.0.1453"
console.log(p.parseEngine(userAgent).toString());
//> "AppleWebkit 534.46"
console.log(p.parseOS(userAgent).toString());
//> "iOS 5.1"
console.log(p.parseDevice(userAgent).toString());
//> "Apple iPhone"

Benchmarks

In folder benchmarks you'll find a benchmark test which compares useragent, node-uap with ua-parser2.

Results on my laptop:

  • node-uap@0.0.3
  • useragent@2.2.1
  • ua-parser2@0.3.2
Starting the benchmark, parsing 63 useragent strings per run

Executed benchmark against node module: "useragent"
Count (3), Cycles (2), Elapsed (5.782), Hz (40.84696387495286)

Executed benchmark against node module: "node-uap"
Count (3), Cycles (2), Elapsed (5.628), Hz (41.23226067803832)

Executed benchmark against node module: "ua-parser2"
Count (7), Cycles (4), Elapsed (5.568), Hz (108.4435776239968)

Module: "ua-parser2" is the user agent fastest parser.

Contribution and License Agreement

If you contribute code to this project, you are implicitly allowing your code to be distributed under the MIT license. For contribution to the regexes.yaml you are implicitly allowing your code to be distributed under the Apache License license You are also implicitly verifying that all code is your original work.

License

The data contained in regexes.yaml is Copyright 2014 commenthol, 2009 Google Inc. and available under the Apache License, Version 2.0.

The JS port is Copyright 2014 commenthol, 2010 Tobie Langel and is available under your choice of MIT or Apache Version 2.0 license.

更新履歴

Changelog

v0.5.0

  • 9d02b06 feat(ua): New app Adobe CreativeCloud
  • 2b70a2b feat(ua): New app DuckDuckGo
  • 33329f4 feat(ua): New bot Tableau
  • 193bf22 feat(device): New Oppo devices
  • 3631c71 feat(device): Itel devices
  • 09906ae feat(device): Nokia TA-1032 TA-1053
  • 8aacccf fix(device): generic android model parser
  • 1922bbb feat: ArcGIS/GIS products
  • 52244b9 fix: redos
  • 3f73107 chore: bump deps
  • e1c7fc6 (origin/next) feat: add AWS S3 clients
  • 987c6dc feat: storage clients ibm-cos, rusoto, S3, rclone
  • 8d10bb1 feat: axios, unirest, akka-http, got, aiohttp, libfetch headless browsers
  • b2fd8e5 feat: Outlook 2016 mail client
  • a44736a feat: Superhuman mail client
  • bfe1d64 device: generic android matcher
  • 951c0ff test: new ua Facebook OrangeBotswana
  • 6c66d80 ua,os,device: Apple watchOS
  • 64e1b47 ua: Ghost

v0.4.2

  • ua: Microsoft Office Word
  • ua: Skype
  • ua: Mint Browser
  • ua: Datanyze bot
  • test: Zendesk for iPhone
  • test: SpeedCurve WebPage Test
  • fix: dots in regexes
  • ua,os,device: ViaFree app and tvOS
  • test: Line browser
  • os: improve Windows 10 detection
  • os: Citrix Chrome App on Chrome OS
  • test: Facebook messenger
  • test: Facebook app
  • ua,os: SalesforceMobileSDK
  • test: add Pixel Snapchat useragents
  • ua: Whale browser
  • os: single digit android version
  • ua: Naver Yeti and Daum bots
  • update: debuginfo

v0.4.1

  • build: add node 10
  • fix: safe regexes

2018-08-11 v0.4.0

  • bump dependencies
  • ua: YahooMailProxy, insomnia bot, Mb2345Browser
  • os: KaiOS
  • device: Huawei NEM-L51, IRU M1003G, Lenovo S6000D, Sony PlayStation, Apple Watch, Apple HomePod

2017-12-02 v0.3.4

  • ua: bot: integrity
  • ua: Facebook Groups, Facebook Messenger, Facebook FBPageAdmin, NTENTBrowser, Roccat, WebPirate
  • ua: fix: BaiduBrowser, QQBrowser, Maxthon, SogouMobileBrowser, SEMC-Browser
  • ua: bot: Rival IQ
  • ua: app: bline, NAVER, Weibo, Mobicip, DaumApps
  • ua: fix Opera Mobile
  • ua: 115Browser, AirWatch Browser, AlohaBrowser, Baidu Explorer, BaiduHD, SurfBrowser, Classilla, CM Browser, DiigoBrowser, Light, Maxthon, MiuiBrowser, Navigator, QtWebkit, SamsungBrowser/CrossApp, Shrook, SogouMobileBrowser, Weibo, YoloBrowser
  • ua: fix HbbTV Browsers: ANTGalio, Samsung SmartTV, Skykid, SmartViera, Viera, ToshibaTP, DIGA WebKit, hdplusinteraktiv, LG SmartTV
  • os: fix SailFish hiding as Android
  • ua: AppleBot, AppleNewsBot, AppleNews
  • os: fix Blackberry, iOS, Mac_68k
  • device: fix Vertu, Jolla
  • device: adding tons of new devices
  • device: Axgio, LG, iNew, Verico, TurboPad
  • device: Alps
  • device: Texet
  • ua: BlueBrowser
  • device: Yota, Motorola
  • device: Highscreen, Zifro, ZTE
  • device: BQ
  • device: Blu
  • device: Ritmix
  • device: DNS
  • ua: NewRelicPinger bot
  • device: Gionee
  • ua: Box, BoxNotes, Box Sync app
  • ua: webdav clients
  • device: Google Pixel 2 XL
  • ua: Uptimebot, ZoomBot, CloudEndure Scanner bot
  • ua: StumbleUpon bot
  • ua: Pocomail
  • ua: TinyBrowser, MxNitro, WhiteHat Aviator, Diglo, Superbird
  • ua: SeznamEmailProxy
  • ua: Mail Free
  • ua: Eudora
  • ua: mobmail
  • ua: lwp-trivial, LinkWalker, David Client, Qwantify
  • fix ua: Tumblr is a bot
  • ua: Adsense-Snapshot-Google, Accoona-AI-Agent, WWW-Mechanize, AppleCoreMedia, Seznam.cz
  • ua: Detect apps
  • ua: Dorado WAP-Browser
  • os: fix Series40, Series60
  • ua: WEB.DE MailCheck
  • ua: stagefright
  • device: UC Browser Android
  • ua: Framabird
  • ua: Powermarks
  • ua: FossaMail
  • ua: Evolution
  • ua: InternetSeer.com, Photon, validator, Google-Site-Verification, MnoGoSearch, analyzer, FeedBlitz, FeedForAll, Alltop, Microsoft Office Mobile, Synapse, binlar, lbot, visionutils, WebThumb
  • ua: Taringa UGC, MuckRack, BlackHawk, Sunrise
  • ua: BlackHawk
  • os: iOS special cases
  • ua: new bots: NetLyzer FastProbe, MnoGoSearch, Moozilla
  • ua: new apps: MS FrontPage, OpenOffice
  • ua: PlayStation Browser, Qt, QuickLook, HTTrack, PycURL, Zend_Http_Client
  • ua: Acoo Browser ua: Cheshire
  • ua: Sparrow email client ua: zdesktop
  • ua: MiuiBrowser
  • better bot detection
  • Nintendo browsers
  • better bot detection

2017-09-18 v0.3.3

  • os: fix CFNetwork
  • ua: GomezAgent Bot added
  • ua: RuxitSynthetic bot
  • ua: KTXN bot
  • ua: KHTE bot
  • ua: fix PinterestBot
  • ua: Discordbot
  • os: Android 8
  • ua: Chedot
  • update benchmark with latest libs

2017-08-30 v0.3.2

  • ua: HeadlessChrome with Version, fix Chromium
  • ua: fix GSA, Flipboard, Listia, OPR, Beamrise
  • ua: 2345Explorer
  • device: Amazon refactor
  • device: Oysters
  • device: Irbis
  • device: Dialog
  • device: Oysters
  • device: Alcatel Pixi3
  • device: Asus P01T_1
  • device: Digma
  • device: Supra
  • device: 4Good tablets
  • ua: Firefox Focus
  • ua: fix shrinktheweb.com bot
  • device: Asus TouchPad, Asus DA241HL, Dell Venue
  • ua: Instagram device: Meizu M3s, Oppo A1601
  • ua: MultiZilla, K-Ninja, KMLite, Prism, Vonkeror Gecko based browsers
  • ua: RedFlagDealsApp app
  • ua: WhatsApp bot
  • ua: Callpod Keeper
  • ua: Odyssey Web Browser
  • ua: SecondLife
  • ua: TizenBrowser
  • ua: Google App (GSA)
  • device: Acer, Amazon, Kyocera

2017-07-07 v0.3.1

  • ua: 1stBrowser
  • ua: Kinza browser
  • ua: AOL browser
  • ua: AviraScout browser
  • ua: Cent browser
  • ua: Tenta browser
  • ua: SpeedCurve WebPage Test bot
  • ua: Coc Coc browser fix
  • ua: fix notifyninja.com, XaxisSemanticsClassifier bot detection
  • ua: shrinktheweb, HubSpot Marketing Grader, crystalsemantics, collection@infegy.com bots ua: Contiki browser ua: better detection of bots
  • ua: Salam Browser
  • ua: Whale
  • ua: Slimjet
  • ua: Kuaiso
  • ua: 7Star
  • ua: Juzibrowser; fix tests
  • ua: JuziBrowser
  • ua: OverwolfClient
  • ua: Qiyu
  • ua: Polarity
  • ua: TungstenBrowser
  • ua: SputnikBrowser
  • ua: Valve Steam clients
  • ua: Semrush bot
  • ua: Tumblr bot
  • ua: Sparrow browser
  • ua: Google Page Speed Insights bot
  • ua: Snapchat app
  • ua: feedreader Bloglovin, Feedbin, Mtps Feed Aggregation System, Stringer
  • ua: Coc Coc browser
  • ua: Seznam.cz
  • ua: Hipchat mail
  • ua, device: Qwantify bot
  • ua, device: Catchpoint bot
  • ua, device: Google Web Preview bot
  • device: Huawei EVA-AL10
  • ua: StatusCake bot
  • ua: Chrome Mobile Webview
  • ua, engine: fix Edge
  • ua, engine: HeadlessChome

2017-03-14 v0.3.0

  • adding preset: true flag for better Android device.type detection
  • ua: Google Pixel
  • ua: masscan bot
  • exchange jshint by eslint - whitespace changes
  • adding VERSION pattern
  • ua: fix Nutch crawler
  • ua: fix IEMobile which hides as Chrome

2017-03-11 v0.2.0

  • engine:
    • correct "Chrome" to "Blink" engine
    • move family type to "type", e.g. "Webkit::Apple" => family: "Webkit", type: "Apple"
    • add new matchers
  • device: New Oneplus, RCA

2017-02-03 v0.1.40

  • ua: New SohoNews app
  • device: New Google Pixel C
  • ua: fix Facebook app without version
  • ua: New PRTG Network Monitor bot
  • ua: New Waterfox
  • os: New iOS 10 CFNetwork
  • os: New Chromecast
  • ua: New Opera Neon
  • ua: New PingdomTMS bot
  • os: Fix os for chrome on mac os

2016-12-27 v0.1.39

  • ua, os: Detection of Outlook-iOS-Android
  • ua: Fix detection of 008 bot
  • os: Fix iOS detection
  • ua: Fix doubled Minimo
  • ua: Fix Fennec browser
  • ua: Fix baidubrowser
  • device: adding device types
  • device: Huawei Honor
  • device: fix generic_android containing Build twice
  • ua: update mediaplayer, feedreader
  • os: Linux, Red Hat
  • ua: headless browsers
  • ua: Pinterest app, bot

2016-12-02 v0.1.38

  • ua: distinguish Lightning from Thunderbird
  • ua: app Kurio, BacaBerita, Deezer
  • ua: MxBrowser is Maxthon
  • device: better detect iP devices
  • os: detect iPd UCWEB browser
  • os: better iOS detection

2016-11-12 v0.1.37

  • regexes:
    • Detect Postbox mail client
    • Detect Kodi, XMBC, spmc media players
    • adding changed ua scheme for Iron
    • adding Enseo room entertainment system
    • adding Kurio devices
    • adding GoogleImageProxy
    • fixing webOS
    • performance improvements
    • adding Slackbot
    • fix for iPad,iPod,iPhone family
    • adding device type bot to spiders
    • adding BingPreview as bot
    • fixing iPhone,iPad family
    • fixing iPad,iPhone
    • type headless for Phantom Browser
    • adding Slack and Office365/Outlook services
    • fix UC Browser detection

2016-09-28 v0.1.36

  • regexes:
    • user_agent_parsers
      • Detect Chrome Mobile based browsers, MobileIron, Crosswalks
      • Detect mail programs
      • Fix UC Browser
      • LG Browser
    • engine
      • Chrome::QtWebEngine
    • os_parsers
      • RemixOS
      • macOS Sierra, Mac OSX El Capitan
      • WebOS
    • device
      • correcting iPod touch
      • snom

2016-05-14 v0.1.35

  • regexes:
    • user_agent_parsers
      • Adding NerdyBot
      • iOS has two types of webviews UI/WKWebView which cannot be distinguished
      • Add TwitterBot
      • Detection of Apple Mail
      • CaptiveNetworkSupport https://discussions.apple.com/thread/3688992
      • Improve Version detection on Bots
      • PayPal Instant Payment Notification Bot
      • adbeat.com Bot
      • Comodo SSL Checker
      • Digg Feed Fetcher
      • Electron
      • SamsungBrowser
      • Dragon
      • ScoutJet Bot
      • DeuSu Bot
      • MailBar
      • 360 speed/ speed browser
    • engine_parsers
    • os_parsers
      • Raspbian
    • device_parsers
      • Nexus 5X, Nexus 6P
      • XiaoMi MI PAD, Mi 4i
      • Fix device detection for Nokia rv:11 Windows Phone

2016-02-03 v0.1.34

  • regexes:
    • Correcting/Extending Mail User-Agents, Thunderbird, Shredder, Spicebird, Outlook, Windows Live Mail

2016-02-03 v0.1.33

2016-01-11 v0.1.32

  • regexes:
    • fix YAMLException with duplicated mapping keys

2015-11-24 v0.1.31

  • regexes
    • user_agent_parsers
      • better detection of Opera Mini
      • better detection of Chrome Mobile
    • os_parsers
      • adding tvOS

2015-10-18 v0.1.30

  • regexes
    • device
      • More XiaoMi Devices

2015-10-12 v0.1.29

  • regexes
    • user_agent_parsers
      • fix wrong mobile safari version
      • Adding support for Otter and QupZilla
      • Adding Version to BB10
      • Adding support for Edge Mobile

2015-10-11 v0.1.28

  • regexes
    • user_agent_parsers
      • Adding support for qutebrowser
      • Better detection of Facebook
      • Mobile Safari UIWebView

2015-10-01 v0.1.27

  • regexes
    • device_parsers
      • Mac OS X-Devices
      • Fix generic Android devices
      • More Wiko, Sony, Brondi, Kyocera devices
    • user_agent_parsers
      • social networks: Pinterest, Facebook
    • os_parsers
      • Mac OS X Version

2015-09-21 v0.1.26

  • regexes
    • os_parsers
      • CFNetwork Mac OS X 10.11 El Capitan
      • CFNetwork iOS 9.0

2015-09-19 v0.1.25

  • regexes
    • user_agent_parsers
      • SiteCon Bot
      • Firefox Browser for Android Tablets
      • Spotify Desktop App

2015-09-13 v0.1.24

  • replacing yamlparser with js-yaml

2015-09-13 v0.1.23

  • regexes
    • user_agent_parsers
      • Firefox on iOS
    • os_parsers
      • Firefox OS Versions

2015-06-26 v0.1.22

  • benchmark comparison
  • reducing regexes with neg lookahead
  • regexes
    • user_agent_parsers
      • Edge detected as Edge instead of IE

2015-05-17 v0.1.21

  • regexes
    • device_parsers
      • Karbonn, EverCoss, Toshiba, Blu, Alcatel, Gionee, Sharp, Aoc, Asus, Hisense, Lenovo, LG, ZTE, Amazon devices
      • new brand ADVAN, TWM, Yezz, Symphony, Vonino, NYX, Bangho

2015-05-14 v0.1.20

  • regexes
    • os_parsers
      • Mac OS X 10.10 Yosemite
      • detect "Mac OS X/" with slash
      • iOS 8.1 - 8.3
      • Apple TV
    • device_parsers
      • Apple TV with Hardware Version

2015-05-08 v0.1.19

  • fix failing Mac OS X test

2015-05-01 v0.1.18

  • regexes
    • user_agent_parsers
      • MacAppStore
      • bot: websitepulse checker
    • os_parsers
      • "MacOS X" and "Mac OS X Mach-0"
      • iTunes User-Agents

2015-05-01 v0.1.17

2015-04-15 v0.1.16

  • regexes
    • os_parsers:
      • Windows 10
    • device_parsers:
      • Karbonn: A10, A12, A15 ... are not Micromax
      • QMobile: improved regex
      • Allview AX4Nano
      • HbbTV Thomson

2015-03-11 v0.1.15

  • regexes
    • user_agent_parsers
      • Firefox: Better version detection using rv:
      • fix Phoenix: Fly Phoenix 2
    • os_parsers
      • Android: Better version detection
      • X11, Macintosh: Detection
      • fix Android Donut to version 1.6
    • device_parsers
      • ionik: TU-1201A, TU-1489A, TU-7851A
      • Jaytech: TPC_PX753, TPC-PA10.1M
      • Denver: PO#xxxx
      • MyPhone: Better detection
      • Medion: 4001, 4004
      • Ramos: New brand
      • Runbo: New brand
      • xiaomi: New devices mipad
      • mysaga: New brand
      • Leagoo: New brand
      • fix SonyEricsson X\d{2,3} devices (move to Generic_Android)
      • fix SonyEricsson E\d{4} devices
      • Brondi: New brand
      • NGM: New brand
      • Odys: NERON
      • ZTE: OpenC
      • Xtouch: New brand
      • Xianghe: improved regex
      • Windows Phones: improved parsers
  • update to contributing

2015-02-14 v0.1.14

  • parser
    • fix problem with node v0.12
  • regexes
    • device_parsers
      • Huawei: Honor, H60-L*, OrangeLuno, OrangeYumo
      • Samsung: GT-Xperia S
      • Acer: A1-000FHD, A3-A00FHD, B1-000FHD, b1-000, E39, E320, E380, E400, S55, S56, S500, S510, S520, Z140, Z150, Z160, Z200, Z410, Z500
      • Alcatel: 4032X, 5038D, 5050X, 5050Y, 6016D, 6016X, 6036Y, 6037Y, 6043D, 6050Y, Vodafone_Smart_II, Orange Infinity 8008X, Orange Hiro, Orange Yomi, Telenor Smart, Telenor Smart, Telenor_One_Touch_S, move 2, BS471, I213, Mobile Sosh, MTC975, smart_a17
      • Asus: K007, K010, K011, K013, K014, K015, K016, K017, K018, K019, TX201LA
      • Avus: New brand
      • Blackview: New brand
      • bq: Aquaris
      • CAT: B15, B15Q
      • Coolpad: Improvement
      • Cubot: GT89, GT90, GT91, P6, P7, P9, P10, S108, S168, S200, S208, S222, S308, s350, T9, X6, X9
      • Doogee: New brand
      • Doro: New brand
      • Elephone: New brand
      • Enot: Fix regexes
      • Fairphone: New brand
      • Gionee: E7
      • GoClever: ARIES
      • Haier: HW-W718, HW-W910, W867
      • Hannspree: HSG1279, HSG1281, HSG1291, HSG1297
      • HTC: A320a, Z520m, HTL22, 801a, Nexus 9, PJ83100, ADR6410
      • InFocus: New brand
      • Jaytech: TPC-PA10.1M, TPC-PA1070, TPC-PA762, TPC-PA777, TPC-PA7815, TPC-PA9702, TPC-PX753, TPC-81203G
      • Kazam: New brand
      • Kiano: New brand
      • Landvo: New brand
      • Lenovo: YOGA pad
      • Mobiwire: New brand
      • Motorola: Refactor Xoom, RAZR HD, Nexus 6
      • Neken: New brand
      • Newman: New brand
      • Nook: BNTV250A
      • Oneplus: New Brand
      • Odys: ARIA, AVIATOR, CONNECT7PRO, CONNECT8PLUS, GATE, INTELLITAB7, JUNIORTAB, MIRON, Motion, PRO_Q8, SKYPLUS3G, UNO_X10, VISIO, XelioPT2Pro
      • Phicomm: i600, i813w
      • Prestigio: PSP, PMT
      • Trekstor: VT10416, Surftab, breeze, xiron
      • Smartbook: New brand
      • SonyEricsson: R800a
      • Sony: S39h
      • Switel: New brand
      • Thl: W200S, T100S
      • Umi: New brand
      • Wiko: BIRDY, GETAWAY, GOA, HIGHWAY SIGNS, IGGY, JIMMY, KITE, LENNY, RIDGE, RIDGE FAB, SLIDE, SUNSET
      • Xiaomi: HM devices
      • Xoro: New devices
      • Amazon: 4th Gen Devices

**2014-12-17

  • regexes
    • ua: Opera Coast and Opera Mini
    • ua: escaped ' in bot regex solved
  • parser
    • simplification with regex gen

2014-12-16

  • tests
    • Change to streamss for all test cases.
    • Tests now also run on Node v0.8.x

2014-11-13

  • regexes
    • Better detection of ThL, Cubot, HTC One M*
    • New: Gigaset
    • New: IE Tech-Preview on Windows10

2014-11-05

  • regexes
    • type bot::healthcheck introduced for Monitors/Loadbalancers

2014-10-30

  • regexes
    • Puffin Browser added
    • Amazon Silk hidden by Chrome
    • Better detection of bots

2014-10-08

  • regexes
    • Xenu and other Bots added
    • Fix: Version detection of Bots
    • Motorola now contains brand name in device replacement

2014-09-25

  • regexes
    • Zopo Devices
    • Asus Transformer, PadFone

2014-09-24

  • regexes
    • Oppo Find 7a added
    • ZTE OpenC
    • Fix for Archos/ Arnova Tablets

2014-09-11

  • regexes
    • Riddler bot, Sony Xperia Z3 added

2014-09-02

  • regexes
    • Sony Playstation, os + device
    • CFNetwork, os
    • Better detection of bots
    • Fix in ua bot detection - major version not recognized as hidden by "google(^tv)"

2014-08-14

  • regexes
    • Sony Android Rule updated for D6603
    • engine_parsers:
      • Webkit::Nokia renamed for webkit based NokiaBrowser
      • Webkit:LG and Webkit::Samsung for tv sets
    • device_parsers: type=tv added

2014-08-10

  • regexes
    • Windows OS refactored, Cygwin added
    • New OS's added: YunOS, AmigaOS, Tizen, Sailfish, Haiku, BeOS, Nintendo, OS/2, PalmOS, Various Linux Distros, RISC OS, Solaris, HopenOS, Gogi
    • UA: Better catch of Browsers using Chrome Engine, CocoonJS
    • Device: types for camera, car added
    • Device: Nokia, Palm, Blackberry refactored
    • Device: garmin-asus Nuvifone added
    • Device: Nook, CnM, Versus, Danew, Lenovo, Acer, Micromax, Alcatel, Amoi, Avvio, Bmobile improved

2014-08-09

  • parser
    • Replacements use either $10 or ${1}0
    • Specification update -> Version 1.1 Final
    • Travis Build added
    • Quick tests (quick-tests.json) for npm package added. The big test file gets excluded.
    • parserdevice.js simplified in parser.js