Skip to content
Merged

5.0.0 #7313

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2503 commits
Select commit Hold shift + click to select a range
e6bc107
Add unit test for layout validation
bastianallgeier Apr 29, 2025
668e405
Add more unit tests for the layout field
bastianallgeier Apr 29, 2025
16e44d3
Fields that are not active due to their when queries should still be …
bastianallgeier Apr 29, 2025
e0f7735
Merge pull request #7171 from getkirby/v5/refactoring/block-form
bastianallgeier Apr 29, 2025
e93bdd7
Support creating/editing array for language variables
afbora Feb 15, 2025
7eca0f4
Fix dialog form for default values
afbora Feb 15, 2025
bceaf0f
Solve initial value via `value` prop
distantnative Apr 29, 2025
b510412
Tweak and add more i18n strings
distantnative Apr 29, 2025
4337eff
Merge pull request #7172 from getkirby/v5/refactoring/form-passthroug…
bastianallgeier Apr 29, 2025
b2bca53
Fix value for non-entries language variable
distantnative Apr 29, 2025
24aa884
Refactor Form creation with named parameters in Fieldset class
bastianallgeier Apr 29, 2025
c6c2b96
Refactor Form creation with named parameters in Content class
bastianallgeier Apr 29, 2025
c97381f
Hide toggle for existing language variables
distantnative Apr 29, 2025
be24613
Add info about `{count}` placeholder to help text
distantnative Apr 29, 2025
aded4bd
Refactor Form creation with named parameters in PageCreateDialog class
bastianallgeier Apr 29, 2025
0adf624
Refactor Form creation with named parameters in Entries field class
bastianallgeier Apr 29, 2025
bf3b7c6
Merge pull request #7174 from getkirby/v5/refactoring/form-named-para…
bastianallgeier Apr 29, 2025
51b9812
Rename `LanguageVariable::hasMultipleValues()`
distantnative Apr 29, 2025
1c7b4b2
Refactor form and store code
bastianallgeier Apr 29, 2025
ce5f969
Create form instance lazily
bastianallgeier Apr 29, 2025
95d2a54
Fix LanguageVariable::create
distantnative Apr 29, 2025
28fbe1e
Merge pull request #7175 from getkirby/v5/refactoring/entries-field-i…
bastianallgeier Apr 29, 2025
6d10159
Add more unit tests for LanguageVariable
distantnative Apr 29, 2025
af82916
Tags field preview: make tags non-selectable
distantnative Apr 29, 2025
1afdd6f
Upgrade npm dependencies
distantnative Apr 29, 2025
4abab66
Improve deprecation message for color field
distantnative Apr 29, 2025
dc16fd6
Fix code style
distantnative Apr 29, 2025
074cdf0
Clean up `panel/plugins.js`
distantnative Apr 29, 2025
2cc6622
Merge pull request #7176 from getkirby/v5/fix/tags-field-preview-cursor
bastianallgeier Apr 30, 2025
7c34e05
Merge pull request #7177 from getkirby/v5/refactoring/panel-plugins-js
bastianallgeier Apr 30, 2025
3caf590
Merge pull request #7173 from getkirby/v5/enhancement/language-variab…
bastianallgeier Apr 30, 2025
40db989
Consistent VersionId code style
distantnative May 1, 2025
e794c31
More robust `VersionId::is()`
distantnative May 2, 2025
46c1dd7
Merge pull request #7181 from getkirby/v5/refactoring/versionid-arg
bastianallgeier May 2, 2025
6634232
Fix delete methods for models and add unit tests for uuid access in a…
bastianallgeier May 2, 2025
bb89efd
Fix cache cleaning
bastianallgeier May 2, 2025
03804ba
Test if content files get removed properly
bastianallgeier May 2, 2025
9901a45
Merge pull request #7182 from getkirby/v5/fix/7180-uuid-access-in-aft…
bastianallgeier May 2, 2025
0655cfb
New content.versions() and content.version() methods
bastianallgeier Apr 30, 2025
2d1b171
Remove content and originals props and use versions instead
bastianallgeier Apr 30, 2025
d35a179
Rename content.changes to content.diff and use new versions prop
bastianallgeier Apr 30, 2025
482f31e
Use new diff and versions
bastianallgeier Apr 30, 2025
70f14ce
Overwrite props without relying on reactivity
bastianallgeier May 2, 2025
e2dd0be
Simplify version calls
bastianallgeier May 3, 2025
38d4035
Rename hasChanges to hasDiff throughout the code
bastianallgeier May 3, 2025
861dd65
Add missing tests for `$auth->logout()`
lukasbestle May 4, 2025
43c4cf9
`AuthChallengeTest`: Use correct auth object
lukasbestle May 4, 2025
2296729
Auth challenges: Remember challenge mode
lukasbestle May 4, 2025
90700fc
Enforce current password when resetting via API
lukasbestle May 4, 2025
faa05ec
Remove dead code from role shortcuts
lukasbestle May 5, 2025
0c2f821
Ask for current password on reset password view
lukasbestle May 5, 2025
1009f3d
Merge pull request #7187 from getkirby/v5/fix/role-shortcuts
bastianallgeier May 8, 2025
e57fff4
Merge branch 'develop-minor' into v5/develop
distantnative May 8, 2025
20e4317
Merge branch 'v5/develop' of github.com:getkirby/kirby into v5/develop
distantnative May 8, 2025
f5bb3a7
Merge branch 'develop-minor' into v5/develop
distantnative May 8, 2025
3595efb
Merge pull request #7179 from getkirby/v5/refactoring/content-module-…
distantnative May 8, 2025
6d97325
Apply suggestion from code review
lukasbestle May 8, 2025
0a729e1
Apply more feedback from code review
lukasbestle May 8, 2025
3f6eaa9
Reorder arguments
lukasbestle May 8, 2025
bd22320
Nightly build
bastianallgeier May 9, 2025
05d4a8f
Merge branch 'develop-minor' into v5/develop
bastianallgeier May 9, 2025
37a4914
Update JS dependencies
bastianallgeier May 9, 2025
84afda4
Fix circular object error
bastianallgeier May 9, 2025
04ef55b
Cleaner object creation
lukasbestle May 10, 2025
0718b62
Merge pull request #7186 from getkirby/v5/fix/reset-password-view
distantnative May 10, 2025
7f248eb
Keep translated slug for non-default languages
distantnative May 10, 2025
f574732
test: Ensure XML parse entities exceeds memory
distantnative May 11, 2025
325319a
test: Suppress PHPUnit error handler warnings
distantnative May 11, 2025
99387e0
build: Don't display details on skipped tests
distantnative May 11, 2025
58a9b73
build: Separate PHPUnit confs for local and CI
lukasbestle May 11, 2025
fc6edc3
build: Fail in CI on PHPUnit deprecations
lukasbestle May 11, 2025
453502b
build: Ignore customized local PHPUnit config
lukasbestle May 11, 2025
2080e33
Merge pull request #7198 from getkirby/v5/build/test-app-error-handler
distantnative May 11, 2025
ef004e1
Merge pull request #7197 from getkirby/v5/build/test-xml-parse-entities
distantnative May 11, 2025
6dfb88e
Merge pull request #7202 from getkirby/v5/build/test-no-details-skipp…
distantnative May 11, 2025
73fcc38
Merge pull request #7204 from getkirby/v5/build/test-no-details-skipped
distantnative May 11, 2025
678b877
test: Add void return type to `Kirby\Toolkit`
distantnative Feb 21, 2025
6e8218c
`Version::create()`: don't always create latest
distantnative May 10, 2025
20b6fae
Fix publishing a version
distantnative May 10, 2025
5ff942f
Merge pull request #7191 from getkirby/v5/fix/create-changes-version
bastianallgeier May 12, 2025
26d1ddb
Merge pull request #7192 from getkirby/v5/fix/version-content-slug
bastianallgeier May 12, 2025
3f89a82
feat: Panel menu support `target` + `title` attrs
distantnative May 10, 2025
c20186c
feat: Panel menu support `target` + `title` attrs
bastianallgeier May 13, 2025
8017324
Merge branch 'main' into v5/develop
bastianallgeier May 13, 2025
31f7d93
Update composer dependencies after merge
bastianallgeier May 13, 2025
1b5a14e
Update dist file after merge
bastianallgeier May 13, 2025
8f27342
fix: set locale to `C` while handling errors
bastianallgeier May 12, 2025
eab449e
docs: Improve inline comment
bastianallgeier May 13, 2025
8a1b4f5
fix: Handle locale reset in finally block
bastianallgeier May 13, 2025
d19e16b
test: Test for correct locale in handler action
bastianallgeier May 13, 2025
5221bfc
File: Differentiate between mediaRoot/mediaPath
lukasbestle May 10, 2025
ad33a41
feat: New `::mediaDir()` method for all models
bastianallgeier May 13, 2025
8e0d40d
chore: Add since tag
lukasbestle May 13, 2025
c74d814
Merge branch 'develop-minor' into v5/develop
lukasbestle May 13, 2025
a20b319
test: Preserve original locale in setUp/tearDown
distantnative May 13, 2025
7a511c7
fix: Grouping Cms\Collection by Closure
distantnative May 13, 2025
a075e57
Merge pull request #7209 from getkirby/v5/fix/7086-file-unlink
distantnative May 13, 2025
f6b35f7
feat!: Disable `content.fileRedirects` by default
lukasbestle May 13, 2025
b70fae9
fix: Don’t resolve files on site if no page exists
lukasbestle May 13, 2025
281473f
Merge pull request #7215 from getkirby/v5/fix/7208-cms-collection-group
distantnative May 13, 2025
e17d61a
Merge pull request #7196 from getkirby/v5/feature/media-firewall-2
bastianallgeier May 14, 2025
067b5a1
Merge branch 'main' into v5/develop
bastianallgeier May 14, 2025
212cab5
Merge pull request #7216 from getkirby/v5/feature/media-firewall-1a
bastianallgeier May 14, 2025
6fa9950
Merge pull request #7217 from getkirby/v5/feature/media-firewall-1b
bastianallgeier May 14, 2025
324d803
Update JS dependencies
bastianallgeier May 14, 2025
b1a69b9
Update composer dependencies
bastianallgeier May 14, 2025
90e4e05
feat: Simplify preview view and preview buttons
bastianallgeier May 14, 2025
690b3a4
feat: New OpenButton class
bastianallgeier May 14, 2025
f0d6dcb
feat: New VersionsButton class
bastianallgeier May 14, 2025
3702d26
refact: Change icon and title of the PreviewButton
bastianallgeier May 14, 2025
d324f6d
test: Unit tests for the new and refactored buttons
bastianallgeier May 14, 2025
87f80d9
feat: New site area buttons for site and page
bastianallgeier May 14, 2025
edde21d
refact: Use open button instead of preview button
bastianallgeier May 14, 2025
edc57f4
refact: Use view buttons for preview view
bastianallgeier May 14, 2025
d72360a
refact: Simplify src prop of the PreviewView
bastianallgeier May 14, 2025
9bc2448
refact: Remove target form PreviewButton class
bastianallgeier May 14, 2025
0f6752a
feat: New size prop and exported props for FormControls
bastianallgeier May 15, 2025
d8d4019
feat: Add `Compare Versions` option to the Versions dropdown
bastianallgeier May 15, 2025
745d802
feat: New PreviewBrowser component
bastianallgeier May 15, 2025
7675913
refact: Move PreviewView into Preview subfolder
bastianallgeier May 15, 2025
a331587
fix: Support `compare` as `$versionId` for the open button
bastianallgeier May 15, 2025
a2041c3
feat: Support `compare` in preview view
bastianallgeier May 15, 2025
6403632
fix: Hide `no changes` message later
bastianallgeier May 15, 2025
9ddada1
Fix unit tests
bastianallgeier May 15, 2025
e2d8c6e
style: Fix cs issues
bastianallgeier May 15, 2025
ee75c4e
Merge branch 'develop-minor' into v5/develop
bastianallgeier May 15, 2025
375f422
test: Add modified unit test from develop-minor
bastianallgeier May 15, 2025
fdc579b
fix: Use File::previewURL in the FilePreview
bastianallgeier May 15, 2025
cf49be0
fix: Use File::previewUrl in the file dropdown
bastianallgeier May 15, 2025
3689832
refact: Improve `previewUrl` check for site area open buttons
bastianallgeier May 15, 2025
b07bf37
Merge pull request #7220 from getkirby/v5/enhancement/simplified-prev…
bastianallgeier May 15, 2025
c9c85b5
Preflight for 5.0.0-rc.1
bastianallgeier May 15, 2025
6fd9fd2
fix: Add `LC_MESSAGES` constant check
afbora May 15, 2025
b53a76b
Merge pull request #7224 from getkirby/fix/LC_MESSAGES-constant-suppo…
bastianallgeier May 16, 2025
99227f5
fix: Add correct license and since tag
bastianallgeier May 19, 2025
c9abe13
feat: Add Bosnian translation
bastianallgeier May 20, 2025
5745f98
chore: Update cert
bastianallgeier May 20, 2025
a7e7b45
chore: Update translations
bastianallgeier May 20, 2025
58feeb2
Merge pull request #7223 from getkirby/release/5.0.0-rc.1
bastianallgeier May 20, 2025
9f93b2c
fix: Save title and slug in changes if they exist
bastianallgeier May 22, 2025
58d23f0
test: Add unit test for `Page::changeSlug` and `Page::changeTitle`
bastianallgeier May 22, 2025
4de0823
test: Fix unit test
bastianallgeier May 22, 2025
09860cc
fix: Save sort in changes version
bastianallgeier May 22, 2025
ae13868
fix: Keep default values in disabled structure fields
bastianallgeier May 22, 2025
50aa01a
Merge pull request #7229 from getkirby/v5/fix/7227-change-title
bastianallgeier May 23, 2025
c95c4dc
Merge pull request #7230 from getkirby/v5/fix/7227-change-file-templa…
bastianallgeier May 23, 2025
1860477
fix: Normalize type and name attributes in Field class
bastianallgeier May 23, 2025
71ccf8f
fix: Normalize type and name attributes in FieldClass class
bastianallgeier May 23, 2025
0df924a
test: Add Field class test for lowercase names
bastianallgeier May 23, 2025
e52e730
test: Add FieldClass class test for lowercase names
bastianallgeier May 23, 2025
55e7209
feat: New `Asset:mediaDir()` method
bastianallgeier May 23, 2025
4e59c99
feat: New `$filename` arg for `Asset::mediaPath()`
bastianallgeier May 23, 2025
81e2297
feat: New `$filename` arg for `Asset::mediaRoot()`
bastianallgeier May 23, 2025
5239f8e
feat: New `$filename` arg for `Asset::mediaUrl()`
bastianallgeier May 23, 2025
5900596
test: Unit tests for new methods and args
bastianallgeier May 23, 2025
8b277a6
refact: Convert `AssetTest` class to PHPUnit attributes
bastianallgeier May 23, 2025
0ba286a
fix: Remove unnecessary `passthrough` option
bastianallgeier May 23, 2025
978411e
fix: Pass on `false` as `marks` option
bastianallgeier May 23, 2025
19cf757
Merge pull request #7242 from getkirby/v5/fix/7231-empty-writer-toolbar
bastianallgeier May 23, 2025
be3b10f
Merge pull request #7235 from getkirby/v5/fix/7233-structure-field-wi…
bastianallgeier May 23, 2025
e6285cd
Merge pull request #7241 from getkirby/v5/fix/7238-asset-media-dir
distantnative May 25, 2025
5dd658d
feat: Add `_preview` param for preview iframe URLs (#7244)
distantnative May 26, 2025
190f6d4
refact: Don’t use the type fallback for the exception
bastianallgeier May 26, 2025
8a34bd8
refact: Use `Language::ensure()` in `Site::changeTitle()`
bastianallgeier May 23, 2025
e9bd8d9
feat: New $language arg for `site.changeTitle` hooks
bastianallgeier May 23, 2025
bdf7541
fix: Save `$site` title in changes when changes exist
bastianallgeier May 23, 2025
916f2e4
fix: Don’t skip title field in forms (#7234)
bastianallgeier May 27, 2025
a833628
Merge pull request #7237 from getkirby/v5/fix/7236-field-name-cases
bastianallgeier May 27, 2025
2de41ea
Merge pull request #7239 from getkirby/v5/fix/7227-site-change-title
bastianallgeier May 27, 2025
e6c6ce0
chore: Update JS dependencies
bastianallgeier May 27, 2025
e47a10a
Merge branch 'v5/develop' of https://github.com/getkirby/kirby into v…
bastianallgeier May 27, 2025
73aced2
build: Preflight for 5.0.0-rc.2
bastianallgeier May 27, 2025
3ec52cb
Merge pull request #7245 from getkirby/release/5.0.0-rc.2
bastianallgeier May 27, 2025
caaf63a
chore: Update CI actions
bastianallgeier May 27, 2025
67221ab
Merge branch 'v5/develop' of https://github.com/getkirby/kirby into v…
bastianallgeier May 27, 2025
e816c60
fix: Writer empty state when value gets changed
distantnative May 27, 2025
c756ec5
test: Normalize timezone during unit tests
lukasbestle May 27, 2025
0fdffdd
Merge pull request #7248 from getkirby/v5/fix/phpunit-timezone
bastianallgeier May 28, 2025
d4a03f5
Merge pull request #7247 from getkirby/v5.0/fix/7246-writer-input-is-…
bastianallgeier May 28, 2025
61e544d
fix: URI builder: Trailing slash on relative URL
lukasbestle Jun 1, 2025
1190227
refact: Cleaner URI encoding for preview token
lukasbestle May 26, 2025
8f513a5
fix: Use full page URL for preview token
lukasbestle Jun 2, 2025
861a890
Merge pull request #7255 from getkirby/v5/fix/uri-slash
bastianallgeier Jun 2, 2025
bb21888
Merge pull request #7256 from getkirby/v5/fix/external-preview
bastianallgeier Jun 2, 2025
1d8cd9f
Merge branch 'develop-minor' into v5/develop
bastianallgeier Jun 2, 2025
3d800d1
feat: Add Taiwanese translation
bastianallgeier Jun 2, 2025
813d230
fix: Add missing submit handler
bastianallgeier Jun 2, 2025
e9168c9
chore: Update composer dependencies
bastianallgeier Jun 3, 2025
4cef4ef
chore: Update JS dependencies
bastianallgeier Jun 3, 2025
504bcda
Merge pull request #7259 from getkirby/v5/fix/7257-date-input-submit
bastianallgeier Jun 3, 2025
a84b81e
Merge branch 'main' into v5/develop
bastianallgeier Jun 3, 2025
6dac5cd
5.0.0-rc.3 (#7264)
bastianallgeier Jun 3, 2025
ae24f3e
fix: Make `HasMethods::hasMethod()` public again (#7267)
distantnative Jun 4, 2025
84794a8
fix: Wait for upload and refresh the view afterwards (#7252)
bastianallgeier Jun 5, 2025
2817635
fix: Move trait template annotations to class doc
distantnative Jun 7, 2025
e84618e
test: Suppress Psalm MissingTemplateParam error
distantnative Jun 7, 2025
026d0cd
fix: Show text in radio & select field previews (#7276)
distantnative Jun 8, 2025
5136667
Merge pull request #7272 from getkirby/v5.0/fix/trait-templates
bastianallgeier Jun 8, 2025
06286de
fix: Check for valid entries array
bastianallgeier Jun 8, 2025
6da71a6
fix: Accept `false` as field label value
bastianallgeier Jun 5, 2025
2830091
fix: Adjust back button background for dark mode (#7281)
bastianallgeier Jun 12, 2025
8f19297
refact: Simplify entries check
bastianallgeier Jun 12, 2025
f79cf0a
chore: Update JS dependencies
bastianallgeier Jun 12, 2025
2e17f85
build: Preflight for 5.0.0-rc.4 (#7286)
bastianallgeier Jun 12, 2025
4f1d012
Merge pull request #7269 from getkirby/v5/fix/7265-entries-field-issues
bastianallgeier Jun 13, 2025
106fbae
fix: Don’t use currentColor for the auto-fill text color
bastianallgeier Jun 13, 2025
51b66ea
Merge pull request #7287 from getkirby/v5/fix/7275-auto-fill-in-safari
distantnative Jun 13, 2025
ad6b927
test: Add lab example for coloured and collapsed button groups
bastianallgeier Jun 13, 2025
931362e
docs: Available field width fractions
distantnative Jun 14, 2025
af522db
docs: `$panel.content` lab docs
distantnative Jun 14, 2025
0be9f00
docs: Add `@since` to `License` + `LicenseStatus`
distantnative Jun 14, 2025
45e86c7
fix: Panel view button referenced from config (#7290)
distantnative Jun 14, 2025
a622bc7
feat: New `$force` paramter for to submit unsubmittable fields
bastianallgeier Jun 14, 2025
3aa7964
fix: Submit all fields in `::update` method when validation is switch…
bastianallgeier Jun 14, 2025
ff88b83
docs: Improved comments for Parsley schema classes
distantnative Jun 15, 2025
43dfc81
docs: Clean up `@internal`, add `@unstable` tags
distantnative Jun 15, 2025
9712c79
docs: Add docBlock comments for the difference between `$passthrough`…
bastianallgeier Jun 14, 2025
f1c1243
test: Add `disabled` unit test
lukasbestle Jun 14, 2025
df55e84
fix: Bring back the old `Content::update()` (#7288)
bastianallgeier Jun 15, 2025
cc4505a
Merge pull request #7283 from getkirby/v5/fix/submit-disabled-fields
bastianallgeier Jun 15, 2025
dc44d02
Merge pull request #7292 from getkirby/v5.0/docs/unstable-tags
distantnative Jun 15, 2025
81cdbca
fix: Properly resolve plugin's `extends` (#7291)
distantnative Jun 15, 2025
4635bc6
fix: Remove coloured borders on buttons in collapsed button group
adamkiss Jun 15, 2025
60e5b02
feat: Add filter input to Lab index view
distantnative Jun 15, 2025
becf61f
fix: Disable dialog save shortcut when loading (#7294)
distantnative Jun 15, 2025
35fc305
fix: Optimize filter input for dark mode and fix margin
bastianallgeier Jun 15, 2025
870d2be
Merge pull request #7293 from getkirby/v5.0/feat/lab-index-view-filter
bastianallgeier Jun 15, 2025
3889da7
refact: Improve Lab docs classes
distantnative Jun 15, 2025
bd6cda8
feat: Mark unstable components in Lab docs
distantnative Jun 15, 2025
5f21cc0
feat: Display event names with `@` prefix in Lab
distantnative Jun 15, 2025
cdf8df8
Merge pull request #7295 from getkirby/v5.0/refact/lab-docs-classes
bastianallgeier Jun 17, 2025
13295f4
chore: Update composer dependencies
bastianallgeier Jun 17, 2025
a9a1585
chore: Update JS dependencies
bastianallgeier Jun 17, 2025
b0de6ab
build: Preflight for 5.0.0-rc.5 (#7300)
bastianallgeier Jun 17, 2025
79e6256
feat: New `assetFactory` method
bastianallgeier Jun 17, 2025
800d133
fix: Use new `assetFactory` to avoid invalid asset cache
bastianallgeier Jun 17, 2025
87c05b4
fix: Preserve existing content when a duplicate is being uploaded
bastianallgeier Jun 18, 2025
081771f
fix: Don’t interpret the type by .tmp extension
bastianallgeier Jun 19, 2025
e93c433
Merge pull request #7299 from getkirby/v5/fix/file-create
bastianallgeier Jun 19, 2025
3273fa2
fix: Use `WeakMap` for `VersionCache` (#7307)
bastianallgeier Jun 20, 2025
61608b8
chore: Update JS dependencies
bastianallgeier Jun 20, 2025
aa8427a
feat: Add licenses root
nilshoerrmann Jun 17, 2025
b7485e8
Merge branch 'pullrequests/hananils/feature/licensesroot' into v5/dev…
bastianallgeier Jun 20, 2025
eff9881
build: 5.0.0-rc.6 (#7308)
bastianallgeier Jun 20, 2025
8db8338
chore: Update launch date
bastianallgeier Jun 20, 2025
cd08279
docs: `panel.theme` lab docs
distantnative Jun 23, 2025
1d04929
docs: `light-dark()` for theme-based colors in Lab
distantnative Jun 23, 2025
851a1da
chore: Update JS dependencies
bastianallgeier Jun 24, 2025
9f39c8c
fix: Reload User view after upload
bastianallgeier Jun 24, 2025
9f28378
build: Preflight for 5.0.0
bastianallgeier Jun 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ insert_final_newline = true
indent_size = 2
insert_final_newline = false

[views/**/*.php]
indent_size = 2
insert_final_newline = false

[*.yml]
indent_style = space

Expand Down
3 changes: 2 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@
.php-cs-fixer.dist.php export-ignore
phpbench.json export-ignore
phpmd.xml.dist export-ignore
phpunit.xml.dist export-ignore
phpunit.ci.xml export-ignore
phpunit.dist.xml export-ignore
psalm.xml.dist export-ignore
bench/ export-ignore
tests/ export-ignore
Expand Down
51 changes: 28 additions & 23 deletions .github/workflows/backend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,43 +57,48 @@ jobs:
timeout-minutes: 5
strategy:
matrix:
php: ["8.1", "8.2", "8.3", "8.4"]
php: ["8.2", "8.3", "8.4"]
env:
extensions: mbstring, ctype, curl, gd, apcu, memcached
extensions: mbstring, ctype, curl, gd, apcu, memcached, redis
ini: apc.enabled=1, apc.enable_cli=1, pcov.directory=., "pcov.exclude=\"~(vendor|tests)~\""

steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # pin@v4
with:
fetch-depth: 2

- name: Preparations
run: mkdir sarif

- name: Install memcached
uses: niden/actions-memcached@3b3ecd9d0d035ea92db716dc1540a7dbe9e56349 # v7
uses: niden/actions-memcached@3b3ecd9d0d035ea92db716dc1540a7dbe9e56349 # pin@v7

- name: Install redis
uses: supercharge/redis-github-action@ea9b21c6ecece47bd99595c532e481390ea0f044 # pin@v1
with:
redis-version: 7

- name: Install system locales
run: sudo apt-get update && sudo apt-get install -y locales-all

- name: Setup PHP cache environment
id: ext-cache
uses: shivammathur/cache-extensions@d814e887327271b6e290b018d51bba9f62590488 # v1
uses: shivammathur/cache-extensions@d814e887327271b6e290b018d51bba9f62590488 # pin@v1
with:
php-version: ${{ matrix.php }}
extensions: ${{ env.extensions }}
key: php-v1

- name: Cache PHP extensions
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # pin@v4
with:
path: ${{ steps.ext-cache.outputs.dir }}
key: ${{ steps.ext-cache.outputs.key }}
restore-keys: ${{ steps.ext-cache.outputs.key }}

- name: Setup PHP environment
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # pin@v2
with:
php-version: ${{ matrix.php }}
extensions: ${{ env.extensions }}
Expand All @@ -108,7 +113,7 @@ jobs:

- name: Cache analysis data
id: finishPrepare
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # pin@v4
with:
path: ~/.cache/psalm
key: backend-analysis-${{ matrix.php }}
Expand All @@ -119,7 +124,7 @@ jobs:

- name: Run tests
if: always() && steps.finishPrepare.outcome == 'success'
run: phpunit --fail-on-skipped --coverage-clover ${{ github.workspace }}/clover.xml
run: phpunit -c phpunit.ci.xml --coverage-clover ${{ github.workspace }}/clover.xml

- name: Statically analyze using Psalm
if: always() && steps.finishPrepare.outcome == 'success' && matrix.php != '8.4'
Expand All @@ -130,7 +135,7 @@ jobs:
token: ${{ secrets.CODECOV_TOKEN }}
PHP: ${{ matrix.php }}
if: env.token != ''
uses: codecov/codecov-action@ab904c41d6ece82784817410c45d8b8c02684457 # v3
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # pin@v5
with:
token: ${{ secrets.CODECOV_TOKEN }} # for better reliability if the GitHub API is down
fail_ci_if_error: true
Expand All @@ -140,7 +145,7 @@ jobs:

- name: Upload code scanning results to GitHub
if: always() && steps.finishPrepare.outcome == 'success' && github.repository == 'getkirby/kirby' && matrix.php != '8.4'
uses: github/codeql-action/upload-sarif@b8d3b6e8af63cde30bdc382c0bc28114f4346c88 # v2
uses: github/codeql-action/upload-sarif@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # pin@v3
with:
sarif_file: sarif

Expand All @@ -167,34 +172,34 @@ jobs:
runs-on: ubuntu-22.04
timeout-minutes: 5
env:
php: "8.1"
extensions: mbstring, ctype, curl, gd, apcu, memcached
php: "8.2"
extensions: mbstring, ctype, curl, gd, apcu, memcached, redis

steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # pin@v4

- name: Preparations
run: mkdir sarif

- name: Setup PHP cache environment
id: ext-cache
uses: shivammathur/cache-extensions@d814e887327271b6e290b018d51bba9f62590488 # v1
uses: shivammathur/cache-extensions@d814e887327271b6e290b018d51bba9f62590488 # pin@v1
with:
php-version: ${{ env.php }}
extensions: ${{ env.extensions }}
key: php-analysis-v1

- name: Cache PHP extensions
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # pin@v4
with:
path: ${{ steps.ext-cache.outputs.dir }}
key: ${{ steps.ext-cache.outputs.key }}
restore-keys: ${{ steps.ext-cache.outputs.key }}

- name: Setup PHP environment
id: finishPrepare
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # pin@v2
with:
php-version: ${{ env.php }}
extensions: ${{ env.extensions }}
Expand All @@ -221,7 +226,7 @@ jobs:

- name: Upload code scanning results to GitHub
if: always() && steps.finishPrepare.outcome == 'success' && github.repository == 'getkirby/kirby'
uses: github/codeql-action/upload-sarif@b8d3b6e8af63cde30bdc382c0bc28114f4346c88 # v2
uses: github/codeql-action/upload-sarif@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # pin@v3
with:
sarif_file: sarif

Expand All @@ -248,22 +253,22 @@ jobs:
runs-on: ubuntu-22.04
timeout-minutes: 5
env:
php: "8.1"
php: "8.2"

steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # pin@v4

- name: Setup PHP environment
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # pin@v2
with:
php-version: ${{ env.php }}
coverage: none
tools: php-cs-fixer:3.52.1
tools: php-cs-fixer:3.65.0

- name: Cache analysis data
id: finishPrepare
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # pin@v4
with:
path: ~/.php-cs-fixer
key: coding-style
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/frontend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ jobs:
runs-on: ubuntu-22.04
timeout-minutes: 5
env:
php: "8.1"
php: "8.2"

steps:
- name: Checkout
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
# tests
.phpbench
.phpunit.cache
phpunit.xml
/tests/coverage
/tests/tmp

Expand Down
23 changes: 16 additions & 7 deletions .php-cs-fixer.dist.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@
return $config
->setRules([
'@PSR12' => true,
'align_multiline_comment' => ['comment_type' => 'phpdocs_like'],
'align_multiline_comment' => ['comment_type' => 'all_multiline'],
'array_indentation' => true,
'array_syntax' => ['syntax' => 'short'],
'assign_null_coalescing_to_coalesce_equal' => true,
'cast_spaces' => ['space' => 'none'],
// 'class_keyword_remove' => true, // replaces static::class with 'static' (won't work)
'combine_consecutive_issets' => true,
'combine_consecutive_unsets' => true,
'combine_nested_dirname' => true,
Expand All @@ -23,8 +23,6 @@
'function_typehint_space' => true,
'include' => true,
'logical_operators' => true,
'lowercase_cast' => true,
'lowercase_static_reference' => true,
'magic_constant_casing' => true,
'magic_method_casing' => true,
'method_chaining_indentation' => true,
Expand All @@ -33,29 +31,40 @@
'native_function_casing' => true,
'native_function_type_declaration_casing' => true,
'new_with_braces' => true,
'no_blank_lines_after_class_opening' => true,
'no_blank_lines_after_phpdoc' => true,
'no_empty_comment' => true,
'no_empty_phpdoc' => true,
'no_empty_statement' => true,
'no_leading_namespace_whitespace' => true,
'no_mixed_echo_print' => ['use' => 'echo'],
'no_short_bool_cast' => true,
'no_superfluous_elseif' => true,
'no_superfluous_phpdoc_tags' => ['allow_unused_params' => true],
'no_unneeded_braces' => true,
'no_unneeded_control_parentheses' => true,
'no_unneeded_import_alias' => true,
'no_unused_imports' => true,
'no_useless_else' => true,
'no_useless_nullsafe_operator' => true,
'no_useless_return' => true,
'no_whitespace_before_comma_in_array' => true,
'nullable_type_declaration' => ['syntax' => 'union'],
'nullable_type_declaration_for_default_null_value' => true,
'object_operator_without_whitespace' => true,
'operator_linebreak' => ['position' => 'end', 'only_booleans' => true],
'ordered_imports' => ['sort_algorithm' => 'alpha'],
'ordered_types' => ['sort_algorithm' => 'none', 'null_adjustment' => 'always_last'],
// 'phpdoc_add_missing_param_annotation' => ['only_untyped' => false], // adds params in the wrong order
'phpdoc_align' => ['align' => 'left'],
'phpdoc_indent' => true,
'phpdoc_param_order' => true,
'phpdoc_scalar' => true,
'phpdoc_trim' => true,
'short_scalar_cast' => true,
'php_unit_fqcn_annotation' => true,
'single_line_comment_style' => true,
'single_quote' => true,
'statement_indentation' => ['stick_comment_to_next_continuous_control_statement' => true],
'ternary_to_null_coalescing' => true,
'trim_array_spaces' => true,
'whitespace_after_comma_in_array' => true
])
->setRiskyAllowed(true)
Expand Down
13 changes: 6 additions & 7 deletions bootstrap.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* stop at older or too recent versions
*/
if (
version_compare(PHP_VERSION, '8.1.0', '>=') === false ||
version_compare(PHP_VERSION, '8.2.0', '>=') === false ||
version_compare(PHP_VERSION, '8.5.0', '<') === false
) {
die(include __DIR__ . '/views/php.php');
Expand All @@ -27,10 +27,9 @@
* @psalm-suppress MissingFile
*/
include $autoloader;
} else {
/**
* If neither one exists, don't bother searching;
* it's a custom directory setup and the users need to
* load the autoloader themselves
*/
}
/**
* If neither one exists, don't bother searching;
* it's a custom directory setup and the users need to
* load the autoloader themselves
*/
11 changes: 6 additions & 5 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "The Kirby core",
"license": "proprietary",
"type": "kirby-cms",
"version": "4.8.0",
"version": "5.0.0",
"keywords": [
"kirby",
"cms",
Expand All @@ -24,7 +24,7 @@
"source": "https://github.com/getkirby/kirby"
},
"require": {
"php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0",
"php": "~8.2.0 || ~8.3.0 || ~8.4.0",
"ext-SimpleXML": "*",
"ext-ctype": "*",
"ext-curl": "*",
Expand All @@ -39,14 +39,14 @@
"christian-riesen/base32": "1.6.0",
"claviska/simpleimage": "4.2.1",
"composer/semver": "3.4.3",
"filp/whoops": "2.18.0",
"filp/whoops": "2.18.3",
"getkirby/composer-installer": "^1.2.1",
"laminas/laminas-escaper": "2.17.0",
"michelf/php-smartypants": "1.8.1",
"phpmailer/phpmailer": "6.10.0",
"symfony/polyfill-intl-idn": "1.32.0",
"symfony/polyfill-mbstring": "1.32.0",
"symfony/yaml": "6.4.21"
"symfony/yaml": "7.3.0"
},
"replace": {
"symfony/polyfill-php72": "*"
Expand All @@ -58,6 +58,7 @@
"ext-fileinfo": "Improved mime type detection for files",
"ext-intl": "Improved i18n number formatting",
"ext-memcached": "Support for the Memcached cache driver",
"ext-redis": "Support for the Redis cache driver",
"ext-sodium": "Support for the crypto class and more robust session handling",
"ext-zip": "Support for ZIP archive file functions",
"ext-zlib": "Sanitization and validation for svgz files"
Expand All @@ -80,7 +81,7 @@
},
"optimize-autoloader": true,
"platform": {
"php": "8.1.0"
"php": "8.2.0"
},
"platform-check": false
},
Expand Down
Loading