4.0.0
What's changed in version 4.x
BC breaks listed
- Strict type hints have been added throughout. This may break some type assumptions made in earlier versions.
CheckUpdateCommand
,ConvertCommand
,LogfileCommand
,ParserCommand
,UpdateCommand
removedsetCache
methods
so that caches must now be constructor-injected- Many classes are now
final
- use composition instead of inheritance PropertyFormatter
now assumes any non-truthy values arefalse
checkUpdate
method now throws an exception if we could not determine the "remote" version, or if there is no
version in cache already.log
method was removed
Changes
- for caching the Doctrine Cache package is used
- Any other Cache compatible with PSR-16 could be used
- instead of the
debug
flag for the CLI commands the verbose flag has to be used
** For full migration details, please see https://github.com/browscap/browscap-php/blob/4.0.0/README.md **
Total issues resolved: 24
- 174: replace WurflCache with doctrine/cache
- 191: Create a separate component for Apache logfile reader
- 192: Replace setter injection with constructor injection hinting to interfaces
- 193: Remove all fluid interfaces
- 194: Add type declarations throughout, including
: void
(php 7.1) - 195: Add interfaces for many classes
- 196: LoggerHelper should be a static util class
- 197: Pattern::getHashForPattern has has mixed return types
- 198: Browscap::setCache accepts mixed types
- 199: Move to minimum of PHP 7.1
- 200: Use PHPUnit 6 and update other dependencies
- 202: bump php version
- 205: Fix broken headings in Markdown files
- 212: Inconsistent BrowscapPHP::getBrowser() property types
- 214: fix default output parameters
- 216: BrowscapUpdater::checkUpdate is inconvenient to use programatically
- 217: update version check
- 218: Replace cache
- 220: update other dependencies
- 221: update other dependencies
- 222: add static code analysis
- 227: Allow Symfony 4.0 in composer.json
- 231: update readme and dependencies
- 232: remove Log command