Releases: craftcms/cms
Releases · craftcms/cms
4.5.6
- When slideouts are opened within Live Preview, they now slide up over the editor pane, rather than covering the preview pane. (#13739)
- Cross-site validation now only involves fields which were actually modified in the element save. (#13675)
- Row headings within Table fields now get statically translated. (#13703)
- Element condition settings within field layout components now display a warning if the
autosaveDrafts
config setting is disabled. (#12348) - Added the
resave/addresses
command. (#13720) - The
resave/matrix-blocks
command now supports an--owner-id
option. - Added
craft\helpers\App::phpExecutable()
. - Added
craft\helpers\Component::cleanseConfig()
. craft\helpers\Component::createComponent()
now filters outas X
andon X
keys from the component config.craft\services\Announcements::push()
now has an$adminsOnly
argument. (#13728)Craft.appendHeadHtml()
andappendBodyHtml()
now load external scripts asynchronously, and return promises.- Improved the reliability of Composer operations when PHP is running via FastCGI. (#13681)
- Fixed a bug where it wasn’t always possible to create new entries from custom sources which were limited to one section.
- Fixed a bug where relational fields weren’t factoring in cross-site elements when enforcing their “Min Relations”, “Max Relations”, and “Validate related entries” settings. (#13699)
- Fixed a bug where pagination wasn’t working for admin tables, if the
onQueryParams
callback method wasn’t set. (#13677) - Fixed a bug where relations within Matrix blocks weren’t getting restored when restoring a revision’s content. (#13626)
- Fixed a bug where the filesystem and volume-creation slideouts could keep reappearing if canceled. (#13707)
- Fixed an error that could occur when reattempting to update to Craft 4.5. (#13714)
- Fixed a bug where date and time inputs could be parsed incorrectly, if the user’s formatting locale wasn’t explicitly set, or it changed between page load and form submit. (#13731)
- Fixed JavaScript errors that could occur when control panel resources were being loaded from a different domain. (#13715)
- Fixed a PHP error that occurred if the
CRAFT_DOTENV_PATH
environment variable was set, or a console command was executed with the--dotenvPath
option. (#13725) - Fixed a bug where long element titles weren’t always getting truncated in the control panel. (#13718)
- Fixed a bug where checkboxes could be preselected if they had an empty value. (#13710)
- Fixed a bug where links in validation summaries weren’t working if the offending field was in a collapsed Matrix block. (#13708)
- Fixed a bug where cross-site validation could apply even if
craft\services\Elements::saveElement()
was called with$runValidation
set tofalse
. - Fixed some wonky scrolling behavior on pages where the details pane was shorter than the content pane. (#13637)
- Fixed a division by zero error. (#13712)
- Fixed an RCE vulnerability.
3.9.4
- Added
craft\helpers\App::phpExecutable()
. - Added
craft\helpers\Component::cleanseConfig()
. craft\helpers\Component::createComponent()
now filters outas X
andon X
keys from the component config.- Improved the reliability of Composer operations when PHP is running via FastCGI. (#13681)
- Fixed an RCE vulnerability.
4.5.5
- 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)
- Fixed an error that could occur when changing a field’s type, if a backup table needed to be created to store the old field values. (#13669)
- Fixed a bug where it wasn’t possible to save blank Dropdown values. (#13695)
3.9.3
4.5.4
- Added the
@stripTags
and@trim
GraphQL directives. (#9971) - 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)
- Filesystem edit pages now have a “Save and continue editing” alternative submit action, and the Command/Ctrl + S keyboard shortcut now redirects back to the edit page. (#13658)
- Attribute labels are no longer surrounded by asterisks for front-end validation messages. (#13640)
- The
|replace
Twig filter now has aregex
argument, which can be set tofalse
to disable regular expression parsing. (#13642) - Added
craft\events\DefineUserGroupsEvent
. - Added
craft\services\Users::EVENT_DEFINE_DEFAULT_USER_GROUPS
. (#12283) - Added
craft\services\Users::getDefaultUserGroups()
. craft\events\UserAssignGroupEvent
now extendsDefineUserGroupsEvent
, giving it a new$userGroups
property.craft\helpers\DateTimeHelper::toDateTime()
now supportsDateTimeImmutable
values. (#13656)craft\web\Response::setCacheHeaders()
no longer includespublic
in theCache-Control
header when$overwrite
isfalse
. (#13676)- Deprecated
craft\events\UserAssignGroupEvent
.DefineUserGroupsEvent
should be used instead. - Fixed a bug where the “Active Trials” section in the Plugin Store cart modal wasn’t listing plugins in trial. (#13661)
- Fixed a bug where changed fields weren’t being tracked properly when applying a draft for a multi-site entry.
craft\services\Elements::duplicateElement()
now supports passing asiteAttributes
array to the$attributes
argument, for setting site-specific attributes.- Fixed an error that could occur when executing a GraphQL query with fragments. (#13622)
- Fixed a bug where addresses queried via GraphQL had a
photo
field. - Fixed a bug where boolean environment variables weren’t always getting the correct value indicators within Selectize fields. (#13613)
- Fixed a bug where some system icons were getting black backgrounds when displayed within Vue apps. (#13632)
- Fixed a bug where the user and address field layouts were getting new UUIDs each time they were saved. (#13588)
- Fixed an error that could occur if a Money field was set to an array without a
value
key. (#13648) - Fixed a bug where relations weren’t getting restored when restoring a revision’s content. (#13626)
- Fixed a bug where “Entry Type” fields were showing
typeId
labels for admin users with “Show field handles in edit forms” enabled. (#13627) - Fixed a bug where Lightswitch fields with only one label weren’t getting the correct padding on the unlabelled side of the container. (#13629)
- Fixed a bug where the
transformGifs
andtransformSvgs
config settings weren’t always being respected. (#13624, #13635) - Fixed a bug where filesystems weren’t requiring the “Base URL” setting to be set. (#13657)
- Fixed a bug where applying a draft could redirect to the “Current” revision on a different site, if a new site had been added on the draft. (#13668)
- Fixed an error that could occur when changing a field’s type, if a backup table needed to be created to store the old field values. (#13669)
- Fixed a bug where Matrix blocks that were initially created for a newly-added site within a draft could be lost when applying the draft. (#13670)
- Fixed a bug where
fill
transform properties weren’t being passed along bycraft\elements\Asset::getUrlsBySize()
andgetSrcset()
. (#13650) - Fixed a bug where SVG asset icons weren’t visible in Safari. (#13685)
- Fixed two RCE vulnerabilities.
3.9.2
- 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.
4.5.3
- Fixed a bug where custom fields could be marked as changed within element editor slideouts, if they modified their input values on initialization. (craftcms/ckeditor#128)
- Fixed a bug where elements were getting saved a second time after being converted to a provisional draft within a slideout. (#13604)
- Fixed a JavaScript error. (#13605)
- Fixed support for storing PHP session info in the database on PostgreSQL.
- Fixed a bug where search inputs within element selector modals weren’t getting focus rings.
- Fixed a bug where boolean menu inputs were initially treating
null
values astrue
. - Fixed a bug where boolean menu inputs weren’t toggling other fields. (#13613)
- Fixed a bug where
Craft.namespaceId()
wasn’t working properly if the namespace ended in a]
character. - Fixed a bug where the
|replace
Twig filter wasn’t identifying regular expressions that contained escaped slashes. (#13618) - Fixed a bug where entries that were cloned from a provisional draft weren’t getting propagated to other sites initially. (#13599)
- Fixed an error that could occur when cloning a multi-site provisional draft that contained nested Matrix/Neo/Super Table blocks.
4.5.2
craft\helpers\UrlHelper::buildQuery()
is no longer deprecated. (#12796)- Fixed a bug where control panel notifications weren’t always closing automatically if they contained interactive elements. (#13591)
- Fixed a bug where default user avatars were getting black backgrounds when displayed within Vue apps. (#13597)
- Fixed a bug where the Username and Email fields weren’t required for public registrations forms, if “Deactivate users by default” was enabled. (#13596)
- Fixed a bug where switching sites when editing a global site wasn’t working. (#12796, #13603)
- Fixed a bug where page shortcuts weren’t working after a related element was saved via a slideout. (#13601)
4.5.1
- Control panel notifications no longer block page keyboard shortcuts. (#13591)
Garnish.uiLayerManager.addLayer()
now supports abubble
option, which allows non-matching keyboard shortcuts to bubble up to the parent layer.- Fixed an error that could occur when Craft was performing a Composer operation, if no
HOME
environment variable was set for PHP. (#13590) - Fixed a bug where
craft\fields\Matrix::serializeValue()
was settingfields
keys to a closure. (#13592) - Fixed a bug where time values weren’t saving properly for Greek locales. (#9942)
- Fixed a bug where the “Status” lightswitch would always be enabled on edit pages for single-site elements. (#13595)