a:2:{i:0;a:2:{s:3:"cms";a:4:{s:6:"status";s:8:"eligible";s:8:"releases";a:85:{i:0;a:4:{s:7:"version";s:6:"3.9.14";s:8:"critical";b:1;s:5:"notes";s:48:"
- Fixed an RCE vulnerability.
";s:4:"date";s:19:"2024-12-19T00:00:00";}i:1;a:4:{s:7:"version";s:6:"3.9.13";s:8:"critical";b:0;s:5:"notes";s:244:"
- The Craft 4 Upgrade utility now shows the upgrade status and latest compatible version for abandoned plugins.
- Fixed a bug where the Updates utility could include submit buttons without labels for abandoned plugins.
";s:4:"date";s:19:"2024-04-03T00:00:00";}i:2;a:4:{s:7:"version";s:6:"3.9.12";s:8:"critical";b:0;s:5:"notes";s:133:"
- Craft no longer shows an alert when an installed Craft/plugin edition is a lower tier than the licensed edition.
";s:4:"date";s:19:"2024-03-19T00:00:00";}i:3;a:4:{s:7:"version";s:6:"3.9.11";s:8:"critical";b:0;s:5:"notes";s:712:"
- Fixed a bug where
craft\web\Request::getIsPreview()
was returning true
for requests with expired tokens. (#14066)
- Fixed a bug where asset conflict resolution modals were closing prematurely if there were multiple conflicts. (#14045, #14405)
- Fixed a bug where the Shift + Spacebar keyboard shortcut for previewing assets was only working for the first selected asset, rather than the focussed one.
- Fixed a potential SSTI vulnerability.
";s:4:"date";s:19:"2024-03-05T00:00:00";}i:4;a:4:{s:7:"version";s:6:"3.9.10";s:8:"critical";b:0;s:5:"notes";s:417:"
- Fixed a bug where meta fields weren’t immediately showing change indicators when entries were autosaved.
- Fixed a bug where the
index-assets/one
command was overly-destructive when run with a subpath and the --delete-missing-assets
option. (#14087)
- Fixed a privilege escalation vulnerability.
";s:4:"date";s:19:"2024-01-02T00:00:00";}i:5;a:4:{s:7:"version";s:5:"3.9.6";s:8:"critical";b:0;s:5:"notes";s:64:"
- Fixed a privilege escalation vulnerability.
";s:4:"date";s:19:"2023-11-16T00:00:00";}i:6;a:4:{s:7:"version";s:5:"3.9.5";s:8:"critical";b:0;s:5:"notes";s:884:"
- Added
pgpassword
and pwd
to the list of keywords that Craft will look for when determining whether a value is sensitive and should be redacted from logs, etc.
- Fixed a bug where the
defaultDirMode
config setting wasn’t being respected when the storage/runtime/
and storage/logs/
folders were created. (#13756)
- Fixed a bug where the
CRAFT_VENDOR_PATH
, CRAFT_BASE_PATH
, CRAFT_CONFIG_PATH
, CRAFT_CONTENT_MIGRATIONS_PATH
, CRAFT_STORAGE_PATH
, CRAFT_TEMPLATES_PATH
, CRAFT_TRANSLATIONS_PATH
, and CRAFT_TESTS_PATH
PHP constants weren’t being respected if the directories didn’t exist.
- Fixed RCE vulnerabilities.
";s:4:"date";s:19:"2023-10-17T00:00:00";}i:7;a:4:{s:7:"version";s:5:"3.9.4";s:8:"critical";b:0;s:5:"notes";s:493:"
- Added
craft\helpers\App::phpExecutable()
.
- Added
craft\helpers\Component::cleanseConfig()
.
craft\helpers\Component::createComponent()
now filters out as X
and on X
keys from the component config.
- Improved the reliability of Composer operations when PHP is running via FastCGI. (#13681)
- Fixed an RCE vulnerability.
";s:4:"date";s:19:"2023-09-26T00:00:00";}i:8;a:4:{s:7:"version";s:5:"3.9.3";s:8:"critical";b:0;s:5:"notes";s:365:"
- Added the
maxGraphqlBatchSize
config setting. (#13693)
- Fixed a bug where page sidebars and detail panes weren’t scrolling properly if their height was greater than the main content pane height. (#13637)
";s:4:"date";s:19:"2023-09-14T00:00:00";}i:9;a:4:{s:7:"version";s:5:"3.9.2";s:8:"critical";b:0;s:5:"notes";s:797:"
- Added
SK
to the list of keywords that Craft will look for when determining whether a value is sensitive and should be redacted from logs, etc. (#3619)
- Improved the scrolling behavior for page sidebars and detail panes. (#13637)
- Fixed an error that could occur when saving an element with an Assets field from a console command. (#13623)
- Fixed a bug where the “Active Trials” section in the Plugin Store cart modal wasn’t listing plugins in trial. (#13661)
- Fixed two RCE vulnerabilities.
";s:4:"date";s:19:"2023-09-12T00:00:00";}i:10;a:4:{s:7:"version";s:5:"3.9.1";s:8:"critical";b:0;s:5:"notes";s:230:"
- Fixed an error that could occur when Craft was performing a Composer operation, if no
HOME
environment variable was set for PHP. (#13590)
";s:4:"date";s:19:"2023-08-23T00:00:00";}i:11;a:4:{s:7:"version";s:5:"3.9.0";s:8:"critical";b:0;s:5:"notes";s:716:"
- Updated Yii to 2.0.48.1. (#13444)
- Loosened the Composer constraint to
^2.2.19
. (#13396)
- Internal Composer operations now use a bundled
composer.phar
file, rather than Composer’s PHP API. (#13519)
craft\services\Assets::getAllDescendantFolders()
now has an $asTree
argument. (#13535)
- Fixed a bug where asset exports could be blank if only subfolders were selected.
";s:4:"date";s:19:"2023-08-22T00:00:00";}i:12;a:4:{s:7:"version";s:6:"3.8.17";s:8:"critical";b:0;s:5:"notes";s:507:"
- Fixed a bug where
Craft.BaseElementIndexView::this.canSelectElement()
wasn’t getting applied for lazy-loaded elements.
- Fixed a bug where setting an element query’s
status
param to archived
would always yield zero results. (#13465)
- Fixed a bug where
update
commands could fail on some environments.
- Fixed an information disclosure vulnerability.
";s:4:"date";s:19:"2023-08-08T00:00:00";}i:13;a:4:{s:7:"version";s:6:"3.8.16";s:8:"critical";b:0;s:5:"notes";s:206:"
- The “Access the control panel” user permission now includes a warning that the permission grants view-only access to user data and most content.
- Fixed an RCE vulnerability.
";s:4:"date";s:19:"2023-07-18T00:00:00";}i:14;a:4:{s:7:"version";s:6:"3.8.15";s:8:"critical";b:0;s:5:"notes";s:371:"
- The control panel footer now includes a message about active trials, with a link to purchase the licenses.
- Fixed an error that occurred when passing arguments to an element’s
prev
and next
fields via GraphQL. (#13334)
- Fixed an RCE vulnerability.
";s:4:"date";s:19:"2023-07-03T00:00:00";}i:15;a:4:{s:7:"version";s:6:"3.8.14";s:8:"critical";b:0;s:5:"notes";s:493:"
- The
_includes/forms/date
and _includes/forms/time
templates now accept a timeZone
variable.
- Fixed an error that could occur when updating a plugin with the
craft update
command, if it provided a new migration but still had the same schema version.
- Fixed an error that occurred when rendering editable tables with Date or Time columns. (#13270)
";s:4:"date";s:19:"2023-06-13T00:00:00";}i:16;a:4:{s:7:"version";s:6:"3.8.13";s:8:"critical";b:0;s:5:"notes";s:550:"
- Fixed a bug where asset sources weren‘t immediately showing a source path on a clear
localStorage
cache.
- Fixed a JavaScript error that could occur when searching within an asset index, when there was no source path. (#13241)
- Fixed a bug where Date fields with “Show Time Zone” enabled were displaying their values in the system’s time zone within element indexes. (#13233)
";s:4:"date";s:19:"2023-05-24T00:00:00";}i:17;a:4:{s:7:"version";s:6:"3.8.12";s:8:"critical";b:0;s:5:"notes";s:1118:"
- Asset indexes now remember their previously-selected source path. (#13147)
- Added
craft\base\ElementInterface::sourcePath()
.
- Improved
craft\helpers\FileHelper::getExtensionByMimeType()
for some ambiguous, web-friendly MIME types.
- Removed the OAuth 2.0 Client library, as it’s no longer used in core.
- Fixed a bug where activation emails sent to newly-created users could link to the front-end site, if they were granted control panel access via a user group. (#13204)
- Fixed a bug where it wasn’t possible to drag Verbb Navigation nodes via their drag handles. (#12896)
- Fixed a bug where Date fields could display the wrong date. (#13233)
- Deprecated the
Craft.startsWith()
JavaScript method. String.prototype.startsWith()
should be used instead.
";s:4:"date";s:19:"2023-05-23T00:00:00";}i:18;a:4:{s:7:"version";s:6:"3.8.11";s:8:"critical";b:0;s:5:"notes";s:444:"
- Fixed a SQL error that could occur when updating to Craft 3.8 on PostgreSQL. (#13186)
- Fixed a JavaScript error that occurred for Matrix inputs with static blocks. (#13194)
- Fixed the vertical alignment of element labels. (#13168)
";s:4:"date";s:19:"2023-05-15T00:00:00";}i:19;a:4:{s:7:"version";s:8:"3.8.10.2";s:8:"critical";b:0;s:5:"notes";s:184:"
- Fixed a bug where it wasn’t possible to add new Matrix blocks via the “Add a block” menu. (#13177)
";s:4:"date";s:19:"2023-05-10T00:00:00";}i:20;a:4:{s:7:"version";s:8:"3.8.10.1";s:8:"critical";b:0;s:5:"notes";s:182:"- Fixed a bug where it wasn’t possible to add new Matrix blocks via the “Add a block” menu. (#13177)
";s:4:"date";s:19:"2023-05-09T00:00:00";}i:21;a:4:{s:7:"version";s:6:"3.8.10";s:8:"critical";b:0;s:5:"notes";s:337:"
- Fixed a “Double-instantiating a menu button on an element” console warning that occurred on pages with Matrix fields. (#6338)
- Fixed an error that could occur when running tests. (#13076)
";s:4:"date";s:19:"2023-05-09T00:00:00";}i:22;a:4:{s:7:"version";s:5:"3.8.9";s:8:"critical";b:0;s:5:"notes";s:600:"
- Volumes no longer validate if their field layout contains a field called
extension
, filename
, height
, kind
, size
, or width
.
- Fixed a bug where queue-runner Ajax requests triggered on the front end weren’t getting closed before running the queue, potentially causing long front-end load delays.
- Fixed a bug where long element titles weren’t wrapping. (#13143)
- Fixed a user enumeration timing attack vulnerability.
";s:4:"date";s:19:"2023-05-02T00:00:00";}i:23;a:4:{s:7:"version";s:5:"3.8.8";s:8:"critical";b:0;s:5:"notes";s:1568:"
- Fixed a bug where it was possible to select a disallowed volume as the Default Asset Location in Assets field settings. (#13072)
- Fixed a bug where it was possible to upload files to Assets fields outside of the allowed volumes, if the Default Asset Location was set to a disallowed volume. (#13072)
- Fixed an error that could occur if a Plain Text field had over 1,000,000 bytes. (#13083)
- Fixed a bug where relational field values weren’t yielding any results for event handlers immediately after a draft had been merged. (#13087)
- Fixed a bug where element labels could bleed out of their container. (#13099)
- Fixed an error that occurred if
yii\web\UrlManager::addRules()
was called on a console request. (#13109)
- Fixed a bug where it was possible to select the current folder as the target when moving a volume folder, resulting in the folder and its contents being lost. (#13118)
- Fixed a bug where custom field values weren’t getting saved for assets in the local temp upload location. (#12695)
";s:4:"date";s:19:"2023-04-25T00:00:00";}i:24;a:4:{s:7:"version";s:5:"3.8.7";s:8:"critical";b:0;s:5:"notes";s:984:"
- Improved the control panel styling when the Debug Toolbar is enabled.
- Boolean config settings that are set to the strings
'true'
, 'false'
, or 'null'
are now converted to true
, false
, and null
. (#13063)
craft\web\View::renderObjectTemplate()
now trims the returned template output.
- Fixed a bug where the Entries index page was listing unpublished drafts created by other users, even if the current user didn’t have permission to edit them.
- Fixed a bug where Matrix fields weren’t counting disabled blocks when enforcing their Min Blocks settings. (#13059)
- Fixed a bug where volume folder modals’ sidebars and content were being cut off. (#13074)
";s:4:"date";s:19:"2023-04-11T00:00:00";}i:25;a:4:{s:7:"version";s:5:"3.8.6";s:8:"critical";b:0;s:5:"notes";s:2723:"
- Content tab menus now reveal when a tab contains validation errors, and invalid tabs’ menu options get the same warning icon treatment as inline tabs do. (#12971)
- Element index bulk action spinners are now centered on the viewport. (#12972)
- All control panel errors are new presented via error notifications rather than browser alerts. (#13024)
- Fixed a bug where Assets fields weren’t respecting their View Mode setting when viewing entry revisions. (#12948)
- Fixed a bug where some relational fields were showing duplicate selected relations. (#12949)
- Fixed a bug where asset pagination was broken when there was more than 100 subfolders. (#12969)
- Fixed a bug where entry index pages’ “Revision Notes” and “Last Edited By” columns weren’t getting populated for disabled entries. (#12981)
- Fixed a JavaScript error that occurred when closing a disclosure menu within Live Preview. (#12992)
- Fixed a bug where assets were getting relocated to the root volume folder when renamed. (#12995)
- Fixed a bug where it wasn’t possible to preview entries on another domain when the system was offline. (#12979)
- Fixed a bug where users were able to access volumes they didn’t have permission to view via Assets fields. (#13006)
- Fixed a bug where soft hyphens, non-breaking spaces, zero-width characters, invisible characters, and byte order marks weren’t getting stripped from sanitized asset filenames. (#13029)
- Fixed a bug where the Plugin Store wasn’t accurately reporting installed plugins’ license statuses. (#12986)
- Fixed a bug where the Plugin Store wasn’t handling 403 API responses for cart operations properly, once a cart had been handed off to Craft Console and assigned to an organization. (#12916)
- Fixed an XSS vulnerability.
";s:4:"date";s:19:"2023-04-04T00:00:00";}i:26;a:4:{s:7:"version";s:5:"3.8.5";s:8:"critical";b:0;s:5:"notes";s:730:"
- Fixed a bug where relation data was getting deleted when running garbage collection on PostgreSQL. (#9905)
- Fixed a bug where Lightswitch fields’ “OFF Label” and “ON Label” settings weren’t getting translated. (#12942)
- Fixed a bug where
craft\events\DefineUserContentSummaryEvent::$userId
was never set for craft\controllers\EVENT_DEFINE_CONTENT_SUMMARY
events. (#12944)
- Updated svg-sanitizer to 0.16. (#12943)
";s:4:"date";s:19:"2023-03-21T00:00:00";}i:27;a:4:{s:7:"version";s:5:"3.8.4";s:8:"critical";b:0;s:5:"notes";s:839:"
- The
|json_encode
Twig filter now calls craft\helpers\Json::encode()
internally, improving error handling. (#12919)
craft\helpers\Json::encode()
no longer sets the JSON_UNESCAPED_SLASHES
flag by default.
- Fixed a JavaScript error that occurred when resolving an asset move conflict. (#12920)
- Fixed a bug where volume subfolders were being shown when viewing soft-deleted assets. (#12927)
- Fixed a bug where structure data was getting deleted when running garbage collection on PostgreSQL. (#12925)
";s:4:"date";s:19:"2023-03-20T00:00:00";}i:28;a:4:{s:7:"version";s:5:"3.8.3";s:8:"critical";b:0;s:5:"notes";s:1126:"
- Customize Sources modals no longer hide when the Esc key is pressed on the surrounding area is clicked on. (#12895)
- Added
craft\helpers\FileHelper::uniqueName()
.
- Fixed an error that occurred when uploading an asset with a filename over 250 characters long. (#12889)
- Fixed an error that could occur when preparing licensing alerts, if any licenses were invalid. (#12899)
- Fixed a bug where it wasn’t possible to drag nested Neo blocks. (#12896)
- Fixed a bug where fields with reduced widths in Matrix blocks were becoming full-width while dragged. (#12909)
- Fixed a bug where multi-edition plugins weren’t showing their edition labels within the Plugin Store cart. (#12910)
";s:4:"date";s:19:"2023-03-16T00:00:00";}i:29;a:4:{s:7:"version";s:5:"3.8.2";s:8:"critical";b:0;s:5:"notes";s:605:"
- Fixed a bug where it wasn’t always possible to access entry or category edit pages if the
slugWordSeparator
config setting was set to /
. (#12871)
- Fixed a bug where
craft\helpers\Html::parseTagAttribute()
wasn’t decoding attribute values, which could lead to double-encoded attributes, e.g. when using the |attr
filter. (#12887)
- Fixed XSS vulnerabilities.
- Fixed an SSRF vulnerability.
";s:4:"date";s:19:"2023-03-14T00:00:00";}i:30;a:4:{s:7:"version";s:5:"3.8.1";s:8:"critical";b:0;s:5:"notes";s:915:"
- Fixed a bug where it wasn’t possible to select subfolders on the Assets index page. (#12802)
- Fixed a bug where element index search inputs were losing focus when the element listing was updated. (#12846)
- Fixed a bug where the database driver was being referenced as “MySQL” when using MariaDB. (#12827)
- Fixed a bug where users weren’t able to select assets within Assets fields, if they didn’t have full permissions for the volume. (#12851)
- Fixed a bug where the Assets index page’s URL would get updated incorrectly when renaming a subfolder.
- Added
craft\db\Connection::getDriverLabel()
.
";s:4:"date";s:19:"2023-03-09T00:00:00";}i:31;a:4:{s:7:"version";s:5:"3.8.0";s:8:"critical";b:0;s:5:"notes";s:5012:"Content Management
- Volume subfolders are now displayed within the element listing pane on asset indexes, rather than as nested sources in the sidebar. (#12558, #9171, #5809)
- Asset indexes now display the current subfolder path above the element listing. (#12558)
- Assets and folders can now be drag-and-dropped simultaneously. (#12792)
- Reduced the likelihood of accidentally triggering an asset drag operation. (#12792)
- Reduced the likelihood of accidentally dropping dragged assets/folders on an unintended target. (#12792)
- It’s now possible to move volume folders and assets to a new location via a new “Move…” bulk element action, rather than via drag-and-drop interactions. (#12558)
- It’s now possible to sort asset indexes by image width and height. (#12653)
Administration
- Most licensing issues are now consolidated into a single control panel alert, with a button to resolve them all with a single purchase on Craft Console. (#12768)
- Added the
users/unlock
console command. (#12345)
- The
utils/prune-revisions
console command now has a --section
option. (#8783)
Development
- Added the
revisionNotes
field to elements queried via GraphQL. (#12610)
craft\elements\Asset::getMimeType()
now has a $transform
argument, and assets’ mimeType
GraphQL fields now support a @transform
directive. (#12269, #12397, #12522)
Extensibility
- Added support for private plugins. (#12716, #8908)
- Element source definitions can now include a
defaultSourcePath
key.
- Added
craft\base\ApplicationTrait::getEditionHandle()
.
- Added
craft\base\Element::indexElements()
.
- Added
craft\base\ElementInterface::findSource()
.
- Added
craft\base\ElementInterface::indexElementCount()
.
- Added
craft\db\Migration::dropForeignKeyIfExists()
.
- Added
craft\models\VolumeFolder::getHasChildren()
.
- Added
craft\models\VolumeFolder::setHasChildren()
.
- Added
craft\services\Assets::createFolderQuery()
.
- Added
craft\services\Assets::foldersExist()
.
- Added
craft\services\Search::normalizeSearchQuery()
.
- Added
Craft.AssetMover
.
- Added
Craft.BaseElementIndex::getSourcePathActionLabel()
.
- Added
Craft.BaseElementIndex::getSourcePathActions()
.
- Added
Craft.BaseElementIndex::getSourcePathLabel()
.
- Added
Craft.BaseElementIndex::onSourcePathChange()
.
- Added
Craft.BaseElementIndex::sourcePath
.
- Added
Craft.BaseElementSelectorModal::getElementIndexParams()
.
- Added
Craft.BaseElementSelectorModal::getIndexSettings()
.
- Added
Craft.BaseElementSelectorModal::hasSelection()
.
- Added
Craft.VolumeFolderSelectorModal
.
- Deprecated
craft\helpers\Assets::sortFolderTree()
.
- Deprecated
craft\services\Assets::getFolderTreeByFolderId()
.
- Deprecated
craft\services\Assets::getFolderTreeByVolumeIds
.
- The custom
activate
jQuery event will now trigger when the Return key is pressed.
- The custom
activate
jQuery event will no longer trigger for Ctrl/Command-clicks.
System
- Fixed a database deadlock error that could occur when updating a relation or structure position for an element that was simultaneously being saved. (#9905)
";s:4:"date";s:19:"2023-03-08T00:00:00";}i:32;a:4:{s:7:"version";s:6:"3.7.68";s:8:"critical";b:0;s:5:"notes";s:1624:"
- Fixed a bug where
craft\events\RegisterElementSourcesEvent::$context
wasn’t always set to modal
when defining the available element sources for an element selection modal.
- Fixed a styling bug where multi-line checkbox labels within the Customize Sources modal weren’t wrapping properly. (#12717)
- Fixed a bug where asset thumbnails within collapsed Matrix blocks weren’t loading when the block was expanded. (#12720)
- Fixed a bug where custom fields’ database columns would get deleted when applying project config changes, if the field type wasn’t present. (#12760)
- Fixed a bug where Assets, Categories, and Tags fields weren’t respecting their “Allow self relations” settings. (#12769)
- Fixed a bug where dynamically-generated entry titles weren’t always generated with the site’s formatting locale in place. (12780)
- Fixed a bug where element titles weren’t getting a pointer cursor or underlines on hover, when selected on an element index page.
- Fixed a bug where it wasn’t possible to close modals that were opened by a custom select menu via the
<kbd>Esc</kbd>
key. (#12814)
- Fixed an XSS vulnerability.
";s:4:"date";s:19:"2023-03-07T00:00:00";}i:33;a:4:{s:7:"version";s:6:"3.7.67";s:8:"critical";b:0;s:5:"notes";s:353:"
- Fixed a bug where clicking on the scrollbar of a disclosure menu would close it. (#12681)
- Fixed an error that could occur when loading the Plugin Store, if there wasn’t a
.env
file. (#12687)
";s:4:"date";s:19:"2023-02-17T00:00:00";}i:34;a:4:{s:7:"version";s:6:"3.7.66";s:8:"critical";b:0;s:5:"notes";s:878:"
- HTML Purifier now allows
oembed
tags. (ckeditor#59)
- Added
craft\htmlpurifier\VideoEmbedUrlDef
.
- Fixed a bug where entries that aren’t propagated to the primary site weren’t showing revision notes. (#12641)
- Fixed a bug where HTML tags weren’t getting stripped from auto-generated Handle and URI Format setting values.
- Fixed a JavaScript error that could occur if an object with
null
values was passed to Craft.compare()
.
- Fixed a bug where
craft\elements\db\ElementQuery::toArray()
was calling getter methods whose names conflicted with custom field handles. (#12635)
";s:4:"date";s:19:"2023-02-14T00:00:00";}i:35;a:4:{s:7:"version";s:8:"3.7.65.2";s:8:"critical";b:0;s:5:"notes";s:219:"
- Fixed a PHP error that could occur if relational fields were getting eager-loaded for elements that the fields didn’t belong to. (#12648)
";s:4:"date";s:19:"2023-02-08T00:00:00";}i:36;a:4:{s:7:"version";s:8:"3.7.65.1";s:8:"critical";b:0;s:5:"notes";s:380:"
- Fixed a PHP error that occurred after performing a Composer action within Craft. (#12647)
- Fixed a bug where element attributes weren’t getting eager-loaded. (#12646, #12645)
";s:4:"date";s:19:"2023-02-08T00:00:00";}i:37;a:4:{s:7:"version";s:6:"3.7.65";s:8:"critical";b:0;s:5:"notes";s:627:"
- Updated Composer to 2.2.19, fixing a PHP error that could occur when performing a Composer action within Craft, when the autoload classmap was generated with Composer 2.5. (#12482)
- Fixed a bug where Matrix blocks weren’t getting eager-loaded. (#12631)
- Fixed a PHP error that could occur when calling
craft\services\Assets::getAllDescendantFolders()
for the root folder. (craftcms/feed-me#1231)
";s:4:"date";s:19:"2023-02-07T00:00:00";}i:38;a:4:{s:7:"version";s:8:"3.7.64.1";s:8:"critical";b:0;s:5:"notes";s:238:"
- Fixed a bug where
craft\behaviors\CustomFieldBehavior::$owner
was getting nullified by craft\base\Element::fieldByHandle()
. (#12624)
";s:4:"date";s:19:"2023-02-05T00:00:00";}i:39;a:4:{s:7:"version";s:6:"3.7.64";s:8:"critical";b:0;s:5:"notes";s:4731:"
- Improved the performance of the “Generating pending image transforms” queue job. (#12274)
- Added more reserved field handles to avoid conflicts with
craft\base\Element
properties. (#12577)
- Control panel requests no longer override the
pageTrigger
config setting value to 'p'
. (#12598, #12614)
- Fixed field status badge styling in some contexts. (#12403)
- Fixed a bug where exporting elements with multiple field layouts as a CSV file using the “Expanded” export type would result in mismatched column values.
- Fixed a bug where cancelling a conflicting volume folder move would result in the moved folder getting deleted.
- Fixed a bug where Date and Number fields could be misinterpreted in category Live Preview requests, if the site’s language used different date/number formats than the user’s formatting locale.
- Fixed a bug where the horizontal scroll position wasn’t being retained when refreshing Live Preview. (#12504)
- Fixed a bug where HTML tags within field labels, instructions, tips, and warnings weren’t always getting escaped.
- Fixed a bug where the sidebar scroll position wasn’t retained when selecting a new source on element index pages. (#12523)
- Fixed a bug where
resave/*
commands’ output didn’t take the offset into account. (#12526)
- Fixed a bug where warnings were getting logged for video assets that were “missing” their dimensions.
- Fixed a bug where
craft\services\Assets::getAllDescendantFolders()
could return unexpected results for folders that contained an underscore.
- Fixed a bug where accessing a custom field’s magic property on an element would return the field’s raw database value rather than
null
, if it didn’t belong to the element’s field layout anymore. (#12539, #12578)
- Fixed a bug where
craft\image\Raster::getIsTransparent()
wasn’t working. (#12565)
- Fixed a bug where the component name comments in project config YAML files would always lag behind the current project config a little. (#12576, #12581)
- Fixed a SQL error that occurred when creating a database backup using the default backup command, when running MySQL 5.7.41+ or 8.0.32+. (#12557, #12560)
- Fixed a bug where database backups weren’t respecting SSL database connection settings if they were specified when using MySQL. (#10351, #11753, #12596)
- Fixed a bug where element indexes could stop showing their loading spinner prematurely if the element listing needed to be reloaded multiple times in rapid succession. (#12595)
- Fixed a bug where element indexes would show show an expand/collapse toggle for structured elements that only had unsaved draft children, which aren’t actually shown. (#11253)
- Added
craft\helpers\Db::escapeForLike()
.
- Added
craft\web\twig\variables\Paginate::$pageTrigger
. (#12614)
craft\services\Assets::getAllDescendantFolders()
now has a $withParent
argument, which can be passed false
to omit the parent folder from the results. (#12536)
- Deprecated
craft\helpers\DateTimeHelper::timeZoneAbbreviation()
.
- Deprecated
craft\helpers\DateTimeHelper::timeZoneOffset()
.
";s:4:"date";s:19:"2023-02-03T00:00:00";}i:40;a:4:{s:7:"version";s:8:"3.7.63.1";s:8:"critical";b:0;s:5:"notes";s:182:"
- Fixed a bug where editing certain Matrix/Neo/Super Table fields could result in content loss. (#12445)
";s:4:"date";s:19:"2023-01-09T00:00:00";}i:41;a:4:{s:7:"version";s:6:"3.7.63";s:8:"critical";b:0;s:5:"notes";s:1726:"
- Template caching is no longer enabled for tokenized requests. (#12458)
- Elisions are now stripped from search keywords. (#12467, #12474)
- Added support for HEIC/HEIF images. (#9115)
- The
allowedFileExtensions
config setting now includes heic
, heif
, and hevc
by default. (#12490)
- It’s now possible to assign aliases
children
fields queried via GraphQL. (#12494)
- Added
craft\helpers\Image::isWebSafe()
.
- Added
craft\services\Images::getSupportsHeic()
.
Craft.MatrixInput
now fires blockSortDragStop
, beforeMoveBlockUp
, moveBlockUp
, beforeMoveBlockDown
, and moveBlockDown
events. (#12498)
- Fixed an error that could occur when processing template caches in a console request, if a globally-scoped template cache was processed before it.
- Fixed a bug where some custom field property types in
craft\behaviors\CustomFieldBehavior
were incorrect.
- Fixed an error that could occur if a Matrix sub-field’s handle was too long. (#12422)
- Updated Imagine to 1.3.3.
";s:4:"date";s:19:"2023-01-04T00:00:00";}i:42;a:4:{s:7:"version";s:6:"3.7.62";s:8:"critical";b:0;s:5:"notes";s:510:"
- Fixed a bug where it wasn’t possible to enter
0
in Number fields and numeric column cells within editable tables, using certain keyboard layouts. (#12412)
- Fixed a JavaScript error that could occur when autosaving an entry draft. (#12445)
- Added
Craft.filterInputVal()
.
- Added
Craft.filterNumberInputVal()
.
";s:4:"date";s:19:"2022-12-13T00:00:00";}i:43;a:4:{s:7:"version";s:6:"3.7.61";s:8:"critical";b:0;s:5:"notes";s:461:"
- Fixed an error that occurred if an arrow function was passed to the
|sort
Twig filter. (#12334)
- Fixed a bug where nested fields set to numbers could be inadvertently changed when an entry draft was created.
craft\services\Fields::getFieldsWithContent()
and getFieldsWithoutContent()
now have $context
arguments.
";s:4:"date";s:19:"2022-11-17T00:00:00";}i:44;a:4:{s:7:"version";s:6:"3.7.60";s:8:"critical";b:0;s:5:"notes";s:1376:"
- Fixed an information disclosure vulnerability.
- Fixed an XSS vulnerability.
- Fixed a bug where
resave/*
commands weren’t catching exceptions thrown when applying the --set
and --to
options. (#12262)
- Fixed a bug where the
|group
Twig filter was logging a deprecation warning when passed an element query.
- Fixed a bug where
craft\elements\Entry::getIsEditable()
was returning false
for enabled entries, if the logged-in user had the “Publish live changes” permission but not “Publish live changes for other authors’ entries”. (#12315)
- Fixed a bug where element indexes were showing the labels of empty Dropdown options when selected. (#12319)
- Fixed an error that occurred when saving an entry via GraphQL, if a parent entry was assigned that didn’t exist on the requested site. (#12291)
- Fixed a bug where fields set to numbers could be inadvertently changed when an entry draft was created.
- Added
craft\services\Fields::getFieldsWithoutContent()
.
";s:4:"date";s:19:"2022-11-16T00:00:00";}i:45;a:4:{s:7:"version";s:6:"3.7.59";s:8:"critical";b:0;s:5:"notes";s:689:"
- Asset folder and file names are now converted to ASCII using the primary site’s language for character mappings, regardless of the current user’s preferred language, when the
convertFilenamesToAscii
config setting is enabled. (#12207)
- Fixed a JavaScript 404 error that occurred when users’ Language was set to Chinese. (#12194)
- Fixed an error that could occur during garbage collection, if any nested volume folders were missing their path. (#12195)
";s:4:"date";s:19:"2022-10-27T00:00:00";}i:46;a:4:{s:7:"version";s:6:"3.7.58";s:8:"critical";b:0;s:5:"notes";s:165:"Fixed
- Fixed a bug where Entry URI Format and Template inputs were editable within sections’ Site Settings tables, for disabled sites.
";s:4:"date";s:19:"2022-10-25T00:00:00";}i:47;a:4:{s:7:"version";s:6:"3.7.57";s:8:"critical";b:0;s:5:"notes";s:719:"Fixed
- Fixed an error that could occur when running tests. (#12088)
- Fixed a bug where the “Your session has ended” modal could be shown on the control panel’s login page. (#12121)
- Fixed an error that could occur in the control panel. (#12133)
- Fixed a bug where image transforms that used the
fit
mode but didn’t specify a width or height weren’t getting their missing dimension set on the asset. (#12137)
";s:4:"date";s:19:"2022-10-18T00:00:00";}i:48;a:4:{s:7:"version";s:6:"3.7.56";s:8:"critical";b:0;s:5:"notes";s:2924:"Added
- Added the
--as-json
option to the help
command. (#12017, #12074)
- Added
craft\helpers\ElementHelper::isAttributeEmpty()
.
- Added
craft\queue\jobs\ResaveElements::$ifEmpty
.
- Added
craft\queue\jobs\ResaveElements::$set
.
- Added
craft\queue\jobs\ResaveElements::$to
.
- Added
craft\queue\jobs\ResaveElements::$touch
.
Changed
- When passing a PHP callback function to the
--to
option of a resave/*
command, the $element
argument is now optional.
Deprecated
- Deprecated
craft\web\assets\focusvisible\FocusVisibleAsset
. (#12037)
Fixed
- Fixed a bug where
resave/*
commands weren’t respecting the --set
, --to
, or --touch
options when --queue
was passed. (#11974)
- Fixed an error that could occur when passing an element query to a
relatedTo
param, if the parent element query contained any closures. (#11981)
- Fixed a bug where unsaved drafts could be unintentionally deleted when saved, if a plugin or module was blocking the save via
EVENT_BEFORE_SAVE
. (#12015)
- Fixed a bug where “Propagating tags” jobs would fail if two tags had similar titles.
- Fixed a bug where image transforms weren’t getting sized correctly in some cases when
upscaleImages
was disabled. (#12023)
- Fixed a bug where table cells within Redactor fields could appear to be focused when they weren’t. (#12001, #12037)
- Fixed a bug where alerts saying a folder can’t be renamed due to a naming conflict were showing the old folder name instead of the new one. (#12049)
- Fixed a bug where Edit Entry pages were listing other authors’ drafts in the revision menu, for users who didn’t have permission to edit them.
- Fixed a bug where some GraphQL results could be missing if multiple sets of nested elements were being queried using the same alias. (#11982)
Security
- Fixed information disclosure vulnerabilities.
";s:4:"date";s:19:"2022-10-11T00:00:00";}i:49;a:4:{s:7:"version";s:8:"3.7.55.3";s:8:"critical";b:0;s:5:"notes";s:128:"Security
- Updated Twig to 2.15. (#12022)
";s:4:"date";s:19:"2022-10-03T00:00:00";}i:50;a:4:{s:7:"version";s:8:"3.7.55.2";s:8:"critical";b:0;s:5:"notes";s:66:"Security
- Fixed an XSS vulnerability.
";s:4:"date";s:19:"2022-09-22T00:00:00";}i:51;a:4:{s:7:"version";s:8:"3.7.55.1";s:8:"critical";b:0;s:5:"notes";s:657:"Fixed
- Fixed a bug where the “New category” button could be missing from the Categories index page. (#11977)
- Fixed a bug where
Craft::t()
and the |t
Twig filter were modifying digit-dash-digit sequences. (#11980)
- Fixed PHP errors that occurred if
webonyx/graphql-php
14.11.17 was installed. (#11979, webonyx/graphql-php#1221)
";s:4:"date";s:19:"2022-09-21T00:00:00";}i:52;a:4:{s:7:"version";s:6:"3.7.55";s:8:"critical";b:0;s:5:"notes";s:2429:"Added
- Added
craft\helpers\Image::targetDimensions()
.
Removed
- Removed the Punycode PHP library. (#11948)
Fixed
- Fixed a bug where image transforms weren’t always getting applied properly to all animation frames. (#11937)
- Fixed a bug where animated WebP images would lose their animation frames when transformed. (#11937)
- Fixed a bug where image transform dimensions could be calculated incorrectly when
upscaleImages
was false
. (#11837)
- Fixed an error that occurred when setting a non-numeric
width
or height
on an image transform. (#11837)
- Fixed a bug where
relatedTo*
arguments weren’t supported by children
fields in GraphQL. (#11918)
- Fixed a bug where Image Editor and slideout action buttons were obstructed when the Debug Toolbar was enabled. (#11965)
- Fixed an error that occurred when installing Craft when MySQL’s
sql_require_primary_key
setting was enabled. (#11374)
- Fixed a bug where invalid entries could be duplicated via the “Save as a new entry” action, despite the duplication appearing to have failed with validation errors. (#11959)
- Fixed a PHP error that could occur in a potential race condition when calling
craft\helpers\FileHelper::clearDirectory()
.
- Fixed a bug where Structure section entries that were duplicated via the “Save as a new entry” action on a provisional draft weren’t being placed within the structure properly.
- Fixed a bug where element’s
searchScore
properties would be set to null
when their original score was below 1, rather than rounding to 0 or 1. (#11973)
";s:4:"date";s:19:"2022-09-20T00:00:00";}i:53;a:4:{s:7:"version";s:6:"3.7.54";s:8:"critical";b:0;s:5:"notes";s:2104:"Changed
- Control panel menus now automatically reposition themselves when the window is resized.
resave/*
commands now have a --touch
option. When passed, elements’ dateUpdated
timestamps will be updated as they’re resaved. (#11849)
- Underscores within query param values that begin/end with
*
are now escaped, so they aren’t treated as wildcard characters by the like
condition. (#11898)
craft\services\Elements::resaveElements()
now has a $touch
argument.
Fixed
- Fixed a bug where element caches weren’t being invalidated during garbage collection, so hard-deleted elements could appear to still exist.
- Fixed an error that could occur when rendering front-end templates if there was a problem connecting to the database. (#11855)
- Fixed a bug where it was possible to save an asset with a focal point outside its cropped area. (#11875)
- Fixed a bug where the Assets index page wasn’t handling failed uploads properly. (#11866)
- Fixed a UI bug where renaming a newly-created volume subfolder didn’t appear to have any effect.
- Fixed a bug where empty URL fields would be marked as changed, even when no change was made to them. (#11908)
- Fixed a bug where transforming an animated GIF into a WebP file would only include the first frame. (#11889)
Security
- Password inputs no longer temporarily reveal the password when the Alt key is pressed. (#11930)
";s:4:"date";s:19:"2022-09-13T00:00:00";}i:54;a:4:{s:7:"version";s:8:"3.7.53.1";s:8:"critical";b:0;s:5:"notes";s:184:"Fixed
- Fixed a PHP error that occurred when garbage collection was run on web requests. (#11829)
";s:4:"date";s:19:"2022-08-26T00:00:00";}i:55;a:4:{s:7:"version";s:6:"3.7.53";s:8:"critical";b:0;s:5:"notes";s:1012:"Added
- Added
craft\services\Gc::removeEmptyTempFolders()
.
Changed
- If a plugin’s license key is set to an empty environment variable, its trial license key will now be stored in
.env
rather than the project config. (#11830)
- Empty subfolders within the temporary upload volume are now removed during garbage collection. (#10746)
Fixed
- Fixed a bug where the “Edit files uploaded by other users” volume permission was useless unless the “Upload files” permission had been granted. (#11818)
- Fixed a bug where the “Save and add another” entry action was being shown for users without the “Create entries” section permission. (#11819)
";s:4:"date";s:19:"2022-08-26T00:00:00";}i:56;a:4:{s:7:"version";s:6:"3.7.52";s:8:"critical";b:0;s:5:"notes";s:1085:"Changed
- Improved console output for the
gc
command.
- The
gc
command now runs garbage collection for data caches.
- Exception JSON responses now include
name
and code
keys. (#11799)
Fixed
- Fixed a bug where
iframeResizer.contentWindow.js
was getting loaded for all preview requests, not just Live Preview, and even when useIframeResizer
was disabled. (#11778)
- Fixed a bug where deleted relations and Matrix blocks could persist if the edit form was submitted before they had been fully animated away. (#11789)
- Fixed a PHP error that could occur if
craft\services\Assets::getUserTemporaryUploadFolder()
was called when there was no logged-in user account. (#11751)
";s:4:"date";s:19:"2022-08-23T00:00:00";}i:57;a:4:{s:7:"version";s:6:"3.7.51";s:8:"critical";b:0;s:5:"notes";s:2403:"Added
- Added the
project-config/export
command. (#11733)
Deprecated
- Deprecated
craft\services\Categories::pruneDeletedField()
. (#11054, #9567)
- Deprecated
craft\services\Globals::pruneDeletedField()
. (#11054, #9567)
- Deprecated
craft\services\Sections::pruneDeletedField()
. (#11054, #9567)
- Deprecated
craft\services\Tags::pruneDeletedField()
. (#11054, #9567)
- Deprecated
craft\services\Users::pruneDeletedField()
. (#11054, #9567)
- Deprecated
craft\services\Volumes::pruneDeletedField()
. (#11054, #9567)
Fixed
- Fixed a bug where the
project-config/apply
command could appear to end prematurely.
- Fixed a bug where not all project config changes would be applied if a field or site was deleted. (#9567)
- Fixed an error that could occur when saving an element to a disabled site. (#10499, #11741)
- Fixed a bug where
$
characters in database connection passwords weren’t being escaped property when backing up/restoring the database. (#11750)
- Fixed a bug where system messages provided by Yii weren’t getting translated in some cases. (#11712)
";s:4:"date";s:19:"2022-08-09T00:00:00";}i:58;a:4:{s:7:"version";s:6:"3.7.50";s:8:"critical";b:0;s:5:"notes";s:401:"Changed
- Treating element queries as arrays is no longer deprecated. (#11625)
- Using the
|length
filter on an element query is no longer deprecated. (#11625)
Security
- Fixed an XSS vulnerability.
";s:4:"date";s:19:"2022-07-26T00:00:00";}i:59;a:4:{s:7:"version";s:6:"3.7.49";s:8:"critical";b:0;s:5:"notes";s:1968:"Added
- The control panel is now translated into Ukrainian.
- Added
craft\helpers\Template::resolveTemplatePathAndLine()
.
Changed
- Deprecation warnings’ stack traces now show source templates’ paths and line numbers.
- Matrix block previews now show selected option labels rather than their raw values. (#11659)
- Exception JSON responses now include the previous exception details, recursively. (#11694)
Fixed
- Fixed a bug where deprecation warnings for treating an element query as an array weren’t getting logged with an origin, if they involved Twig’s
|batch
filter. (#11597)
- Fixed a bug where
{% js %}
, {% script %}
, and {% css %}
tags weren’t registering JavaScript and CSS code properly when used within a {% cache %}
tag that contained an ungenerated image transform. (#11602)
- Fixed a bug where the “User saved” notification was translated for the former language, when changing the current user’s language preference.
- Fixed a JavaScript error that occurred when removing a category from a Categories field, if any of its descendants were selected as well. (#11641)
- Fixed a bug where links to config settings from Settings → General didn’t include the correct setting anchors. (#11665)
- Fixed styling issues with Live Preview in Firefox.
Security
- Fixed an information disclosure vulnerability.
";s:4:"date";s:19:"2022-07-26T00:00:00";}i:60;a:4:{s:7:"version";s:6:"3.7.48";s:8:"critical";b:0;s:5:"notes";s:1297:"Changed
- Relation fields now focus on the next related element’s “Remove” button when an element is removed. (#11577)
Fixed
- Fixed a bug where Craft’s Composer commands could produce a malformed
composer.json
file. (#11564)
- Fixed a bug where date range inputs weren’t working on mobile. (#11571)
- Fixed a bug where the “Craft Support” Dashboard widget wasn’t being labeled properly in the widget settings HUD and delete confirmation dialog. (#11573)
- Fixed a bug where treating element queries as arrays wasn’t always logging deprecation warnings.
- Fixed a bug where the project config cache was getting invalidated on each public GraphQL API request.
- Fixed a bug where the “Status” label on Edit User pages was blank for suspended users.
- Fixed an error that could occur when an image transform was configured with a non-integer width or height. (#11587)
";s:4:"date";s:19:"2022-07-12T00:00:00";}i:61;a:4:{s:7:"version";s:8:"3.7.47.1";s:8:"critical";b:0;s:5:"notes";s:182:"Fixed
- Fixed a bug where asset bundles weren’t getting registered on the front end. (#11555)
";s:4:"date";s:19:"2022-07-06T00:00:00";}i:62;a:4:{s:7:"version";s:6:"3.7.47";s:8:"critical";b:0;s:5:"notes";s:432:"Changed
- Template caching is now supported for console requests, for
{% cache %}
tags that have the globally
param. (#11551)
- Updated Composer to 2.2.15. (#11538)
Fixed
- Fixed focus styling issues with the Edit Route modal.
";s:4:"date";s:19:"2022-07-05T00:00:00";}i:63;a:4:{s:7:"version";s:6:"3.7.46";s:8:"critical";b:0;s:5:"notes";s:904:"Added
- Added
craft\fields\BaseOptionsField::encodeValue()
.
Changed
canonical
is now a reserved field handle. (#11503)
craft\fields\BaseOptionsField::translatedOptions()
now has an $encode
argument.
Fixed
- Fixed a bug where
Garnish.setFocusWithin()
wasn’t working if the first focusable element was a checkbox. (#11498)
- Fixed a bug where Matrix blocks could be saved in the wrong order.
- Fixed a bug where Checkboxes, Dropdown, Multi-select, and Radio Buttons fields could lose their values if their option values were set to integers. (#11461)
";s:4:"date";s:19:"2022-06-28T00:00:00";}i:64;a:4:{s:7:"version";s:8:"3.7.45.2";s:8:"critical";b:0;s:5:"notes";s:406:"Fixed
- Fixed a SQL error that could occur on MySQL 5. (#11493)
- Fixed a bug where Craft’s Composer commands weren’t ensuring that
config.allow-plugins.yiisoft/yii2-composer
was true
in composer.json
. (#11399)
";s:4:"date";s:19:"2022-06-24T00:00:00";}i:65;a:4:{s:7:"version";s:8:"3.7.45.1";s:8:"critical";b:0;s:5:"notes";s:429:"Fixed
- Fixed a bug where it wasn’t possible to rename assets.
- Fixed a bug where a provisional draft could be created for an entry if its form was interacted with before the page had fully initialized. (#11466)
- Fixed exact phrase searching on PostgreSQL. (#11486)
";s:4:"date";s:19:"2022-06-21T00:00:00";}i:66;a:4:{s:7:"version";s:6:"3.7.45";s:8:"critical";b:0;s:5:"notes";s:3119:"Changed
- Improved performance when working with temp asset folders.
- Temp asset folders are no longer created until they’re actually needed. (#11427)
- Element index queries are no longer cached if they contain a search term.
- Search inputs within field layout designers now prevent the containing form from being submitted when the Return key is pressed. (#11415)
Fixed
- Fixed a bug where element types’
actions()
methods were getting called for all element-indexes/*
action requests.
- Fixed a bug where the
install
command would run non-interactively even if not all needed options were passed, resulting in an error after the database tables had been added. (#11305)
- Fixed a viewport clipping bug on the control panel’s Login page. (#11372)
- Fixed a bug where filtering an element query by a relational field using
:empty:
/:notempty:
wasn’t factoring in the field’s “Which site should entries be related from?” setting properly.
- Fixed a bug where filtering an element query by a relational field using
:empty:
/:notempty:
wasn’t factoring in the source elements’ site IDs, for fields set to manage relations on a per-site basis. (#11418)
- Fixed a bug where the Temporary Uploads asset source wasn’t including subfolders.
- Fixed a bug where file upload progress bars weren’t always going away when an upload error occurred.
- Fixed a bug where Pashto was not being treated as an RTL langauge. (#11428)
- Fixed a bug where the
upscaleImages
config setting wasn’t being respected for transforms where only a single image dimension was specified. (#11398)
- Fixed an error that could occur when executing a GraphQL query, if a section didn’t have any entry types. (#11273)
- Fixed an error that could occur when changing the primary site on installs with a large number of users. (#11459)
- Fixed a bug where Assets fields within Vizy fields weren’t getting relocated from the user’s temp uploads folder. (#11462)
Security
- Environment-aware control panel fields no longer suggest environment variables that begin with
HTTP_
.
- The Sendmail mailer no longer validates if the Sendmail Command setting is set to an enivornment variable that begins with
HTTP_
.
";s:4:"date";s:19:"2022-06-21T00:00:00";}i:67;a:4:{s:7:"version";s:6:"3.7.44";s:8:"critical";b:0;s:5:"notes";s:980:"Changed
- Read/write splitting is now disabled for all console requests.
- The
db/restore
command now prompts to clear data caches after the import is complete. (#11327)
- Entry queries no longer factor in seconds when looking for currently-live entries, without excluding entries that were published in the past minute. (#5389)
Fixed
- Fixed an error that could occur on PHP 8.1. (#11345)
- Fixed a bug where project config paths that contained slashes weren’t getting handled properly. (#10774)
- Fixed a bug where the Login page had a tab-focusable “Skip to content” button. (#11375)
";s:4:"date";s:19:"2022-06-03T00:00:00";}i:68;a:4:{s:7:"version";s:6:"3.7.43";s:8:"critical";b:0;s:5:"notes";s:1923:"Changed
- Reversed the order of Lightswitch fields’ “ON Label” and “OFF Label” settings. (#11259)
craft\services\Elements::duplicateElement()
now has a $trackDuplication
argument.
craft\services\Matrix::duplicateBlocks()
now has a $trackDuplications
argument.
Fixed
- Fixed a bug where editable tables’ delete buttons’
aria-label
attributes weren’t getting updated when table rows were reordered or deleted.
- Fixed a bug where editable tables’ delete buttons weren’t visually disabled when the minimum number of rows had been reached.
- Fixed a bug where all eager-loaded
srcset
-style transform sizes were relative to the first eager-loaded transform, rather than the prior one. (#11209)
- Fixed a bug where eager-loaded
srcset
-style transform sizes didn’t reference the prior eager-loaded transform’s format
, interlace
, mode
, position
, or quality
settings. (#11264)
- Fixed a bug where the web-based installation wizard wouldn’t show the database connection screen if a connection could be established but no database was selected. (#11245)
- Fixed an error that could occur when applying a multi-site draft with relational fields. (#11220)
- Fixed a bug where Matrix blocks could be deleted from newly-created multi-site entries, if the edit page was reloaded. (#10906)
";s:4:"date";s:19:"2022-05-20T00:00:00";}i:69;a:4:{s:7:"version";s:6:"3.7.42";s:8:"critical";b:0;s:5:"notes";s:1650:"Added
- Added
craft\events\LocateUploadedFilesEvent
.
- Added
craft\fields\Assets::EVENT_LOCATE_UPLOADED_FILES
. (#11123)
Changed
- Improved save performance for multi-site elements (#11113)
- Built-in Composer actions now ensure that
composer.json
allows the craftcms/plugin-installer
Composer plugin.
Fixed
- Fixed a bug where soft-deleted drafts’ search keywords weren’t getting re-indexed if they were restored.
- Fixed an error that occurred when transforming an SVG image without specifying a width or height. (#11122)
- Fixed an error that occurred when saving a Number field with a non-numeric value. (#11164)
- Fixed a bug where it wasn’t possible to drag an item to the top in admin tables. (#10781)
- Fixed a bug where entries within Structure sections weren’t expandable if their only descendants were unpublished drafts.
- Fixed a bug where expanding a collapsed Structure section entry wouldn’t reveal its descendants, if the parent was a draft. (#11186)
- Fixed a bug where element caches weren’t getting cleared for elements when they were propagated to a newly-created site.
";s:4:"date";s:19:"2022-05-11T00:00:00";}i:70;a:4:{s:7:"version";s:6:"3.7.41";s:8:"critical";b:0;s:5:"notes";s:734:"Changed
- The Upgrade utility now lists any uninstalled and unknown plugins. (#11101)
Fixed
- Fixed an error that occurred when attempting to delete a global set. (#11100)
- Fixed an error that could occur when applying a draft. (#11083)
- Fixed a bug where element queries weren’t returning any results if an element attribute table wasn’t joined in, and the element query was set to an abstract element class. (#11105)
";s:4:"date";s:19:"2022-05-06T00:00:00";}i:71;a:4:{s:7:"version";s:8:"3.7.40.1";s:8:"critical";b:0;s:5:"notes";s:200:"Fixed
- Fixed a bug where empty fields could be marked as changed, even when no change was made to them. (#11078)
";s:4:"date";s:19:"2022-05-04T00:00:00";}i:72;a:4:{s:7:"version";s:6:"3.7.40";s:8:"critical";b:0;s:5:"notes";s:3381:"If you are currently running Craft 3.7.39, you will need to perform this update with Composer.
Added
- Added the “Craft 4 Upgrade” utility.
- Added
craft\helpers\Db::extractGlue()
.
- Added
craft\helpers\Db::normalizeParam()
.
- Added
craft\utilities\Upgrade
.
- Added
craft\web\assets\upgrade\UpgradeAsset
.
Changed
- Improved database performance for concurrent requests. (#10662)
- The Crop tool in the image editor no longer displays the (incorrect) crop dimensions. (#11046)
- Asset queries’
volume
params now support passing an array of craft\base\VolumeInterface
objects.
- Category queries’
group
params now support passing an array of craft\models\CategoryGroup
objects.
- Entry queries’
section
params now support passing an array of craft\models\Section
objects.
- Entry queries’
type
params now support passing an array of craft\models\EntryType
objects. (#11057)
- Matrix block queries’
field
params now support passing an array of craft\fields\Matrix
objects.
- Tag queries’
group
params now support passing an array of craft\models\TagGroup
objects.
- Options passed to the
_includes/forms/select
control panel template can now specify a hidden
key. (#11053)
craft\services\Fields::getLayoutsByType()
now memoizes its results. (#11037)
- Downgraded Composer to 2.2.12, fixing an error that occurred when updating Craft or installing/updating/uninstalling plugins.
Removed
- Removed the
--propagate
option from resave/*
commands, which didn’t have any effect. (#11032)
Fixed
- Fixed a bug where “Name” and “Handle” were not getting translated properly in field, volume, and global set validation errors. (#11029)
- Fixed a bug where passing an array of
craft\models\UserGroup
objects to a user query’s group
param had no effect.
- Fixed a bug where passing an array that began with
not
into a user query’s group
param wouldn’t return users that had no user groups.
- Fixed a bug where it wasn’t possible to order elements by
rand()
/random()
via GraphQL. (#11063)
- Fixed a bug where empty Date and Number fields would be marked as changed, even when no change was made to them. (#10804)
";s:4:"date";s:19:"2022-05-03T00:00:00";}i:73;a:4:{s:7:"version";s:6:"3.7.39";s:8:"critical";b:0;s:5:"notes";s:3771:"Added
- The Caches utility now has a “Compiled classes” option. (#10281)
- Added the
folderPath
asset query param.
- Added
craft\services\Assets::getTempVolumeAndSubpath()
.
- Added
craft\services\Assets::createTempAssetQuery()
.
- Added
craft\services\Fields::updateColumn()
.
- Added
craft\services\Sections::getEntryTypeByUid()
.
Changed
- Fields’ search indexes are now immediately removed when their “Use this field’s values as search keywords” settings are disabled.
- User groups’ permission lists are now sorted alphabetically when saved to the project config. (#10408)
- Improved dropdown menu styling for Firefox.
- Improved GraphQL performance.
{% nav %}
tags now skips elements whose immediate parent weren’t included in the output. (#10925)
- Asset, entry, and category selection modals now clear the search results when a new element is created. (#11015)
- Asset and entry selection modals now sort the elements by Date Created (descending) when a new element is created, to ensure it is immediately visible and selected.
Fixed
- Fixed a bug where Matrix blocks could lose their Date field values, if multiple Date fields had with the same handle across different block types. (#10884)
- Fixed a bug where Matrix block menus were getting truncated if they were too large to fit within the content pane. (#10883)
- Fixed a bug where Assets fields weren’t respecting their dynamic folder path settings for unpublished drafts, if the Temp Upload Location asset setting was set to a volume. (#9619)
- Fixed an error that could occur when saving an Assets field for a draft.
- Fixed a bug where element queries weren’t being limited to return elements of the configured type, if no element type-specific tables were joined in.
- Fixed a bug where element thumbnails weren’t loading for all but the initial content tab. (#10918)
- Fixed a bug where Matrix fields’ Min Blocks settings weren’t getting enforced for empty Matrix fields.
- Fixed an error that could occur when saving Matrix fields with either Min Blocks or Max Blocks configured, but not both, if the Intl extension wasn’t installed. (#10922)
- Fixed a bug where the system name container was taking up the full viewport height in Safari 13. (#10930)
- Fixed a bug where Matrix sub-fields were losing their column suffixes after they were resaved. (#10973)
- Fixed a bug where saving a Matrix field without any block types would result in no changes made to the previously-configured block types, rather than displaying a validation error. (#10989)
Security
- The
redirect
controller action now requires the passed-in url
param to be hashed. (#10994)
";s:4:"date";s:19:"2022-04-26T00:00:00";}i:74;a:4:{s:7:"version";s:6:"3.7.38";s:8:"critical";b:0;s:5:"notes";s:2385:"Added
- Added
craft\helpers\ArrayHelper::onlyContains()
.
- Added
craft\test\Craft::assertNotPushedToQueue()
. (#10510)
Changed
- Duplicated elements no longer have “copy” appended to the end of their titles. (#10707)
- User queries’
group
and groupId
params now support passing an array that begins with and
, to only return users that are in all of the subsequent user groups.
Craft.BaseElementSelectorModal
now has bodyAction
and indexSettings
settings. (#4348)
Fixed
- Fixed a bug where color pickers weren’t clickbale within Table fields. (#10775)
- Fixed a bug where multi-site elements weren’t getting all of their titles duplicated correctly. (#10702)
- Fixed deprecation errors that occurred when validating relational and Matrix fields. (#10815)
- Fixed an error that occurred if field instructions contained any unclosed HTML tags. (#10290)
- Fixed a bug where the selected volume subfolder would get included in folder drag-and-drop operations. (#10745)
- Fixed a bug where slideouts weren’t closing when clicked out of, after being opened for the second time. (#10586)
- Fixed a bug where
Craft.appendHeadHtml()
wasn’t pruning out <link>
tags that were already present in the DOM.
- Fixed a bug where image transforms weren’t always getting generated for disabled sites. (#10498)
- Fixed a bug where it wasn’t possible to scroll the content pane horizontally if any fields took up more than 100% of its width. (#10849)
";s:4:"date";s:19:"2022-04-06T00:00:00";}i:75;a:4:{s:7:"version";s:6:"3.7.37";s:8:"critical";b:0;s:5:"notes";s:1144:"Changed
- Improved the styling of copy buttons in the control panel. (#10732)
- In-app Plugin Store purchases are now completed on
id.craftcms.com
rather than within the control panel.
Fixed
- Fixed a bug where two users could be created with the same username and email, if the Save button was double-clicked. (#9835, #10661)
- Fixed an error that could occur when updating from an earlier version than Craft 3.5.6. (#10685)
- Fixed an error that could occur when rendering an exception view for another error. (#10712)
- Fixed a bug where pressing Spacebar on copy buttons in admin tables didn’t activate them.
- Fixed a style issue for Safari. (#10748)
";s:4:"date";s:19:"2022-03-16T00:00:00";}i:76;a:4:{s:7:"version";s:6:"3.7.36";s:8:"critical";b:0;s:5:"notes";s:633:"Changed
{% js %}
and {% css %}
tags can now import URLs that don’t end in .js
or .css
, so long as they begin with https://
or http://
. (#10666)
- The
plugin/list
command now shows plugins’ package names. (#10667)
Fixed
- Fixed a bug that prevented moving assets between volumes. (#10668)
";s:4:"date";s:19:"2022-03-03T00:00:00";}i:77;a:4:{s:7:"version";s:6:"3.7.35";s:8:"critical";b:0;s:5:"notes";s:1729:"Added
- Added
craft\errors\BusyResourceException
.
- Added
craft\errors\StaleResourceException
.
Changed
- Improved Live Preview accessibility. (#7476)
- Improved error reporting when trying to upload an Asset from a disallowed location. (#10633)
- The
resave/entries
command now supports a --revisions
flag. (#10634)
Fixed
- Fixed an error that occurred when initializing an element with custom field values that weren’t included in its field layout. (#10622)
- Fixed a PHP 8 compatibility bug.
- Fixed a bug where drafts weren’t getting propagated when a section was enabled for new sites. (#10634)
- Fixed a bug where moving files and folders from the Assets index page wouldn’t ever resolve properly if there was an unexpected server error.
- Fixed a bug where disclosure menus could be shorter than their contents. (#10639)
- Fixed potential race conditions that could result in old project config data getting cached. (#7795)
- Fixed a bug where numerically-indexed array keys weren’t always consecutive after the project config was rebuilt. (#10512)
";s:4:"date";s:19:"2022-03-01T00:00:00";}i:78;a:4:{s:7:"version";s:6:"3.7.34";s:8:"critical";b:0;s:5:"notes";s:2296:"Added
- Added
craft\helpers\App::phpConfigValueAsPaths()
.
- Added
craft\helpers\App::normalizePhpPaths()
.
- Added
craft\helpers\App::isPathAllowed()
.
Changed
- Improved date and time input accessibility. (#10575)
- Craft no longer attempts to write a license key file when
CRAFT_EPHEMERAL
is set to true
. (#10558)
- Craft no longer attempts to write project config YAML files when
CRAFT_EPHEMERAL
is set to true
. (#10558)
- Craft no longer publishes asset bundles when
CRAFT_EPHEMERAL
is set to true
. (#10558)
Fixed
- Fixed a bug where Date fields weren’t displaying properly.
- Fixed a bug where some GraphQL API query arguments would break element queries. (#10580)
- Fixed a PHP 8.1 compatibility bug. (#10594)
- Fixed a bug where Matrix action menus were causing horizontal scrollbars within Live Preview. (#10601)
- Fixed a PHP warning that would occur when running Craft in Dev Mode, if the
open_basedir
PHP setting was set. (#10581)
- Fixed a bug where the “View” button on Edit Category pages wasn’t getting linked to a tokenized preview page for disabled sites.
- Fixed a bug where asset subfolder toggles weren’t visible when their source was focused. (#10617)
- Fixed a bug where Live Preview would close when the Esc key was pressed, when a modal window was open. (#10623)
Security
- Craft now HTML-encodes user’ names in the default system email messages.
";s:4:"date";s:19:"2022-02-22T00:00:00";}i:79;a:4:{s:7:"version";s:6:"3.7.33";s:8:"critical";b:1;s:5:"notes";s:1362:"The way CSRF tokens are generated has changed in this release, so all users will be logged out during the update.
Added
- Added support for PHP 8.1.
- Added the
users/logout-all
console command.
- Added
Garnish.prefersReducedMotion()
.
Changed
- Lightswitch inputs are no longer animated for browsers that have requested reduced motion. (#10532)
- Reverted the 3.7.32 change to plugin settings. (#10533)
- Improved accessibility for the Craft Support widget. (#7290)
- The
graphql/api
controller action now supports passing the GraphQL bearer token via an X-Craft-Authorization
header, in addition to Authorization
. (#10539)
craft\helpers\App::parseBooleanEnv()
now treats 0
and 1
as boolean values. (#10524)
- Updated GraphiQL to 1.5.16.
- Updated Yii to 2.0.45.
- Updated svg-sanitizer to 0.15.
";s:4:"date";s:19:"2022-02-15T00:00:00";}i:80;a:4:{s:7:"version";s:6:"3.7.32";s:8:"critical";b:0;s:5:"notes";s:2787:"Added
- Added
craft\base\FieldInterface::getInputId()
.
- Added
craft\db\Migration::createIndexIfMissing()
.
- Added
craft\db\Migration::dropIndexIfExists()
.
- Added
craft\services\Users::canSuspend()
.
- Added
craft\validators\SiteIdValidator::$allowDisabled
.
Changed
- Improved element query performance. (#10418)
- Improved asset transform eager-loading performance. (#10427)
- The “Suspend” and “Unsuspend” user actions are now smarter about when they should be available, based on the selected users.
- Plugin settings forms now display the values stored in the project config, even if they’ve been overridden by the plugin’s config file.
- Improved the styling of field tips and warnings.
- The Edit Field page will now instantiate a new field instance of the expected field type, if it had been previously saved while the field type was missing. (#10437)
Fixed
- Fixed a bug where Date and Time fields’ labels weren’t referencing the correct input IDs.
- Fixed a bug where the last control panel breadcrumb could be collapsed under a “More…” menu when there was enough room to display it. (#10495)
- Fixed a bug where it was possible for non-admins to suspend/unsuspend admins from the Users index page. (#10422)
- Fixed a bug where the
project-config/apply
command output could get mangled. (#9900)
- Fixed an error that could occur when saving an entry programmatically on a front-end request, if any sites were disabled. (#10499)
- Fixed a bug where Date and Time inputs weren’t clearable on mobile. (#10500)
- Fixed a bug where Date and Time fields created by JavaScript weren’t getting native
date
and time
inputs on mobile.
- Fixed a JavaScript error on the Edit User page. (#10509)
- Fixed a bug where it was possible to save a custom field whose type was missing. (#10437)
Security
- Fixed a GraphQL API vulnerability.
";s:4:"date";s:19:"2022-02-09T00:00:00";}i:81;a:4:{s:7:"version";s:6:"3.7.31";s:8:"critical";b:0;s:5:"notes";s:4147:"Added
- Added the
clear-deprecations
command. (#10430)
- Added the
plugin/list
command. (#10470)
- Added the
users/activation-url
and users/password-reset-url
commands. (#10482)
- Added the
revisionId
field to drafts when queried via GraphQL. (#10462)
- Added
craft\web\View::registerJsWithVars()
.
Changed
- Improved focus styles in the control panel. (#10398)
- Improved Matrix field accessibility for screen readers. (#10480)
- Improved Table field accessibility for screen readers. (#10502)
- Handles within admin tables are now displayed as copy-buttons. (#10475)
- Craft no longer sends a
Permissions-Policy: interest-cohort=()
header by default, as Google has abandoned its FLoC proposal.
- Craft no longer attempts to create the
cpresources
folder when CRAFT_EPHEMERAL
is set to true
. (#10412)
- Video assets’ focal points are no longer suppressed, if they were set by a plugin or module. (#10415)
- Plugins are now consistently loaded in the same order across all environments. (#10441)
- Element exporters’
export()
methods can now return an array or generator function, even if isFormattable()
returns true
. (#10484)
Craft.BaseElementSelectorModal
now supports a fullscreen
setting.
Fixed
- Fixed a bug where Craft would not display an appropriate error message if a Local volume was pointing to a broken symlink. (#10396
- Fixed an error that could occur when calling an element’s
getUrl()
method for a disabled site. (#10421)
- Fixed a JavaScript error that occurred after saving an unpublished draft.
- Fixed a bug where Live Preview wasn’t always showing changes for entries that weren’t live. (#10455)
- Fixed a bug where it wasn’t possible to restore a soft-deleted global set with project config. (#10458)
- Fixed right-to-left layout styling bugs. (#10459, #10439)
- Fixed a bug where entry revision menus would show newly-added sites as enabled even if they were disabled by default.
- Fixed a bug where
craft\base\Element::getCanonical()
wasn’t memoizing its result based on the $anySite
argument.
- Fixed a JavaScript error. (#10428)
- Fixed a bug where Dashboard widget flip animations weren’t always working in Firefox.
- Fixed an error that could occur if an element’s
getSupportedSites()
method returned info for a site that didn’t exist or was soft-deleted.
- Fixed GraphiQL layout issues for users with a RTL language set. (#10465)
";s:4:"date";s:19:"2022-02-08T00:00:00";}i:82;a:4:{s:7:"version";s:8:"3.7.30.1";s:8:"critical";b:0;s:5:"notes";s:493:"Fixed
- Fixed a bug where the “New category” button on the Categories index page wasn’t working. (#10399)
- Fixed an error that occurred when saving an Assets field with a file that was in a temporary location within the
storage/
folder, if the storage/
folder didn’t live within the project root. (#10401)
";s:4:"date";s:19:"2022-01-21T00:00:00";}i:83;a:4:{s:7:"version";s:6:"3.7.30";s:8:"critical";b:0;s:5:"notes";s:2407:"The mutex
component now uses a file-based driver by default. Load-balanced environments should switch to a different driver.
Added
- Added
craft\mutex\Mutex
.
- Added
craft\mutex\MutexTrait
.
- Added
craft\mutex\NullMutex
.
Changed
- When a draft is published, Craft now automatically reloads other browser tabs that are opened to the same Edit Entry page. (#10381)
- Improved modal and slideout accessibility for screen readers. (#10384, #10234)
- The
mutex
component is now set to craft\mutex\Mutex
by default, and should no longer be overridden directly. Its nested mutex
property should be overridden instead.
craft\helpers\App::mutexConfig()
is no longer deprecated.
Deprecated
- Deprecated
craft\helpers\App::dbMutexConfig()
, as database-based mutex locking is no longer recommended.
- Deprecated
craft\mutex\DbMutexTrait
.
- Deprecated
craft\mutex\MysqlMutex
.
- Deprecated
craft\mutex\PgsqlMutex
.
Fixed
- Fixed a bug where Craft could generate
CustomFieldBehavior
classes that were missing the available fields. (#6013)
- Fixed a bug where Live Preview iframes weren’t full-height when
useIframeResizer
was disabled. (#10380)
- Fixed an error that could occur if an Assets field was saved while set to a file stored in
storage/runtime/assets/tempuploads/
. (#10382)
- Fixed a bug where it wasn’t possible to apply a numeric namespace to input names. (#6656)
";s:4:"date";s:19:"2022-01-20T00:00:00";}i:84;a:4:{s:7:"version";s:6:"3.7.29";s:8:"critical";b:0;s:5:"notes";s:3970:"Added
resave/*
commands now support bulk-setting an attribute/custom field value via new --set
, --to
, and --if-empty
options. (#10356)
- Added
craft\fieldlayoutelements\BaseField::statusId()
.
- Added
craft\helpers\App::parseEnv()
and parseBooleanEnv()
, replacing their Craft
class counterparts. (#10319)
Changed
- The Users index page now updates the URL based on the selected source. (#10336)
- Live Preview no longer reloads the iframe when the device type is changed. (#10353)
admins
, all
, and new
are now reserved user group handles.
- The content in the
resourcepaths
table is now excluded from database backups by default.
- User caches are now invalidated after login attempts. (#10313)
- Assets fields’ “Upload files” buttons now have
aria-describedby
attributes when appropriate.
- Color fields’ hex inputs now have
aria-label
attributes.
- Field status messages are now included in their
aria-describedby
attributes.
- User queries will no longer exclude suspended users when
status('pending')
is passed. (#10361)
- Template autosuggest fields now include suggestions for templates in custom site template roots. (#10372)
Deprecated
- Deprecated
Craft::parseEnv()
. craft\helpers\App::parseEnv()
should be used instead.
- Deprecated
Craft::parseBooleanEnv()
. craft\helpers\App::parseBooleanEnv()
should be used instead.
Fixed
- Fixed a bug where admin tables were displaying titles incorrectly.
- Fixed a bug where
aria-describedby
attributes were getting namespaced incorrectly when they referenced multiple IDs.
- Fixed a bug where “View” links on Edit Entry pages weren’t getting updated when the entry’s preview target URLs changed. (#10257)
- Fixed a bug where
craft\base\ApplicationTrait::getIsMultiSite()
would return false
on the front end, if there was only one enabled site, but additional disabled sites.
- Fixed a bug where
craft\base\Element::getSite()
would throw an exception on the front end, if the element belonged to a disabled site.
- Fixed a bug where
craft\services\Sites::getEditableSiteIds()
would exclude disabled sites on the front end.
- Fixed a bug where validation errors referenced by
aria-describedby
attributes weren’t getting read out by VoiceOver. (#10355)
- Fixed a bug where element queries’
withQueries
properties were ignored. (#10359)
- Fixed a bug where fatal PHP errors were not logged to
stderr
when the CRAFT_STREAM_LOG
PHP constant was set to true
. (#10366)
- Fixed a bug where Dropdown fields with invalid data would not always display a blank option. (#10365)
Security
- Fixed an XSS vulnerability.
";s:4:"date";s:19:"2022-01-18T00:00:00";}}s:13:"phpConstraint";s:7:">=7.2.5";s:11:"packageName";s:12:"craftcms/cms";}s:7:"plugins";a:4:{s:6:"cp-nav";a:3:{s:6:"status";s:8:"eligible";s:8:"releases";a:0:{}s:11:"packageName";s:12:"verbb/cp-nav";}s:8:"redactor";a:8:{s:6:"status";s:8:"eligible";s:8:"releases";a:15:{i:0;a:4:{s:7:"version";s:7:"2.10.12";s:8:"critical";b:0;s:5:"notes";s:219:"
- Fixed several styling issues with Redactor’s fullscreen mode. (#450, #445)
";s:4:"date";s:19:"2023-03-16T00:00:00";}i:1;a:4:{s:7:"version";s:7:"2.10.11";s:8:"critical";b:0;s:5:"notes";s:194:"
- Fixed a bug where image URLs would be broken after selecting them, if the URL contained any underscores. (#441)
";s:4:"date";s:19:"2022-12-31T00:00:00";}i:2;a:4:{s:7:"version";s:7:"2.10.10";s:8:"critical";b:0;s:5:"notes";s:230:"Fixed
- Fixed a bug where HTML changes could be reverted, if a link on image had been clicked on prior to switching to the HTML view. (#419)
";s:4:"date";s:19:"2022-06-30T00:00:00";}i:3;a:4:{s:7:"version";s:6:"2.10.9";s:8:"critical";b:0;s:5:"notes";s:503:"Fixed
- Fixed a bug where Redactor fields weren’t being configured with the current site properly. (#382, #412, #414)
- Fixed a bug where the “Site” setting within Edit Link modals wasn’t working properly. (#410)
";s:4:"date";s:19:"2022-06-29T00:00:00";}i:4;a:4:{s:7:"version";s:6:"2.10.8";s:8:"critical";b:0;s:5:"notes";s:182:"Fixed
- Fixed a bug where linking to multiple files would have unwanted consequences. (#389)
";s:4:"date";s:19:"2022-05-03T00:00:00";}i:5;a:4:{s:7:"version";s:6:"2.10.7";s:8:"critical";b:0;s:5:"notes";s:203:"Fixed
- Fixed a bug where removing and re-inserting a link would remove other links in the same paragraph. (#384)
";s:4:"date";s:19:"2022-04-26T00:00:00";}i:6;a:4:{s:7:"version";s:6:"2.10.6";s:8:"critical";b:0;s:5:"notes";s:217:"Fixed
- Fixed a bug where removing a font color using the
fontcolor
plugin would not update the field data. (#376)
";s:4:"date";s:19:"2022-04-07T00:00:00";}i:7;a:4:{s:7:"version";s:6:"2.10.5";s:8:"critical";b:0;s:5:"notes";s:187:"Fixed
- Fixed a bug where the wrong site could be auto-selected in entry selection modals. (#372)
";s:4:"date";s:19:"2022-02-25T00:00:00";}i:8;a:4:{s:7:"version";s:6:"2.10.4";s:8:"critical";b:0;s:5:"notes";s:239:"Fixed
- Fixed a bug where Redactor fields could use the wrong orientation. (#356, #370)
";s:4:"date";s:19:"2022-02-23T00:00:00";}i:9;a:4:{s:7:"version";s:6:"2.10.3";s:8:"critical";b:0;s:5:"notes";s:132:"Fixed
- Fixed a bug where linking to a Craft element inside a table would change the original link text.
";s:4:"date";s:19:"2022-02-18T00:00:00";}i:10;a:4:{s:7:"version";s:6:"2.10.2";s:8:"critical";b:0;s:5:"notes";s:180:"Fixed
- Fixed a bug where links were always prepended to the beginning of the text. (#368)
";s:4:"date";s:19:"2022-02-17T00:00:00";}i:11;a:4:{s:7:"version";s:6:"2.10.1";s:8:"critical";b:0;s:5:"notes";s:326:"Fixed
- Fixed a bug where Redactor fields wouldn’t initialize properly when they were the first field in a new Matrix block. (#364)
Security
- Improved HTML sanitization.
- Fixed an XSS vulnerability.
";s:4:"date";s:19:"2022-02-16T00:00:00";}i:12;a:4:{s:7:"version";s:6:"2.10.0";s:8:"critical";b:0;s:5:"notes";s:705:"Changed
- Redactor now requires Craft 3.6 or later.
- The site selector dropdown now only appears for eligible links. (#360)
- Static element URLs that contain query string parameters are no longer converted to reference tags.
Deprecated
- Deprecated
craft\redactor\events\ModifyPurifierConfigEvent
. craft\htmlfield\events\ModifyPurifierConfigEvent
should be used instead.
Fixed
- Fixed a bug where Live Preview wouldn’t work on older Craft versions. (#359)
";s:4:"date";s:19:"2022-02-11T00:00:00";}i:13;a:4:{s:7:"version";s:5:"2.9.1";s:8:"critical";b:0;s:5:"notes";s:181:"Fixed
- Fixed an error that occurred when saving content that contained empty links. (#355)
";s:4:"date";s:19:"2022-02-07T00:00:00";}i:14;a:4:{s:7:"version";s:5:"2.9.0";s:8:"critical";b:0;s:5:"notes";s:1845:"Added
- Redactor fields now convert static element URLs to reference tags on save. (#249)
- Entry selection modals now include a site selector. (#242)
- Image modals now support a Command/Ctrl + S keyboard shortcut. (#290)
Fixed
- Fixed a bug where the field value wasn’t updated after content was removed via a context bar. (#348)
- Fixed a bug where context bars weren’t visible within editor slideouts. (#239)
- Fixed a bug where empty Redactor fields could be seen as not empty during validation. (#260)
- Fixed a bug where some inline styles could be removed even if they were allowed by field plugins. (#315)
- Fixed a bug where volume and transform names were getting double-encoded. (#297)
- Fixed a bug where inserting a link into a large Redactor field would cause the browser to jump to the top of the field. (#344)
- Fixed a bug where inline styles within tables weren’t getting removed. (#350)
- Fixed a bug where translation messages weren’t getting registered for JavaScript properly.
Changed
- Updated Redactor.js to 3.5.2.
";s:4:"date";s:19:"2022-01-31T00:00:00";}}s:13:"phpConstraint";N;s:11:"packageName";s:17:"craftcms/redactor";s:9:"abandoned";b:1;s:15:"replacementName";s:8:"CKEditor";s:17:"replacementHandle";s:8:"ckeditor";s:14:"replacementUrl";s:37:"https://plugins.craftcms.com/ckeditor";}s:18:"translations-admin";a:7:{s:6:"status";s:7:"expired";s:8:"releases";a:3:{i:0;a:4:{s:7:"version";s:5:"2.7.1";s:8:"critical";b:0;s:5:"notes";s:175:"Fixed
- Fixed a bug where translations were not loaded properly (#37).
";s:4:"date";s:19:"2022-01-28T00:00:00";}i:1;a:4:{s:7:"version";s:5:"2.7.0";s:8:"critical";b:0;s:5:"notes";s:121:"Changed
- Performance improvement by preventing unnecessary DB calls for missing translations
";s:4:"date";s:19:"2022-01-27T00:00:00";}i:2;a:4:{s:7:"version";s:5:"2.6.1";s:8:"critical";b:0;s:5:"notes";s:189:"Added
- Invalidate Graphql cache when adding, deleting or saving translations (#36).
";s:4:"date";s:19:"2022-01-12T00:00:00";}}s:10:"renewalUrl";s:64:"https://console.craftcms.com/accounts/me/licenses/plugins/144591";s:12:"renewalPrice";s:6:"9.0000";s:15:"renewalCurrency";s:3:"USD";s:13:"phpConstraint";N;s:11:"packageName";s:18:"mutation/translate";}s:9:"wheelform";a:4:{s:6:"status";s:8:"eligible";s:8:"releases";a:6:{i:0;a:4:{s:7:"version";s:5:"2.7.4";s:8:"critical";b:0;s:5:"notes";N;s:4:"date";N;}i:1;a:4:{s:7:"version";s:5:"2.7.3";s:8:"critical";b:0;s:5:"notes";s:97:"Fix
- Fixed ability to overwrite Google Recaptcha URL (@KasimMahroof)
";s:4:"date";s:19:"2024-01-17T00:00:00";}i:2;a:4:{s:7:"version";s:5:"2.7.2";s:8:"critical";b:0;s:5:"notes";s:65:"Fix
- Undefined error on form.close()
";s:4:"date";s:19:"2022-03-17T00:00:00";}i:3;a:4:{s:7:"version";s:5:"2.7.1";s:8:"critical";b:0;s:5:"notes";s:62:"Fix
- Undefined error on recaptcha
";s:4:"date";s:19:"2022-03-16T00:00:00";}i:4;a:4:{s:7:"version";s:5:"2.7.0";s:8:"critical";b:0;s:5:"notes";s:471:"Added
- Telephone input field type
- Date input field type
- Time input field type
- New beforeValidate and afterValidate events for plugins to do custom validation
- New flash variable with submitted form ID
Fix
- Duplicate fields in CSV Export when fields are empty.
- Logic with multiple fields of same type to have increasing names to disallow having the same input field name.
";s:4:"date";s:19:"2022-03-14T00:00:00";}i:5;a:4:{s:7:"version";s:5:"2.6.4";s:8:"critical";b:0;s:5:"notes";s:122:"Added
- Ability to modify redirect using events
- New multiple option for select fields
";s:4:"date";s:19:"2022-01-19T00:00:00";}}s:13:"phpConstraint";N;s:11:"packageName";s:24:"xpertbot/craft-wheelform";}}}i:1;N;}