Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4.0.0 #6011

Merged
merged 2,982 commits into from
Nov 28, 2023
Merged

4.0.0 #6011

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2982 commits
Select commit Hold shift + click to select a range
5aeb156
Merge pull request #5887 from getkirby/v4/fix/5442-writer-toolbar-nod…
bastianallgeier Nov 2, 2023
464d96a
Panel dist files
bastianallgeier Nov 2, 2023
3cc7752
Update translations
bastianallgeier Nov 2, 2023
508bb1f
Update composer dependencies
bastianallgeier Nov 2, 2023
46286a6
Fix composer dependency update
bastianallgeier Nov 2, 2023
cb45cea
Merge pull request #5902 from getkirby/release/4.0.0-beta.3
bastianallgeier Nov 2, 2023
cdc07c4
Revert autoresize scroll restore
distantnative Nov 2, 2023
48e9f54
Exclude UI docs and lab from regular bundle
distantnative Nov 2, 2023
6451075
Icon for `k-stat`
distantnative Nov 2, 2023
2c3850c
Use `autosize` library
distantnative Nov 2, 2023
eeb87a7
Merge pull request #5909 from getkirby/v4/enhancement/bundle-without-…
bastianallgeier Nov 3, 2023
b90d220
Fix grid and border radius
bastianallgeier Nov 3, 2023
9ff6891
`k-stat`: increase icon size
distantnative Nov 3, 2023
3bad808
Remove `<k-autosize>`
distantnative Nov 3, 2023
203a801
Add missing since tag
distantnative Nov 3, 2023
ea9535f
Merge pull request #5908 from getkirby/v4/enhancement/stat-icon
distantnative Nov 3, 2023
8a976d6
New dumber `k-tags`
distantnative Oct 19, 2023
cc55758
New `k-picklist-input` and dropdown
distantnative Oct 19, 2023
0b58961
Add since tags for picklist components
distantnative Oct 19, 2023
21fed73
Add inline docs for `k-picklist-input`
distantnative Oct 19, 2023
c231546
Fix TagsInput toggle
distantnative Oct 19, 2023
67e84a3
TagsInput: don’t show choice inputs
distantnative Oct 19, 2023
c4f7d97
MultiselectInput: hide unchecked choice inputs
distantnative Oct 19, 2023
5ff3041
Fix sort/draggable for MultiselectInput
distantnative Oct 19, 2023
53484e4
Picklist: use `add` as default submit label
distantnative Oct 19, 2023
afa845c
Picklist: support `search.display`
distantnative Oct 19, 2023
c76f84f
Picklist: lab example for `search.display`
distantnative Oct 19, 2023
735f393
Picklist: fix maxheight in dropdown
distantnative Oct 19, 2023
831931d
`k-tags`: use grab curstor when draggable
distantnative Oct 19, 2023
f7f21b7
Multiselect: use pointer cursor
distantnative Oct 19, 2023
f204f59
Tags: also use grabbing cursor
distantnative Oct 19, 2023
2d3ce37
PicklistDropdown: keep open on click
distantnative Oct 19, 2023
61bdcf7
Tweak styling
distantnative Oct 27, 2023
52ba1ea
Better checkbox styles
bastianallgeier Nov 1, 2023
849d59e
Fix drag to empty blocks list
distantnative Nov 3, 2023
ba016fa
Tweak style of Toggle input
distantnative Nov 3, 2023
b1c552b
Fix CalendarInput
distantnative Nov 3, 2023
63e56b0
Merge pull request #5917 from getkirby/v4/fix/calendar-input
bastianallgeier Nov 4, 2023
4fd9137
Merge pull request #5914 from getkirby/v4/fix/autosize
bastianallgeier Nov 4, 2023
acf747d
Move container to dialog fields
bastianallgeier Nov 4, 2023
3d3628e
Speed up transition and don’t animate checkmark
bastianallgeier Nov 4, 2023
841bf64
Merge pull request #5916 from getkirby/v4/enhancement/toggle-style
bastianallgeier Nov 4, 2023
2afaf08
Merge pull request #5912 from getkirby/v4/fix/totp-dialog
bastianallgeier Nov 4, 2023
7e47813
Refactor registration button in menu
bastianallgeier Nov 4, 2023
a6b18dc
`k-header`: add warning for removed tabs support
distantnative Nov 4, 2023
541897d
Finalize styling
bastianallgeier Nov 4, 2023
80fe2a9
Move activation into its own component and state module
bastianallgeier Nov 4, 2023
1108f49
Activation bubble lab example
bastianallgeier Nov 4, 2023
0d61ad3
Fix unit tests
bastianallgeier Nov 4, 2023
8fadb01
Translate activation message
bastianallgeier Nov 4, 2023
9016ac3
Merge pull request #5918 from getkirby/v4/fix/header-tabs-deprecated
bastianallgeier Nov 4, 2023
2748b0f
Merge pull request #5915 from getkirby/v4/fix/5910-blocks-list-empty
bastianallgeier Nov 4, 2023
9670223
Merge branch 'develop' into v4/develop
distantnative Nov 4, 2023
927f78a
Show activation bubble in mobile nav
distantnative Nov 4, 2023
046c7d7
Merge branch 'develop' into v4/develop
distantnative Nov 5, 2023
e6e928f
Switch to “Activate” wording
distantnative Nov 5, 2023
79881d4
Apply suggestions from code review
distantnative Nov 5, 2023
fae7f1d
Update i18n/translations/en.json
distantnative Nov 5, 2023
c655a20
Upgrade npm dependencies
distantnative Nov 6, 2023
cb73bc5
Fix unit tests
distantnative Nov 6, 2023
2d80261
Dom: Pass options array to callbacks
lukasbestle Nov 6, 2023
e821214
Dom: Normalize options for all public methods
lukasbestle Nov 5, 2023
d4d0d22
Dom: New allowHostRelativeUrls option
lukasbestle Nov 6, 2023
17fcb4f
Unit test for UUID links in the writer field
lukasbestle Nov 5, 2023
840e1e8
Merge pull request #5921 from getkirby/v4/enhancement/activation-bubble
bastianallgeier Nov 7, 2023
63127a4
Merge pull request #5926 from getkirby/v4/fix/5922-registration-wording
bastianallgeier Nov 7, 2023
45c5030
Handle fields without props
bastianallgeier Nov 7, 2023
2009794
Merge pull request #5928 from getkirby/v4/fix/5208-dom-host-relative-…
bastianallgeier Nov 7, 2023
f6b37e2
Merge pull request #5933 from getkirby/v4/fix/5931-handle-fields-with…
distantnative Nov 7, 2023
fa31482
Merge branch 'develop' into v4/develop
distantnative Nov 7, 2023
3511efb
Merge pull request #5923 from getkirby/v4/enhancement/activation-mobile
bastianallgeier Nov 8, 2023
9210247
More dropdown examples
bastianallgeier Nov 9, 2023
ba071b2
Fix click on dropdown page for pagination component #5940
afbora Nov 9, 2023
480b78b
Various design and UX improvements
bastianallgeier Nov 9, 2023
983f926
More style adjustments and keyboard nav improvements
bastianallgeier Nov 9, 2023
5137ec8
Use new triangle icon for more button
bastianallgeier Nov 9, 2023
1cfb6e9
Fix keyboard navigation in the search input
bastianallgeier Nov 9, 2023
0775b4c
Use outline for in tags dropdown
bastianallgeier Nov 9, 2023
4ee7ac5
Merge pull request #5943 from getkirby/v4/fix/5940-pagination-dropdown
bastianallgeier Nov 9, 2023
d938b9f
Fix field states without options
bastianallgeier Nov 9, 2023
aafd922
Fix the selected items in the page move dialog
bastianallgeier Nov 9, 2023
31898b8
Hide add btn when not allowed
distantnative Nov 9, 2023
e5dcfde
Use add icon, not plus
distantnative Nov 9, 2023
f4eaaa1
Fix highlighting in picklist input itself
distantnative Nov 9, 2023
39483ec
Picklist: highlight currently chosen items
distantnative Nov 9, 2023
736d2a8
Use angle down icon
distantnative Nov 9, 2023
f71fbe8
Show tags toggle on hover
distantnative Nov 9, 2023
f103ce7
Tags: no btn on hover, but pointer cursor
distantnative Nov 9, 2023
b4b247f
Remove triangle icon
distantnative Nov 9, 2023
d7eb629
Fix cs issues
bastianallgeier Nov 9, 2023
d7cdec9
Merge pull request #5947 from getkirby/v4/fix/empty-options
bastianallgeier Nov 9, 2023
abca6ca
Small padding fix
bastianallgeier Nov 9, 2023
bf81bbb
Merge pull request #5949 from getkirby/v4/enhancement/picklist-input-…
bastianallgeier Nov 9, 2023
fbf88d4
Merge pull request #5948 from getkirby/v4/fix/move-dialog
bastianallgeier Nov 9, 2023
260ee59
Merge pull request #5822 from getkirby/v4/enhancement/picklist-input
bastianallgeier Nov 9, 2023
02b5f9a
Update panel dist files
bastianallgeier Nov 10, 2023
1d973cd
Bump version number
bastianallgeier Nov 10, 2023
bda8378
Update composer dependencies
bastianallgeier Nov 10, 2023
982c737
Update translations
bastianallgeier Nov 10, 2023
da7346e
Merge pull request #5950 from getkirby/release/4.0.0-rc.1
bastianallgeier Nov 10, 2023
17bf0c9
Fix header margin in lab
bastianallgeier Nov 13, 2023
71e55c3
Fix table pagination with table styles
bastianallgeier Nov 13, 2023
e938e4a
Merge pull request #5951 from getkirby/v4/fix/5941-structure-footer
bastianallgeier Nov 13, 2023
be86c60
Fix toggles on iOS
bastianallgeier Nov 13, 2023
8a46ee3
Merge branch 'develop' into v4/develop
bastianallgeier Nov 14, 2023
df1938b
Updates after 3.9.8 merge
bastianallgeier Nov 14, 2023
b5c2c4b
Merge pull request #5955 from getkirby/v4/fix/toggle-on-ios
distantnative Nov 16, 2023
6758672
Upgrade npm dependencies
distantnative Nov 16, 2023
e9a293f
`k-tabs`: fix badge
distantnative Nov 18, 2023
35eeca0
Remove extraneous splitting
lukasbestle Nov 18, 2023
50fc524
Add Vue target version to jsconfig
lukasbestle Nov 18, 2023
76fb1c8
Merge pull request #5970 from getkirby/v4/fix/changes-dialog
bastianallgeier Nov 20, 2023
5a13d5b
Merge pull request #5967 from getkirby/v4/fix/tabs-badge
bastianallgeier Nov 20, 2023
bd59baa
Clearer outline for selected colors
bastianallgeier Nov 20, 2023
4d0dfe2
New license dialog
bastianallgeier Nov 7, 2023
c3e8f8e
Make hub address configurable
bastianallgeier Nov 7, 2023
d2f900d
New license class and first steps to integrate it
bastianallgeier Nov 8, 2023
19f0d5e
`LicenseStatus` enum
distantnative Nov 11, 2023
b7e947c
A few fixes after the new status enum
bastianallgeier Nov 13, 2023
66ba9ee
Small improvements and lab example
bastianallgeier Nov 13, 2023
b803ecb
New button group and lab example setup
bastianallgeier Nov 14, 2023
541e0ff
New LicenseStatus definitions and dialogs
bastianallgeier Nov 14, 2023
81d93c4
Fix cs issues
bastianallgeier Nov 14, 2023
dcfbf5e
Add first set of unit tests for the license class
bastianallgeier Nov 15, 2023
3779579
Licenses: change status wording
distantnative Nov 14, 2023
197a5f3
Fix date issue and color
bastianallgeier Nov 15, 2023
eb7af57
New license type enum and unit tests
bastianallgeier Nov 15, 2023
dfaed36
Add API license model and fix more unit tests
bastianallgeier Nov 15, 2023
9087314
Try to fix CS issues manually
bastianallgeier Nov 15, 2023
11f2159
Fix dialog label
bastianallgeier Nov 15, 2023
668f86f
Renamed methods and fixed license verification
bastianallgeier Nov 15, 2023
593e6db
New License::update method and better renewal logic
bastianallgeier Nov 15, 2023
b23ffcb
Merge pull request #5973 from getkirby/v4/enhancement/clear-outline
bastianallgeier Nov 20, 2023
c9ebccc
Fix EN i18n strings for TOTP notifications
distantnative Nov 20, 2023
eae88e9
New license dialog
bastianallgeier Nov 7, 2023
b6e2aa2
Make hub address configurable
bastianallgeier Nov 7, 2023
0ffc660
New license class and first steps to integrate it
bastianallgeier Nov 8, 2023
754ca64
`LicenseStatus` enum
distantnative Nov 11, 2023
788c8c5
A few fixes after the new status enum
bastianallgeier Nov 13, 2023
5af81c4
Small improvements and lab example
bastianallgeier Nov 13, 2023
eb8aec8
New button group and lab example setup
bastianallgeier Nov 14, 2023
098ef2f
New LicenseStatus definitions and dialogs
bastianallgeier Nov 14, 2023
7410b32
Fix cs issues
bastianallgeier Nov 14, 2023
49a56ac
Add first set of unit tests for the license class
bastianallgeier Nov 15, 2023
fd671af
Licenses: change status wording
distantnative Nov 14, 2023
84133ab
Fix date issue and color
bastianallgeier Nov 15, 2023
ee59b98
New license type enum and unit tests
bastianallgeier Nov 15, 2023
029aa87
Add API license model and fix more unit tests
bastianallgeier Nov 15, 2023
7bf39f8
Try to fix CS issues manually
bastianallgeier Nov 15, 2023
023fe20
Fix dialog label
bastianallgeier Nov 15, 2023
ce22b68
Renamed methods and fixed license verification
bastianallgeier Nov 15, 2023
22a195b
New License::update method and better renewal logic
bastianallgeier Nov 15, 2023
32d10e8
Change translation strings
bastianallgeier Nov 20, 2023
115caf5
Merge branch 'v4/enhancement/licenses' of https://github.com/getkirby…
bastianallgeier Nov 20, 2023
ce3ff18
Remove license type after introduction of global type string
bastianallgeier Nov 20, 2023
c1ba8b1
`$field->toResolvedUrls()`
distantnative Nov 20, 2023
f22b952
Phase out `k-bar`
distantnative Nov 21, 2023
99291ea
Blocks: keep selected sort order
distantnative Nov 21, 2023
6ed6360
Fix regular urls
distantnative Nov 21, 2023
112e539
Keep pagination at the top
bastianallgeier Nov 21, 2023
7749eca
Merge pull request #5978 from getkirby/v4/fix/help-height
bastianallgeier Nov 21, 2023
ecc7efd
Merge pull request #5979 from getkirby/v4/fix/blocks-select-order
bastianallgeier Nov 21, 2023
35f0976
Rename method
bastianallgeier Nov 21, 2023
3431f7a
Add comment
bastianallgeier Nov 21, 2023
bdb4061
Fix unit tests
bastianallgeier Nov 21, 2023
ce50c63
Merge pull request #5976 from getkirby/v4/enhancement/resolve-permalinks
bastianallgeier Nov 21, 2023
5b2bacf
Update panel dist files
bastianallgeier Nov 21, 2023
406951a
Update translations
bastianallgeier Nov 21, 2023
3ee43bd
Update composer dependencies
bastianallgeier Nov 21, 2023
8c35abd
Fix cs issues
bastianallgeier Nov 21, 2023
d0f505e
Merge pull request #5980 from getkirby/release/4.0.0-rc.2
bastianallgeier Nov 21, 2023
1a27e75
Merge branch 'v4/develop' into v4/enhancement/licenses
bastianallgeier Nov 21, 2023
4c1c434
Merge pull request #5971 from getkirby/v4/fix/jsconfig-target
bastianallgeier Nov 21, 2023
f2fd294
ImageMagick: fix focus-cropping bug
mrflix Nov 22, 2023
d959be7
Update license text
lukasbestle Nov 22, 2023
bc2f2a7
Fix link target for GitHub
lukasbestle Nov 22, 2023
b9698a5
Use Vue object syntax for dynamic `:style` attrs
lukasbestle Nov 22, 2023
641364b
Fix double-escaping bug in the language view
lukasbestle Nov 22, 2023
4c19e67
Fix HTML output in the changes dialog
lukasbestle Nov 22, 2023
52971f2
Fix HTML output in the admin TOTP disable dialog
lukasbestle Nov 22, 2023
52dcf80
More unit tests for `Str::safeTemplate()`
lukasbestle Nov 22, 2023
127406f
Add missing class aliases
distantnative Nov 23, 2023
60af17c
Remove unnecessary section from license dialog
bastianallgeier Nov 23, 2023
e6d9a97
Adjust upgrade flow
bastianallgeier Nov 23, 2023
2153815
Use error messages from the hub
bastianallgeier Nov 23, 2023
e0030ef
Merge branch 'v4/develop' into v4/enhancement/licenses
bastianallgeier Nov 23, 2023
c9cbb92
Fix cs
distantnative Nov 23, 2023
af72185
Fix js unit tests
distantnative Nov 23, 2023
7f436b7
Merge pull request #5987 from getkirby/v4/fix/aliases
bastianallgeier Nov 23, 2023
71765b7
Merge pull request #5986 from getkirby/v4/fix/html-handling
bastianallgeier Nov 23, 2023
b1912e8
Merge pull request #5985 from mrflix/v4/develop
bastianallgeier Nov 23, 2023
773fdfc
Block selector: fix for empty groups
distantnative Nov 23, 2023
9cf02e7
Object field: fix disabled table style
distantnative Nov 23, 2023
5f062d7
Remove `k-structure-form`
distantnative Nov 23, 2023
aa07288
Link field: fix model preview for too long titles
distantnative Nov 23, 2023
4610b67
Slug field: respect custom slug allow from `Str`
distantnative Nov 23, 2023
980b483
Fix header wrapping for fields and sections
distantnative Nov 23, 2023
bab84bf
Merge pull request #5989 from getkirby/v4/fix/blocks-selector-empty-g…
bastianallgeier Nov 23, 2023
303e86b
Merge pull request #5990 from getkirby/v4/fix/5957-object-field-disabled
bastianallgeier Nov 23, 2023
e5a2cc6
Merge pull request #5992 from getkirby/v4/fix/5924-link-model-preview…
bastianallgeier Nov 23, 2023
d90a46c
Fix the label truncation and a few inconsistencies in section
bastianallgeier Nov 23, 2023
9cae4a9
Merge pull request #5991 from getkirby/v4/fix/5929-custom-slug-rules
bastianallgeier Nov 23, 2023
aa38ef1
Field & section: add title attr for label
distantnative Nov 24, 2023
9df9fa6
Merge pull request #5994 from getkirby/v4/fix/5866-long-field-header-…
distantnative Nov 24, 2023
df68fc2
Models fields: add disable style
distantnative Nov 24, 2023
6c9db1b
Change theme for `LicenseStatus::Legacy`
distantnative Nov 24, 2023
f98e03a
Add some more unit tests
distantnative Nov 24, 2023
2350c0e
colors.js: support HEX without leading `#`
distantnative Nov 24, 2023
73cf659
ColornameInput: getComputedStyle only last resort
distantnative Nov 24, 2023
0bf81ea
Merge pull request #5997 from getkirby/v4/enhancement/5981-colors-hex…
distantnative Nov 24, 2023
a08a227
Merge branch 'v4/develop' into v4/enhancement/licenses
bastianallgeier Nov 24, 2023
6e4335b
New LicenseStatus::Demo
bastianallgeier Nov 24, 2023
7286166
`theme: disabled` for Items
distantnative Nov 24, 2023
e146d37
Merge pull request #5996 from getkirby/v4/fix/5959-models-field-disab…
bastianallgeier Nov 24, 2023
cad9509
Update dist files
bastianallgeier Nov 24, 2023
2d6a204
Update translations
bastianallgeier Nov 24, 2023
b1d6619
Merge pull request #5998 from getkirby/release/4.0.0-rc.3
bastianallgeier Nov 24, 2023
076b9df
Revert "Slug field: respect custom slug allow from `Str`"
bastianallgeier Nov 24, 2023
379a82d
Update dependencies
bastianallgeier Nov 24, 2023
02eea26
Merge pull request #5999 from getkirby/release/4.0.0-rc.4
bastianallgeier Nov 24, 2023
ea50e7f
`Xml::attr()`: Support empty string as empty value
lukasbestle Nov 24, 2023
8539775
`Xml::attr()`: Deprecate passing single space
lukasbestle Nov 24, 2023
9f7999b
Postpone PHP 8.0 todo comment
lukasbestle Nov 24, 2023
72e8184
Postpone v4 todo comment
lukasbestle Nov 24, 2023
bdd6b6a
Merge pull request #6001 from getkirby/v4/fix/todo-comments
bastianallgeier Nov 24, 2023
ba36a46
Use normalize instead of sanitize
bastianallgeier Nov 25, 2023
588856c
Add more checks to isComplete
bastianallgeier Nov 25, 2023
abedd0e
Code style fix
bastianallgeier Nov 25, 2023
fa52a27
Remove outdated translation string
bastianallgeier Nov 25, 2023
3f812e4
Better code comment
bastianallgeier Nov 25, 2023
5a275da
Better translation consistency
bastianallgeier Nov 25, 2023
1acfe09
Translate demo state
bastianallgeier Nov 25, 2023
5e62e65
Fix unit test
bastianallgeier Nov 25, 2023
68cfc8d
Merge branch 'v4/develop' into v4/enhancement/licenses
bastianallgeier Nov 25, 2023
22fb0aa
Fix unit tests
bastianallgeier Nov 25, 2023
8b24ce7
Fix unit test class position
bastianallgeier Nov 25, 2023
4d00ab5
Fix coding style
lukasbestle Nov 25, 2023
a6fb9f8
More detailed security policy for GitHub
lukasbestle Nov 25, 2023
fe01684
Merge pull request #6004 from getkirby/v4/fix/security-policy
bastianallgeier Nov 25, 2023
d8c9b86
Fix Mastodon icon
distantnative Nov 26, 2023
37bca7e
Merge pull request #6000 from getkirby/v4/fix/xml-attr-deprecation
distantnative Nov 27, 2023
cf7eabf
`string.slug()` safer default for `allowed`
distantnative Nov 27, 2023
1efbd04
Merge pull request #6007 from getkirby/v4/fix/5929-custom-slug-rules
bastianallgeier Nov 27, 2023
1e9f119
Merge branch 'v4/develop' into v4/enhancement/licenses
bastianallgeier Nov 27, 2023
0041eba
Ignore parts that communicate with the hub
bastianallgeier Nov 27, 2023
8d41b8e
Fix cs issues
bastianallgeier Nov 27, 2023
f773aa3
Merge pull request #5937 from getkirby/v4/enhancement/licenses
bastianallgeier Nov 27, 2023
3ded3a0
Update dist files
bastianallgeier Nov 27, 2023
71db22c
Update translations
bastianallgeier Nov 27, 2023
71bb0a1
Update composer dependencies
bastianallgeier Nov 27, 2023
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 @@ -17,6 +17,10 @@ trim_trailing_whitespace = true
indent_size = 4
insert_final_newline = true

