[wp-trac] [WordPress Trac] #38603: Explore adding Yarn and a `yarn.lock` file for NPM module management

WordPress Trac noreply at wordpress.org
Tue Nov 1 09:23:37 UTC 2016


#38603: Explore adding Yarn and a `yarn.lock` file for NPM module management
------------------------------+-----------------------------
 Reporter:  netweb            |      Owner:
     Type:  defect (bug)      |     Status:  new
 Priority:  normal            |  Milestone:  Awaiting Review
Component:  Build/Test Tools  |    Version:
 Severity:  normal            |   Keywords:  needs-patch
  Focuses:                    |
------------------------------+-----------------------------
 YARN: Yarn: A new package manager for JavaScript:

 • Fast: Yarn caches every package it downloads so it never needs to
 download the same package again. It also parallelizes operations to
 maximize resource utilization so install times are faster than ever.

 • Reliable: Using a detailed, concise lockfile format and a deterministic
 algorithm for installs, Yarn is able to guarantee that an install that
 worked on one system will work exactly the same way on any other system.

 • Secure: Yarn uses checksums to verify the integrity of every installed
 package before its code is executed.

 * https://code.facebook.com/posts/1840075619545360
 * https://yarnpkg.com/
 * https://github.com/yarnpkg/yarn

 Yarn is similar to a `npm-shrinkwrap.json` file though with vast
 performance increases and improved cross platform compatibility/reliably.

 Here's some quick stats:

 * `time npm install` (First run, existing `npm cache`)
  * 176.87 seconds

 * `time npm install` (First run, no existing `npm cache`)
  * 237.97 seconds

 * `time yarn` (Initial Yarn run)
  * 21.40 seconds

 * `time yarn` (Subsequent install after creating `yarn.lock` and  `rm -rf
 node_modules/ && time yarn`)
  * 18.82 seconds

--
Ticket URL: <https://core.trac.wordpress.org/ticket/38603>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list