v1.0.0 ! 🎉
Features
-
Feature: Allows the top-level package.json to override nested dependencies versions
-
Feature: Adds a
yarn-path
rc config parameterMaël Nison - (#4204)
-
Feature: Enables Workspaces by default
-
Feature: Commands are now ran from the cwd package root if possible
Maël Nison - (#4246)
-
Feature: Exposes the lockfile parser into its own npm package (
@yarnpkg/lockfile
)William Hilton - (#4114)
-
Feature: Implements a
--cwd
flag to run Yarn in a specific directory -
Feature: Implements the
-v
command to show Yarn's version when specified without other commands -
Feature: Detects and merges lockfile conflicts without user input
-
Feature: Adds a preliminary support for
//
comments in package.json dependenciesJoachim Seminck - (#3829)
Breaking changes
-
Breaking: Commands run via
yarn run
are now automatically forwarded trailing optionsMaël Nison - (#4152)
-
Breaking: Renames
yarn clean
toyarn autoclean
Jeff Valore - (#4252)
-
Breaking: Deprecates the implicit
file:
protocol, and only allow package dirs -
Breaking: Prevents
yarn add
from being run from a workspace root directory without--dev
Maël Nison - (#4166)
-
Breaking: Removes support for the
yarn ... ls
commands (uselist
instead ofls
)Tiago Pina - (#4045)
-
Breaking: Removes support for the
yarn ... rm
commands (useremove
instead ofrm
)Tiago Pina - (#3989)
-
Breaking: Validates the top-level
package.json
enginesAdam Crabtree - (#3675)
Improvements
-
Improvement: Adds support for
git+***://
dependenciesJeremy Judeaux - (#3735)
-
Improvement: Reimplements part of the integrity check to be faster and stronger
Maël Nison - (#4122)
-
Improvement: Warns when there's a missing bundledDependencies
Jeff Valore - (#4046)
-
Improvement: Implements a
/tmp
fallback if the preferred cache folders aren't writableMaël Nison - (#4143)
-
Improvement: Optimizes the hoisting process on large dependency trees
Kenneth Chau - (#4222)
-
Improvement: Improves the error message when the tarball fetcher detects a bad hash
-
Improvement: Adds a
--private
flag on theyarn init
commandPierre Neter - (#4165)
-
Improvement: Adds support for Github URL shorthands to
yarn init
-
Improvement: Improves the way packages referenced via the
file:
protocol are deduppedJack Aldridge - (#3945)
-
Improvement: Yarn is now distributed on NPM as a single file
Daniel Lo Nigro - (#3866)
-
Improvement: Adds retry on 5xx errors
Rifat Nabi - (#3686)
-
Improvement: Prevents creating a lockfile when there's no dependencies
Bugfixes
-
Fix: Prevents linking transitive dependencies on global installs
Maël Nison - (#4265)
-
Fix: Avoids creating the global and link folders unless necessary
-
Fix: Exposes the
$NODE
variable when running scripts -
Fix: Makes
upgrade-interactive
exit with a success exit code when no upgrades are neededJeff Valore - (#4261)
-
Fix: Ensures the bin folder exists before trying to use it
-
Fix: Fixes the
yarn workspace
command to run in the right directoriesJames Kyle - (#4080)
-
Fix: Adds the missing
--link-folder
flag (#4235) -
Fix: Excludes dev dependencies from the
yarn list
output when the environment is productionNick Olinger - (#4092)
-
Fix: Adds the missing pre/post hooks for the
pack
script -
Fix: Solves artifacts disappearing when the integrity file was missing
-
Fix: Tarballs created via
yarn pack
now contain a versioned folder name instead ofdist
-
Fix: Prevents the hoisting when it would break peer dependency requirements
Maël Nison - (#4086)
-
Fix: Prevents numeric versions from being resolved to local files
-
Fix: Correctly handles scripts failing with exit signals
Onur Temizkan - (#3995)
-
Fix: Forces workspaces to always be installed from their root
Maël Nison - (#4030)
-
Fix: Prevents running pre/post hooks if they are not scripts
-
Fix: Checks for npmrc in home directory for linux root users
-
Fix: Prevents scoped package installs to crash with a 403 when the cache is empty
-
Fix: Prevents optional subdependencies from being installed when using
--ignore-optional
Maël Nison - (#3976)
-
Fix: Fixes missing path expansions
-
Fix: Avoids using
process.exit()
when possible -
Fix: Global config is now also looked up in
${PREFIX}/etc/
-
Fix: Stops assuming that all string rc parameters are paths
-
Fix: Fixes yarn global prefix directory
Kishan Bagaria - (#3721)
-
Fix: Fixes the authentication when using
yarn publish
John Ferlito - (#3862)
-
Fix: Prevents
--check-files
from crossing symlink boundariesMaël Nison - (#3931)
-
Fix: Removes the manifest check for global commands
-
Fix: Correctly prioritizes git environment variables coming from the parent process
-
Fix: Prioritizes bin links at the root level
-
Fix: Fixes package linking when a filename case changes
Maël Nison - (#3843)
-
Fix: Forwards SIGTERM to spawned child processes
Gabriel Aumala - (#3789)
-
Fix: Emoji should now default to true on darwin platforms
-
Fix: Inherits env variables from the process when calling Git
-
Fix: Prevents unwanted optimizations kicking in when installing a lockfile
Maël Nison - (#3729)
-
Fix: Transitive
file:
dependencies should now work properlyKonstantin Raev - (#3709)
And a lot of various other fixes, chores, documentation, minor text fixes ..., all thanks to the community! 🐬