Skip to content

Commit 0514c58

Browse files
committed
Merge branch 'master' into dev
2 parents 2bd681d + e69caa0 commit 0514c58

File tree

76 files changed

+1849
-3190
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+1849
-3190
lines changed

.github/actions/nightly-release/action.yml

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@ inputs:
1414
npm-tag:
1515
description: 'NPM tag'
1616
required: true
17-
npm-token:
18-
description: 'NPM token'
19-
required: true
2017

2118
outputs:
2219
full-version:
@@ -56,13 +53,14 @@ runs:
5653
)"
5754
shell: bash
5855
working-directory: ./packages/vuetify
59-
- run: pnpm lerna run build --scope @vuetify/nightly
56+
- run: pnpm run --filter @vuetify/nightly build
57+
shell: bash
58+
- run: pnpm run --filter @vuetify/api-generator build
6059
shell: bash
61-
- run: pnpm lerna run build --scope @vuetify/api-generator
60+
- run: npm install -g npm@latest
6261
shell: bash
6362
- name: NPM Release
6463
run: |
65-
npm config set //registry.npmjs.org/:_authToken ${NPM_API_KEY:?}
6664
npm publish ./packages/vuetify --tag ${{ inputs.npm-tag }} --access public
6765
shell: bash
6866
env:

.github/workflows/ci.yml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,15 @@ jobs:
4646
strategy:
4747
fail-fast: false
4848
matrix:
49-
scopes: ['--scope vuetify --scope @vuetify/api-generator', '--scope vuetifyjs.com']
49+
scopes: ['--filter vuetify --filter @vuetify/api-generator', '--filter vuetifyjs.com']
5050
steps:
5151
- uses: actions/checkout@v4
5252
- uses: actions/download-artifact@v4
5353
with:
5454
name: vuetify-dist
5555
path: packages/vuetify
5656
- uses: vuetifyjs/setup-action@master
57-
- run: pnpm lerna run lint $SCOPES
57+
- run: pnpm run $SCOPES lint
5858
env:
5959
SCOPES: ${{ matrix.scopes }}
6060

@@ -92,6 +92,9 @@ jobs:
9292
runs-on: ubuntu-24.04
9393
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository_owner == 'vuetifyjs'
9494
environment: production
95+
permissions:
96+
contents: write
97+
id-token: write
9598
steps:
9699
- uses: actions/checkout@v4
97100
with:
@@ -102,12 +105,10 @@ jobs:
102105
path: packages/vuetify
103106
- uses: vuetifyjs/setup-action@master
104107
- run: pnpm build api
105-
- run: echo "RELEASE_TAG=$GITHUB_REF_NAME" >> $GITHUB_ENV
108+
- run: npm install -g npm@latest
106109
- name: NPM Release
107-
run: bash scripts/deploy.sh
108-
env:
109-
NPM_API_KEY: ${{ secrets.NPM_TOKEN }}
110-
RELEASE_TAG: ${{ env.RELEASE_TAG }}
110+
run: |
111+
npm publish ./packages/vuetify --tag $(node ./scripts/parse-npm-tag.js $GITHUB_REF_NAME)
111112
- name: GitHub release
112113
id: create_release
113114
run: pnpm conventional-github-releaser -p vuetify

.github/workflows/nightly-pr.yml

Lines changed: 0 additions & 47 deletions
This file was deleted.

.github/workflows/nightly-schedule.yml

Lines changed: 0 additions & 75 deletions
This file was deleted.

