create-jest-runner
create-jest-runner copied to clipboard
chore(deps): update yarn to v4
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| yarn (source) | 3.8.4 -> 4.5.1 |
[!WARNING] Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
yarnpkg/berry (yarn)
v4.5.1
v4.5.0
v4.4.1
v4.4.0
v4.3.1
v4.3.0
v4.2.2
v4.2.1
v4.2.0
v4.1.1
v4.1.0
-
Tweaks
-,--verboseinyarn workspaces foreach;-vwill now only print the prefixes,-vvwill be necessary to also print the timings. -
Adds a new
--jsonoption toyarn runwhen called without script name -
Fixes
node-moduleslinkerlink:dependencies mistreatment as inner workspaces, when they point to a parent folder of a workspace -
Fixes spurious "No candidates found" errors
-
Fixes missing executable permissions when using
nodeLinker: pnpm -
Fixes packages being incorrectly flagged as optional
-
Fixes cache key corruptions due to uncontrolled git merges
-
Fixes
yarn version apply --all --dry-runmaking unexpected changes -
Fixes
yarn npm loginwhen the remote registry is Verdaccio
v4.0.2
v4.0.1
v4.0.0
Major Changes
-
With Node.js 16's now being End of Life'd, we dropped support for Node.js versions lower than 18.12.
-
Some important defaults have changed:
yarn set versionwill prefer usingpackageManagerrather thanyarnPathwhen possible.yarn initwill no longer use zero-install by default. You still can enable it, but it should make it easier to start one-of projects without having to rewrite the configuration afterwards.yarn workspaces foreachnow requires one of--all,--recursive,--since, or--worktreeto be explicitly specified; the previous default was--worktree, but it was rarely what users expected.
-
All official Yarn plugins are now included by default in the bundle we provide. You no longer need to run
yarn plugin importfor official plugins (you still need to do it for third-party plugins, of course).- This doesn't change anything to the plugin API we provide, which will keep being maintained.
- Yarn still has a modular architecture and uses the exact same APIs as contrib plugins; all that changes is how we distribute our own features.
-
Yarn's UI during installs has been greatly improved:
- Packages added and removed from the lockfile are now explicitly reported.
- Fluctuations in the project cache size are now reported as a single line.
- Unactionable warnings (
node-gypand transitive peer dependency errors) have been removed. - Skipped builds are now only reported during initial installs and manual
yarn rebuildcalls. - The Yarn version is now displayed on installs to help us investigate issues when reported as screenshots.
- Deprecation checks have been moved to
yarn npm audit.
-
Some settings were renamed or removed:
caFilePathis nowhttpsCaFilePathpreferAggregateCacheInfohas been removed (it's now always on)pnpDataPathhas been removed to adhere to our new PnP specification. For consistency, all PnP files will now be hardcoded to a single value so that third-party tools can implement the PnP specification without relying on the Yarn configuration.
-
The
yarn npm auditcommand has been reimplemented:- The audit registry must now implement the
/-/npm/v1/security/advisories/bulkendpoint. - The
npmAuditRegistrycan be used to temporarily route audit queries to the npm registry. - Deprecations are now returned by default. To silence them, use
yarn npm audit ! --no-deprecations.
- The audit registry must now implement the
-
Some legacy layers have been sunset:
- Plugins cannot access the Clipanion 2 APIs anymore (upgrade to Clipanion 3)
- Plugins cannot access the internal copy of Yup anymore (use Typanion instead)
- Yarn will no longer remove the old Yarn 2.x
.pnp.jsfile when migrating. - The
--assume-fresh-projectflag ofyarn inithas been removed.
API Changes
The following changes only affect people writing Yarn plugins:
-
The
ZipFSandZipOpenFSclasses have been moved from@yarnpkg/fslibto@yarnpkg/libzip. They no longer need or accept thelibzipparameter.- Reading the zip archives is now done on the Node.js side for performance; as a result, the
open,ZIP_CREATE, andZIP_TRUNCATEbindings are no longer needed forZipFSand have also been removed.
- Reading the zip archives is now done on the Node.js side for performance; as a result, the
-
The
dependenciesfield sent returned byResolver#resolvemust now be the result of aConfiguration#normalizeDependencyMapcall. This change is prompted by a refactoring of how default protocols (ienpm:) are injected into descriptors. The previous implementation caused various descriptors to never be normalized, which made it difficult to know what were the descriptors each function should expect.-
Similarly, the descriptors returned by
Resolve#getResolutionDependenciesare now expected to be the result ofConfiguration#normalizeDependencycalls. -
Note that this only applies to the
dependenciesfield; thepeerDependenciesfield is unchanged, as it must only contains semver ranges without any protocol (with an exception forworkspace:, but that's not relevant here).
-
-
The
Resolve#getResolutionDependenciesfunction must now return an object of arbitrary string keys and descriptor values (instead of a map withDescriptorHashkeys). Those descriptors will be resolved and assigned to the same keys as the initial object. This change allows resolvers to wrap resolution dependencies from other resolvers, which wasn't possible before since it'd have caused the key to change. -
The
generateLoaderfunction in@yarnpkg/pnpno longer generates the$$SETUP_STATEfunction, it now needs to be present in theloaderpassed to the function. -
The
getCustomDataKeyfunction inInstallerfrom@yarnpkg/corehas been moved toLinker. -
renderForm'soptionsargument is now required to enforce that custom streams are always specified. -
npmConfigUtils.getAuditRegistryno longer takes aManifestas its first argument. -
The
FetchOptions.skipIntegrityCheckoption has been removed. UseFetchOptions.cacheOptions.skipIntegrityCheckinstead. -
MapConfigurationValuehas been removed. UsemiscUtils.ToMapValueinstead. -
Manifest.isManifestFieldCompatibleandManifest.prototype.isCompatibleWith{OS,CPU}have been removed. UseManifest.prototype.getConditionsandstructUtils.isPackageCompatibleinstead. -
versionUtils.{fetchBase,fetchRoot,fetchChangedFiles}have been moved from@yarnpkg/plugin-versionto@yarnpkg/plugin-git. UsegitUtils.{fetchBase,fetchRoot,fetchChangedFiles}instead. -
For consistency reasons:
Link{Resolver,Fetcher}have been renamed toPortal{Resolver,Fetcher}RawLink{Resolver,Fetcher}have been renamed toLink{Resolver,Fetcher}
-
FakeFSclasses are now required to implementlutimes{Sync,Promise}. -
workspace.dependencieshas been removed. Useworkspace.anchoredPackage.dependenciesinstead. -
The
Installerclass must now returnBuildRequeststructures instead ofBuildDirective[]. This lets you mark that the build must be skipped, and the reason why. -
startCacheReporthas been removed, and is now part of the output generated byfetchEverything. -
forgettableNames&forgettableBufferSizehave been removed (the only messages using them have been removed, making the forgettable logs implementation obsolete). -
workspace.locatorhas been removed. You can instead use:workspace.anchoredLocatorto get the locator that's used throughout the dependency tree.workspace.manifest.versionto get the workspace version.
-
configuration.{packageExtensions,refreshPackageExtensions}have been removed. Useconfiguration.getPackageExtensionsinstead. -
configuration.normalizePackagenow requires apackageExtensionsoption. -
ProjectLookuphas been removed. BothConfiguration.findandConfiguration.findProjectCwdnow always do a lockfile lookup.
Installs
- Yarn now caches npm version metadata, leading to faster resolution steps and decreased network data usage.
- The
pnpmlinker avoids creating symlinks that lead to loops on the file system, by moving them higher up in the directory structure. - The
pnpmlinker no longer reports duplicate "incompatible virtual" warnings.
Features
enableOfflineModeis a new setting that, when set, will instruct Yarn to only use the metadata and archives already stored on the local machine rather than download them from the registry. This can be useful when performing local development under network-constrained environments (trains, planes, ...).yarn run binnow injects the environment variables defined in.env.yarnwhen spawning a process. This can be configured using theinjectEnvironmentFilesvariable.yarn workspaces foreachnow automatically enables theyarn workspaces foreach ! --verboseflag in interactive terminals.- Constraints can now be written in JavaScript. See the revamped documentation for more information.
Bugfixes
yarn dlxwill no longer report false-positiveUNUSED_PACKAGE_EXTENSIONwarningsyarn workspacewill now set$INIT_CWDto the CLI working directory rather than the workspace root.
Shell
- The builtin shell now supports whitespace-only commands.
Compatibility
- The patched filesystem now supports
FileHandle.readLines. - PnP now reports missing files when in watch mode.
v3.8.6
v3.8.5
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
- [ ] If you want to rebase/retry this PR, check this box
This PR was generated by Mend Renovate. View the repository job log.