Added
-
#236 Added option to define a redirection to a custom URL when a user hits an invalid short URL.
It only affects URLs matched as "short URL" where the short code is invalid, not any 404 that happens in the app. For example, a request to the path
/foo/bar
will keep returning a 404.This new option will be asked by the installer both for new shlink installations and for any previous shlink version which is updated.
-
#189 and #240 Added new GeoLite2-based geolocation service which is faster and more reliable than previous one.
It does not have API limit problems, since it uses a local database file.
Previous service is still used as a fallback in case GeoLite DB does not contain any IP address.
Changed
- #241 Fixed columns in
visit_locations
table, to be snake_case instead of camelCase. - #228 Updated how exceptions are serialized into logs, by using monlog's
PsrLogMessageProcessor
. - #225 Performance and maintainability slightly improved by enforcing via code sniffer that all global namespace classes, functions and constants are explicitly imported.
- #196 Reduced anemic model in entities, defining more expressive public APIs instead.
- #249 Added functional-php to ease collections handling.
- #253 Increased
user_agent
column length invisits
table to 512. - #256 Updated to Infection v0.11.
- #202 Added missing response examples to OpenAPI docs.
Deprecated
- Nothing
Removed
- Nothing
Fixed
- #223 Fixed PHPStan errors produced with symfony/console 4.1.5