.github/workflows/nightly.yml

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
name: Nightly Release
2+
on:
3+
schedule:
4+
- cron: '0 12 * * *' # 1200 UTC
5+
workflow_dispatch:
6+
inputs:
7+
pr:
8+
description: 'Pull Request number'
9+
required: false
10+
type: string
11+
12+
jobs:
13+
nightly-schedule:
14+
runs-on: ubuntu-24.04
15+
if: ${{ github.event_name == 'schedule' && github.repository_owner == 'vuetifyjs' }}
16+
environment: preview
17+
permissions:
18+
contents: read
19+
id-token: write
20+
strategy:
21+
max-parallel: 1
22+
fail-fast: false
23+
matrix:
24+
branch: [ 'master', 'dev', 'next', 'v2-stable', 'v2-dev' ]
25+
include:
26+
- branch: 'master'
27+
tag: 'latest'
28+
- branch: 'dev'
29+
tag: 'dev'
30+
- branch: 'next'
31+
tag: 'next'
32+
- branch: 'v2-stable'
33+
tag: 'v2-stable'
34+
- branch: 'v2-dev'
35+
tag: 'v2-dev'
36+
steps:
37+
- uses: actions/checkout@v4
38+
with:
39+
ref: ${{ matrix.branch }}
40+
fetch-depth: 0
41+
- run: |
42+
last=$(git show -s --format=%ct HEAD)
43+
now=$(date +%s)
44+
diff=$(($now - $last))
45+
if [ $diff -gt 86400 ]; then
46+
echo "Last commit was more than 24 hours ago, skipping release"
47+
exit 1
48+
fi
49+
- run: echo "RELEASE_ID=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
50+
- uses: ./.github/actions/nightly-release
51+
with:
52+
checkout-repo: ${{ github.repository }}
53+
checkout-ref: ${{ matrix.branch }}
54+
release-id: ${{ matrix.branch }}.${{ env.RELEASE_ID }}
55+
npm-tag: ${{ matrix.tag }}
56+
- uses: actions/checkout@v4
57+
58+
nightly-pr:
59+
runs-on: ubuntu-24.04
60+
if: ${{ github.event_name == 'workflow_dispatch' && github.repository_owner == 'vuetifyjs' }}
61+
environment: preview
62+
permissions:
63+
contents: read
64+
id-token: write
65+
pull-requests: write
66+
steps:
67+
- uses: actions/checkout@v4
68+
- uses: actions/github-script@v7
69+
with:
70+
script: |
71+
const pr = await github.rest.pulls.get({
72+
owner: context.repo.owner,
73+
repo: context.repo.repo,
74+
pull_number: ${{ github.event.inputs.pr }}
75+
})
76+
core.exportVariable('CHECKOUT_REPO', pr.data.head.repo.full_name)
77+
core.exportVariable('CHECKOUT_REF', pr.data.head.ref)
78+
core.exportVariable('SHORT_SHA', pr.data.head.sha.slice(0, 7))
79+
- id: nightly-release
80+
uses: ./.github/actions/nightly-release
81+
with:
82+
checkout-repo: ${{ env.CHECKOUT_REPO }}
83+
checkout-ref: ${{ env.CHECKOUT_REF }}
84+
release-id: pr-${{ github.event.inputs.pr }}.${{ env.SHORT_SHA }}
85+
npm-tag: pr
86+
- uses: actions/github-script@v7
87+
with:
88+
script: |
89+
const fullVersion = process.env.FULL_VERSION
90+
const pr = await github.rest.issues.createComment({
91+
owner: context.repo.owner,
92+
repo: context.repo.repo,
93+
issue_number: ${{ github.event.inputs.pr }},
94+
body: `:rocket: Nightly release published to [@vuetify/nightly@${fullVersion}](https://www.npmjs.com/package/@vuetify/nightly/v/${fullVersion}).`
95+
})
96+
env:
97+
FULL_VERSION: ${{ steps.nightly-release.outputs.full-version }}
98+
99+
percy:
100+
name: Visual regression tests
101+
runs-on: ubuntu-24.04
102+
if: ${{ github.event_name == 'schedule' && github.repository_owner == 'vuetifyjs' }}
103+
steps:
104+
- uses: actions/checkout@v4
105+
with:
106+
ref: master
107+
fetch-depth: 0
108+
- run: |
109+
last=$(git show -s --format=%ct HEAD)
110+
now=$(date +%s)
111+
diff=$(($now - $last))
112+
if [ $diff -gt 86400 ]; then
113+
echo "Last commit was more than 24 hours ago, skipping tests"
114+
exit 1
115+
fi
116+
- uses: vuetifyjs/setup-action@master
117+
- run: echo "COMMIT=$(git rev-parse HEAD)" >> $GITHUB_ENV
118+
- run: pnpm test:percy
119+
working-directory: ./packages/vuetify
120+
env:
121+
PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
122+
PERCY_BRANCH: master
123+
PERCY_TARGET_BRANCH: master
124+
PERCY_COMMIT: ${{ env.COMMIT }}

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
22.14.0
1+
24.8.0

