-
Notifications
You must be signed in to change notification settings - Fork 2k
Accord.NET v4.0 - Roadmap #2123
Description
Hello all,
As you may know, project development has been in a hiatus for quite some time now.
However, I see that the project is still considered useful for many, and I do not think it would be in the interest of anyone to let the project die. I initially considered that the project would be superseeded by ML.NET, but this does not have to be the case. We can transform the framework to work alongside it instead.
I am therefore creating a roadmap for changes that would be nice to be done in order to improve maintainability of the project and bring it to life again.
- Create a new branch for the project to focus exclusively on .NET Core 3.1 / .NET Standard 2.1 (Migrate to .NET Core #2120).
- Drop all platform-specific compatibility fillers (i.e. for Mono, Unity).
- Drop all methods and classes marked as [Obsolete].
- Drop all classes and methods that can not be licensed under MIT (all files that have only my name in the copyright header can; for the others we may need to e-mail the other authors and ask if they allow their contributions to be shared under the MIT).
- Drop the scripts for creating InnoSetup installers, .zip archivers, and other things that are not relevant anymore in the current .NET world.
- Drop Sandcastle and all related Sandcastle scripts.
- Start by keeping only namespaces that users have found it useful and that continue to be useful. Those could be only:
- Core
- Statistics
- Math
- MachineLearning
- Note: Some of the above namespaces could be merged into a single project, so users would not need to reference so many libraries in their projects, but I haven't thought deeply about this yet... Comments are welcome.
- Port relevant unit tests to xUnit
- Port relevant documentation parts to work with DocFx.
Note: if anything proves too difficult to port, feel free to drop it too. The goal is to have an usable first version that targets only .NET Standard and that can be built easily using the current version of VS and .NET Core tools. We can do like MS did with core and gradually re-incorporate dropped functionalities in future versions.
If anyone would like to share what they think about it, please feel free to comment on it!