| [ Index ] |
PHP Cross Reference of YOURLS |
[Summary view] [Print] [Text view]
1 YOURLS Changelog 2 ================ 3 4 _This file lists the main changes through all versions of YOURLS. 5 For a much more detailed list, simply refer to [commit messages](https://github.com/YOURLS/YOURLS/commits/master)._ 6 7 1.10.4 8 --- 9 - fixed: Prevent [XSS](https://github.com/YOURLS/YOURLS/security/advisories/GHSA-5h77-88j3-r659) in stat pages through referrers (#4107) 10 - added: Localization support for date and time display (#4054) 11 - improved: Improve shunt filters (#4058) 12 - fixed: Notice overlapping logo in admin panel (#4069) 13 - fixed: Flag password file as user auth from environment variables (#4066) 14 - added: Filter SQL queries (#4064) 15 - improved: Improve debug functions and logic (#4089) 16 - improved: Make tests debugging easier (#4104) 17 18 1.10.3 19 --- 20 - added: testing on PHP 8.5 & 8.6 (#4036) 21 - added: function to get reserved URLs from global variable (#3999) 22 - added: database index on long URLs, for faster searches (#4013) 23 - added: `$context` parameter of `yourls_get_db()` (#4020) 24 - changed: hide referrers on public statistics page by default (#4005) 25 - changed: set the infos cache of the keyword after a url is added/updated/deleted (#4008) 26 - changed: fix hover-actions in tables for screen reader users (#4025) 27 - changed: confirm link deletion with a modal dialog (#3932) 28 - fixed: upgrade spatie/array-to-xml to address deprecation warnings in newer PHP version (#4037) 29 - fixed: filtering for links with more than 0 clicks (#3977) 30 - fixed: case-sensitivity in admin search (#3997) 31 - fixed: missing or invalid reserved URL configuration causing crash (#3999) 32 - fixed: handling of invalid charsets on remote sites (#4007) 33 - fixed: preserve backslashes in URLs (#4000) 34 - fixed: validate JSONP callback names (#4030) 35 - fixed: enhance configuration template formatting (#3994) 36 - fixed: minor cleanup (#3979, #3984, #3988) 37 38 1.10.2 39 --- 40 - fixed: `admin/tools.php` now uses `yourls_get_nonce_life()` (#3906) 41 - fixed: "Display 1 to 0 of 0 URLs" on admin list page (#3910) 42 - fixed: replace deprecated `get_all_options` filter with an action (#3683) 43 - fixed: defer loading text domain after plugins (#3679) 44 - removed: Gandi references (#3929) 45 46 1.10.1 47 --- 48 - fixed: sandbox exceptions when disabling plugins (#3893) 49 - fixed: stats date calculation are now correct (#3895) 50 - fixed: unexpected warning raised on login page 51 - removed: unsupported installation cases with Composer 52 53 1.10.0 54 --- 55 - added: Support PHP 8.3 & 8.4 56 - removed: Support for PHP prior to 8.1 which is now minimal requirement 57 - changed: Ensure all `statusCode`/`errorCode` API values are strings (#3756) 58 - fixed: Results with 0 clicks on search (#3589) 59 - fixed: Upgrade Aura.SQL to fix PHP 8.4 compatibility (#3852) 60 - fixed: login page accessibility (#3660) 61 - fixed: MySQL 8+ compatibility (#3828) 62 - changed: Upgrade dependencies 63 - changed: Update GeoIP DB 64 - changed: Update certificates 65 66 1.9.2 67 --- 68 - added: Support PHP 8.2 (#3474) 69 - improved: Googlebot indexing now filterable for plugins, for your SEO needs (#3517) 70 - improved: Use safe sandbox for all included files (#3478) 71 - fixed: bookmarklets with URL containing special chars (#3527) 72 - fixed: unwanted cookies could interfere with YOURLS (#3516) 73 - fixed: cosmetic bugs in the admin interface (#3485, #3431, #3518) 74 - fixed: support usernames containing brackets (#3365) 75 - updated: third party libs and binaries 76 77 1.9.1 78 --- 79 - fixed: error `Undefined constant "intval"` when upgrading (#3332) 80 - fixed: warnings on PHP 8.1 (#3317) 81 - fixed: incorrect HTTP status header with the API when shortening a duplicate (#3355) 82 - fixed: no hyphen in random keywords (#3353) 83 - added: required/suggested PHP extensions in composer.json (#3339) 84 - updated: third party libs and binaries 85 86 1.9 87 --- 88 - removed : support for PHP prior to 7.4 89 - improved: the API plugin with more plugin functions (#3281), a sandbox and a plugin uninstall procedure (#3282) 90 - improved: inline documentation, [online documentation](https://docs.yourls.org/) and unit tests 91 - improved: concurrency during mass shortening (#3233) 92 - improved: minor security fixes - sanitize step name during upgrade (#3055), 93 nonce on the logout link (#3264), salt cookie with newer hash (#3278) 94 - improved: Remove ozh/phpass library and use native PHP password_* functions (#3232) 95 - added: more hooks in the admin view & search (#3265) 96 - fixed: incorrect notice when "prefix and shorten" while not logged in (#3189) 97 - fixed: UI sometimes not responsive after editing a URL (#3244) 98 99 1.8.2 100 --- 101 - fixed: display SVG logo for IE 11 (#2864) 102 - fixed (again) : DB upgrade procedure (#2933) 103 - fixed: cosmetic issue with Docker falsely warning about unencrypted password (#3040) 104 - improved: minor security improvements - iframes clickjacking and login nonce (#3034), potential XSS (#3041) 105 - improved: SSL support for proxies (#3044) 106 - improved: inline documentation and unit tests 107 - added: more filters in admin pages (#2912), HTTP requests (#2951), to deal with user defined consts (#3048) 108 - added: documentation for API action "version" (#2957) 109 110 1.8.1 111 --- 112 - fixed: upgrade procedure with MySQL 8 & table names containing dashes (#2844, #2846) 113 - fixed: function to make public some pages on private installs (#2859) 114 - added: `all` hook to debug YOURLS and plugins (#2860) 115 - improved: plugin inline documentation 116 117 1.8 118 --- 119 - fixed: support for PHP 8 120 - removed : support for PHP prior to 7.2 121 - improved: IDN domain, and UTF8 URLs and titles (aka Number One Issue Since Day One) 122 - improved: timezone management 123 - improved: YOURLS UI and logo, now in SVG 124 - improved: several little things 125 - fixed: several little bugs 126 127 1.7.9 128 --- 129 - improved: compatibility of YOURLS with proxies and reversed proxies 130 - improved: accept timestamped signature in API requests with [arbitrary hash](https://docs.yourls.org/guide/advanced/passwordless-api.html#use-other-hash-algorithms-than-md5) 131 - improved: YOURLS pages are now located in `user/` and [documented](https://docs.yourls.org/guide/extend/pages.html) 132 - improved: accessibility, with labels and aria tags in the main admin screen 133 - fixed: various little things here and also there 134 135 1.7.6 136 --- 137 - improved: due to popular demand, "Random Keywords" is now a core plugin bundled with YOURLS 138 - fixed: JSONP parameters now match the documentation, duh 139 - fixed: various little things here and also there 140 141 1.7.5 142 --- 143 - fixed: long referrers or client name won't trigger errors 144 - fixed: some little bugs 145 146 1.7.4 147 --- 148 - fixed: type juggling vulnerability in the API 149 - improved: several little things and several little updates 150 - dropped: PHP <= 5.5 support 151 152 1.7.3 153 --- 154 - improved: some little things 155 - added: some hooks here and there to allow more pluginness 156 - fixed: some little bugs 157 - updated: jquery and some javascript stuff 158 159 1.7.2 160 --- 161 - improved: stat graphs, regarding accuracy and time zones 162 - improved: navigation in the admin interface 163 - improved: several little things 164 - fixed: several little bugs 165 - updated: all third party libs 166 - dropped: PHP 5.2 support 167 168 1.7.1 169 --- 170 - added: compatibility with PHP 7 171 - added: allow hooks with closures (see [Advanced Hook Syntax](https://docs.yourls.org/development/hooks.html)) 172 - improved: you can now search across all fields at once in the admin interface 173 - improved: bookmarklets are now human readable in the PHP source, and minified on the fly 174 - improved, still not perfect: support for URLs and page titles with encoded chars 175 - fixed: timezone warnings 176 - fixed: cookie mismatch preventing login when multiple YOURLS installs on subdomains of the same domain 177 - fixed: lotsa bugs 178 - improved: lotsa things 179 180 1.7 181 --- 182 - added: support for PDO and MySQLi 183 - added: social bookmarklets - share on Twitter, Facebook or Tumblr in a click 184 - added: check api.yourls.org if a new version of YOURLS is available 185 - added: proxy support - install YOURLS behind a firewall! 186 - improved: security regarding SQL injections 187 - improved: security regarding your credentials - now auto-encrypted 188 - improved: external HTTP request handling 189 - improved: ƒυηкƴ UTF-8 titles handling 190 - fixed: compatibility with Apache mod_security blocking bookmarklets 191 - fixed: lots of bugs 192 193 1.6 194 --- 195 - added: مرحبا العالم! Hej verden! 你好世界! Kumusta mundo! Ciao mondo! Hello world! Translation API. 196 - added: custom API actions 197 - added: support for URLs with common protocols 198 - fixed: search and pagination in the admin interface 199 - updated: third party libs jQuery, ezSQL, GeoIP 200 - improved: sanitizing and escaping functions 201 202 1.5.1 203 ----- 204 - added: full jsonp support 205 - added: ability to use encrypted passwords in the config file 206 - fixed: support for http://www.sho.rt/bleh and http://sho.rt/bleh 207 - added: support for any favicon dropped in the /user directory 208 - updated: Google Visualization API instead of deprecated Google Charts 209 - fixed: bugs, bugs, bugs 210 - added: hooks, hooks, hooks 211 - improved: things, things, things 212 213 1.5 214 --- 215 - added: plugin architecture! OMG plugins!!1!!1! 216 - added: directory /user, config.php can be moved there 217 - added: new "instant bookmarklets" 218 - added: 1 click copy-to-clipboard a la bitly 219 - change in logic: now all request are handled by PHP and don't rely on .htaccess 220 - added: saving URL titles 221 - added: support for prefix-n-shorten: sho.rt/http://example.com/ 222 - added: core plugin to allow hyphens in URLs 223 - added: core sample plugin to wrap redirected URLs in a social toolbar 224 - added: core sample plugin to show how to create administration page in plugins 225 - added: core plugin to display a random pretty background 226 - changed: layout now using a more consistent palette, see http://yourls.org/palette 227 - added: anti XSS and anti CSRF measures 228 - added: interactive map if possible in stat traffic by countries 229 - fixed: lots of bugs 230 231 1.4.3 232 ----- 233 - fixed bug no-stats-showing-ffs due to inconsistency in DB schema 234 - improve error reporting with API method url-stat 235 236 1.4.2 237 ----- 238 - fixed: bug in auth function 239 - added: sample public API file 240 - added: check in API requests for WordPress plugin when adding a new short URL 241 - prettier sample public interface 242 243 1.4.1 244 ----- 245 - fixed: base 62 URLs (keywords with MiXeD CaSe) 246 - new & secure auth method for API calls, with no need to use login & password combo 247 - allow SSL enforcement for admin pages 248 - new API method: stats for individual URL. 249 - prevent internal redirection loops 250 - filter and search URLs & short URLs by date 251 252 1.4 253 --- 254 - added: an upgrader from 1.3 to 1.4 255 - change in logic: now using a global object $ydb for everything related to DB and other globally needed stuff 256 - change in logic: include "load-yourls.php" instead of "config.php" to start engine 257 - change in DB schema: now storing URLs with their keyword as used in shorturl, allowing for any keyword length 258 - change in DB schema: new table for storing various options including next_id, dropping table of the same name 259 - change in DB schema: new table for storing hits (for stats) 260 - improved the installer, with .htaccess file creation 261 - layout tweak: now prettier, isn't it? 262 - stats! OMG stats! 263 264 1.3-RC1 265 ------- 266 - added bookmarklet and tools page 267 - improved XSS filter when adding new URL 268 - code cleanup in admin/index.php to separate code and display 269 - added favicon 270 - stricter coding to prevent notices with undefined indexes 271 - hide PHP notices & SQL errors & warnings, unless YOURLS_DEBUG constant set to true 272 273 1.2 274 --- 275 - don't remember. A few tiny stuff for sure. 276 277 1.1 278 --- 279 - don't remember. Some little bugs I guess. 280 281 1.0.1 282 ----- 283 - don't remember. Trivial stuff probably. 284 285 1.0 286 --- 287 - initial release
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Sat Jul 11 05:10:54 2026 | Cross-referenced by PHPXref 0.7.1 |