lerna.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@
1313
}
1414
},
1515
"npmClient": "pnpm",
16-
"version": "3.10.0"
16+
"version": "3.10.1"
1717
}

package.json

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,35 +9,38 @@
99
"scripts": {
1010
"dev": "node scripts/dev.js",
1111
"build": "node scripts/build.js",
12-
"lint": "lerna run lint --parallel --stream",
13-
"lint:fix": "lerna run lint:fix --parallel",
12+
"lint": "pnpm run -r --parallel --stream lint",
13+
"lint:fix": "pnpm run -r --parallel lint:fix",
1414
"version": "node scripts/confirm-npm-tag.js",
1515
"prepare": "husky; node scripts/post-install.js",
1616
"postversion": "node scripts/post-release-merge.js",
17-
"clean": "lerna clean",
17+
"clean": "pnpm -r exec rm -r node_modules && rm -r node_modules",
1818
"changelog": "conventional-changelog -u -p vuetify",
19-
"all-checks": "pnpm run lint && lerna run test && lerna run cy:run && pnpm run build",
19+
"all-checks": "pnpm run lint && pnpm run -r test && pnpm run -r cy:run && pnpm run -r --stream build",
2020
"vue-ecosystem-ci:build": "pnpm --filter vuetify run build",
2121
"vue-ecosystem-ci:test": "pnpm --filter vuetify run lint && pnpm --filter vuetify run test"
2222
},
2323
"engines": {
24-
"node": ">=22.0.0"
24+
"node": ">=24.8.0"
2525
},
2626
"devDependencies": {
2727
"@babel/cli": "^7.27.0",
2828
"@babel/core": "^7.27.4",
2929
"@babel/preset-env": "^7.27.2",
3030
"@babel/preset-typescript": "^7.27.0",
31+
"@lerna-lite/cli": "^4.7.3",
32+
"@lerna-lite/version": "^4.7.3",
3133
"@mdi/font": "7.4.47",
3234
"@mdi/js": "7.4.47",
3335
"@mdi/svg": "7.4.47",
3436
"@octokit/core": "^6.1.5",
3537
"@stylistic/eslint-plugin-ts": "^3.1.0",
3638
"@types/lodash-es": "^4.17.12",
37-
"@types/node": "22.15.31",
39+
"@types/node": "24.4.0",
3840
"@types/yargs": "^17.0.33",
3941
"@typescript-eslint/eslint-plugin": "^8.32.0",
4042
"@typescript-eslint/parser": "^8.32.0",
43+
"@typescript/native-preview": "7.0.0-dev.20250912.1",
4144
"@unhead/vue": "^2.0.5",
4245
"@vitejs/plugin-vue": "^5.2.1",
4346
"@vue/compiler-sfc": "^3.5.13",
@@ -64,7 +67,6 @@
6467
"glob": "^11.0.1",
6568
"husky": "^9.1.7",
6669
"inquirer": "^12.6.0",
67-
"lerna": "^8.2.2",
6870
"lodash-es": "^4.17.21",
6971
"magic-string": "^0.30.17",
7072
"mkdirp": "^3.0.1",
@@ -88,7 +90,8 @@
8890
"vue": "^3.5.13",
8991
"vue-eslint-parser": "^10.1.3",
9092
"vue-tsc": "^2.2.10",
93+
"vuetify": "workspace:*",
9194
"yargs": "^17.7.2"
9295
},
93-
"packageManager": "pnpm@10.15.1"
96+
"packageManager": "pnpm@10.16.1"
9497
}

0 commit comments

Comments
 (0)