[*.vue.php]
indent_size = 2
insert_final_newline = false

[*.yml]
indent_style = space

Expand Down
4 changes: 3 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@ tests/ export-ignore
panel/.env.example export-ignore
panel/.eslintrc.js export-ignore
panel/.prettierrc.json export-ignore
panel/dist/ui export-ignore
panel/jsconfig.json export-ignore
panel/lab export-ignore
panel/package-lock.json export-ignore
panel/package.json export-ignore
panel/public export-ignore
Expand All @@ -23,7 +26,6 @@ panel/scripts export-ignore
panel/src export-ignore
panel/vite.config.js export-ignore
panel/vitest.setup.js export-ignore
panel/jsconfig.json export-ignore

# other
.tx export-ignore
Expand Down
93 changes: 67 additions & 26 deletions .github/workflows/backend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,28 +30,41 @@ on:
- "!scripts/**"
workflow_call:

workflow_dispatch:

jobs:
tests:
name: "Unit tests - PHP ${{ matrix.php }}"

# if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# run job only under the following conditions:
# - can be triggered manually from any repository
# - if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# - if on push, only run CI automatically for the
# main getkirby/kirby repo and for forks
if: >
github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name != github.repository
github.event_name == 'workflow_dispatch' ||
(
github.event_name == 'pull_request' &&
github.event.pull_request.head.repo.full_name != github.repository
) ||
(
github.event_name == 'push' &&
(github.repository == 'getkirby/kirby' || github.repository_owner != 'getkirby')
)

