dates are in dd-mm-yyyy format
- Added
solaris?
method
- Fixed
to_a
method - Fixed
to_s
method - Removed bot suffixes from every bot name
- Replaced
googlebot?
withgoogle?
- Replaced
msnbot?
withmsn?
- Replaced
bingbot?
withbing?
- Replaced
yandexbot?
withyandex?
- Replaced
exabot?
withexa?
- Replaced
- Added
platform?
method - Added
browser?
method - Added
social_media?
method - Added
facebook?
andfb?
methods - Added
twitter?
method - Added
linkedin?
method - Added
instagram?
method - Added
pinterest?
method - Added
tumblr?
method - Added support for the Brave browser and the
brave?
method - Added
ff?
method
- formatted / refactored code with rubocop
- iOS
system_name full: true
returns the version no. of iOS if found
- Minor refactoring of code
- DEPRECATE Custom return values (passed through
Browserino.parse
) will no longer alter the output of the agent object - Added support for windows phone detection
- Added
windows_phone?
method
- Patched blackberry mapping, this used to be done by model number instead but is now corrected
- Added support for the Vivaldi browser
- New method
#vivaldi?
- Added support for the bsd family of operating systems
- New method
#bsd?
- Fixed using symbols for system version identification (e.g.
:vista
or:el_capitan
) without a version number
- Caching the agent object in Rails
- DEPRECATE Using a custom return value for when a property isn't found
- Added rails integration
- Added
#compat?
method to test if IE is in compatibility mode - Extended
#browser_version
to now also take an argument - Added
#locale
method - Empty UA's are identified as bots through
#bot?
- Added more bots
#bot?
method can now take a bot name as argument to check for an exact bot
- Small restructuring of test suite
- Added bot detection
- Added
#bot?
method - Added dynamic method support for bots
- Added support for the seamonkey browser
- IMPORTANT Changed behaviour of all dynamic methods to include version as an argument rather than in the method name.
- IMPORTANT Changed the behaviour of version checking to be more strict
- Changed tests to reflect new behaviour
- Added convenience methods
#win?
,#osx?
and#bb?
- Added more tests
- Added more browsers to check: (bolt, opera mini and ucbrowser)
- Added
#known?
method to check if the agent is known - Added a
#ua
method to return the User Agent string as given toBrowserino.parse()
- Added
#x64?
and#x32?
convenience methods to check system architecture - Added
#mobile?
to check wether or not a user agent is mobile - Moved older changelogs to its own CHANGELOG.md file
- Changed
#to_s
to add dashes (-
) between browser names if they have a space #to_s
now has an optional (sep = ''
) parameter that allows info and version numbers to be seperated
- Added blackberry support
- Added tests for blackberry user agent strings
- Added user agents
- Patterns could falsely identify a 64bit system, made the pattern more strict
- using
X11
in a user agent as a synonym to a#linux?
system
- Removed print statements from method
- Builds are now executed for Ruby 1.9.3 as well as 2.2.1
- Fixed
respond_to?
method which would first return inverted results (e.g. false when it should be true)
- Implemented to_s to return a concatenated string of property values
- Implemented to_a to return an array with arrays containing property name-value pairs
- Implemented to_h to return a hash containing property name-value pairs
- Removed unused code
- Added not method to invert questions about browser / system
- Added random test cases to verify that all inverted answers are correct
- Added Edge detection
- For supported browsers, it is now possible to check name and version through
method_missing?
- Opera tests didn't run before
- For supported systems, it is possible to check OS and version through
method_missing?
- User definable 'unknown' return value