aegir now uses esbuild everywhere, to bundle, in the browser tests, to transpile TS in realtime for node tests, and more. Read about esbuild speed here.
Code coverage is also lightning fast by using the internal v8 coverage instead of instrumentation with 3rd party tools like instanbul/nyc, in node it uses c8 and in the browser playwright api to get the internal chromium v8 coverage.
Based on several of our repos:
Running node tests in Typescript repos is 46% faster.
Generating coverage is 60% faster.
Running browser tests is 80% faster.
Compiling the browser bundle is 73%-90% faster.
10% smaller in size and 20% less files
Lots of aegir dependencies were removed, webpack, babel, karma, all the plugins from these and a lot more. This also makes installing aegir about 64% faster.
Configuration and Types
aegir can now be fully configured and customised using repo local config files or package.json and types for the configuration options are exported to make your life even easier.
Webkit support
We can now run our tests inside webkit to further improve our test suites.
Code Coverage for browser code
This one was blocked for a long time by the underlying tools but not anymore 🚀, our browser specific code will finally be represented in our coverage numbers.
Changelog
New aegir configuration setup, with proper merging between cli flags and config file
aegir property in package.json can be used to provide configuration in addition to the current .aegir.js file.
All command can be configured with config file or package.json property
Release command will pickup all the other commands config
New improved documentation with typedoc 0.20 with better support for commonjs
.js files are now outputted by the build command when --ts-repo flag is enabled
Linter config upgraded to 2.0.0
The lint command was improved (we were using deprecated methods) and the output changed a bit.
The output formatter now writes proper clickable paths to the errors
Aegir is fully typed now
TS command now copies all .d.ts inside the src folder to the dist and if a folder called types exists inside the root folder that folder is also copied to dist.
bundle-size github action doesn't generate types
Theres a new experimental aegir check command that will tell you about :
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps aegir from 17.1.1 to 31.0.0.
Release notes
Sourced from aegir's releases.
... (truncated)
Changelog
Sourced from aegir's changelog.
... (truncated)
Commits
6bd6e1c
chore: release version v31.0.0c58424f
chore: update contributors059290f
release v31 (#737)4002b50
feat: copy .d.ts. to dist (#738)9f67cb9
feat: upgrade linter to v2.0.0846bb25
feat: ts, build, docs and lint improvements (#732)1212314
fix: upgrade karma (#733)3d54004
feat: rename --ts flag to --ts-repo and fix ts repo support (#730)1149281
feat: update typedoc and improvemnts to docs cmd (#727)9b7136a
fix: fix docs paths and update deps (#726)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)