runs-on: ubuntu-latest
timeout-minutes: 5
strategy:
matrix:
php: ["8.0", "8.1", "8.2"]
php: ["8.1", "8.2", "8.3"]
env:
extensions: mbstring, ctype, curl, gd, apcu, memcached
ini: apc.enabled=1, apc.enable_cli=1, pcov.directory=., "pcov.exclude=\"~(vendor|tests)~\""

steps:
- name: Checkout
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # pin@v3
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # pin@v3
with:
fetch-depth: 2

Expand All @@ -66,27 +79,27 @@ jobs:

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

- name: Cache PHP extensions
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # pin@v3
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # pin@v3
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@4bd44f22a98a19e0950cbad5f31095157cc9621b # pin@v2
uses: shivammathur/setup-php@7fdd3ece872ec7ec4c098ae5ab7637d5e0a96067 # pin@v2
with:
php-version: ${{ matrix.php }}
extensions: ${{ env.extensions }}
ini-values: ${{ env.ini }}
coverage: pcov
tools: phpunit:9.5.26, psalm:5.1.0
tools: phpunit:9.5.26, psalm:5.15.0

- name: Setup problem matchers
run: |
Expand All @@ -95,7 +108,7 @@ jobs:

- name: Cache analysis data
id: finishPrepare
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # pin@v3
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # pin@v3
with:
path: ~/.cache/psalm
key: backend-analysis-${{ matrix.php }}
Expand Down Expand Up @@ -127,50 +140,61 @@ jobs:

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

