Added pkg module key factory and resource reader to project loading (#1547)

This change allows `PklProject` files, usually loaded via the `Project`
static methods, to have references to external packages via `package://`
URIs.

This is helpful for centralizing and sharing common package
configuration via packages.
This commit is contained in:
Vladimir Matveev
2026-04-29 16:45:14 -07:00
committed by GitHub
parent d3a3a14aaa
commit df063f17f3
@@ -89,8 +89,10 @@ public final class Project {
.setStackFrameTransformer(stackFrameTransformer)
.addModuleKeyFactory(ModuleKeyFactories.standardLibrary)
.addModuleKeyFactory(ModuleKeyFactories.file)
.addModuleKeyFactory(ModuleKeyFactories.pkg)
.addResourceReader(ResourceReaders.environmentVariable())
.addResourceReader(ResourceReaders.file())
.addResourceReader(ResourceReaders.pkg())
.addEnvironmentVariables(envVars)
.setTimeout(timeout)
.setPowerAssertionsEnabled(powerAssertionsEnabled)
@@ -238,9 +240,11 @@ public final class Project {
.setStackFrameTransformer(StackFrameTransformers.defaultTransformer)
.addModuleKeyFactory(ModuleKeyFactories.standardLibrary)
.addModuleKeyFactory(ModuleKeyFactories.file)
.addModuleKeyFactory(ModuleKeyFactories.pkg)
.addModuleKeyFactory(ModuleKeyFactories.classPath(Project.class.getClassLoader()))
.addResourceReader(ResourceReaders.environmentVariable())
.addResourceReader(ResourceReaders.file());
.addResourceReader(ResourceReaders.file())
.addResourceReader(ResourceReaders.pkg());
}
private static DeclaredDependencies parseDependencies(