-
-
Notifications
You must be signed in to change notification settings - Fork 163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feature] Golang Tier 2 #1572
Comments
It's definitely on the roadmap, but newer language developer is sort of paused right now till we move entirely to WASM plugins. I'm not a Go expert, so I could definitely use some guidance on best practices for using Go in a monorepo! Or just in general. |
BTW, any way I could help expedite this feature? I don't code in Rust (although I would love to) but could help with writing it in Go and compiling to WASM (if this is a viable way of integration). |
The WASM plugins is taking longer than expected. I think it's best too loosen the restriction of no new language development in Rust. With the said, there is some docs if you want to give it a shot. https://github.com/moonrepo/moon/blob/master/scripts/new-language.md (this is probably outdated a bit) |
Hey @milesj it took me longer then expected to get to try that and I am pretty new to Rust. I did see that WASM plugins are more stable now aren't they? |
The plugin system itself is in place, but the toolchain part of the plugin system has not been finished yet. |
Thanks. Seeking your advice here. I would love to contribute better Golang support but will need to know if there is a point in developing it in the existing non WASM way. It will probably take me a month or so with current obligations. Is it worth it? Or should I wait? |
You can give it a shot: https://github.com/moonrepo/moon/blob/master/scripts/new-language.md |
@milesj: I have implemented with the mentioned tutorial Python as a Tier3 language (not completed yet) Do you think it's worth to bring the Python Tier 3 still in the legacy, or is the tools repository the future and I can start implementing the Tier 3 support? |
@harlequin A few things: Python tier 3 is technically partially completed already for proto (via the tools repo): https://github.com/moonrepo/tools/tree/master/tools/python This can be used in the same way that node/npm/etc is currently built in moon. The only issue is that it is currently powered by prebuilts, which doesn't support all python versions. The new WASM based toolchain APIs are not completed yet, but will be very similar to the current moon legacy code. Once the APIs are ready, porting them over should be relatively simple, so any work done on legacy won't be entirely throw away work. I'm hoping to have these APIs done by the end of the year. All in all, putting stuff in legacy for now is fine. |
Is your feature request related to a problem? Please describe.
I wasn't sure if to open this here or in the tools repo. I would love implicit dependency detection on Golang code. I've built a similar tool in Go for that but then I found about moon. I think this will make moon one of the best build tools for Golang monorepos.
The text was updated successfully, but these errors were encountered: