so someone please correct me if I'm dumb here. A package, even with modules is just a "key", meaning in a module.
given the 3 packages
com.myorg.lib
com.myorg.lib.api
com.myorg.lib.internal
from the current userguide
> If applied to a module then its scope is all the code in the module. If applied to a package then its scope is all the code in the package.
export "com.myorg.lib"
export "com.myorg.lib.api"
are both required since it's not recursive (many tools make it so for classpath scanning but that's up to the tool). Obviously we don't want to export internal. Putting Nullmarked on this. Since we put it on the module nullmarked also applies to com.myorg.lib.internal. If the consumers of the module aren't using JPMS is it still supposed to be respected by tools? I would assume so.
If I nullmark "com.myorg.lib" are `.api` and `.internal` also considered to be nullmarked? I feel like this could be a little clearer in the documentation.