analysis:
name: "Code Quality"

# if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# run job only under the following conditions:
# - can be triggered manually from any repository
# - if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# - if on push, only run CI automatically for the
# main getkirby/kirby repo and for forks
if: >
github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name != github.repository
github.event_name == 'workflow_dispatch' ||
(
github.event_name == 'pull_request' &&
github.event.pull_request.head.repo.full_name != github.repository
) ||
(
github.event_name == 'push' &&
(github.repository == 'getkirby/kirby' || github.repository_owner != 'getkirby')
)

runs-on: ubuntu-latest
timeout-minutes: 5
env:
php: "8.0"
php: "8.1"
extensions: mbstring, ctype, curl, gd, apcu, memcached

steps:
- name: Checkout
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # pin@v3
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # pin@v3

- name: Preparations
run: mkdir sarif

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

- name: Cache PHP extensions
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # pin@v3
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # pin@v3
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@4bd44f22a98a19e0950cbad5f31095157cc9621b # pin@v2
uses: shivammathur/setup-php@7fdd3ece872ec7ec4c098ae5ab7637d5e0a96067 # pin@v2
with:
php-version: ${{ env.php }}
extensions: ${{ env.extensions }}
Expand All @@ -197,32 +221,49 @@ jobs:

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

coding-style:
name: "Coding Style"

