state of the cli- kat marchan

18
State of the CLI Katerina Marchán | @maybekatz | npm, Inc npm install @zkat/nodeinteractive-2016

Upload: nodejsfoundation

Post on 14-Apr-2017

217 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: State of the CLI- Kat Marchan

State of the CLI

Katerina Marchán | @maybekatz | npm, Inc npm install @zkat/nodeinteractive-2016

Page 2: State of the CLI- Kat Marchan

Whatcha up to?

• npm@3

• npm@4

• npm@5(!)

• LTS

• State of Triage

• Product

Page 3: State of the CLI- Kat Marchan

npm@3

•  It’s a year old!

• Works really well!

• Already shipping with node@6!

• Becoming new LTS

Page 4: State of the CLI- Kat Marchan

npm@3

New! Fast! Progress! Bar.

Page 5: State of the CLI- Kat Marchan

npm@3

• Keeping Travis green + tests pass on Windows

• Big Bugs push

• making shrinkwrap, as designed, consistent

• Major redesigns of shrinkwrap later (npm@5)

Page 6: State of the CLI- Kat Marchan

npm@4

• October 2016!

• Less impactful than npm@3

• Catch up with a few small breaking changes

• Close book on npm@2 vs npm@3

• Future semver-major releases more frequent

Page 7: State of the CLI- Kat Marchan

npm@4 - node path

• npm@3 prepends path of current `node`

•  caused sadfaces/discussions

•  Instead, `--scripts-prepend-node-path`

• Variety of options, no prepend by default

• @addaleax patch (and motivation for npm@4)

Page 8: State of the CLI- Kat Marchan

npm@4 - search

•  `npm search` works again

•  sacrificing sorting/search speed for ability to

*work*

•  temporary until more featureful endpoint

•  incremental, streaming search w/ caching

• npm/npm#13746

Page 9: State of the CLI- Kat Marchan

npm@4 - search

Page 10: State of the CLI- Kat Marchan

npm@4 - prepare

•  `prepublish` deprecated

•  `prepare` script === `prepublish`

•  `prepublishOnly` script === before publish

•  `prepublishOnly` not run on `npm install`

•  `prepublishOnly` later renamed to `prepublish`

• npm/npm#10074

Page 11: State of the CLI- Kat Marchan

npm@5

• 2017Q1

• Focused on `npm shrinkwrap` •  Refactor things to make it simpler internally

•  Make it way the way the community wants it to

• Faster, more robust content-addressable cache

Page 12: State of the CLI- Kat Marchan

LTS

• Diverges from Node.js LTS process:

•  small team

•  want an LTS that works well for Node distribution

•  we already greatly prioritize stability

•  Strongly prefer developers upgrade to npm@latest

Page 13: State of the CLI- Kat Marchan

LTS

• npm@2 => “maintenance”

• npm@3 => (active) LTS

• npm@4 => node@7 (?)

• npm@5 => node@8 LTS? ¯\_( )_/¯

Page 14: State of the CLI- Kat Marchan

State of Triage

Page 15: State of the CLI- Kat Marchan

State of Triage

• Triage every day

• Daily feature request meetings

•  close if not in 6-12 month roadmap

•  “Big bugs” take priority over features

• @KenanY/@kyild added as a contributor!

Page 16: State of the CLI- Kat Marchan

Product

• Guiding Principles •  Community Responsibilities

•  Reliability

•  Consistency

•  Performance

•  Improve the value of the CLI in the larger ecosystem

Page 17: State of the CLI- Kat Marchan

Product

• Quality & Robustness Improvement

• Performance Improvement

• Shrinkwrap Improvement

•  Improved Login Experience

• Tighter Integration with the New Registry

Page 18: State of the CLI- Kat Marchan

🌊! Talk to us @npmjs!

WeAllJS.org

Open, inclusive, diverse JavaScript Slack + community. Lots of Europeans! Join us!