Open fubuloubu opened 6 years ago
Alternate idea might be something that does something similar to tox
and manage independent virtualenvs for each installed vyper version. The outer vyper CLI would act as a transparent shell, delegating all execution to subprocess calls to the installed versions embedded in virtualenvs.
Think of it like pyenv
but for vyper.
$ vyperenv install 1.2.3
...
LGTM @jacqueswww, what do you think?
What was wrong?
The biggest problem with Vyper is that it's Python, and arbitrary/multiple version handling in Python is a hard thing to handle. It might just be better to delegate to dedicated servers that compile vyper programs using specific versions of the compiler. Access to these could be provided over an HTTP API (that's programmable), with an option to use a local version as well.
Also, with snapcraft/docker containerization, we may be able to support local versioning here too.
Conversation snippet...
@pipermerriam An open source hostable server which exposed an API for compilation of vyper code would be pretty cool. There are of course security concerns to be considered, but I think it would a valuable tool (especially if it had first class support for multiple vyper versions so that it could be used to do things like verification of deployed instances.
@fubuloubu Hmm, maybe that is the solution to online integration: a JS "compiler" that just sends everything to Vyper instances on AWS.
@pipermerriam Well, ideally, something like populus could delegate compilation via HTTP requests to this API so I'd love to have that use case supported
Cute Animal Picture