Releases: shlinkio/shlink
v4.2.5
v4.2.4
v4.2.3
v4.2.2
Changed
- #2208 Explicitly promote installer config options as env vars, instead of as a side effect of loading the app config.
Added
- Nothing
Removed
- Nothing
Fixed
- #2213 Fix spaces being replaced with underscores in query parameter names, when forwarded from short URL to long URL.
- #2217 Fix docker image tag suffix being leaked to the version set inside Shlink, producing invalid SemVer version patterns.
- #2212 Fix env vars read in docker entry point not properly falling back to their
_FILE
suffixed counterpart.
Deprecated
- Nothing
v4.2.1
v4.2.0
Changed
- #2096 Update to RoadRunner 2024.
Added
-
#2120 Add new IP address condition for the dynamic rules redirections system.
The conditions allow you to define IP addresses to match as static IP (1.2.3.4), CIDR block (192.168.1.0/24) or wildcard pattern (1.2.*.*).
-
#2018 Add option to allow all short URLs to be unconditionally crawlable in robots.txt, via
ROBOTS_ALLOW_ALL_SHORT_URLS=true
env var, or config option. -
#2109 Add option to customize user agents robots.txt, via
ROBOTS_USER_AGENTS=foo,bar,baz
env var, or config option. -
#2163 Add
short-urls:edit
command to edit existing short URLs.This brings CLI and API interfaces capabilities closer, and solves an overlook since the feature was implemented years ago.
-
#2164 Add missing
--title
option toshort-url:create
andshort-url:edit
commands.
Removed
- Nothing
Fixed
- Nothing
Deprecated
- Nothing
v4.1.1
Changed
- Use new reusable workflow to publish docker image
- #2015 Update to PHPUnit 11.
- #2130 Replace deprecated
pugx/shortid-php
package withhidehalo/nanoid-php
.
Added
- Nothing
Removed
- Nothing
Fixed
- #2111 Fix typo in OAS docs examples where redirect rules with
query-param
condition type were defined asquery
. - #2129 Fix error when resolving title for sites not using UTF-8 charset (detected with Japanese charsets).
Deprecated
- Nothing
v4.1.0
Changed
-
#2034 Modernize entities, using constructor property promotion and readonly wherever possible.
-
#2036 Deep performance improvement in some endpoints which involve counting visits:
- listing short URLs ordered by visits counts.
- loading tags with stats.
- visits overview.
This has been achieved by introducing a new table which tracks slotted visits counts. We can then
SUM
all counts for certain short URL, avoidingCOUNT(visits)
aggregates which are much less performant when there are a lot of visits. -
#2049 Request ID is now propagated to the background tasks/jobs scheduled during a request.
This allows for a better traceability, as the logs generated during those jobs will have a matching UUID as the logs generated during the request the triggered the job.
Added
-
#1330 All visit-related endpoints now expose the
visitedUrl
prop for any visit.Previously, this was exposed only for orphan visits, since this can be an arbitrary value for those.
-
#2077 When sending visits to Matomo, the short URL title is now used as document title in matomo.
-
#2059 Add new
short-url:delete-expired
command that can be used to programmatically delete expired short URLs.Expired short URLs are those that have a
validUntil
date in the past, or optionally, that have reached the max amount of visits.This command can be run periodically by those who create many disposable URLs which are valid only for a period of time, and then can be deleted to save space.
-
#1925 Add new
integration:matomo:send-visits
console command that can be used to send existing visits to integrated Matomo instance. -
#2087 Allow
memory_limit
to be configured via the newMEMORY_LIMIT
env var or configuration option.
Removed
- Nothing
Fixed
- #2095 Fix custom slugs not being properly imported from bitly
- Fix error when importing short URLs and visits from a Shlink 4.x instance
Deprecated
- Nothing