Caution: This project is a fork of the User Agent String Parser, which is currently found on GitHub at https://github.com/ua-parser. The Java implementation is located at https://github.com/ua-parser/uap-java.
Why is there a fork?
Unfortunately, the upstream project does not appear to publish artifacts to Maven Central, and releases are quite infrequent. This fact necessitated the creation of a fork, as we needed the ability to publish an artifact within our Sonatype Nexus repository. In addition, the upstream version contains a security vulnerability that is mitigated within our fork.
What is different?
- The project has been modified to use the BV Super POM.
- The linked version of Apache Commons has been upgraded to mitigate a security vulnerability.
- The project structure differs from that of the upstream project, which has moved to a different repository since the original fork appeared.
- This version has been patched to include the changes made between upstream 1.2.0 and 1.3.1, while still preserving the old directory structure.
- This version includes the newest (as of 1.3.1) regex patterns and tests, which include detection support for browsers like Microsoft Edge.
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.
ua-parser is just a small wrapper around this data, along with ongoing improvements to the definitions.
ua-parser has now been split out into multiple, distinct repositories, one for the core definitions and one for each language implementation. Patches and issues should be raised at those repositories, rather than this one.