I think the underlying problem is that currently api regions only allow for a single child region - which means that only a single region (leave) is isolated from the others.

We would need to allow more than one child region - which then allows to have a single global region and for example two isolated child regions for two applications. Both app regions inherit everything from global but they do not share anything with the other app region.

I haven't looked in detail, but I assume this requires a breaking api change in feature-extension-apiregions to support this on the Java API level. It also requires a different format in the JSON extension to declare this and then finally an implementation in extension-apiregions to support this.

This change might then come with further changes downstream, e.g. the feature maven plugin.

Regards
Carsten

On 28.10.2024 11:57, Konrad Windszus wrote:
This topic was briefly discussed during the Sling Hackathon 
(https://cwiki.apache.org/confluence/x/i45yEg).
It seems that the best way forward is to no longer rely on the global region 
but rather on completely isolated/separated API regions.
Is there anything which would need to be extended in either 
https://github.com/apache/sling-org-apache-sling-feature-apiregions or in 
https://github.com/apache/sling-org-apache-sling-feature-extension-apiregions/tree/master
 to support this?

Thanks,
Konrad

On 13. May 2024, at 19:12, Konrad Windszus <[email protected]> wrote:

Hi,
I have a question about 
https://github.com/apache/sling-org-apache-sling-feature-apiregions and split 
packages.
How are split-packages supposed to be treated by the resolver in case an 
imported-package from bundle a in region A can be resolved from bundle b (in 
region A) and bundle c (in global region).
Is there any special rules applied here for split-packages across regions?

Thanks in advance,
Konrad



--
Carsten Ziegeler
Adobe
[email protected]

Reply via email to