JuliaDynamics / DynamicalSystems.jl

Award winning software library for nonlinear dynamics and nonlinear timeseries analysis
https://juliadynamics.github.io/DynamicalSystemsDocs.jl/dynamicalsystems/dev/
Other
842 stars 93 forks source link

PSA: DynamicalSystems.jl will become a multirepo on v3.0 #193

Closed Datseris closed 8 months ago

Datseris commented 2 years ago

When #176 is implemented, just before this change, the DynamicalSystems.jl GitHub repo will become a multirepository. This means, all packages of DynamicalSystems.jl will come here, on this GitHub repository. This is how many other "large" packages of Julia have moved forwards, as for example:

There are numerous advantages to this approach, the lack of all of which I have encountered several times while developing DynamicalSystems.jl or practically any of its subpackages:

and more.

I will be posting more details here once I learn more about this multirepo approach.

Datseris commented 2 years ago

Somewhat relevant: During this movement the DynamicalSystems.jl framework will be split into more packages, specifically Datasets.jl (which will have everything Dataset related, leaving all emedding stuff in DelayEmbeddings) and PredefinedSystems.jl that will just have predefined systems.

kahaaga commented 2 years ago

Somewhat relevant: During this movement the DynamicalSystems.jl framework will be split into more packages, specifically Datasets.jl (which will have everything Dataset related, leaving all emedding stuff in DelayEmbeddings) and PredefinedSystems.jl that will just have predefined systems.

I like this approach. Currently, in CausalityTools.jl, some packages (like TransferEntropy) are already in their own packages, while other methods live as submodules in CausalityTools. It would be much cleaner if every method was in its own package, and introducing breaking changes could happen in a single PR. I will move forward with the same approach for CausalityTools.jl and friends.

Datseris commented 2 years ago

This new package https://github.com/JuliaComputing/MultiDocumenter.jl may help with having docs in multiple places, however it is not clear to me how it works with multi repos.