These two caches were meant to work around bad orogen loading behaviour in the pre-loaders days, that is the fact that orogen had a tendency to load the same package over and over again. This has been fixed by the orogen loaders.
Their side effect - and why I remove them - was that we ended up with more than 250k objects in the Ruby heap in a typical Syskit application, that were only related to these - and never used. That's more than 50% of the total.
This pull request removes the two main caches that were present, related to orogen loading
It depends on https://github.com/orocos-toolchain/utilrb/pull/30. https://github.com/rock-core/tools-orocosrb/pull/94 must be applied at the same time, as some private APIs of Loaders::PkgConfig is used by Orocos::Process.
These two caches were meant to work around bad orogen loading behaviour in the pre-loaders days, that is the fact that orogen had a tendency to load the same package over and over again. This has been fixed by the orogen loaders.
Their side effect - and why I remove them - was that we ended up with more than 250k objects in the Ruby heap in a typical Syskit application, that were only related to these - and never used. That's more than 50% of the total.