All Versions
26
Latest Version
Avg Release Cycle
92 days
Latest Release
405 days ago

Changelog History
Page 1

  • v2.2.0 Changes

    October 29, 2020

    ๐Ÿš€ Default download database version has been pinned to "release 3.13.1" after major changes in the upstream sources (matomo-org/device-detector moving towards a new major release).

    โฌ†๏ธ There will be a new major version of ua_inspector with a rebuilt database support for matomo-org/[email protected] and/or a separate database built upon these sources to simplify future upgrades.

    โœจ Enhancements

    - Upstream improvements to detect engine versions of "Gecko" type browsers have been integrated

    ๐Ÿ› Bug fixes

    • Brand names are now always returned as strings (as expected), even if parsed as numbers from the YAML database
  • v2.1.0 Changes

    August 17, 2020
    • โœจ Enhancements
      • New "desktop notebook" devices are detected
      • Upstream improvements to detect mobile apps using Chrome have been integrated
  • v2.0.0 Changes

    March 29, 2020
    • โœจ Enhancements

      • Detection will now make use of "browser families" to match upstream improvements for Chrome based devices
      • If detectable the "browser family" of a client is now available as :browser_family in the result struct
      • If detectable the "operating system family" of a client is now available as :os_family in the result struct
    • ๐Ÿ› Bug fixes

      • The mix download task should no longer start unnecessary applications (#19)
    • Backwards incompatible changes

      • Minimum required elixir version is now ~> 1.7
      • Several deprecated functions have been removed completely:
        • UAInspector.Downloader.prepare_database_path/0
        • UAInspector.Downloader.read_remote/0
        • UAInspector.Downloader.README.path_local/0
        • UAInspector.Downloader.README.path_priv/0
      • Startup is now done with a blocking database load by default
  • v1.2.0 Changes

    August 10, 2019

    โœจ Enhancements

    - Warnings when starting without a database available can be silenced

    ๐Ÿ› Bug fixes

    • The mix download task now works properly with initializer modules (#18)
  • v1.1.0 Changes

    July 13, 2019
    • โœจ Enhancements

      • Configuring startup_sync: true allows you to ensure a synchronous database load is attempted before allowing to parse referers
      • Database entries are now stored in a single named table instead of using an intermediate reference table
      • Output of mix task ua_inspector.download can be prevented by passing --quiet upon invocation. This does NOT imply --force and will still ask for confirmation
      • Passing async: false to UAInspector.reload/1 allows you to block your calling process until the reload has finished
      • The library used to download the database files can be changed by configuring a module implementing the UAInspector.Downloader.Adapter behaviour
      • The library used to read YAML files can be changed by using the :yaml_file_reader configuration
    • ๐Ÿ› Bug fixes

      • Matching the documentation the informational README file created by the downloader will now only be created when using the mix task
    • ๐Ÿ—„ Deprecations

      • Several functions are now declared internal and will result in a Logger.info/1 message when called until they will be eventually removed:
        • UAInspector.Downloader.prepare_database_path/0
        • UAInspector.Downloader.read_remote/0
        • UAInspector.Downloader.README.path_local/0
        • UAInspector.Downloader.README.path_priv/0
  • v1.0.0 Changes

    April 20, 2019
    • Ownership has been transferred to the elixir-inspector organisation

    • โœจ Enhancements

      • Documentation is now available inline (@moduledoc, ...) with the README.md file targeting the repository (development) instead of releases
      • The default database path has been set to Application.app_dir(:ua_inspector, "priv")
    • Backwards incompatible changes

      • Internal parser process pooling has been removed. If you require pooling you need to manually wrap UAInspector.parse/1 (and related functions)
      • Minimum required elixir version is now ~> 1.5
      • Support for {:system, var} configuration has been removed
      • The deprecated mix tasks ua_inspector.download.databases and ua_inspector.download.short_code_maps have been removed
  • v0.20.0 Changes

    March 10, 2019
    • โœจ Enhancements

      • Initializer modules can be defined with additional arguments by using {mod, fun, args}
      • When using the default database you can now set a :remote_release to be used for downloading. The default is "master" but any valid commit from the upstream source is allowed
    • ๐Ÿ—„ Deprecations

      • Accessing the system environment by configuring {:system, var} or {:system, var, default} will now result in a Logger.info/1 message and will stop working in a future release
      • The download tasks ua_inspector.download.databases and ua_inspector.download.short_code_maps are now deprecated and will be removed in a future release
  • v0.19.2 Changes

    February 12, 2019
    • ๐Ÿ› Bug fixes
      • Short code maps are now stored in the correct file encoding (UTF-8) to allow parsing short code maps with characters like umlauts (#15)
  • v0.19.1 Changes

    January 05, 2019
    • โœจ Enhancements
      • The (soft) deprecated download tasks ua_inspector.download.databases and ua_inspector.download.short_code_maps are no longer displayed in the output of mix help
  • v0.19.0 Changes

    January 03, 2019
    • โœจ Enhancements

      • All database files (parser databases and short code maps) can be downloaded using a single mix task ua_inspector.download
      • Downloading the databases ensures hackney is started to allow calling mix run --no-start -e "UAInspector.Downloader.download()"
      • Finding the data table is now done via a named lookup table instead of calling the database state server
      • If you need to check if all databases are loaded (i.e. "no longer empty") you can use UAInspector.ready?/0
      • OS Families are no longer hardcoded inside Util.OS but read from the original source and stored in a short code map
      • OS Families used for desktop detection are no longer hardcoded inside Util.OS but read from the original source and stored in a short code map
      • Reloading will now issue a warning if no database path is configured while resuming operation with an empty database
    • ๐Ÿ—„ Soft deprecations (no warnings)

      • The individual download tasks for databases and short code maps have been removed from the documentation. They are still completely functional but will eventually be removed after a proper deprecation phase