Skip to content

Commit

Permalink
v5.1.0 release into main (strapi#21870)
Browse files Browse the repository at this point in the history
* enhancement: ui issues and french translations (strapi#21633)

* chore: ui issues and french translations

* chore: added missing translation

* chore: made it prettier

* fix: test CI/CD building repo 2 times (strapi#21740)

* fix: do not display fill from locales if i18n no enabled (strapi#21737)

* fix: do not display fill from locales if i18n no enabled

* chore: disable only if there is not i18n enabled

* fix: send ids when connecting relations to update u&p user role (strapi#21726)

* fix:update role

* fix: send entry id when connecting/disconnecting relations

* fix: changed empty components wording (strapi#21630)

* fix: changed empty components wording

* fix: updated selectors

* fix: made it prettier

* enhancement: add preview panel button (strapi#21776)

* chore: add test workflow filters for each test type (strapi#21770)

* chore: upgrade mysql2 package to 3.9.8 (strapi#21795)

* feat: add mapping property support for documentation plugin's open api generated docs (strapi#21752)

* feat: add mapping property support for documentation plugin's open API generated spec

Dynamic zones are reflected in the OpenAPI docs generated as an anyOf.
We can use a discriminator and mapping to improve the docs.

* fix: missing one value enum for __component property

* enhancement: extract logic to convert component names to OpenAPI names

* chore: run prettier write on clean schema attributes

---------

Co-authored-by: Jamie Howard <[email protected]>

* chore: fix mysql workflow (strapi#21801)

* chore: upgrade koa/router to 12.0.2 (strapi#21802)

* Update "upgrade major" rules (strapi#21745)

* fix: broken list view pagination (strapi#21800)

* fix: broken list view pagination

* chore: add list view pagination e2e test

* enhancement: add copy preview url button (strapi#21780)

* enhancement: add copy preview button

* chore: remove useClipboard from upload plugin

* Add <latest> Upgrade Command (strapi#21754)

* Make locale/localizations private for non-localized cts (strapi#21495)

* chore: upgrade sendgrid-mail to 8.1.3 (strapi#21797)

* v5.1.0

---------

Co-authored-by: Lucas Boilly <[email protected]>
Co-authored-by: Boegie19 <[email protected]>
Co-authored-by: Marc Roig <[email protected]>
Co-authored-by: Rémi de Juvigny <[email protected]>
Co-authored-by: Pedro Cerejo <[email protected]>
Co-authored-by: Jamie Howard <[email protected]>
Co-authored-by: Jean-Sébastien Herbaux <[email protected]>
Co-authored-by: Rémi de Juvigny <[email protected]>
  • Loading branch information
9 people authored Oct 16, 2024
1 parent 9607741 commit e6d1e1e
Show file tree
Hide file tree
Showing 92 changed files with 738 additions and 329 deletions.
2 changes: 1 addition & 1 deletion .github/actions/check-pr-status/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "check-pr-status",
"version": "5.0.6",
"version": "5.1.0",
"private": true,
"license": "MIT",
"main": "dist/index.js",
Expand Down
7 changes: 6 additions & 1 deletion .github/filters.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ backend:
- 'packages/**/strapi-server.js'
- 'packages/{utils,generators,cli,providers}/**'
- 'packages/core/*/{lib,bin,ee,src}/**'
- 'tests/api/**'
- 'packages/core/database/**'
frontend:
- '.github/actions/yarn-nm-install/*.yml'
Expand All @@ -16,3 +15,9 @@ frontend:
- 'packages/**/admin/ee/admin/**'
- 'packages/**/strapi-admin.js'
- 'packages/admin-test-utils/**'
api:
- 'tests/api/**'
e2e:
- 'tests/e2e/**'
cli:
- 'tests/cli/**'
115 changes: 82 additions & 33 deletions .github/workflows/skipped_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ jobs:
permissions:
pull-requests: read
outputs:
nonDoc: ${{ steps.filter.outputs.nonDoc }}
backend: ${{ steps.filter.outputs.backend }}
frontend: ${{ steps.filter.outputs.frontend }}
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -28,110 +29,158 @@ jobs:
filters: .github/filters.yaml

pretty:
name: 'pretty (node: 20)'
name: 'pretty (node: ${{ matrix.node }})'
runs-on: ubuntu-latest
strategy:
matrix:
node: [20]
node: [20, 22]
steps:
- run: echo "Skipped"

lint:
name: 'lint (node: ${{ matrix.node }})'
needs: [build]
runs-on: ubuntu-latest
strategy:
matrix:
node: [20]
node: [20, 22]
steps:
- run: echo "Skipped"

build:
name: 'build (node: ${{ matrix.node }})'
needs: [changes]
runs-on: ubuntu-latest
strategy:
matrix:
node: [20, 22]
steps:
- run: echo "Skipped"

typescript:
name: 'typescript (node: ${{ matrix.node }})'
needs: [changes, build]
runs-on: ubuntu-latest
needs: [build]
name: 'typescript'
strategy:
matrix:
node: [20, 22]
steps:
- run: echo "Skipped"

unit_back:
name: 'unit_back (node: ${{ matrix.node }})'
needs: [lint]
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
matrix:
node: [18, 20]
node: [20, 22]
steps:
- run: echo "Skipped"

unit_front:
name: 'unit_front (node: ${{ matrix.node }})'
needs: [lint]
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
matrix:
node: [20]
steps:
- run: echo "Skipped"

build:
name: 'build (node: ${{ matrix.node }})'
needs: [changes, lint, unit_front]
e2e_ce:
name: '[CE] e2e (browser: ${{ matrix.project }}) (shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
matrix:
node: [18, 20]
project: ['chromium', 'webkit', 'firefox']
shard: [1/2, 2/2]
steps:
- run: echo "Skipped"

e2e_ee:
name: '[EE] e2e (browser: ${{ matrix.project }}) (shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
matrix:
project: ['chromium', 'webkit', 'firefox']
shard: [1/2, 2/2]
steps:
- run: echo "Skipped"

cli:
name: 'CLI Tests'
name: 'CLI Tests (node: ${{ matrix.node }})'
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
matrix:
node: [20, 22]
steps:
- run: echo "Skipped"

e2e_ce:
api_ce_pg:
name: '[CE] API Integration (postgres, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
needs: [lint, unit_back, unit_front]
name: '[CE] e2e (browser: ${{ matrix.project }})'
strategy:
matrix:
project: ['chromium', 'webkit', 'firefox']
node: [20, 22]
shard: [1/5, 2/5, 3/5, 4/5, 5/5]
steps:
- run: echo "Skipped"

e2e_ee:
api_ce_mysql:
name: '[CE] API Integration (mysql:latest, package: mysql2, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
needs: [lint, unit_back, unit_front]
name: '[EE] e2e (browser: ${{ matrix.project }})'
strategy:
matrix:
project: ['chromium', 'webkit', 'firefox']
node: [20, 22]
shard: [1/5, 2/5, 3/5, 4/5, 5/5]
steps:
- run: echo "Skipped"

api_ce_pg:
api_ce_sqlite:
name: '[CE] API Integration (sqlite, package: better-sqlite3, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
needs: [lint, unit_back, unit_front]
name: '[CE] API Integration (postgres, node: ${{ matrix.node }})'
strategy:
matrix:
node: [18, 20]
node: [20, 22]
shard: [1/5, 2/5, 3/5, 4/5, 5/5]
steps:
- run: echo "Skipped"

api_ce_mysql:
api_ee_pg:
name: '[EE] API Integration (postgres, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
needs: [lint, unit_back, unit_front]
name: '[CE] API Integration (mysql, node: ${{ matrix.node }})'
strategy:
matrix:
node: [18, 20]
node: [20, 22]
shard: [1/5, 2/5, 3/5, 4/5, 5/5]
steps:
- run: echo "Skipped"

api_ce_sqlite:
api_ee_mysql:
name: '[EE] API Integration (mysql:latest, package: mysql2, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
matrix:
node: [20, 22]
shard: [1/5, 2/5, 3/5, 4/5, 5/5]
steps:
- run: echo "Skipped"

api_ee_sqlite:
name: '[EE] API Integration (sqlite, client: better-sqlite3, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
needs: [changes, build]
runs-on: ubuntu-latest
needs: [lint, unit_back, unit_front]
name: '[CE] API Integration (sqlite: ${{ matrix.sqlite_pkg }}, node: ${{ matrix.node }})'
strategy:
matrix:
node: [20, 22]
shard: [1/5, 2/5, 3/5, 4/5, 5/5]
steps:
- run: echo "Skipped"
53 changes: 29 additions & 24 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@ jobs:
outputs:
backend: ${{ steps.filter.outputs.backend }}
frontend: ${{ steps.filter.outputs.frontend }}
api: ${{ steps.filter.outputs.api }}
e2e: ${{ steps.filter.outputs.e2e }}
cli: ${{ steps.filter.outputs.cli }}
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -57,6 +60,7 @@ jobs:

lint:
name: 'lint (node: ${{ matrix.node }})'
needs: [build]
runs-on: ubuntu-latest
strategy:
matrix:
Expand Down Expand Up @@ -94,7 +98,7 @@ jobs:

typescript:
name: 'typescript (node: ${{ matrix.node }})'
needs: [changes, lint, pretty, build]
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
matrix:
Expand All @@ -121,7 +125,7 @@ jobs:
unit_back:
if: needs.changes.outputs.backend == 'true'
name: 'unit_back (node: ${{ matrix.node }})'
needs: [changes, lint, pretty, build]
needs: [changes, build]
runs-on: ubuntu-latest
env:
YARN_ENABLE_IMMUTABLE_INSTALLS: false
Expand All @@ -144,8 +148,9 @@ jobs:
run: yarn nx affected --target=test:unit --nx-ignore-cycles

unit_front:
if: needs.changes.outputs.frontend == 'true'
name: 'unit_front (node: ${{ matrix.node }})'
needs: [changes, lint, pretty, build]
needs: [changes, build]
runs-on: ubuntu-latest
strategy:
fail-fast: false # remove once tests aren't flaky
Expand All @@ -167,10 +172,10 @@ jobs:
run: yarn nx affected --target=test:front --nx-ignore-cycles -- --runInBand

e2e_ce:
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.frontend == 'true'
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.frontend == 'true' || needs.changes.outputs.e2e == 'true'
timeout-minutes: 60
needs: [changes, lint, pretty, build]
name: '[CE] e2e (browser: ${{ matrix.project }})'
needs: [changes, build]
name: '[CE] e2e (browser: ${{ matrix.project }}) (shard: ${{ matrix.shard }})'
runs-on: ubuntu-latest
strategy:
fail-fast: false # remove once tests aren't flaky
Expand Down Expand Up @@ -209,10 +214,10 @@ jobs:
retention-days: 1

e2e_ee:
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.frontend == 'true'
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.frontend == 'true' || needs.changes.outputs.e2e == 'true'
timeout-minutes: 60
needs: [changes, lint, pretty, build]
name: '[EE] e2e (browser: ${{ matrix.project }})'
needs: [changes, build]
name: '[EE] e2e (browser: ${{ matrix.project }}) (shard: ${{ matrix.shard }})'
runs-on: ubuntu-latest
env:
STRAPI_LICENSE: ${{ secrets.strapiLicense }}
Expand Down Expand Up @@ -254,9 +259,9 @@ jobs:
retention-days: 1

cli:
if: needs.changes.outputs.backend == 'true'
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.cli == 'true'
timeout-minutes: 60
needs: [changes, lint, pretty, build]
needs: [changes, build]
name: 'CLI Tests (node: ${{ matrix.node }})'
runs-on: ubuntu-latest
strategy:
Expand All @@ -281,9 +286,9 @@ jobs:
run: yarn test:cli

api_ce_pg:
if: needs.changes.outputs.backend == 'true'
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.api == 'true'
runs-on: ubuntu-latest
needs: [changes, lint, pretty, build]
needs: [changes, build]
name: '[CE] API Integration (postgres, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
strategy:
matrix:
Expand Down Expand Up @@ -321,9 +326,9 @@ jobs:
jestOptions: '--shard=${{ matrix.shard }}'

api_ce_mysql:
if: needs.changes.outputs.backend == 'true'
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.api == 'true'
runs-on: ubuntu-latest
needs: [changes, lint, pretty, build]
needs: [changes, build]
name: '[CE] API Integration (mysql:latest, package: mysql2}, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
strategy:
matrix:
Expand Down Expand Up @@ -356,13 +361,13 @@ jobs:
uses: ./.github/actions/run-build
- uses: ./.github/actions/run-api-tests
with:
dbOptions: '--dbclient=${{ matrix.db_client }} --dbhost=localhost --dbport=3306 --dbname=strapi_test --dbusername=strapi --dbpassword=strapi'
dbOptions: '--dbclient=mysql --dbhost=localhost --dbport=3306 --dbname=strapi_test --dbusername=strapi --dbpassword=strapi'
jestOptions: '--shard=${{ matrix.shard }}'

api_ce_sqlite:
if: needs.changes.outputs.backend == 'true'
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.api == 'true'
runs-on: ubuntu-latest
needs: [changes, lint, pretty, build]
needs: [changes, build]
name: '[CE] API Integration (sqlite, package: better-sqlite3, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
strategy:
matrix:
Expand All @@ -385,9 +390,9 @@ jobs:
# EE
api_ee_pg:
runs-on: ubuntu-latest
needs: [changes, lint, pretty, build]
needs: [changes, build]
name: '[EE] API Integration (postgres, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
if: needs.changes.outputs.backend == 'true' && github.event.pull_request.head.repo.full_name == github.repository && !(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
if: (needs.changes.outputs.backend == 'true' || needs.changes.outputs.api == 'true') && github.event.pull_request.head.repo.full_name == github.repository && !(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
env:
STRAPI_LICENSE: ${{ secrets.strapiLicense }}
strategy:
Expand Down Expand Up @@ -428,9 +433,9 @@ jobs:

api_ee_mysql:
runs-on: ubuntu-latest
needs: [changes, lint, pretty, build]
needs: [changes, build]
name: '[EE] API Integration (mysql:latest, package: mysql2, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
if: needs.changes.outputs.backend == 'true' && github.event.pull_request.head.repo.full_name == github.repository && !(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
if: (needs.changes.outputs.backend == 'true' || needs.changes.outputs.api == 'true') && github.event.pull_request.head.repo.full_name == github.repository && !(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
env:
STRAPI_LICENSE: ${{ secrets.strapiLicense }}
strategy:
Expand Down Expand Up @@ -470,9 +475,9 @@ jobs:

api_ee_sqlite:
runs-on: ubuntu-latest
needs: [changes, lint, pretty, build]
needs: [changes, build]
name: '[EE] API Integration (sqlite, client: better-sqlite3, node: ${{ matrix.node }}, shard: ${{ matrix.shard }})'
if: needs.changes.outputs.backend == 'true' && github.event.pull_request.head.repo.full_name == github.repository && !(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
if: (needs.changes.outputs.backend == 'true' || needs.changes.outputs.api == 'true') && github.event.pull_request.head.repo.full_name == github.repository && !(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
env:
STRAPI_LICENSE: ${{ secrets.strapiLicense }}
strategy:
Expand Down
2 changes: 1 addition & 1 deletion examples/getstarted/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
"@strapi/strapi": "workspace:*",
"better-sqlite3": "11.3.0",
"lodash": "4.17.21",
"mysql2": "3.9.4",
"mysql2": "3.9.8",
"passport-google-oauth2": "0.2.0",
"pg": "8.11.1",
"react": "18.3.1",
Expand Down
Loading

0 comments on commit e6d1e1e

Please sign in to comment.