-
-
Notifications
You must be signed in to change notification settings - Fork 4.7k
rename dev script, update contributor guide and readme #9673
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -43,7 +43,7 @@ The maintainers meet on the final Saturday of each month. While these meetings a | |
|
|
||
| ### Prioritization | ||
|
|
||
| We do our best to review PRs and RFCs as they are sent, but it is difficult to keep up. We welcome help in reviewing PRs, RFC, and issues. If an item aligns with the current priority on our [roadmap](https://svelte.dev/roadmap), it is more likely to be reviewed quickly. PRs to the most important and active ones repositories get reviewed more quickly while PRs to smaller inactive repos may sit for a bit before we periodically come by and review the pending PRs in a batch. | ||
| We do our best to review PRs and RFCs as they are sent, but it is difficult to keep up. We welcome help in reviewing PRs, RFCs, and issues. If an item aligns with the current priority on our [roadmap](https://svelte.dev/roadmap), it is more likely to be reviewed quickly. PRs to the most important and active ones repositories get reviewed more quickly while PRs to smaller inactive repos may sit for a bit before we periodically come by and review the pending PRs in a batch. | ||
|
|
||
| ## Bugs | ||
|
|
||
|
|
@@ -74,10 +74,11 @@ Small pull requests are much easier to review and more likely to get merged. | |
|
|
||
| ### Installation | ||
|
|
||
| 1. Ensure you have [pnpm](https://pnpm.io/installation) installed | ||
| 1. After cloning the repository, run `pnpm install`. You can do this in the root directory or in the `svelte` project | ||
| 1. Move into the `svelte` directory with `cd packages/svelte` | ||
| 1. To compile in watch mode, run `pnpm dev` | ||
| Ensure you have [pnpm](https://pnpm.io/installation) installed. After cloning the repository, run `pnpm install`. | ||
|
|
||
| ### Developing | ||
|
|
||
| To build the UMD version of `svelte/compiler` (this is only necessary for CommonJS consumers, or in-browser use), run `pnpm build` inside `packages/svelte`. To rebuild whenever source files change, run `pnpm dev`. | ||
|
|
||
| ### Creating a branch | ||
|
|
||
|
|
@@ -100,18 +101,28 @@ Test samples are kept in `/test/xxx/samples` folder. | |
| > PREREQUISITE: Install chromium via playwright by running `pnpm playwright install chromium` | ||
|
|
||
| 1. To run test, run `pnpm test`. | ||
| 1. To run test for a specific feature, you can use the `-g` (aka `--grep`) option. For example, to only run test involving transitions, run `pnpm test -- -g transition`. | ||
| 1. To run a particular test suite, use `pnpm test <suite-name>`, for example: | ||
|
|
||
| ```bash | ||
| pnpm test validator | ||
| ``` | ||
|
|
||
| ##### Running solo test | ||
| 1. To filter tests _within_ a test suite, use `pnpm test <suite-name> -- -t <test-name>`, for example: | ||
|
|
||
| 1. To run only one test, rename the test sample folder to end with `.solo`. For example, to run the `test/js/samples/action` only, rename it to `test/js/samples/action.solo`. | ||
| 1. To run only one test suite, rename the test suite folder to end with `.solo`. For example, to run the `test/js` test suite only, rename it to `test/js.solo`. | ||
| 1. Remember to rename the test folder back. The CI will fail if there's a solo test. | ||
| ```bash | ||
| pnpm test validator -- -t a11y-alt-text | ||
| ``` | ||
|
|
||
| (You can also do `FILTER=<test-name> pnpm test <suite-name>` which removes other tests rather than simply skipping them — this will result in faster and more compact test results, but it's non-idiomatic. Choose your fighter.) | ||
|
|
||
| ##### Updating `.expected` files | ||
|
|
||
| 1. Tests suites like `css`, `js`, `server-side-rendering` asserts that the generated output has to match the content in the `.expected` file. For example, in the `js` test suites, the generated js code is compared against the content in `expected.js`. | ||
| 1. To update the content of the `.expected` file, run the test with `--update` flag. (`pnpm test --update`) | ||
| 1. Tests suites like `snapshot` and `parser` assert that the generated output matches the existing snapshot. | ||
| 1. To update these snapshots, run `UPDATE_SNAPSHOTS=true pnpm test`. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can we just do There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. No, this is using a completely different mechanism. I have no idea how Vitest snapshots work. If it makes sense for us to use them then we can, though it'd be a different PR There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ok i just read the vitest snapshot docs and yeah, i don't think it's appropriate for our |
||
|
|
||
| ### Typechecking | ||
|
|
||
| To typecheck the codebase, run `pnpm check` inside `packages/svelte`. To typecheck in watch mode, run `pnpm check:watch`. | ||
|
|
||
| ### Style guide | ||
|
|
||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.