pkl / PR 1180

Fix cyclic dependencies bug

apple/pkl#1180 openmixed

+143/−9lines
18files
10comments
2025-08-20opened
-merged

What it touches

test: 10 main: 8

Modules: pkl-core (18)

Architectural impact (arcade-agent diff_impact)

7files mapped to the graph
178entities in those files
Corecomponents
1970entities within 3 hops downstream

Most depended-upon changed entities

EntityDependents
org.pkl.core.runtime.VmTyped205
org.pkl.core.runtime.VmLanguage162
org.pkl.core.ast.builder.AstBuilder94
org.pkl.core.runtime.ModuleInfo19
org.pkl.core.ast.type.ResolveDeclaredTypeNode2

Computed against the current default branch, not the PR base commit; files renamed or deleted since then are unmatched. Downstream counts are a reverse-dependency closure to depth 3 and over-approximate real blast radius.

Files

mainpkl-core/src/main/java/org/pkl/core/ast/builder/AstBuilder.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/literal/AmendModuleNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/ClassNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/type/ResolveDeclaredTypeNode.java
mainpkl-core/src/main/java/org/pkl/core/runtime/ModuleInfo.java
mainpkl-core/src/main/java/org/pkl/core/runtime/VmLanguage.java
mainpkl-core/src/main/java/org/pkl/core/runtime/VmTyped.java
mainpkl-core/src/main/resources/org/pkl/core/errorMessages.properties
testpkl-core/src/test/files/LanguageSnippetTests/input-helper/cycles/Foo.pkl
testpkl-core/src/test/files/LanguageSnippetTests/input-helper/cycles/Qux.pkl
testpkl-core/src/test/files/LanguageSnippetTests/input-helper/cycles/amendsFoo.pkl
testpkl-core/src/test/files/LanguageSnippetTests/input-helper/cycles/amendsFooLv2.pkl
testpkl-core/src/test/files/LanguageSnippetTests/input/errors/cyclicalAmendsType.pkl
testpkl-core/src/test/files/LanguageSnippetTests/input/modules/cycles.pkl
testpkl-core/src/test/files/LanguageSnippetTests/input/modules/cycles2.pkl
testpkl-core/src/test/files/LanguageSnippetTests/output/errors/cyclicalAmendsType.err
testpkl-core/src/test/files/LanguageSnippetTests/output/modules/cycles.pcf
testpkl-core/src/test/files/LanguageSnippetTests/output/modules/cycles2.pcf