# run job only under the following conditions:
# - can be triggered manually from any repository
# - if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# - if on push, only run CI automatically for the
# main getkirby/kirby repo and for forks
if: >
github.event_name == 'workflow_dispatch' ||
(
github.event_name == 'pull_request' &&
github.event.pull_request.head.repo.full_name != github.repository
) ||
(
github.event_name == 'push' &&
(github.repository == 'getkirby/kirby' || github.repository_owner != 'getkirby')
)

runs-on: ubuntu-latest
timeout-minutes: 5
env:
php: "8.0"
php: "8.1"

steps:
- name: Checkout
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # pin@v3
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # pin@v3

- name: Setup PHP environment
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # pin@v2
uses: shivammathur/setup-php@7fdd3ece872ec7ec4c098ae5ab7637d5e0a96067 # pin@v2
with:
php-version: ${{ env.php }}
coverage: none
tools: php-cs-fixer:3.13.0

- name: Cache analysis data
id: finishPrepare
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # pin@v3
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # pin@v3
with:
path: ~/.php-cs-fixer
key: coding-style
Expand Down
55 changes: 36 additions & 19 deletions .github/workflows/frontend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,28 @@ on:
- "!panel/scripts/**"
workflow_call:

workflow_dispatch:

jobs:
tests:
name: "Unit tests"

