In the Code Camp đī¸ I started at the point where I finished last time.
Future Ivy Core Architecture
But this time I pushed the changes directly into our productive code base.
I created a low-level description layer for the heavy Runtime Objects ISecurityContext, IApplicaiton and IProcessModelVersion/IIvyProject. This new layer has zero dependencies and can be used everywhere.
Then I created a new Project Model which should replace the IProject from the Eclipse Resource API. The second target is also to use it instead of the heavy IProcessModelVersion when we are only on the configuration level. E.g. all Datamodels like a IProcess Model is one should only depend on configuration stuff and not on the runtime anymore.

The target âĄī¸ is to reduce the direct dependency to Eclipse API and narrow down the dependency graph of our source code.
The benefit is clean code, easier and faster âŠī¸ tests and in some cases also more performance đ in production.
So not much more to tell, as refactoring is just hard back-breaking â ī¸ work đ§âđ. Hope my teammates can already start profit from these improvements...