Closed ViralBShah closed 4 years ago
I agree I should register AlphaZero.jl.
Actually, the main thing that has been holding me back is that I am still unsure about the best way to package it. Currently, AlphaZero.jl contains several independent parts:
There are several problems with releasing all these components in a single package:
One solution would be to split AlphaZero.jl into several Julia packages. However, this would require splitting the project into multiple git repositories, which creates many problems of its own.
Edit: while writing this answer, I found an issue that pretty much addresses the problem I was mentioning: https://github.com/JuliaLang/Pkg.jl/issues/1251. I am very happy to see Pkg.jl moving in this direction.
I guess the other reason I have been delaying registering AlphaZero.jl is that it is still evolving very fast.
I think it is fine to register as is (mainly to make it easy for people to try out). Eventually, it can always be split up into more packages. But yes, I face the same question with Circuitscape.jl - which has similar UI components. For now we ship the whole thing as is in one package, and the users like the simplicity.
Some people are doing their own registries so that they can have a collection of packages, and then users add that registry to their Julia install to use those packages. Something to consider perhaps in the future. The thing with all of this is the increased maintenance effort.
Thanks for the feedback! I will be registering the package after the next release.
It would be really nice if the package could be registered in the General registry. That would make it extremely easy for folks to try out and build on top of.