jordwalke / esy-issues

Easy ISSUES
MIT License
49 stars 5 forks source link

`esy resolve` #34

Open yunxing opened 7 years ago

yunxing commented 7 years ago

For complied languages, we really want a package resolver that has two features:

Unfortunately, at this moment both npm and yarn don't support a smart resolver like this: https://github.com/yarnpkg/yarn/issues/579.

What we can do in esy is read the constraints listed in 'package.json' file, and use our customized resolver to generate a yarn.lock or shrinkwrap file. After a file is generated, we can then delegate to yarn or npm to fetch the dependencies for us, and then call esy build to build the dependencies.

With esy resolve and esy build, first time users should be able to just work on the layer of esy, without knowing much details about yarn / npm.

yunxing commented 7 years ago

Some references: https://research.swtch.com/version-sat https://www.npmjs.com/package/logic-solver

yunxing commented 7 years ago

cc @hcarty @yutongp who showed interests in this problem before.