spectrum-web-components
spectrum-web-components copied to clipboard
chore: add changesets remove lerna
Description
This removes Lerna and replaces it with Changesets for handling package versioning and publishing (releases).
How and where has this been tested?
Please tag yourself on the tests you've marked complete to confirm the tests have been run by someone other than the author.
Validation steps
- Please read the Intro to Using Changesets documentation.
- Please read the description of the Changesets GitHub bot.
- Please read the documentation on adding a changeset.
- Finally, this blog post is handy and gives more information about using Changesets.
- I added two commits (a change to Well, and a changeset) to demonstrate what this would look like when the GitHub bot detected a changeset. I'll drop those two commits before merging.
It's important to know that moving to Changesets shifts the onus of version determination toward a more intentional choice for contributors. Some could argue that the onus was already on the contributor as we used Conventional Commit messages to provide Lerna a way to infer the severity of a version increase. Now, instead of relying on Conventional Commit messages, the contributor will be asked to provide changesets as part of their PR process.
The workflow for this will look something like:
- The contributor makes their changes and commits them.
- Locally, the contributor runs
yarn changesetand is asked in the CLI to choose which package(s) should be part of the changeset. - After the package(s) have been selected, the CLI will ask if the version increment should be a
major,minor, orpatch. Hittingenterin the CLI without making a choice will skip options withpatchbeing the final option. - Next, the CLI will ask for a summary of the changes. This summary will be used in the
changelog.mdfor the respective package(s). We're also using the@changesets/changelog-githubpackage to provide additional GitHub-related context (pull request number + link, contributor information), and this info will show in thechangelog.mdfor the package(s), as well. - Stage the change, commit the change, and push to the remote branch.
Motivation and context
How has this been tested?
- [ ] Test case 1
- Go here
- Do this
- [ ] Test case 2
- Go here
- Do this
Screenshots (if appropriate)
Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] Chore (minor updates related to the tooling or maintenance of the repository, does not impact compiled assets)
Checklist
- [ ] I have signed the Adobe Open Source CLA.
- [ ] My code follows the code style of this project.
- [ ] If my change required a change to the documentation, I have updated the documentation in this pull request.
- [ ] I have read the CONTRIBUTING document.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.
- [ ] I have reviewed at the Accessibility Practices for this feature, see: Aria Practices
Best practices
This repository uses conventional commit syntax for each commit message; note that the GitHub UI does not use this by default so be cautious when accepting suggested changes. Avoid the "Update branch" button on the pull request and opt instead for rebasing your branch against main.
Tachometer results
Currently, no packages are changed by this PR...
⚠️ No Changeset found
Latest commit: 9c2b7485454732222b76d6fb4be9274e9c4459a1
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.
This PR includes no changesets
When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types
Click here to learn what changesets are, and how to add one.
Click here if you're a maintainer who wants to add a changeset to this PR
Lighthouse scores
| Category | Latest (report) | Main (report) | Branch (report) |
|---|---|---|---|
| Performance | 0.97 | 0.97 | 0.98 |
| Accessibility | 1 | 1 | 1 |
| Best Practices | 1 | 1 | 1 |
| SEO | 1 | 0.92 | 0.92 |
| PWA | 1 | 1 | 1 |
What is this?
Lighthouse scores comparing the documentation site built from the PR ("Branch") to that of the production documentation site ("Latest") and the build currently on main ("Main"). Higher scores are better, but note that the SEO scores on Netlify URLs are artifically constrained to 0.92.
Transfer Size
| Category | Latest | Main | Branch |
|---|---|---|---|
| Total | 229.004 kB | 217.177 kB | 216.727 kB 🏆 |
| Scripts | 60.794 kB | 54.459 kB | 53.978 kB 🏆 |
| Stylesheet | 35.528 kB | 30.748 kB 🏆 | 30.786 kB |
| Document | 5.97 kB | 5.258 kB | 5.251 kB 🏆 |
| Third Party | 126.712 kB | 126.712 kB | 126.712 kB |
Request Count
| Category | Latest | Main | Branch |
|---|---|---|---|
| Total | 43 | 43 | 43 |
| Scripts | 35 | 35 | 35 |
| Stylesheet | 5 | 5 | 5 |
| Document | 1 | 1 | 1 |
| Third Party | 2 | 2 | 2 |