Releases: craftcms/cms
Releases · craftcms/cms
4.15.0-beta.1
Content Management
- Condition rules for Checkboxes, Dropdown, Multi-select, and Radio Buttons fields now include “has a value” and “is empty” operators. (#17015)
- The Assets index page now prompts for confirmation when moving more than 50 assets, or assets totalling more than 50MB, at once. (#16908)
- The success notification displayed after an asset move now includes an “Undo” button, if less than 50 assets/50MB were involved in the move. (#16908)
- Window scrolling is now blocked when a modal window is open. (#16768)
Administration
- Added the
db/repair
command. (#16812) - Added the
--batch-size
option forresave/*
commands. (#16586) - The
plugin/install
command now accepts anedition
argument, and prompts for the default edition if none is specified. (#17030) - The
plugin/uninstall
command now reports if no plugin is installed with the provided handle. (#17030) - The
users/create
command now prompts to send an activation email, or outputs an activation URL. (#16794) - Dragging headings within the Customize Sources modal now also drags any subsequent sources. (#16737)
- When switching field types, any field settings which are defined by the same base class are now preserved. (#16783)
Development
- Added the
searchTermOptions
GraphQL query argument. (#16979) - Added the
revisionNotes
GraphQL entry mutation argument. (#16943)
Extensibility
- Global nav items and breadcrumbs can now have
aria-label
attributes via anariaLabel
property. - Added
craft\base\ElementInterface::getSerializedFieldValuesForDb()
. - Added
craft\base\FieldInterface::serializeValueForDb()
. - Added
craft\base\conditions\BaseMultiSelectConditionRule::$includeEmptyOperators
. - Added
craft\db\Connection::getIsMaria()
. - Added
craft\db\Table::SEARCHINDEXQUEUE_FIELDS
. - Added
craft\db\Table::SEARCHINDEXQUEUE
. - Added
craft\db\mysql\QueryBuilder::jsonContains()
. - Added
craft\db\mysql\QueryBuilder::jsonExtract()
. - Added
craft\db\pgsql\QueryBuilder::jsonContains()
. - Added
craft\db\pgsql\QueryBuilder::jsonExtract()
. - Added
craft\queue\ReleasableQueueInterface
. (#16672) - Added
craft\records\User::haveIndexAttributesChanged()
. - Added
craft\services\Search::indexElementIfQueued()
. - Added
craft\services\Search::queueIndexElement()
. craft\cache\ElementQueryTagDependency
now merges cache tags provided by the element query with any tags already set on its$tags
property.
System
craft\queue\Queue::release()
andreleaseAll()
now callrelease()
andreleaseAll()
on the proxied queue if it implementscraft\queue\ReleasableQueueInterface
. (#16672)- The
changedattributes
andchangedfields
tables are now cleaned up during garbage collection. (#16531) - The
resourcepaths
table is now truncated when clearing control panel resources, via the Caches utility or theclear-caches/cp-resources
command. (#16514) - Date values for custom fields are now represented as ISO-8601 date strings (with time zones) within element exports. (#16629)
- “Updating search indexes” queue jobs no longer do anything if search indexes were already updated for the element since the job was created. (#16644)
- User caches are no longer invalidated on login attempts or when user management actions are taken. (#16937)
- Batchable queue jobs now spawn new batches when their execution time is getting uncomfortably close to their TTR duration. (#16947)
- Updated Yii to 2.0.52.
- Updated yii2-debug to 2.1.26.
- Updated Axios to 1.8.4.
- Fixed a bug where
CRAFT_WEB_URL
andCRAFT_WEB_ROOT
environment variables could be overridden by@web
and@webroot
aliases define by thealiases
config setting. (#16980)
4.14.14
- Fixed a bug where
craft\services\Assets::EVENT_BEFORE_REPLACE_ASSET
andEVENT_BEFORE_REPLACE_ASSET
events weren’t getting triggered when replacing an asset file via GraphQL. (#17005) - Fixed a bug where replacing a file via GraphQL could result in two assets referring to the same file. (#17031)
- Fixed a bug where the window wasn’t automatically scrolling when dragging structure elements near its edges. (#17036)
5.6.15
- Fixed an error that could occur when clearing control panel resources, if the
resourceBasePath
setting was set to a nonexistent folder path. (#17021) - Fixed a bug where the
includeSubfolders
asset GraphQL query argument wasn’t working. (#17023) - Fixed a bug where custom tips and warnings set on native fields (like Title) weren’t getting translated. (#17016)
- Fixed a privilege escalation vulnerability.
- Fixed an RCE vulnerability.
4.14.13
- Fixed an error that could occur when clearing control panel resources, if the
resourceBasePath
setting was set to a nonexistent folder path. (#17021) - Fixed a bug where the
includeSubfolders
asset GraphQL query argument wasn’t working. (#17023) - Fixed a privilege escalation vulnerability.
- Fixed an RCE vulnerability.
5.6.14
- Improved the styling of Markdown UI elements. (#16973)
- Fixed a bug where relations weren’t always propagating to newly-added sites for sections correctly. (#16924)
- Fixed a bug where Assets fields set to restrict assets to a single location were relocating assets on element propagation. (#12767, #16936)
- Fixed a bug where relations weren’t getting saved for new elements, if the element was created with
Craft::createObject()
with its relation field data included in the passed-in config. (#16942) - Fixed a bug where relational fields with a “Related To” rule on their selectable elements condition weren’t making all expected elements selectable. (#16945)
- Fixed a bug where some subdivisions weren’t available when creating addresses. (#16951)
- Fixed a bug where some older dates could be formatted incorrectly. (#16953)
- Fixed a bug where the
folderPath
asset query param only accepted strings. (#16981) - Fixed a bug where
craft\elements\Asset::getSrcset()
could return malformed results if any sizes didn’t have corresponding image URLs. (#16984) - Fixed an error that could occur when uploading images. (#16977)
- Fixed a bug where the “Save” button on user group edit pages was redirecting to the same page, rather than the User Groups index page. (#16988)
- Fixed a bug where asset previews had an “Enable focal point” button even if the logged-in user didn’t have permission to save the asset. (#16997)
- Fixed a bug where provisional drafts created for nested elements weren’t being properly assigned to both the canonical owner element and the owner’s provisional draft, if it had one. (#16933)
- Fixed a bug where global sidebar tooltips were blank in Safari. (#16959)
- Fixed a bug where newly-added elements within relational fields were getting shown twice when dragged.
- Fixed a bug where “Set status” bulk element actions could be activated for elements the logged-in user didn’t have permission to edit. (#16995)
- Fixed styling issues. (#16964, #16993)
4.14.12
- Fixed a bug where relations weren’t always propagating to newly-added sites for sections correctly. (#16924)
- Fixed a bug where Assets fields set to restrict assets to a single location were relocating assets on element propagation. (#12767, #16936)
- Fixed a bug where relations weren’t getting saved for new elements, if the element was created with
Craft::createObject()
with its relation field data included in the passed-in config. (#16942) - Fixed a bug where relational fields with a “Related To” rule on their selectable elements condition weren’t making all expected elements selectable. (#16945)
- Fixed a bug where some subdivisions weren’t available when creating addresses. (#16951)
- Fixed a bug where some older dates could be formatted incorrectly. (#16953)
- Fixed a bug where the
folderPath
asset query param only accepted strings. (#16981) - Fixed a bug where
craft\elements\Asset::getSrcset()
could return malformed results if any sizes didn’t have corresponding image URLs. (#16984) - Fixed an error that could occur when uploading images. (#16977)
- Fixed a bug where the “Save” button on user group edit pages was redirecting to the same page, rather than the User Groups index page. (#16988)
- Fixed a bug where asset previews had an “Enable focal point” button even if the logged-in user didn’t have permission to save the asset. (#16997)
- Fixed a styling issue. (#16964)
5.6.13
- Fixed a performance degradation bug that occurred when working with Categories or Entries fields with “Maintain hierarchy” enabled. (#16920)
- Fixed a bug where Categories and Entries fields with “Maintain hierarchy” enabled were getting all relatable entries/categories selected by default. (#16925)
- Fixed a bug where Plain Text and Table fields were converting posted shortcode-looking strings to emoji. (#12935, #16917)
- Fixed a bug where relation fields could show relations from another instance of the same field. (#16912)
- Fixed a bug where tooltips could show and hide repeatedly. (#16922)
4.14.11.1
5.6.12
- Improved table styling. (#16771, #16829)
- Field layout designers now close the element library HUD automatically after creating a new field. (#16521)
- Fixed a bug where relational fields with “Maintain hierarchy” enabled weren’t displaying the correct relations after an element was moved within its structure. (#16843)
- Fixed a bug where letterbox transforms were getting transparent fills if the source image was grayscale. (#16857)
- Fixed a bug where elements could be missing data for attributes that shared a name with an eager-loadable attribute from another element type. (#16862)
- Fixed a bug where Selectize inputs would re-expand themselves after a selection was made. (#16865)
- Fixed a bug where entry revisions’
revisionNotes
GraphQL fields were returning the entry’s current revision’s notes. (#16909) - Fixed a bug where
craft\base\NestedElementTrait::setPrimaryOwnerId()
andsetOwnerId()
weren’t clearing out the memoized owner element. - Fixed an error that could occur when duplicating a nested element, and assigning an owner of a different element type.
- Fixed an error that could occur during passkey setup in Firefox. (#16847)
- Fixed a bug where the “Move to page…” element index action wasn’t ensuring the owner element was a draft first. (#16894)
- Fixed a bug where HUDs attached to slideouts could be positioned incorrectly after a nested slideout was closed. (#16856)
- Fixed a bug where tooltips weren’t always being shown when truncated links were focused. (#16881)
- Fixed a bug where tooltips weren’t closing when Esc was pressed. (#16881)
- Fixed a bug where tooltips weren’t closing if the target element was focused and blurred in rapid succession.
- Fixed a bug where the “Copy value from site…” field action couldn’t be activated via the keyboard. (#16868)
- Fixed a bug where accessible names were not available for global sidebar links when the sidebar was collapsed. (#16879)
- Fixed a bug where some buttons with customizable labels weren’t wrapping. (#16871)
- Fixed a SQL error that could occur when setting a section’s “Max Authors” setting to a very large number. (#16874)
- Fixed a bug where nested elements that were created via “Applying new propagation method to elements” queue jobs weren’t retaining the original element’s sort position. (#16872)
- Fixed a bug where field handle button labels could get “Copy to clipboard” text appended to them. (#16896)
- Fixed a bug where front-end verification forms weren’t respecting
redirect
params passed by login forms. (#16905) - Fixed an error that could occur when saving a nested element. (#16778)
- Fixed styling issues. (#16830, #16903)
4.14.11
- Fixed a bug where relational fields with “Maintain hierarchy” enabled weren’t displaying the correct relations after an element was moved within its structure. (#16843)
- Fixed a bug where letterbox transforms were getting transparent fills if the source image was grayscale. (#16857)
- Fixed a bug where elements could be missing data for attributes that shared a name with an eager-loadable attribute from another element type. (#16862)
- Fixed a bug where Selectize inputs would re-expand themselves after a selection was made. (#16865)
- Fixed a bug where entry revisions’
revisionNotes
GraphQL fields were returning the entry’s current revision’s notes. (#16909)