A new version has been created in-tree simply called "v2". It started as an empty folder, and will be gradually filled with all the parts of the project code that works.
Each part will be scrutinized thoroughly and polished up to meet a high standard. The following rules apply:
- No compiler warnings or errors allowed.
- Some libraries renamed to better more descriptive names.
- Some libraries merged.
- Some libraries split up, especially libcore and libutil.
- Some libraries or parts will be removed outright.
- Widgets and ui files are distributed among the libraries they belong to.
- Resource files are distributed among the libraries they belong to.
- All libraries receive README.md to describe them better.
- Formatting of sources modified to follow the standard.
- Translation unit optimizations to reduce buildtime.
- Empty dummy classes called NodeV2 and AgentV2 are created that will build and run but not actually work.
- The messy interfaces of node and agent are cleaned up and homogenized.
- Each feature is re-integrated one by one into the V2 classes ensuring that they work, creating unit and integration tests as the project progresses.