Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
354 commits
Select commit Hold shift + click to select a range
95139db
Merge branch '5.x' into 5.9
brandonkelly Aug 19, 2025
a2abba4
Include filename in generate transform queue job descriptions
brandonkelly Aug 19, 2025
4301c4b
Enhance writeToFile checks
timkelty Aug 21, 2025
e891290
CS
timkelty Aug 21, 2025
234b3d7
Check for fn exists
timkelty Aug 21, 2025
eaf709d
Use key as label for assertion
AugustMiller Aug 22, 2025
9ba1cf3
Add GeneralConfigSettingFixture, force `allowUppercaseInSlug` on for …
AugustMiller Aug 22, 2025
9cfbc9b
EOF newline
AugustMiller Aug 22, 2025
83901c6
Entries → Content, sub-page management
brandonkelly Aug 25, 2025
9c8d97b
Merge branch '5.x' into 5.9
brandonkelly Aug 25, 2025
27613a0
Fixed error
brandonkelly Aug 25, 2025
d68c06d
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Aug 25, 2025
d2ada07
pen-nib
brandonkelly Aug 25, 2025
42aaf4f
Fix new heading/source page assignment
brandonkelly Aug 25, 2025
7ba2598
Merge branch '4.x' into 4.17
brandonkelly Aug 26, 2025
9297d2b
Merge branch '4.17' into feature/enhance-writeToFile-checks
brandonkelly Aug 26, 2025
761e580
Cleanup
brandonkelly Aug 26, 2025
0a44a96
Release note
brandonkelly Aug 26, 2025
486a715
Merge pull request #17762 from craftcms/feature/enhance-writeToFile-c…
brandonkelly Aug 26, 2025
8164940
Merge branch '5.x' into 5.9
brandonkelly Aug 26, 2025
728cc70
Sort lines
brandonkelly Aug 26, 2025
aaa1d64
Merge branch '4.17' of https://github.com/craftcms/cms into 5.9
brandonkelly Aug 26, 2025
78fcc6c
Merge branch '5.x' into 5.9
brandonkelly Aug 27, 2025
3708426
Merge branch '5.9' into parserefs-expression-comments
brandonkelly Aug 27, 2025
e416e46
Release note
brandonkelly Aug 27, 2025
ab1f95a
Merge pull request #17688 from craftcms/parserefs-expression-comments
brandonkelly Aug 27, 2025
dd79b33
Merge branch '5.x' into 5.9
brandonkelly Aug 28, 2025
ca16a00
Unused test
brandonkelly Aug 28, 2025
397541c
App::env() + parseEnv() improvements
brandonkelly Aug 28, 2025
a6caeee
rouge ;
brandonkelly Aug 28, 2025
a6542d5
Always define CRAFT_SITE / CRAFT_SITE_UPPER
brandonkelly Aug 29, 2025
a001260
Fix tests
brandonkelly Aug 29, 2025
121612c
Fixed test
brandonkelly Aug 29, 2025
239ba3a
Fixed test
brandonkelly Aug 29, 2025
787431d
Handle null handles
brandonkelly Aug 29, 2025
fda34f8
Fixed test
brandonkelly Aug 30, 2025
b93737e
Reset env vars
brandonkelly Aug 30, 2025
e49d3e0
Fixed test
brandonkelly Aug 30, 2025
530ac4e
Release notes
brandonkelly Aug 30, 2025
ec914d0
Merge pull request #17794 from craftcms/feature/env-improvements
brandonkelly Aug 30, 2025
0bb9c5c
Merge branch '5.x' into 5.9
brandonkelly Aug 31, 2025
4293ccb
allow for unpublished drafts to be created via gql
i-just Sep 1, 2025
84ca209
Merge branch '5.9' into feature/17803-gql-create-unpublished-draft
i-just Sep 1, 2025
0a9c265
tweaks
i-just Sep 1, 2025
e39cc59
remove draftId check
i-just Sep 1, 2025
8316d94
Merge branch '5.x' into 5.9
brandonkelly Sep 1, 2025
3fb3988
Allow adding sites to entries via slideouts
brandonkelly Sep 1, 2025
5c778f2
Merge branch '5.9' into feature/17803-gql-create-unpublished-draft
brandonkelly Sep 1, 2025
dc33d4d
Release note
brandonkelly Sep 1, 2025
a1b5ad8
Merge pull request #17805 from craftcms/feature/17803-gql-create-unpu…
brandonkelly Sep 1, 2025
cfd299d
the key for table columns should be 'attr' too
i-just Sep 3, 2025
b51460c
register new icons when new route is being added
i-just Sep 3, 2025
196d090
Merge pull request #17815 from craftcms/bugfix/table-columns-source-a…
brandonkelly Sep 3, 2025
11f5929
Merge branch '5.9' into bugfix/adding-routes-and-new-icons
brandonkelly Sep 3, 2025
b840b0a
Merge pull request #17818 from craftcms/bugfix/adding-routes-and-new-…
brandonkelly Sep 3, 2025
c85410e
Merge branch '5.x' into 5.9
brandonkelly Sep 4, 2025
e4e7f2b
Merge branch '5.x' into 5.9
brandonkelly Sep 8, 2025
c2714d9
FallbackNameExpression should now extend ContextVariable
i-just Sep 9, 2025
ff39c8e
Don't decode query string names
timkelty Sep 9, 2025
e912009
Add tests
timkelty Sep 9, 2025
e1bf6cb
Tests
timkelty Sep 9, 2025
ccfee44
Fix tests
timkelty Sep 9, 2025
5cb94f9
Cleanup
timkelty Sep 9, 2025
50bb428
Merge branch '4.x' into 4.17
brandonkelly Sep 9, 2025
0ffdf7e
Merge branch '4.17' into bugfix/twig-and-preloading-singles
brandonkelly Sep 9, 2025
39fd9da
Merge pull request #17839 from craftcms/bugfix/twig-and-preloading-si…
brandonkelly Sep 9, 2025
da1c100
Merge branch '5.x' into 5.9
brandonkelly Sep 9, 2025
b758bc9
Merge branch '4.17' of https://github.com/craftcms/cms into 5.9
brandonkelly Sep 9, 2025
d4c1d75
Add DB index to `sortOrder` in `elements_owners`
nfourtythree Sep 10, 2025
a0fc7ab
Decode special chars from name
timkelty Sep 10, 2025
1b0ce98
Merge branch '5.x' into 5.9
brandonkelly Sep 10, 2025
d8d5d87
Merge branch '5.9' into feature/5.9-add-index-to-owners-sort-order
brandonkelly Sep 10, 2025
9abb228
Release note
brandonkelly Sep 10, 2025
0ed7c1e
Merge pull request #17850 from craftcms/feature/5.9-add-index-to-owne…
brandonkelly Sep 10, 2025
296503b
Merge branch '4.x' into 4.17
brandonkelly Sep 10, 2025
38ce54e
Merge branch '4.17' into bugfix/bracket-encoding-url
brandonkelly Sep 10, 2025
60297af
Release note
brandonkelly Sep 10, 2025
ae6f259
Merge branch 'bugfix/bracket-encoding-url' of https://github.com/craf…
brandonkelly Sep 10, 2025
d4d1d61
Merge pull request #17840 from craftcms/bugfix/bracket-encoding-url
brandonkelly Sep 10, 2025
6ea0ddc
Merge branch '4.17' of https://github.com/craftcms/cms into 5.9
brandonkelly Sep 10, 2025
2218486
allow querying user via gql when running on solo license
i-just Sep 15, 2025
30ee213
Fixed a PHP error
brandonkelly Sep 16, 2025
2ac2fbd
Use $this->_currentSite
brandonkelly Sep 16, 2025
b976188
take 3
brandonkelly Sep 16, 2025
9861ac7
Merge branch '5.x' into 5.9
brandonkelly Sep 18, 2025
0ecf2b5
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Sep 18, 2025
5dd1014
Merge branch '5.x' into 5.9
brandonkelly Sep 20, 2025
ea347f9
Rename cropperButton macro to editButton
gcamacho079 Sep 22, 2025
60523db
Add macro for focal point button and replace in template
gcamacho079 Sep 22, 2025
406d36e
Pull in changes again
gcamacho079 Sep 22, 2025
5bcd968
Support icons for subnav items
brianjhanson Sep 22, 2025
32a560e
Get focal point drop messages to work
gcamacho079 Sep 22, 2025
56c6583
Fix issue of drag no longer working
gcamacho079 Sep 22, 2025
915edf6
Start renaming things; introduced bug with active styles still visibl…
gcamacho079 Sep 23, 2025
0a67a77
Add resetEditState method; TODO incorporate dropping all fabric elements
gcamacho079 Sep 23, 2025
c2591c8
Fix active outline not disappearing
gcamacho079 Sep 23, 2025
91bc70c
Rename more things for clarity
gcamacho079 Sep 23, 2025
d96d3bc
Make sure trigger redraw is called on rectangle edit button blur if n…
gcamacho079 Sep 23, 2025
2e37f8b
Fix rectangle focus being set to true due to not considering focal po…
gcamacho079 Sep 23, 2025
b8271d7
Remove repeated code for resetting editor state
gcamacho079 Sep 23, 2025
7cd96cb
Remove position message from handle drop
gcamacho079 Sep 23, 2025
ef45c53
Remove unused property
gcamacho079 Sep 23, 2025
062ec4d
Bring back focal point button on first tab panel and ensure we are ch…
gcamacho079 Sep 23, 2025
753d3c4
Build
gcamacho079 Sep 23, 2025
604c82d
Fix bug of the focus outline not disappearing for bottom right handle…
gcamacho079 Sep 24, 2025
e2585ba
Merge branch '4.x' into 4.17
brandonkelly Sep 30, 2025
4f785fc
Merge branch '4.17' into bugfix/17857-craft-solo-gql-and-users
brandonkelly Sep 30, 2025
ec7bf4c
Release note
brandonkelly Sep 30, 2025
4dae281
Merge pull request #17863 from craftcms/bugfix/17857-craft-solo-gql-a…
brandonkelly Sep 30, 2025
04c2a63
Merge branch '5.x' into 5.9
brandonkelly Sep 30, 2025
4e01329
Merge branch '4.17' of https://github.com/craftcms/cms into 5.9
brandonkelly Sep 30, 2025
9bb43da
Merge branch '5.x' into 5.9
brandonkelly Sep 30, 2025
5805bda
Merge branch '5.9' into feature/sub-nav-icons
brandonkelly Sep 30, 2025
a3981ba
Release note
brandonkelly Sep 30, 2025
4a5977b
Update the docs
brandonkelly Sep 30, 2025
45d1c6e
Merge pull request #17879 from craftcms/feature/sub-nav-icons
brandonkelly Sep 30, 2025
f5146c9
build
brandonkelly Sep 30, 2025
16d515c
Merge branch '5.9' into feature/image-editor-keyboard
brandonkelly Oct 1, 2025
d62a67f
Release note
brandonkelly Oct 1, 2025
c9f21a2
Merge pull request #17880 from craftcms/feature/image-editor-keyboard
brandonkelly Oct 1, 2025
25d9a20
show hints for element's section and field condition rules
i-just Oct 1, 2025
feb9730
Merge branch '5.x' into 5.9
brandonkelly Oct 1, 2025
4368991
Support for passing a hashing algorithm to |hash
brandonkelly Oct 1, 2025
4f8a970
Load provisional changes onto the canonical elements
brandonkelly Oct 2, 2025
e3e4d46
Release notes
brandonkelly Oct 2, 2025
dcfebfe
Merge pull request #17915 from craftcms/feature/provisional-changes
brandonkelly Oct 2, 2025
6a98e9d
Merge branch '5.x' into 5.9
brandonkelly Oct 2, 2025
e3911f7
Merge branch '5.9' into feature/17895-multi-select-condition-rule-opt…
brandonkelly Oct 2, 2025
529be23
Release notes
brandonkelly Oct 2, 2025
1e26288
Merge pull request #17909 from craftcms/feature/17895-multi-select-co…
brandonkelly Oct 2, 2025
d07edd9
allow for the field layout to be passed to the registerCardAttributes…
i-just Oct 3, 2025
03ed06c
Merge branch '5.x' into 5.9
brandonkelly Oct 3, 2025
acfe903
Merge branch '5.9' into feature/registerCardAttributes-and-field-layout
brandonkelly Oct 3, 2025
885adab
Release notes
brandonkelly Oct 3, 2025
fb3298f
Merge pull request #17920 from craftcms/feature/registerCardAttribute…
brandonkelly Oct 3, 2025
ef1f3b3
ask for confirmation before removing a plugin
i-just Oct 6, 2025
8026324
Merge branch '5.9' into feature/remove-plugin-confirmation
i-just Oct 6, 2025
c498a41
Merge branch '5.x' into 5.9
brandonkelly Oct 6, 2025
2a4315f
Merge branch '5.9' into feature/remove-plugin-confirmation
brandonkelly Oct 6, 2025
26b5d10
Release note
brandonkelly Oct 6, 2025
feb03dc
Merge pull request #17922 from craftcms/feature/remove-plugin-confirm…
brandonkelly Oct 6, 2025
da3d4d7
Merge branch '4.x' into 4.17
brandonkelly Oct 6, 2025
e9b172e
Merge branch '5.x' into 5.9
brandonkelly Oct 6, 2025
f74a53b
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 6, 2025
6ae6b52
Merge branch '5.x' into 5.9
brandonkelly Oct 8, 2025
2e3031e
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 8, 2025
bb3f5cb
Customizable page icons
brandonkelly Oct 9, 2025
102e60b
clear out the slug when saving as new
i-just Oct 9, 2025
be0e696
Fix bug when renaming a page
brandonkelly Oct 9, 2025
b59dde0
Make all entry pages top-level
brandonkelly Oct 10, 2025
409a468
Remove right padding from nav items
brandonkelly Oct 10, 2025
8e02cdd
Set entrified Tags fields to the Inline List view mode
brandonkelly Oct 10, 2025
2ca8f84
Don't require a handle to be passed to entrify commands
brandonkelly Oct 10, 2025
1ddbc8d
Cleanup
brandonkelly Oct 10, 2025
418518f
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 10, 2025
92e3722
Automatically add categories/tags to their own entry pages
brandonkelly Oct 10, 2025
25d0ca8
Move add buttons into the main sidebar content areas
brandonkelly Oct 10, 2025
63a2271
Wrap sidebar lists in <ol>s
brandonkelly Oct 10, 2025
a9109fe
Use aria-describedby for action buttons
brandonkelly Oct 10, 2025
6f6120d
Announce “success” when pages/sources are added
brandonkelly Oct 10, 2025
e2aff31
cs-
brandonkelly Oct 11, 2025
ec3a511
.cs-body
brandonkelly Oct 11, 2025
4913a2f
Make the modal responsive
brandonkelly Oct 11, 2025
633ba3b
Merge branch '5.x' into 5.9
brandonkelly Oct 11, 2025
108e7e0
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 11, 2025
4dcaeed
Merge branch '5.x' into 5.9
brandonkelly Oct 11, 2025
33c789c
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 11, 2025
54553ce
"Move to [page]" actions
brandonkelly Oct 11, 2025
7a0fae8
Fix bug
brandonkelly Oct 11, 2025
238b2f4
build
brandonkelly Oct 11, 2025
461a3a1
Merge branch '5.x' into 5.9
brandonkelly Oct 12, 2025
9a86ae5
Merge branch '5.9' into bugfix/17918-save-as-new-and-slug-v5
brandonkelly Oct 12, 2025
3775224
Auto-generate the slug
brandonkelly Oct 12, 2025
3e10bcb
Release note
brandonkelly Oct 12, 2025
bb3007b
Merge pull request #17932 from craftcms/bugfix/17918-save-as-new-and-…
brandonkelly Oct 12, 2025
a9fd23b
Merge branch '5.x' into 5.9
brandonkelly Oct 12, 2025
84f9e5b
allow for non-ascii chars in whole email
i-just Oct 14, 2025
e53b2d9
Merge branch '5.9' into feature/16969-emails-and-idn
i-just Oct 14, 2025
43b30aa
add link to idna-nontransitional-to-unicode
i-just Oct 14, 2025
f54f693
Merge branch '4.x' into 4.17
brandonkelly Oct 15, 2025
d694cc3
Backport env improvements from #17794
brandonkelly Oct 15, 2025
85c2a69
Merge branch '5.x' into 5.9
brandonkelly Oct 15, 2025
40bed50
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 15, 2025
3c865cc
aria-labelledby
brandonkelly Oct 15, 2025
9e6e344
Release note
brandonkelly Oct 15, 2025
dc78e3b
Merge pull request #17949 from craftcms/env-improvements-v4
brandonkelly Oct 15, 2025
0049ea5
Merge branch '5.9' into feature/16969-emails-and-idn
i-just Oct 15, 2025
1481db3
Merge branch '4.x' into bugfix/17090-static-table-row-order
i-just Oct 15, 2025
2e0f7c2
Cleanup
brandonkelly Oct 16, 2025
4f6029d
Allow status within relational fields' selectable element conditions
brandonkelly Oct 16, 2025
ff409b0
Merge branch '5.9' into feature/16969-emails-and-idn
brandonkelly Oct 16, 2025
7a1993b
Doc tweak
brandonkelly Oct 16, 2025
e8a7004
Release note
brandonkelly Oct 16, 2025
f625dba
Merge pull request #17946 from craftcms/feature/16969-emails-and-idn
brandonkelly Oct 16, 2025
7c8f634
Merge branch '5.x' into 5.9
brandonkelly Oct 16, 2025
724cd0c
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 17, 2025
89baffa
Make Craft.ui.createField() consistent with Cp::fieldHtml()
brandonkelly Oct 17, 2025
43c3b6a
Mark the name input as required and ensure it has a value
brandonkelly Oct 17, 2025
0e2efd4
nameId
brandonkelly Oct 17, 2025
883080b
Focus on the closest page’s action button on page removal
brandonkelly Oct 17, 2025
2a15802
build
brandonkelly Oct 18, 2025
5f9b13e
Merge branch '4.x' into bugfix/17090-static-table-row-order
brandonkelly Oct 18, 2025
71061b6
Merge branch '4.x' into 4.17
brandonkelly Oct 19, 2025
3866023
Merge branch '4.17' into bugfix/17090-static-table-row-order
brandonkelly Oct 19, 2025
aae9930
Cleanup
brandonkelly Oct 19, 2025
1d620b2
Release notes
brandonkelly Oct 20, 2025
e8f0609
Merge pull request #17150 from craftcms/bugfix/17090-static-table-row…
brandonkelly Oct 20, 2025
5b093ae
Merge branch '5.x' into 5.9
brandonkelly Oct 20, 2025
45fc0c6
More Table cleanup
brandonkelly Oct 20, 2025
8e4e34d
Unused
brandonkelly Oct 20, 2025
ae86a74
Merge branch '4.17' of https://github.com/craftcms/cms into 5.9
brandonkelly Oct 20, 2025
f9f47d7
Merge branch '4.17' of https://github.com/craftcms/cms into 5.9
brandonkelly Oct 20, 2025
a5d7c65
set min max attributes for number-type field
i-just Oct 22, 2025
2835d75
Merge branch '4.x' into 4.17
brandonkelly Oct 22, 2025
386083c
Merge branch '5.x' into 5.9
brandonkelly Oct 22, 2025
dcc5165
Update GetAttrNode::compile() for Twig 3.21
brandonkelly Oct 23, 2025
7b0255d
Don't break GetAttrExpression::$definedTest
brandonkelly Oct 23, 2025
c9a3728
Workaround for twigphp/Twig#4701
brandonkelly Oct 23, 2025
b43d3e6
Workaround for twigphp/Twig#4701
brandonkelly Oct 23, 2025
9d26e60
Merge branch '5.9' into brandon/cms-1551-content-section
brandonkelly Oct 23, 2025
a20737f
Drop the “Content” breadcrumb
brandonkelly Oct 23, 2025
be5703a
Continue translating "Entries" with the app category
brandonkelly Oct 23, 2025
682814a
Fix a style bug
brandonkelly Oct 23, 2025
6dd3b7f
Release notes
brandonkelly Oct 23, 2025
8758c59
Merge pull request #17779 from craftcms/brandon/cms-1551-content-section
brandonkelly Oct 23, 2025
5b6d7d4
clear-caches command improvement
brandonkelly Oct 23, 2025
724b85b
Delete compiled templates from `up` instead of `migrate` commands
brandonkelly Oct 23, 2025
8683b0b
Merge branch '4.17' of https://github.com/craftcms/cms into 5.9
brandonkelly Oct 23, 2025
4d42c49
Merge branch '5.x' into 5.9
brandonkelly Oct 23, 2025
6bbb37f
Make the CP non-scrollable when a menu is expanded
brandonkelly Oct 23, 2025
14ee192
Don't show site selection menus when not necessary
brandonkelly Oct 23, 2025
af954e9
Merge branch '5.x' into 5.9
brandonkelly Oct 24, 2025
b365633
Allow address labels to be made optional
brandonkelly Oct 24, 2025
58c6925
Merge branch '5.x' into bugfix/17968-number-field-min-max-and-stepper
brandonkelly Oct 24, 2025
c7c1651
Merge branch '5.9' into bugfix/17968-number-field-min-max-and-stepper
brandonkelly Oct 24, 2025
7ee4f23
Release note
brandonkelly Oct 24, 2025
cfd118a
Merge pull request #17973 from craftcms/bugfix/17968-number-field-min…
brandonkelly Oct 24, 2025
5ffa170
Changelog cleanup
brandonkelly Oct 27, 2025
f3353ef
Structure event cleanup
brandonkelly Oct 27, 2025
1965587
User::isInGroups()
brandonkelly Oct 27, 2025
56aba63
Actually update event names
riasvdv Oct 27, 2025
0a9b99b
default maxCachedCloudImageSize to zero
i-just Oct 28, 2025
5c348fc
Merge branch '5.x' into 5.9
brandonkelly Oct 28, 2025
ed04015
Merge branch '5.9' into feature/17961-default-maxCachedCloudImageSize…
brandonkelly Oct 28, 2025
568b5b2
Release note
brandonkelly Oct 28, 2025
1a3d43e
Merge pull request #17997 from craftcms/feature/17961-default-maxCach…
brandonkelly Oct 28, 2025
0eba220
Merge branch '5.x' into 5.9
brandonkelly Oct 28, 2025
c86c2ed
Cleanup
brandonkelly Oct 28, 2025
33b404a
Don't throw a BadRequestHttpException right away if there's an invali…
brandonkelly Oct 28, 2025
31cc915
Reorder
brandonkelly Oct 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
102 changes: 102 additions & 0 deletions CHANGELOG-WIP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# Release Notes for Craft CMS 5.9 (WIP)

