38

GitHub - npm/crux: a dependency unwinder for javascript

 5 years ago
source link: https://github.com/npm/crux
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md

npm license Travis AppVeyor Coverage Status

crux is an experimental package manager for JavaScript. Don't expect to be able to use this with any of your existing projects.

Usage

$ npx npm/crux

Table of Contents

Features

  • (mostly) npm-compatible project installation

Contributing

The crux team enthusiastically welcomes contributions and project participation! There's a bunch of things you can do if you want to contribute! The Contributor Guide has all the information you need for everything from reporting bugs to contributing entire new features. Please don't hesitate to jump in if you'd like to, or even ask us questions if something isn't clear.

TODO

  • lay out project
  • extract exploded pacote tarballs into cacache + build per-project index
  • do some basic benchmarks
  • write a node loader that can load a package through the file index
  • do some load time benchmarks
  • write tests for fs overrides
  • use spawn-wrap to support child_process calls
  • use cache from config, not from pkgmap (stop writing it there)
  • make pkgmap auto-fetch packages for missing hashes on the fly
  • warn if installing a package that requires run-scripts
  • warn if installing something that requires bin/man linking
  • add support for removing package tarballs from cache
  • add fallback where "incompatible" packages get dumped into node_modules (and tagged a such in package-map.json)
  • add support for node-gyp build caching to make native packages compatible
  • add support for bin/man linking
  • benchmark wubwub?
  • optimize fs and module load operations (need to analyze)

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK