Retour Changelog.

Link 3.2.20 · 2024.12.14

changed - 2024.12.14

  • Retour now strips site path prefixes from incoming 404 URL paths, such that redirects will work as expected (any Site sub-path prefix is ignored) (#288)
  • Don't create automatic redirects for elements that are not enabled

fixed - 2024.12.14

  • Fixed an issue where 410 Gone redirects returned a generic browser error rather than a custom-defined Craft template (#11)
  • Fixed an issue where an exception could be thrown if a Site had no baseUrl defined
  • Normalize the incoming url and path so that mergUrlWithPath() handles edge-cases properly (#1512)
  • Fixed an issue where deprecation errors would occur when an element does not have a uri (#317)

Link 3.2.19 · 2024.08.19

fixed - 2024.08.19

  • Fixed an issue where the "File Not Found URL" link could be wrong when clicked on in some multi-site setups (#310)

Link 3.2.18 · 2024.06.25

fixed - 2024.06.25

  • Fix a ParseError exception that is thrown by older versions of PHP that do not support types for class properties (#307)

Link 3.2.17 · 2024.06.24

added - 2024.06.24

  • Separate out the plugin settings into General, Statistics, and Advanced tabs
  • Added a Set No-Cache Headers setting (defaulting to on) to set no-cache headers on the redirect response to prevent client-side caching (#306)

changed - 2024.06.24

  • When saving a redirect, Retour no longer deletes redirects that have the redirectDestUrl of the redirect being saved as their redirectSrcUrl (#303)

Link 3.2.16 · 2024.06.19

fixed - 2024.06.19

  • Fixed an issue where the "File Not Found URL" link could be wrong when clicked on in some multi-site setups (#290)
  • Fixed an issue where the Short Link wouldn't display properly in the element index view (#301)
  • Fixed an issue where Short Links wouldn't work properly if they were added to Asset elements (#300)
  • Fixed an issue where a "Integrity constraint violation" error could occurr if malformed redirectSrcUrls was introduced into the statistics table (#305)

Link 3.2.15 · 2024.05.30

fixed - 2024.05.30

  • Fixed an issue where the down and up arrows were reversed for sorting purposes (#299)
  • Fixed an issue that would cause new installations to not function do to an error in the install migration (#302)

Link 3.2.14 · 2024.03.25

fixed - 2024.03.25

  • Added the unused static to the Tailwind CSS blocklist to avoid a name collision with a Craft CSS class (#1412)
  • Fixed an issue with impropertly text-encoded characters in URLs potentially causing a db exception (#291)
  • Fixed an issue where an empty redirect in the excludePatterns list could cause redirects to stop functioning, add logging when a redirect is excluded (#297)

Link 3.2.13 · 2024.02.05

added - 2024.02.05

  • Add phpstan and ecs code linting
  • Add code-analysis.yaml GitHub action

changed - 2024.02.05

  • Switch over to Vite ^5.0.0 & Node ^20.0.0 for the buildchain
  • Updated docs to use node 20 & a new sitemap plugin
  • PHPstan code cleanup
  • ECS code cleanup

fixed - 2024.02.05

  • Fixed an issue that could cause an exception to be thrown if the Preserve Query String setting is on
  • Fixed an issue where the filter controls didn't work properly for Short Links

Link 3.2.12 · 2023.10.26

fixed - 2023.10.26

  • Fixes issue where only first line of uploaded CSV is saved in cache in load balanced environment (#286)
  • Strip off a leading / before making a site URL from a path, because otherwise Craft.getUrl() considers it an absolute URL and returns it (#281)

Link 3.2.11 · 2023.08.15

added - 2023.08.15

  • Add db index for redirectMatchType to help with query performance (#282)

changed - 2023.08.15

  • Add permission fallback logic to the dashboard for Short Links access

secu­ri­ty - 2023.08.15

  • Fixed a potential XSS vulnerability with a malformed referrer header

Link 3.2.10 · 2023.04.07

changed - 2023.04.07

  • Enforce full URL matching for short links when used within a multi-site setup and enabling any of the content translation method for the field. (#277)

fixed - 2023.04.07

  • Fixed a bug where short links would not work correctly within Matrix fields. (#279)
  • Fixed a bug where short links would not be cleaned up appropriately when updating a Short Link value on an element. (#277)
  • Fixed a bug where short links would not work correctly with multi-sites. (#277)

Link 3.2.9 · 2023.03.07

added - 2023.03.07

  • Added the ability to disable statistics recording entirely via enableStatistics in the config.php (#272)

changed - 2023.03.07

  • Retour now requires Craft ^3.2.0
  • Add versioning to the docs

fixed - 2023.03.07

  • Fixed an issue where no events triggered when using exactMatch redirect (#273)
  • Fixed a bug where deleting a revision would also delete all the short links associated with the element (#270)

Link 3.2.8 · 2023.02.09

changed - 2023.02.09

  • Use dynamic docker container name & port for the buildchain
  • Update the buildchain to use Vite ^4.0.0
  • Refactored the docs buildchain to use a dynamic docker container setup

Link 3.2.7 · 2022.12.08

fixed - 2022.12.08

  • Added missing priority column to the retour_static_redirects too, in Install.php migration (#262)

Link 3.2.6 · 2022.12.07

fixed - 2022.12.07

  • Added missing priority column to the Install.php migration (#262)

Link 3.2.5 · 2022.12.05

added - 2022.12.05

  • Added the ability to set a Priority for regex redirects, so you have control over the order in which they execute (#74)

fixed - 2022.12.05

  • Fixed an issue that would cause getStaticRedirect() to return a redirect regardless of whether or not it is enabled (#260)

Link 3.2.4 · 2022.11.28

added - 2022.11.28

  • Added EVENT_BEFORE_DELETE_REDIRECT & EVENT_AFTER_DELETE_REDIRECT events, so you can hook in before & after a redirect is deleted (#259)

changed - 2022.11.28

  • Fixed HMR in local dev with explicit alias that resolves to the actual directory
  • Add import.meta.hot.accept for entrypoint JavaScript for HMR
  • Updated docs to use VitePress ^1.0.0-alpha.29

fixed - 2022.11.28

  • Fixed an issue where the Short Links field could throw an exception on Craft 3.x < 3.7.19
  • Handle missing describedBy for Craft 3.x < 3.7.25

Link 3.2.3 · 2022.10.03

changed - 2022.10.03

  • Move to using ServicesTrait and add getter methods for services
  • Users must have permission to access Retour to be able to use the Retour widget (#251)

Link 3.2.2 · 2022.09.14

changed - 2022.09.14

  • Fixed an issue where element types that update their uriFormat directly rather than re-saving the elements will generate automatic element redirects (#248)
  • Updated how Retour's components are registered, to allow for overriding via plugin config (#1989)
  • Update the buildchain to use Vite ^3.1.0 for building frontend assets

Link 3.2.1 · 2022.09.08

changed - 2022.09.08

  • Whether a Short Link redirect is created for "All Sites" or on a per-site basis is now determined by the propagation method of the Short Link field
  • Include "Short Link Element ID" in the CSV redirects export
  • Allow for the localization of the exported redirects & statistics column names

fixed - 2022.09.08

  • Fix improperly named field input template (casing) (#247)
  • Editing a Short Link field's redirect in the CP now properly preserves its Short Link status, and redirects to the Short Links page

Link 3.2.0 · 2022.08.30

added - 2022.08.30

  • Added the Short Link field type that allows content authors to add short link redirects in an entry
  • Added translations in the Javascript views that Retour uses, allowing for better localization (#222)
  • If a CSV import has errors, they are displayed on the frontend to make them easier to diagnose (#219)

changed - 2022.08.30

  • Improved the performance when resolving exact match redirects by doing a database query. (#217)
  • If the Preserve Query String plugin setting is enabled, query strings from the incoming request and the destination URL will be combined (#242)

Link 3.1.73 · 2022.06.22

changed - 2022.06.22

  • Removed the sub resource integrity on the built JavaScript, which could fail if systems were set up that manipulated the incoming JavaScript resources dynamically (#229)

Link 3.1.72 · 2022.05.18

fixed - 2022.05.18

  • Fixed an issue where the Dashboard didn't property narrow results down to the selected site, due to moreParams being saved in the object state (#236)
  • Fixed an issue where the Redirects didn't property narrow results down to the selected site, due to moreParams being saved in the object state (#235)

Link 3.1.71 · 2022.04.09

changed - 2022.04.09

  • No longer trim / from URLs that are presented in the Retour Dashboard (#227)

Link 3.1.70 · 2022.01.17

fixed - 2022.01.17

  • Fixed a regression which would cause the 404 File Not Found URL to not be displayed

Link 3.1.69 · 2022.01.12

added - 2022.01.12

  • Add .gitattributes & CODEOWNERS
  • Add linting to build
  • Add compression of assets
  • Add bundle visualizer

Link 3.1.68 · 2021.12.26

added - 2021.12.26

  • Added the ability to add 307 - Temporary Redirect and 308 - Permanent Redirect status coderedirects (#216)
  • Added the ability to pass in a site handle via GraphQL to retourRedirects()or retourResolveRedirect() (#215)
  • Return the site handle via GraphQL from queries to retourRedirects()or retourResolveRedirect() (#215)

changed - 2021.12.26

  • Updated the buildchain to use Node 16
  • Changed buildchain to Vite from webpack 5

fixed - 2021.12.26

  • Fixed an issue that would cause the component state to not be saved properly if you clicked on the Resetbutton (#214)
  • Fixed an issue where non-ASCII characters were stripped from display of URLs in the Retour Dashboard & Redirectspages (#213)

Link 3.1.67 · 2021.11.16

added - 2021.11.16

  • Added the retourResolveRedirect GraphQL query that should be used instead of the retour query.
  • Added the retourRedirects GraphQL query that returns a list of all redirects for a given site.

changed - 2021.11.16

  • The retour GraphQL query is now deprecated in favor of the retourResolveRedirect query.

Link 3.1.66 · 2021.11.10

changed - 2021.11.10

  • Truncate the column names displayed in the Import CSV function to 50 characters to preventoverrun (#209)

fixed - 2021.11.10

  • Fixed an issue where the Import CSV function would display a blank screen if the CSV wasmalformed (#209)
  • Fixed an issue with $ being stripped from displayedURLs (#206)

Link 3.1.65 · 2021.10.29

fixed - 2021.10.29

  • Fixed a regression that could throw an exception during automatic Entry Redirect creation

Link 3.1.64 · 2021.10.28

added - 2021.10.28

  • Added a beforeSaveEntryRedirect event to allow you to hook in when an Entry Redirect is automatically created

fixed - 2021.10.28

  • Catch Exception thrown by Reader::createFromPath() and usecache (#205) (#204)

Link 3.1.63 · 2021.10.25

added - 2021.10.25

  • Added a $siteId property to RedirectEvent, RedirectResolvedEvent, and ResolveRedirectEvent to allow for customlogic based on the siteId (#202)

Link 3.1.62 · 2021.09.29

added - 2021.09.29

  • Default the newly created redirect based on the siteId of the 404 statistic, if it isn't the defaultsite (#201)

fixed - 2021.09.29

  • Fixed an issue where the statistics for redirects via headless requests were always recorded for site ID1 (#201)

Link 3.1.61 · 2021.08.20

fixed - 2021.08.20

  • Fixed an issue that could throw an error on CSV import if the match type column didn't exist in the importedfile (#116)
  • Fixed a issue where custom delimeters were not respected for the columnnames (#199)

Link 3.1.60 · 2021.08.17

secu­ri­ty - 2021.08.17

  • Fixed a potential XSS vulnerability with a malformed Referrer header

Link 3.1.59 · 2021.08.13

fixed - 2021.08.13

  • Fix an issue where Undefined class constant ‘EVENT_REGISTER_GQL_SCHEMA_COMPONENTS would be thrown if you wererunning Craft CMS < ^3.5.0 (#198)

Link 3.1.58 · 2021.08.04

added - 2021.08.04

  • Use the delimiter between data column setting (normally ,) for exporting CSV files,too (#194)

changed - 2021.08.04

  • Ensure the URLs are siteUrls and not cpUrls in the Dashboard table “go”arrow (#192)

fixed - 2021.08.04

  • Fixed an issue where the saved component state could cause it to not display redirects after deleting one whilefiltering the view (#196)

Link 3.1.57 · 2021.07.08

fixed - 2021.07.08

  • Ignore the numSelected and selectedIds properties for the Dashboard Table component's savestate (#191)

Link 3.1.56 · 2021.07.07

added - 2021.07.07

  • Added "Per-age" pagination controls for the Redirects page
  • Added “500” option to Dashboard stats & Redirects "Per-page"

fixed - 2021.07.07

  • The filter text that the table components remember between page load is now properlydisplayed (#190)
  • Fixed an issue where the selected state was remembered after doing a bulk operation (such asDelete) (#191)

Link 3.1.55 · 2021.07.02

added - 2021.07.02

  • Added The delimiter between data column values for importing CSV files (normally ,) (#188)
  • Allow the choice of how many statistics per-page todisplay (#185)
  • Both the Dashboard Statistics table and the Redirects Table now remember theirstate (#189)

changed - 2021.07.02

  • If the redirectSrcUrl starts with http, default the match typeto fullurl (#187)
  • Update the 404 statistics for the path including the query string, if it hasn't beenstripped (#189)

fixed - 2021.07.02

  • Fix missing use clause

Link 3.1.54 · 2021.06.12

added - 2021.06.12

  • Add GraphQL schema components for Retour.

changed - 2021.06.12

  • Ensure that the URI doesn't match an element URI before incrementing the 404 statistics via GraphQLquery (#177)
  • Switched documentation system to VitePress

Link 3.1.53 · 2021.04.30

added - 2021.04.30

  • Strip leading and trailing spaces off of all URLs (#173)

fixed - 2021.04.30

  • Fixed an issue where clicking the Retour CP nav item would result in a 403 exception if the current user didn't havepermission to view the Retour dashboard. (#151)

Link 3.1.52 · 2021.04.06

added - 2021.04.06

  • Added make update to update NPM packages
  • Added make update-clean to completely remove node_modules/, then update NPM packages

changed - 2021.04.06

  • Use Tailwind CSS ^2.1.0 with JIT

Link 3.1.51 · 2021.03.29

changed - 2021.03.29

  • Move the manifest service registration to the constructor

fixed - 2021.03.29

  • Fixed an issue where the CSV import wouldn't work if you were using Composer 1.x, due to package version detectionissues

Link 3.1.50 · 2021.03.27

changed - 2021.03.27

  • Allow for automatic redirect creation during bulk resaving operations
  • More consistent makefile build commands
  • Use Tailwind 2.x & @tailwindcss/jit
  • Move settings from the composer.json “extra” to the plugin main class

fixed - 2021.03.27

  • URL decode any Legacy URLs for any Exact Match redirects onsave (#166)

Link 3.1.49 · 2021.03.03

changed - 2021.03.03

  • Dockerized the buildchain, using craft-plugin-manifest for the webpack HMR bridge

Link 3.1.48 · 2021.02.27

added - 2021.02.27

  • Added support for both 8.x and 9.x versions of league/csv for peer compatibility
  • PHP 8 compatibility for the import/export functions via league/csv version ^9.0

changed - 2021.02.27

  • Ensure the URLs are siteUrls and not cpUrls in the Redirects table “go” arrow

Link 3.1.47 · 2021.02.22

changed - 2021.02.22

  • Updated build system infra

fixed - 2021.02.22

  • Fixed an issue where 404 stats for pages without redirects in place do not increment via GraphQL

Link 3.1.46 · 2021.02.02

changed - 2021.02.02

  • Updated Axios to ^0.21.1
  • Updated to latest npm deps
  • Rebuilt frontend assets

fixed - 2021.02.02

  • Fixed an issue that could cause migration issues from Craft 2 to Craft 3.6,use Use MigrationHelper::dropIndexIfExists()

Link 3.1.45 · 2020.12.10

changed - 2020.12.10

  • Split out vendors & commons chunks
  • Check for both types of preview requests on Craft 3.2 or later
  • Invalidate Retour's caches when a redirect is saved
  • Also invalidate the GraphQL caches on Craft CMS 3.3 or later if a Redirect is saved

fixed - 2020.12.10

  • If a redirect is modified by a plugin event, save the changed redirect to the cache
  • Handle no siteId being passed into a GraphQL query properly, by defaulting to either the current site, or theprimary site
  • Fixed an issue where the Dashboard filter didn’t work in combination with Handled / Not Handled

Link 3.1.44 · 2020.12.08

changed - 2020.12.08

  • Moved the CSS/JS buildchain over to webpack 5
  • Updated to latest npm deps

Link 3.1.43 · 2020.12.04

changed - 2020.12.04

  • Don't add slashes to destination URLs that contain a query string, regardless of the addTrailingSlashesToUrlssetting

Link 3.1.42 · 2020.10.04

changed - 2020.10.04

  • Rebuilt CP assets using latest deps
  • Refactored to use registerJsModules macro for JS CP assets

fixed - 2020.10.04

  • Fixed an issue that added a / to Reg Ex match destination URLs if you had the addTrailingSlashesToUrls GeneralConfig setting set to true

Link 3.1.41 · 2020.07.30

fixed - 2020.07.30

  • Added craftcms/cms back in as a dependency so Craft sees updates to the plugin again

changed - 2020.07.30

  • Overwrite existing headers rather than adding to them with the Additional Headers setting

Link 3.1.40 · 2020.07.05

added - 2020.07.05

  • Added the Codeception testing framework to SEOmatic
  • Added a Unit Test to Retour that executes on every push to GitHub to verify there are no regressionsfor (#110)
  • Added the ability to import “hits” into a redirect
  • Added a EVENT_REDIRECT_RESOLVED to allow plugins/modules to modify redirects that have been resolved.
  • Added an “Additional Headers” setting that allows you to define additional headers that are added to the redirectresponse

fixed - 2020.07.05

  • Fixed an issue where really long ALL CAPS column names would cause the Import UI to wrap

Link 3.1.39 · 2020.06.08

added - 2020.06.08

  • Added an API endpoint to allow the fetching of all of the Retour Redirects

Link 3.1.38 · 2020.04.12

fixed - 2020.04.12

  • Also explicitly remove \n and \r characters that might be in the redirected URL

Link 3.1.37 · 2020.04.02

fixed - 2020.04.02

  • Explicitly remove any newline characters that might be in the redirected URL
  • Fixed an issue with the Dashboard Widget link not being right in certain configs

changed - 2020.04.02

  • Updated to latest npm dependencies via npm audit fix for both the primary app and the docs

Link 3.1.36 · 2020.03.24

fixed - 2020.03.24

  • Fixed an issue where $siteId might not be typecast properly when coming from the database, causing PHP to throw anerror
  • Replaced the simple // -> / replacement with a regex, to fix an issue that could inadvertently affect the protocolportion of a destination URL

Link 3.1.35 · 2020.03.16

fixed - 2020.03.16

  • Fixes an issue where UrlHelper::sanitizeUrl() would return an empty string

Link 3.1.34 · 2020.03.12

fixed - 2020.03.12

  • Handle sanitizing URLs that have special characters such as ü in them
  • Remove any double slashes from resolved RegEx redirects

Link 3.1.33 · 2020.01.10

fixed - 2020.01.10

  • Fixed an issue with the migration that happened for sites that were upgraded from Craft 2.x

Link 3.1.32 · 2020.01.09

added - 2020.01.09

  • Added URL sanitization to the redirect URL that Retour passes to $response->redirect()
  • If addTrailingSlashesToUrls is set, add a slash to the end of Destination URL if the URL is a site URL
  • Added indexes for redirectSrcUrl in all tables to make queries perform better

Link 3.1.31 · 2019.12.11

secu­ri­ty - 2019.12.11

  • Throw an exception if an invalid sort field is passed into the controller methods, to eliminate a low-impact SQLinjection vulnerability

Link 3.1.30 · 2019.12.09

added - 2019.12.09

fixed - 2019.12.09

  • Fixed a low-impact SQL injection vulnerability

Link 3.1.29 · 2019.11.18

changed - 2019.11.18

  • Added a try / catch around regular expression parsing to gracefully handle malformed input
  • Log invalid regex's to web.log

fixed - 2019.11.18

  • Fixed an issue where deleting statistics could throw an error

Link 3.1.28 · 2019.11.11

added - 2019.11.11

  • Added the ability to bulk delete Statistics & Redirects
  • Added the ability to display only handled or not handled statistics

Link 3.1.27 · 2019.10.24

changed - 2019.10.24

  • Added a CSV import field for Legacy URL Match Type
  • Cleaned up the GraphQL type generator

Link 3.1.26 · 2019.10.07

changed - 2019.10.07

  • Added native GraphQL support

Link 3.1.25 · 2019.09.27

changed - 2019.09.27

  • Fixed an issue where the enabled/disabled status of a redirect wasn't correctly shown in the list view
  • Fixed an issue where the IP address lookup was no longer working
  • Added Sites to the Redirects table listing

Link 3.1.24 · 2019.09.09

changed - 2019.09.09

  • Replaced frontend api route with an actionUrl()

Link 3.1.23 · 2019.08.21

added - 2019.08.21

  • Added a Entry Redirects URL Match Type setting so that full URLs can be used for the automatic Entry Redirects ifyou have a site that has a sub-directory as part of the siteUrl

changed - 2019.08.21

  • Updated assets build to update to the latest npm packages

Link 3.1.22 · 2019.07.18

changed - 2019.07.18

  • Proper fix for an issue that would cause uploading assets on Craft 3.2 to fail with "Asset is missing its folder ID"

Link 3.1.21 · 2019.07.18

changed - 2019.07.18

  • Removed the pointless language switcher from the Import CSV File template
  • Fixed an issue that would cause uploading assets on Craft 3.2 to fail with "Asset is missing its folder ID"

Link 3.1.20 · 2019.07.17

changed - 2019.07.17

  • Fixed a regression that could throw an exception when an entry's slug is changed on pre-Craft 3.2

Link 3.1.19 · 2019.07.17

changed - 2019.07.17

  • Fixed an issue where a spurious redirect was created for new entries on Craft 3.2 if Create Entry Redirects isenabled

Link 3.1.18 · 2019.07.15

added - 2019.07.15

  • Added a ResolveRedirectEvent that modules/plugins can listen to if they want to resolve their own redirects

changed - 2019.07.15

  • Store uploaded CSV files in the cache, as a fallback method to accessing it
  • Handle addTrailingSlashesToUrls config setting for automatic slug change redirects

Link 3.1.17 · 2019.07.10

changed - 2019.07.10

  • Do not try to create automatic redirects for drafts and revisions in Craft 3.2 or later

Link 3.1.16 · 2019.06.12

added - 2019.06.12

  • Added GraphQL support so SPAs can give their content authors a way to manage 404s via the CP

changed - 2019.06.12

  • Updated to Tailwind CSS ^1.0.0
  • Updated to the latest ApexCharts, fixed issues due to changed APIs
  • Fixed an issue with really long field titles overflowing the Import CSV File UI

Link 3.1.15 · 2019.05.21

changed - 2019.05.21

  • Updated build system

Link 3.1.14 · 2019.05.02

changed - 2019.05.02

  • Added a Statistics Trimming Rate Limit that defaults to once per hour, to prevent the statistics trimming fromimpacting performance

Link 3.1.13 · 2019.04.30

changed - 2019.04.30

  • Fixed an issue with the widget icon not showing up properly
  • Fixed an issue with non-admin users being unable to export statistics

Link 3.1.12 · 2019.04.25

changed - 2019.04.25

  • Fixes an issue where Retour would delete the first redirect with a null siteId, when saving a new redirectwith siteId set

Link 3.1.11 · 2019.04.22

changed - 2019.04.22

  • Updated Twig namespacing to be compliant with deprecated class aliases in 2.7.x

Link 3.1.10 · 2019.04.18

changed - 2019.04.18

  • Make sure the URL we redirect to is a full URL, and is based on the defined siteUrl
  • Migration for Retour widgets
  • Added a Dashboard Refresh Interval control to let people choose the refresh interval (or disable it)
  • Ensure the user has permission for a given site to be able to edit redirects for it

Link 3.1.9 · 2019.04.09

changed - 2019.04.09

  • Fixed an issue where an empty Exclude Patterns table and the use of Project Config on Craft 3.1 or later couldcause an exception to be thrown when a 404 is thrown

Link 3.1.8 · 2019.04.02

added - 2019.04.02

  • Added the ability to exclude URIs from Retour completely via a series of RegEx

changed - 2019.04.02

  • If Preserve Query String is on, make sure the path p= isn't part of it
  • Don't log stats update errors, because it's pointless, and can report meaningless deadlock errors
  • Ensure that a user has permission to access a site group to redirect something to it
  • Fixed an issue where automatic redirects based on renamed entries didn't create the redirect for the right siteId inmulti-site setups

Link 3.1.7 · 2019.03.20

changed - 2019.03.20

  • Fixed an issue with pagination of statistics and redirects when limiting them to a specific site
  • Don't allow editing of the plugin settings if allowAdminChanges is false
  • Record the user IP instead of Proxy IP
  • Disable "Redirect To" link when there is a token in the destination url
  • Display an error when a redirect is not saved because it'd create a redirect loop

Link 3.1.6 · 2019.02.04

changed - 2019.02.04

  • Reverted the semver on league/csv back to ^8.2 due to incompatible APIs
  • Fixed an issue with a missing Dashboard icon

Link 3.1.5 · 2019.01.23

changed - 2019.01.23

  • Updated the semver on league/csv to ^8.2|^9.1

Link 3.1.4 · 2019.01.18

changed - 2019.01.18

  • Fixed the breadcrumbs in the CP to respect the currently selected site

Link 3.1.3 · 2019.01.10

changed - 2019.01.10

  • Fixed an issue where the live reload of 404 data would cause the pagination to reset to viewing the first page

Link 3.1.2 · 2019.01.03

changed - 2019.01.03

  • Register cache options for every type of request
  • Added beforeSaveRedirect and beforeSaveRedirect events for plugin/moduleor Webhooks plugin use

Link 3.1.1 · 2018.12.19

changed - 2018.12.19

  • For multi-site setups, auto-create slug redirects for the element's site only
  • Fixed a minor JavaScript issue visible only in webpack-dev-server
  • Updated the PostCSS build packages & config

Link 3.1.0 · 2018.12.17

added - 2018.12.17

  • Added the ability to have true multi-site capabilities, with redirects that only affect specific sites
  • Added live refresh of the Dashboard data

Link 3.0.18 · 2018.11.23

changed - 2018.11.23

  • Fixed an issue with the charts controller for the Widget charts on Postgres
  • Fixed an issue in Statistics.php with Postgres

Link 3.0.17 · 2018.11.05

changed - 2018.11.05

  • Fix missing welcome icon

Link 3.0.16 · 2018.11.04

changed - 2018.11.04

  • Fixed an issue with trimStatistics() if you're using Postgres
  • Retooled the JavaScript build system to be more compatible with edge case server setups

Link 3.0.15 · 2018.10.29

changed - 2018.10.29

  • Handle a Retour return status > 400 to render the actual error template
  • Fixed a console error in the Dashboard if no data was returned for a chart
  • Updated the build system

Link 3.0.14 · 2018-10-18


Link Added ·


Link 3.0.13 · 2018-10-17

changed - 2018-10-17

  • Fixed an issue where the charts wouldn't generate properly if you were using MySQL 5.7 or later
  • Fixed an issue with the charts not generating properly if you were using Postgres
  • Fixed a padding issue with the widget chart

Link 3.0.12 · 2018-10-14

added - 2018-10-14

  • Added the ability to redirect based on Path Only or Full URL, to allow for site-specific redirects
  • Added Legacy URL Match Type and Remote IP to the import and export fields

changed - 2018-10-14

  • Trimmed the database tables to be more storage space efficient

Link 3.0.11 · 2018-10-13

added - 2018-10-13

  • Added Remote IP to the Dashboard statistics, with a link to look up a geo-location
  • Added config setting for Record Remote IP

changed - 2018-10-13

  • Fixed an issue where the search function wouldn't work in the Control Panel if you were using Postgres
  • Fixed incorrect links to the documentation
  • Fixed an issue where a user with the proper permissions could not save a new redirect
  • Fixed the build process so it will no longer look for devServer on installs

Link 3.0.10 · 2018-10-05

changed - 2018-10-05

  • Updated build process

Link 3.0.9 · 2018-09-24

changed - 2018-09-24

  • Modernized package.json and webpack build

Link 3.0.8 · 2018-09-20

changed - 2018-09-20

  • Fixed a regression that caused you to be unable to click on a redirect to edit it
  • Added automatic manifest cache invalidation

Link 3.0.7 · 2018-09-19

added - 2018-09-19

  • Added a retour/stats/trim console command to manually trim the statistics table

changed - 2018-09-19

  • Added an Automatically Trim Statistics option (defaults to true) in Settings and config.php

Link 3.0.6 · 2018-09-18

changed - 2018-09-18

  • Fixed an issue when creating new redirects on a Postgres database
  • Fixed a cosmetic issue where RegEx's with a | in them were not displayed correctly in the table
  • Fixed an issue where the + add button didn't work right on some configurations

Link 3.0.5 · 2018-09-14

changed - 2018-09-14

  • Fixed an error with multi-site when an element existed on one site, but not the main site

Link 3.0.4 · 2018-09-13

changed - 2018-09-13

  • Fixed an issue where RegEx redirects would have the Destination URL overwritten by the parsed result after a hit
  • Fixed an issue where cached resolved redirects would not increment statistics

Link 3.0.3 · 2018-09-13

added - 2018-09-13

  • Added documentation for User Group based Permissions in Retour

changed - 2018-09-13

  • Fixed an issue with line endings for CSV files that were generated by Mac computers

Link 3.0.2 · 2018-09-12

changed - 2018-09-12

  • Fixed issues with the + and x URLs in the Control Panel not working as intended

Link 3.0.1 · 2018-09-12

changed - 2018-09-12

  • Fixed the CSV importer to it imports more than just the first entry in the CSV

Link 3.0.0 · 2018-09-12

added - 2018-09-12

  • Initial release