### Content Management
- Matrix fields using “Cards” or “Inline” view modes now show an “Add” button per entry type group, when the viewport is wide enough to support it. ([#17731](https://github.com/craftcms/cms/pull/17731))
- Chips and cards are generally no longer hyperlinked. ([#17591](https://github.com/craftcms/cms/pull/17591))
- It’s now possible to add new sites to entries via their slideout editors. ([#17795](https://github.com/craftcms/cms/issues/17795))
- Elements created via “Save as a new…” actions now initially have an empty slug. ([#17932](https://github.com/craftcms/cms/pull/17932))
- The control panel is no longer scrollable when a menu is expanded. ([#17960](https://github.com/craftcms/cms/issues/17960))
- Most site breadcrumbs no longer include selection menus if there’s only one selectable site. ([#16526](https://github.com/craftcms/cms/discussions/16526))
- Number fields with “Step Size” and “Min Value” or “Max Value” settings will now get `min`/`max` attributes set on their input. ([#17973](https://github.com/craftcms/cms/pull/17973))

### Accessibility
- Improved the accessibility of the Orientation setting within the Image Editor’s crop tool. ([#17690](https://github.com/craftcms/cms/pull/17690))
- The Image Editor’s focal point tool is now keyboard accessible. ([#17880](https://github.com/craftcms/cms/pull/17880))

### Administration
- It’s now possible to divide entry sources into multiple index pages, via the Customize Sources modal. ([#17779](https://github.com/craftcms/cms/pull/17779))
- Added the “View user” GraphQL schema option for Craft Solo. ([#17863](https://github.com/craftcms/cms/pull/17863))
- Users’ User Groups settings now show a component select input, and support inline group editing/creation on environments that allow administrative changes.
- Address labels can now be made optional. ([#11410](https://github.com/craftcms/cms/discussions/11410))
- Relational fields now have an “Inline list” view mode. ([#17744](https://github.com/craftcms/cms/pull/17744))
- Relational fields and Matrix fields now have a “Card grid” view mode, replacing the “Show cards in a grid” setting. ([#17744](https://github.com/craftcms/cms/pull/17744))
- Relational fields’ selectable element conditions can now have “Status” condition rules. ([#17945](https://github.com/craftcms/cms/discussions/17945))
- Added the “Show ON/OFF labels in cards” setting to Lightswitch fields. ([#17743](https://github.com/craftcms/cms/discussions/17743))
- Control panel-defined routes now have action menus with “Move up”/“Move down” actions. ([#17706](https://github.com/craftcms/cms/pull/17706))
- “Generate image transform” jobs now include the asset’s filename in the job description. ([#17753](https://github.com/craftcms/cms/issues/17753))
- “Field” and “Section” condition rules now show field/section handles for users with the “Show field handles in edit forms” preference enabled. ([#17909](https://github.com/craftcms/cms/pull/17909))
- “Remove” actions on the Plugins index page now show a confirmation dialog. ([#17922](https://github.com/craftcms/cms/pull/17922))
- `entrify` commands no longer require a category group/tag group/global set handle to be passed.
- `entrify` commands now automatically assign newly-created channel/structure sections to “Categories” or “Tags” pages. ([#17779](https://github.com/craftcms/cms/pull/17779))
- The `clear-cache` command now accepts a space-delimited list of cache IDs that should be cleared.
- Compiled templates are now deleted by the `up` command rather than from `migrate` commands.
- Added the `useIdnaNontransitionalToUnicode` config setting. ([#17946](https://github.com/craftcms/cms/pull/17946))
- The `maxCachedCloudImageSize` config setting is now set to `0` by default. ([#17997](https://github.com/craftcms/cms/pull/17997))

### Development
- Reference tags now support fallback values when no attribute is specified. ([#17688](https://github.com/craftcms/cms/pull/17688))
- Added support for referencing environment variables anywhere within settings that support them (e.g. `foo/$ENV_NAME/bar` or `foo-${ENV_NAME}-bar`). ([#17794](https://github.com/craftcms/cms/pull/17794))
- Environmental settings can now reference `CRAFT_SITE` (the current site’s handle) and `CRAFT_SITE_UPPER` (the current site’s handle in UPPER_SNAKE_CASE) environment variables, which are defined at runtime. ([#17794](https://github.com/craftcms/cms/pull/17794))
- It’s now possible to create unpublished drafts via GraphQL. ([#17805](https://github.com/craftcms/cms/pull/17805))
- Added the `uuid()` Twig function.
- The Twig `hash` filter now supports passing a hashing algorithm, such as `'md5'` or `'sha256'`. ([#17885](https://github.com/craftcms/cms/issues/17885))

### Extensibility
- Subnav items within the global control panel navigation can now have icons. ([#17879](https://github.com/craftcms/cms/pull/17879))
- Added `craft\base\ElementIndex::multiPageSources()`. ([#17779](https://github.com/craftcms/cms/pull/17779))
- Added `craft\base\ElementTrait::$hasProvisionalChanges`. ([#17915](https://github.com/craftcms/cms/pull/17915))
- Added `craft\elements\User::isInGroups()`. ([#17989](https://github.com/craftcms/cms/discussions/17989))
- Added `craft\elements\conditions\HintableConditionRuleTrait`. ([#17909](https://github.com/craftcms/cms/pull/17909))
- Added `craft\events\RegisterElementCardAttributesEvent::$fieldLayout`. ([#17920](https://github.com/craftcms/cms/pull/17920))
- Added `craft\fields\BaseRelationField::VIEW_MODE_CARDS_GRID`.
- Added `craft\fields\BaseRelationField::VIEW_MODE_CARDS`.
- Added `craft\fields\BaseRelationField::VIEW_MODE_LIST_INLINE`.
- Added `craft\fields\BaseRelationField::VIEW_MODE_LIST`.
- Added `craft\fields\BaseRelationField::VIEW_MODE_THUMBS`.
- Added `craft\fields\Matrix::VIEW_MODE_CARDS_GRID`.
- Added `craft\helpers\ElementHelper::loadProvisionalChanges()`. ([#17915](https://github.com/craftcms/cms/pull/17915))
- Added `craft\services\ElementSources::getFirstPage()`. ([#17779](https://github.com/craftcms/cms/pull/17779))
- Added `craft\services\ElementSources::getPageSettings()`. ([#17779](https://github.com/craftcms/cms/pull/17779))
- Added `craft\services\ElementSources::getPages()`. ([#17779](https://github.com/craftcms/cms/pull/17779))
- Added `craft\services\ElementSources::pageExists()`. ([#17779](https://github.com/craftcms/cms/pull/17779))
- Added `craft\services\ElementSources::pageNameId()`. ([#17779](https://github.com/craftcms/cms/pull/17779))
- Added `craft\services\Structure::EVENT_AFTER_UPDATE_ELEMENT`.
- Added `craft\services\Structure::EVENT_BEFORE_UPDATE_ELEMENT`.
- Added `craft\web\GqlResponseFormatter`.
- Added `craft\web\Request::getHasInvalidToken()`.
- Added `craft\web\Response::FORMAT_GQL`.
- Added `craft\web\twig\nodes\BaseNode`.
- Added `Craft.BaseElementIndex::asyncSelectDefaultSource()`.
- Added `Craft.BaseElementIndex::asyncSelectSource()`.
- Added `Craft.BaseElementIndex::asyncSelectSourceByKey()`.
- Added `Craft.BaseElementIndex::ensureSourceAttributeInfo()`.
- `craft\base\Element::EVENT_AFTER_MOVE_IN_STRUCTURE` is no longer deprecated.
- `craft\base\Element::EVENT_BEFORE_MOVE_IN_STRUCTURE` is no longer deprecated.
- `craft\base\ElementInterface::afterMoveInStructure()` is no longer deprecated.
- `craft\base\ElementInterface::beforeMoveInStructure()` is no longer deprecated.
- `craft\base\ElementInterface::cardAttributes()` now has a `$fieldLayout` argument. ([#17920](https://github.com/craftcms/cms/pull/17920))
- `craft\events\ElementStructureEvent` is no longer deprecated.
- `craft\helpers\FileHelper::writeToFile()` now throws an exception if the file path isn’t writable, or there isn’t sufficient free space on the disk. ([#17762](https://github.com/craftcms/cms/pull/17762))
- `craft\helpers\UrlHelper` now encodes square brackets in generated URLs. ([#17840](https://github.com/craftcms/cms/pull/17840))
- `craft\services\ElementSources::getSources()` now has a `$page` argument. ([#17779](https://github.com/craftcms/cms/pull/17779))
- `craft\services\ElementSources::sourceExists()` now has a `$page` argument. ([#17779](https://github.com/craftcms/cms/pull/17779))
- `craft\web\Request::accepts()` now accepts wildcard characters (`*`) in the `$contentType` argument, to check for a range of MIME types (e.g. `application/*+json`).
- `craft\web\Request::getAcceptsJson()` now returns `true` for requests with `Content-Type` headers that match `application/*+json`, in addition to `application/json`.
- Deprecated `craft\fields\BaseRelationField::$showCardsInGrid`.
- Deprecated `craft\fields\Matrix::$showCardsInGrid`.
- Deprecated `craft\services\Structure::EVENT_AFTER_MOVE_ELEMENT`. `EVENT_AFTER_UPDATE_ELEMENT` should be used instead.
- Deprecated `craft\services\Structure::EVENT_BEFORE_MOVE_ELEMENT`. `EVENT_BEFORE_UPDATE_ELEMENT` should be used instead.
- Deprecated `Craft.BaseElementIndex::selectDefaultSource()`.
- Deprecated `Craft.BaseElementIndex::selectSource()`.
- Deprecated `Craft.BaseElementIndex::selectSourceByKey()`.

### System
- GraphQL API responses now set their `Content-Type` header to `application/graphql-response+json`.
- GraphQL API responses now set cache headers based on whether a mutation was performed, regardless of the request type.
- Global set queries no longer register cache tags.
- Improved element index performance. ([#17557](https://github.com/craftcms/cms/pull/17557))
- Improved element query performance. ([#17850](https://github.com/craftcms/cms/pull/17850))
- Fixed a bug where elements with unsaved changes could show outdated attribute/field values within element index tables, chips, and cards throughout the control panel. ([#17915](https://github.com/craftcms/cms/pull/17915))
- Fixed a bug where Table fields with the “Static Rows” setting enabled would lose track of which values belonged to which row headings, if the “Default Values” table was reordered. ([#17090](https://github.com/craftcms/cms/issues/17090))
- Fixed a bug where requests with invalid tokens would throw an exception before the application was fully initialized, which could lead to other errors. ([#18000](https://github.com/craftcms/cms/issues/18000))
- Updated Twig to 3.21. ([#17603](https://github.com/craftcms/cms/discussions/17603))
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@
"symfony/var-dumper": "^5.0|^6.0|^7.0",
"symfony/yaml": "^5.2.3|^6.0|^7.0",
"theiconic/name-parser": "^1.2",
"twig/twig": "~3.15.0",
"twig/twig": "~3.21.1",
"voku/stringy": "^6.4.0",
"web-auth/webauthn-lib": "~4.9.0",
"webonyx/graphql-php": "~14.11.10",
Expand Down
Loading