Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/topics/FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -195,4 +195,4 @@ workaround, parse the file manually and construct the complex array in code.
<category ref="ext">
<a href="community-and-contribution.md" summary="Get help and contribute."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/IO-operations.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,4 +174,4 @@ The inner array type matches the element dtype.
<category ref="user-guide">
<a href="input-and-output.md" summary="User guide for I/O with practical examples."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/array-creation.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,4 @@ They are grouped by usage pattern:

| Function | Description |
|-----------------|-----------------------------------------------------|
| [](meshgrid.md) | Coordinate matrices from two 1D coordinate vectors. |
| [](meshgrid.md) | Coordinate matrices from two 1D coordinate vectors. |
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/array-objects.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ This section documents the core array object model in Multik.
* **[](dimension.md)** — compile-time dimension markers `D1`–`D4` and `DN`.
* **[](indexing-routines.md)** — `Slice`, `RInt`, `ReadableView`, and the `slice`/`view` helpers.
* **[](iterating.md)** — `NDArrayIterator`, `MultiIndexProgression`, and collection-style operations.
* **[](IO-operations.md)** — file I/O (CSV, NPY, NPZ) on the JVM and in-memory conversions on all platforms.
* **[](IO-operations.md)** — file I/O (CSV, NPY, NPZ) on the JVM and in-memory conversions on all platforms.
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/array-operations.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,4 @@ See [](universal-operations.md) for the full list.
<a href="comparison-operations.md" summary="Element-wise minimum and maximum."/>
<a href="universal-operations.md" summary="Collection-style operations — map, filter, fold, etc."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/constants.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,4 +51,4 @@ val exponential = mk.d1array(5) { E.pow(it.toDouble()) }
<a href="scalars.md" summary="Supported numeric and complex element types."/>
<a href="array-creation.md" summary="Functions for creating NDArrays."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/correlation-analysis.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ NDArrays, including Pearson and Spearman correlation.
<a href="descriptive-statistics.md" summary="Mean, median, and weighted average."/>
<a href="statistics.md" summary="Overview of all statistics functions."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/descriptive-statistics.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,4 +172,4 @@ mk.stat.average(values, weights) // 3.25
<a href="mathematical.md" summary="Mathematical functions via mk.math."/>
<a href="arithmetic-operations.md" summary="Element-wise arithmetic operations."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/eigenvalues-and-eigenvectors.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,4 +113,4 @@ val eigenvalues = mk.linalg.eigVals(a)
<a href="matrix-operations.md" summary="inv, pow, QR, PLU, SVD decompositions."/>
<a href="solving-systems-of-equations.md" summary="Solving linear systems Ax = b."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/hypothesis-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ for NDArrays.
<a href="descriptive-statistics.md" summary="Mean, median, and weighted average."/>
<a href="statistics.md" summary="Overview of all statistics functions."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/linear-algebra.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,4 +72,4 @@ val x = mk.linalg.solve(a, mk.ndarray(mk[1.0, 2.0]))
<a href="matrix-norms.md" summary="Matrix and vector norms."/>
<a href="mathematical.md" summary="Mathematical functions via mk.math."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/mathematical.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,4 +196,4 @@ abs(a) // [3, 1, 0, 2, 5]
<a href="linear-algebra.md" summary="Linear algebra operations via mk.linalg."/>
<a href="statistics.md" summary="Statistical functions via mk.stat."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/matrix-norms.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,4 +80,4 @@ mk.linalg.norm(v) // Frobenius: sqrt(9+16) = 5.0
<a href="matrix-operations.md" summary="inv, pow, QR, PLU, SVD decompositions."/>
<a href="dot.md" summary="Dot product operations."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/matrix-operations.md
Original file line number Diff line number Diff line change
Expand Up @@ -231,4 +231,4 @@ fun main() {
<a href="solving-systems-of-equations.md" summary="Solving linear systems Ax = b."/>
<a href="matrix-norms.md" summary="Matrix and vector norms."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/ndarray-class.md
Original file line number Diff line number Diff line change
Expand Up @@ -205,4 +205,4 @@ All operands must have the same shape on every axis except the concatenation axi
<a href="dimension.md" summary="Compile-time dimension markers D1–D4 and DN."/>
<a href="indexing-routines.md" summary="Slice, RInt, and view helpers."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/probability-distributions.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@ of common probability distributions (normal, uniform, binomial, etc.).
<a href="descriptive-statistics.md" summary="Mean, median, and weighted average."/>
<a href="statistics.md" summary="Overview of all statistics functions."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/solving-systems-of-equations.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,4 +96,4 @@ val x = mk.linalg.solve(a, b)
<a href="eigenvalues-and-eigenvectors.md" summary="Eigenvalue and eigenvector computation."/>
<a href="matrix-norms.md" summary="Matrix and vector norms."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/statistics.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,4 @@ mk.stat.average(a) // 3.0 (uniform weights)
<a href="mathematical.md" summary="Mathematical functions via mk.math."/>
<a href="linear-algebra.md" summary="Linear algebra operations via mk.linalg."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/sum.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,4 @@ b.sum() // 7.0
<a href="count.md" summary="Count elements."/>
<a href="max.md" summary="Find the largest element."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/apiDocs/universal-operations.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,4 +116,4 @@ conventions. They provide familiar APIs for transforming, filtering, aggregating
<a href="logical-operations.md" summary="Element-wise and, or operations."/>
<a href="iterating.md" summary="NDArrayIterator and MultiIndexProgression."/>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion docs/topics/gettingStarted/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,4 +134,4 @@ To delve deeper into Kotlin Notebooks, we recommend you read the dedicated post
Datalore
</a>
</category>
</seealso>
</seealso>
2 changes: 1 addition & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[versions]
kotlin = "2.3.20"
dokka = "2.2.0"
korro = "0.1.6"
korro = "0.2.0"
bcv = "0.18.1"
maven-publish = "0.36.0"
commons-csv = "1.14.1"
Expand Down
27 changes: 16 additions & 11 deletions multik-core/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,23 @@ kotlin {
}

korro {
docs = fileTree(rootProject.rootDir) {
include("README.md")
include("docs/topics/*.md")
include("docs/topics/gettingStarted/*md")
include("docs/topics/userGuide/*md")
include("docs/topics/apiDocs/*md")
docs {
from(fileTree(rootProject.rootDir) {
include("README.md")
include("docs/topics/*.md")
include("docs/topics/gettingStarted/*md")
include("docs/topics/userGuide/*md")
include("docs/topics/apiDocs/*md")
})
baseDir = rootProject.rootDir
}

samples = fileTree(project.projectDir) {
include("src/commonTest/kotlin/samples/*.kt")
include("src/commonTest/kotlin/samples/docs/*.kt")
include("src/commonTest/kotlin/samples/docs/userGuide/*.kt")
include("src/commonTest/kotlin/samples/docs/apiDocs/*.kt")
samples {
from(fileTree(project.projectDir) {
include("src/commonTest/kotlin/samples/*.kt")
include("src/commonTest/kotlin/samples/docs/*.kt")
include("src/commonTest/kotlin/samples/docs/userGuide/*.kt")
include("src/commonTest/kotlin/samples/docs/apiDocs/*.kt")
})
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,13 @@ class PerformanceAndOptimization {
val a = mk.ndarray(mk[mk[1, 2], mk[3, 4]])
val v = a[0] // view

assertFalse(v.consistent)
println("v.consistent is ${v.consistent}") // false

val c = v.deepCopy()
assertTrue(c.consistent)
println("c.consistent is ${c.consistent}") // true
Comment on lines +20 to +23
Copy link

Copilot AI Apr 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The // false / // true output comments don’t match what these println statements actually print (they print v.consistent is false and c.consistent is true). Update the expected-output comments to match, or print only the boolean values (e.g., println(v.consistent)) so the sample output stays consistent with other docs samples.

Copilot uses AI. Check for mistakes.
// SampleEnd
assertFalse(v.consistent)
assertTrue(c.consistent)
}

@Test
Expand Down