I think I found a regression in equinox when using the framework API.
The scenario is quite simple to reproduce.
java.util.ServiceLoader<FrameworkFactory> loader = java.util.ServiceLoader.load(FrameworkFactory.class);
Map<String, String> properties = new HashMap<String, String>();
Framework newFramework = loader.iterator().next().newFramework(properties);
// fails with NPE
This would work fine in every previous version of equinox.
So, this might sounds like it's a silly thing to want to do in the first place.Â
However, one very good reason for this is because it's the only way to "set" (or rather "unset") certain equinox flags due to the fact that the only check causing them to be unset is a null check (which if I can't set it null will obviously never be the case).
Again, before Luna, this always worked.