jonathan-laurent / AlphaZero.jl

A generic, simple and fast implementation of Deepmind's AlphaZero algorithm.
https://jonathan-laurent.github.io/AlphaZero.jl/stable/
MIT License
1.25k stars 141 forks source link

Register package with General registry #13

Closed ViralBShah closed 4 years ago

ViralBShah commented 4 years ago

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.

jonathan-laurent commented 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.

jonathan-laurent commented 4 years ago

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.

ViralBShah commented 4 years ago

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.

jonathan-laurent commented 4 years ago

Thanks for the feedback! I will be registering the package after the next release.