Hacker News new | ask | show | jobs
by dickeytk 3007 days ago
We did try to partially write it in Go. Writing it fully in Go would not have be possible because of the plugin system we have. However we struggled with Go quite a bit and ultimately dropped it from the codebase. This article gets more into detail as to why: https://blog.heroku.com/evolution-of-heroku-cli-2008-2017
1 comments

We also have some tools we use with the Heroku CLI we will be backporting into oclif very soon that directly addresses this problem node has with distribution. Essentially it's some scripts that let you export an oclif CLI as a standalone tarball (node binary into it), optionally being able to autoupdate with github or s3.

oclif is also compatible with pkg (https://github.com/zeit/pkg) which will turn the CLI into a dependency-less single binary just like it would be with Go. I don't like it personally as I find it useful for debugging to actually edit the files. With Go we would have to cut a release just to add extra debugging information.