# if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# run job only under the following conditions:
# - can be triggered manually from any repository
# - if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# - if on push, only run CI automatically for the
# main getkirby/kirby repo and for forks
if: >
github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name != github.repository
github.event_name == 'workflow_dispatch' ||
(
github.event_name == 'pull_request' &&
github.event.pull_request.head.repo.full_name != github.repository
) ||
(
github.event_name == 'push' &&
(github.repository == 'getkirby/kirby' || github.repository_owner != 'getkirby')
)

runs-on: ubuntu-latest
timeout-minutes: 5
Expand All @@ -50,29 +63,33 @@ jobs:

- name: Run JavaScript unit tests
if: always() && steps.finishPrepare.outcome == 'success'
run: npm run test:unit:coverage
run: npm run test:unit
working-directory: panel

# TODO: Disabled until Vitest coverage reporting is accurate and
# Kirby's frontend tests are useful enough that we need this metric
# - name: Upload coverage results to Codecov
# env:
# token: ${{ secrets.CODECOV_TOKEN }}
# if: env.token != ''
# uses: codecov/codecov-action@858dd794fbb81941b6d60b0dca860878cba60fa9 # pin@v3
# with:
# token: ${{ secrets.CODECOV_TOKEN }} # for better reliability if the GitHub API is down
# fail_ci_if_error: true
# files: ${{ github.workspace }}/panel/coverage/lcov.info
# flags: frontend

coding-style:
name: "Coding Style"

# run job only under the following conditions:
# - can be triggered manually from any repository
# - if on pull request, only run if from a fork
# (our own repo is covered by the push event)
# - if on push, only run CI automatically for the
# main getkirby/kirby repo and for forks
if: >
github.event_name == 'workflow_dispatch' ||
(
github.event_name == 'pull_request' &&
github.event.pull_request.head.repo.full_name != github.repository
) ||
(
github.event_name == 'push' &&
(github.repository == 'getkirby/kirby' || github.repository_owner != 'getkirby')
)

runs-on: ubuntu-latest
timeout-minutes: 5
env:
php: "8.0"
php: "8.1"

steps:
- name: Checkout
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
# build files
/dist.zip
/kirby.zip
/panel/tmp

# cs fixer
.php-cs-fixer.cache
Expand Down
2 changes: 1 addition & 1 deletion .tx/config
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[main]
host = https://www.transifex.com

[o:getkirby:p:panel:r:v3]
[o:getkirby:p:panel:r:v4]
file_filter = i18n/translations/<lang>.json
source_file = i18n/translations/en.json
source_lang = en
Expand Down
Loading