Skip to content

Commit 20aabea

Browse files
ileasilenikitinas
authored andcommitted
Fix library resolution bug
1 parent 9dbc096 commit 20aabea

File tree

2 files changed

+8
-8
lines changed
  • jupyter-lib/shared-compiler/src/main/kotlin/org/jetbrains/kotlinx/jupyter/libraries
  • src/test/kotlin/org/jetbrains/kotlinx/jupyter/test

2 files changed

+8
-8
lines changed

jupyter-lib/shared-compiler/src/main/kotlin/org/jetbrains/kotlinx/jupyter/libraries/LibraryResolver.kt

+6-6
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ interface LibraryResolver {
1515

1616
abstract class LibraryDescriptorResolver(private val parent: LibraryResolver? = null) : LibraryResolver {
1717
protected abstract fun tryResolve(reference: LibraryReference): LibraryDefinition?
18-
protected abstract fun save(reference: LibraryReference, descriptor: LibraryDefinition)
18+
protected abstract fun save(reference: LibraryReference, definition: LibraryDefinition)
1919
protected open fun shouldResolve(reference: LibraryReference): Boolean = true
2020

2121
open val cache: Map<LibraryReference, LibraryDefinition>? = null
@@ -29,7 +29,7 @@ abstract class LibraryDescriptorResolver(private val parent: LibraryResolver? =
2929

3030
return processDescriptor(result, mapping)
3131
}
32-
return result
32+
if (result != null) return result
3333
}
3434

3535
val parentResult = parent?.resolve(reference, vars) ?: return null
@@ -92,7 +92,7 @@ class FallbackLibraryResolver : LibraryDescriptorResolver() {
9292
return reference.resolve()
9393
}
9494

95-
override fun save(reference: LibraryReference, descriptor: LibraryDefinition) {
95+
override fun save(reference: LibraryReference, definition: LibraryDefinition) {
9696
// fallback resolver doesn't cache results
9797
}
9898
}
@@ -134,14 +134,14 @@ class LocalLibraryResolver(
134134
return parseLibraryDescriptor(json)
135135
}
136136

137-
override fun save(reference: LibraryReference, library: LibraryDefinition) {
138-
if (library !is LibraryDescriptor) return
137+
override fun save(reference: LibraryReference, definition: LibraryDefinition) {
138+
if (definition !is LibraryDescriptor) return
139139
val dir = pathsToCheck.first()
140140
val file = reference.getFile(dir)
141141
file.parentFile.mkdirs()
142142

143143
val format = Json { prettyPrint = true }
144-
file.writeText(format.encodeToString(library))
144+
file.writeText(format.encodeToString(definition))
145145
}
146146

147147
private fun LibraryReference.getFile(dir: String) = Paths.get(dir, this.key + "." + LibraryDescriptorExt).toFile()

src/test/kotlin/org/jetbrains/kotlinx/jupyter/test/testUtil.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,8 @@ class InMemoryLibraryResolver(parent: LibraryResolver?, initialCache: Map<Librar
9292
return cache[reference]
9393
}
9494

95-
override fun save(reference: LibraryReference, descriptor: LibraryDefinition) {
96-
cache[reference] = descriptor
95+
override fun save(reference: LibraryReference, definition: LibraryDefinition) {
96+
cache[reference] = definition
9797
}
9898
}
9999

0 commit comments

Comments
 (0)