Skip to content

Commit dcc93a8

Browse files
authored
Merge branch 'main' into fix/nested-transitiongroup
2 parents f3ea4b8 + 7dbab27 commit dcc93a8

File tree

404 files changed

+19444
-9418
lines changed

Some content is hidden

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

404 files changed

+19444
-9418
lines changed

.github/commit-convention.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ This reverts commit 667ecc1654a317a13331b17617d973392f415f02.
4444

4545
### Full Message Format
4646

47-
A commit message consists of a **header**, **body** and **footer**. The header has a **type**, **scope** and **subject**:
47+
A commit message consists of a **header**, **body** and **footer**. The header has a **type**, **scope** and **subject**:
4848

4949
```
5050
<type>(<scope>): <subject>
@@ -74,9 +74,9 @@ The scope could be anything specifying the place of the commit change. For examp
7474

7575
The subject contains a succinct description of the change:
7676

77-
* use the imperative, present tense: "change" not "changed" nor "changes"
78-
* don't capitalize the first letter
79-
* no dot (.) at the end
77+
- use the imperative, present tense: "change" not "changed" nor "changes"
78+
- don't capitalize the first letter
79+
- no dot (.) at the end
8080

8181
### Body
8282

.github/contributing.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ Hi! I'm really excited that you are interested in contributing to Vue.js. Before
3535

3636
Another aspect of it is that large scale stylistic changes result in massive diffs that touch multiple files, adding noise to the git history and makes tracing behavior changes across commits more cumbersome.
3737

38-
3938
### Pull Request Checklist
4039

4140
- Vue core has two primary work branches: `main` and `minor`.
@@ -82,7 +81,7 @@ Hi! I'm really excited that you are interested in contributing to Vue.js. Before
8281

8382
## Development Setup
8483

85-
You will need [Node.js](https://nodejs.org) **version 18.12+**, and [PNPM](https://pnpm.io) **version 8+**.
84+
You will need [Node.js](https://nodejs.org) with minimum version as specified in the [`.node-version`](https://github.com/vuejs/core/blob/main/.node-version) file, and [PNPM](https://pnpm.io) with minimum version as specified in the [`"packageManager"` field in `package.json`](https://github.com/vuejs/core/blob/main/package.json#L4).
8685

8786
We also recommend installing [@antfu/ni](https://github.com/antfu/ni) to help switching between repos using different package managers. `ni` also provides the handy `nr` command which running npm scripts easier.
8887

@@ -237,7 +236,7 @@ Tests that test against source code are grouped under `nr test-unit`, while test
237236

238237
### `nr test-dts`
239238

240-
Runs `nr build-dts` first, then verify the type tests in `packages/dts-test` are working correctly against the actual built type declarations.
239+
Runs `nr build-dts` first, then verify the type tests in `packages-private/dts-test` are working correctly against the actual built type declarations.
241240

242241
## Project Structure
243242

@@ -336,7 +335,7 @@ Test coverage is continuously deployed at https://coverage.vuejs.org. PRs that i
336335

337336
### Testing Type Definition Correctness
338337

339-
Type tests are located in the `packages/dts-test` directory. To run the dts tests, run `nr test-dts`. Note that the type test requires all relevant `*.d.ts` files to be built first (and the script does it for you). Once the `d.ts` files are built and up-to-date, the tests can be re-run by running `nr test-dts-only`.
338+
Type tests are located in the `packages-private/dts-test` directory. To run the dts tests, run `nr test-dts`. Note that the type test requires all relevant `*.d.ts` files to be built first (and the script does it for you). Once the `d.ts` files are built and up-to-date, the tests can be re-run by running `nr test-dts-only`.
340339

341340
## Financial Contribution
342341

.github/maintenance.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ Depending on the type of the PR, different considerations need to be taken into
8080
- Make sure it doesn't accidentally cause dev-only or compiler-only code branches to be included in the runtime build. Notable case is that some functions in @vue/shared are compiler-only and should not be used in runtime code, e.g. `isHTMLTag` and `isSVGTag`.
8181

8282
- Performance
83+
8384
- Be careful about code changes in "hot paths", in particular the Virtual DOM renderer (`runtime-core/src/renderer.ts`) and component instantiation code.
8485

8586
- Potential Breakage

.github/renovate.json5

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
{
1818
groupName: 'playground',
1919
matchFileNames: [
20-
'packages/sfc-playground/package.json',
21-
'packages/template-explorer/package.json',
20+
'packages-private/sfc-playground/package.json',
21+
'packages-private/template-explorer/package.json',
2222
],
2323
},
2424
{
@@ -28,7 +28,7 @@
2828
},
2929
{
3030
groupName: 'build',
31-
matchPackageNames: ['vite', 'terser'],
31+
matchPackageNames: ['vite', '@swc/core'],
3232
matchPackagePrefixes: ['rollup', 'esbuild', '@rollup', '@vitejs'],
3333
},
3434
{
@@ -54,5 +54,13 @@
5454
// pinned
5555
// https://github.com/vuejs/core/commit/a012e39b373f1b6918e5c89856e8f902e1bfa14d
5656
'@rollup/plugin-replace',
57+
58+
// pinned
59+
// only used in example for e2e tests
60+
'marked',
61+
62+
// pinned, 5.0+ has exports issues
63+
// https://github.com/vuejs/core/issues/11603
64+
'entities',
5765
],
5866
}

.github/workflows/autofix.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,4 @@ jobs:
3131
- name: Run prettier
3232
run: pnpm run format
3333

34-
- uses: autofix-ci/action@dd55f44df8f7cdb7a6bf74c78677eb8acd40cd0a
34+
- uses: autofix-ci/action@ff86a557419858bb967097bfc916833f5647fa8c

.github/workflows/canary-minor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,6 @@ jobs:
2828

2929
- run: pnpm install
3030

31-
- run: pnpm release --canary --tag minor
31+
- run: pnpm release --canary --publish --tag minor
3232
env:
3333
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

.github/workflows/canary.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@ jobs:
2626

2727
- run: pnpm install
2828

29-
- run: pnpm release --canary
29+
- run: pnpm release --canary --publish
3030
env:
3131
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

.github/workflows/ci.yml

Lines changed: 16 additions & 118 deletions
Original file line numberDiff line numberDiff line change
@@ -3,141 +3,39 @@ on:
33
push:
44
branches:
55
- '**'
6+
tags:
7+
- '!**'
68
pull_request:
79
branches:
810
- main
911
- minor
1012

11-
permissions:
12-
contents: read # to fetch code (actions/checkout)
13-
1413
jobs:
15-
unit-test:
16-
runs-on: ubuntu-latest
17-
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
18-
env:
19-
PUPPETEER_SKIP_DOWNLOAD: 'true'
20-
steps:
21-
- uses: actions/checkout@v4
22-
23-
- name: Install pnpm
24-
uses: pnpm/[email protected]
25-
26-
- name: Install Node.js
27-
uses: actions/setup-node@v4
28-
with:
29-
node-version-file: '.node-version'
30-
cache: 'pnpm'
31-
32-
- run: pnpm install
33-
34-
- name: Run unit tests
35-
run: pnpm run test-unit
36-
37-
unit-test-windows:
38-
runs-on: windows-latest
39-
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
40-
env:
41-
PUPPETEER_SKIP_DOWNLOAD: 'true'
42-
steps:
43-
- uses: actions/checkout@v4
44-
45-
- name: Install pnpm
46-
uses: pnpm/[email protected]
47-
48-
- name: Install Node.js
49-
uses: actions/setup-node@v4
50-
with:
51-
node-version-file: '.node-version'
52-
cache: 'pnpm'
53-
54-
- run: pnpm install
14+
test:
15+
if: ${{ ! startsWith(github.event.head_commit.message, 'release:') && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository) }}
16+
uses: ./.github/workflows/test.yml
5517

56-
- name: Run compiler unit tests
57-
run: pnpm run test-unit compiler
58-
59-
- name: Run ssr unit tests
60-
run: pnpm run test-unit server-renderer
61-
62-
e2e-test:
63-
runs-on: ubuntu-latest
64-
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
65-
steps:
66-
- uses: actions/checkout@v4
67-
68-
- name: Setup cache for Chromium binary
69-
uses: actions/cache@v4
70-
with:
71-
path: ~/.cache/puppeteer
72-
key: chromium-${{ hashFiles('pnpm-lock.yaml') }}
73-
74-
- name: Install pnpm
75-
uses: pnpm/[email protected]
76-
77-
- name: Install Node.js
78-
uses: actions/setup-node@v4
79-
with:
80-
node-version-file: '.node-version'
81-
cache: 'pnpm'
82-
83-
- run: pnpm install
84-
- run: node node_modules/puppeteer/install.mjs
85-
86-
- name: Run e2e tests
87-
run: pnpm run test-e2e
88-
89-
- name: verify treeshaking
90-
run: node scripts/verify-treeshaking.js
91-
92-
lint-and-test-dts:
18+
continuous-release:
9319
runs-on: ubuntu-latest
94-
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
95-
env:
96-
PUPPETEER_SKIP_DOWNLOAD: 'true'
9720
steps:
98-
- uses: actions/checkout@v4
21+
- name: Checkout
22+
uses: actions/checkout@v4
9923

10024
- name: Install pnpm
101-
uses: pnpm/action-setup@v4.0.0
25+
uses: pnpm/action-setup@v4
10226

10327
- name: Install Node.js
10428
uses: actions/setup-node@v4
10529
with:
10630
node-version-file: '.node-version'
31+
registry-url: 'https://registry.npmjs.org'
10732
cache: 'pnpm'
10833

109-
- run: pnpm install
110-
111-
- name: Run eslint
112-
run: pnpm run lint
113-
114-
- name: Run prettier
115-
run: pnpm run format-check
116-
117-
- name: Run type declaration tests
118-
run: pnpm run test-dts
119-
120-
# benchmarks:
121-
# runs-on: ubuntu-latest
122-
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
123-
# env:
124-
# PUPPETEER_SKIP_DOWNLOAD: 'true'
125-
# steps:
126-
# - uses: actions/checkout@v4
127-
128-
# - name: Install pnpm
129-
# uses: pnpm/[email protected]
130-
131-
# - name: Install Node.js
132-
# uses: actions/setup-node@v4
133-
# with:
134-
# node-version-file: '.node-version'
135-
# cache: 'pnpm'
34+
- name: Install deps
35+
run: pnpm install
13636

137-
# - run: pnpm install
37+
- name: Build
38+
run: pnpm build --withTypes
13839

139-
# - name: Run benchmarks
140-
# uses: CodSpeedHQ/action@v2
141-
# with:
142-
# run: pnpm vitest bench --run
143-
# token: ${{ secrets.CODSPEED_TOKEN }}
40+
- name: Release
41+
run: pnpx pkg-pr-new publish --compact --pnpm './packages/*'
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Auto close issues with "can't reproduce" label
2+
3+
on:
4+
schedule:
5+
- cron: '0 0 * * *'
6+
7+
permissions:
8+
issues: write
9+
10+
jobs:
11+
close-issues:
12+
if: github.repository == 'vuejs/core'
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: can't reproduce
16+
uses: actions-cool/issues-helper@v3
17+
with:
18+
actions: 'close-issues'
19+
token: ${{ secrets.GITHUB_TOKEN }}
20+
labels: "can't reproduce"
21+
inactive-day: 3

.github/workflows/ecosystem-ci-trigger.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ jobs:
99
runs-on: ubuntu-latest
1010
if: github.repository == 'vuejs/core' && github.event.issue.pull_request && startsWith(github.event.comment.body, '/ecosystem-ci run')
1111
steps:
12-
- uses: actions/github-script@v7
12+
- name: Check user permission
13+
uses: actions/github-script@v7
1314
with:
1415
script: |
1516
const user = context.payload.sender.login
@@ -43,7 +44,8 @@ jobs:
4344
})
4445
throw new Error('not allowed')
4546
}
46-
- uses: actions/github-script@v7
47+
- name: Get PR info
48+
uses: actions/github-script@v7
4749
id: get-pr-data
4850
with:
4951
script: |
@@ -56,9 +58,11 @@ jobs:
5658
return {
5759
num: context.issue.number,
5860
branchName: pr.head.ref,
59-
repo: pr.head.repo.full_name
61+
repo: pr.head.repo.full_name,
62+
commit: pr.head.sha
6063
}
61-
- uses: actions/github-script@v7
64+
- name: Trigger run
65+
uses: actions/github-script@v7
6266
id: trigger
6367
env:
6468
COMMENT: ${{ github.event.comment.body }}
@@ -80,6 +84,7 @@ jobs:
8084
prNumber: '' + prData.num,
8185
branchName: prData.branchName,
8286
repo: prData.repo,
83-
suite: suite === '' ? '-' : suite
87+
suite: suite === '' ? '-' : suite,
88+
commit: prData.commit
8489
}
8590
})

0 commit comments

Comments
 (0)