diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index f2c76a354..cffef64b0 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -13,25 +13,13 @@ jobs:
runs-on: ${{matrix.os}}
timeout-minutes: 40
steps:
- - name: Checkout the repo
- uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: DeLaGuardo/setup-graalvm@4.0
+ - uses: actions/checkout@v3.0.0
+ - uses: actions/setup-java@v3.0.0
with:
- graalvm: 21.2.0
- java: java11
- arch: amd64
- - name: Cache gradle
- uses: actions/cache@v2
- with:
- path: |
- ~/.gradle/caches
- ~/.gradle/wrapper
- key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
- restore-keys: |
- ${{ runner.os }}-gradle-
+ java-version: 11
+ distribution: liberica
- name: Cache konan
- uses: actions/cache@v2
+ uses: actions/cache@v3.0.1
with:
path: ~/.konan
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
@@ -39,5 +27,6 @@ jobs:
${{ runner.os }}-gradle-
- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1.0.4
- - name: Build
- run: ./gradlew build --build-cache --no-daemon --stacktrace
+ - uses: gradle/gradle-build-action@v2.1.5
+ with:
+ arguments: build
diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml
index 23ed54357..9b76fd16e 100644
--- a/.github/workflows/pages.yml
+++ b/.github/workflows/pages.yml
@@ -9,20 +9,22 @@ jobs:
runs-on: ubuntu-20.04
timeout-minutes: 40
steps:
- - uses: actions/checkout@v2
- - uses: DeLaGuardo/setup-graalvm@4.0
+ - uses: actions/checkout@v3.0.0
+ - uses: actions/setup-java@v3.0.0
with:
- graalvm: 21.2.0
- java: java11
- arch: amd64
- - uses: actions/cache@v2
+ java-version: 11
+ distribution: liberica
+ - name: Cache konan
+ uses: actions/cache@v3.0.1
with:
- path: ~/.gradle/caches
+ path: ~/.konan
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
restore-keys: |
${{ runner.os }}-gradle-
- - run: ./gradlew dokkaHtmlMultiModule --build-cache --no-daemon --no-parallel --stacktrace
- - uses: JamesIves/github-pages-deploy-action@4.1.0
+ - uses: gradle/gradle-build-action@v2.1.5
+ with:
+ arguments: dokkaHtmlMultiModule --no-parallel
+ - uses: JamesIves/github-pages-deploy-action@4.2.5
with:
branch: gh-pages
folder: build/dokka/htmlMultiModule
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index fa3cb700c..8e9b98dcb 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -14,42 +14,36 @@ jobs:
os: [ macOS-latest, windows-latest ]
runs-on: ${{matrix.os}}
steps:
- - name: Checkout the repo
- uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: DeLaGuardo/setup-graalvm@4.0
+ - uses: actions/checkout@v3.0.0
+ - uses: actions/setup-java@v3.0.0
with:
- graalvm: 21.2.0
- java: java11
- arch: amd64
- - name: Cache gradle
- uses: actions/cache@v2
- with:
- path: |
- ~/.gradle/caches
- ~/.gradle/wrapper
- key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
- restore-keys: |
- ${{ runner.os }}-gradle-
+ java-version: 11
+ distribution: liberica
- name: Cache konan
- uses: actions/cache@v2
+ uses: actions/cache@v3.0.1
with:
path: ~/.konan
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
restore-keys: |
${{ runner.os }}-gradle-
- - name: Gradle Wrapper Validation
- uses: gradle/wrapper-validation-action@v1.0.4
+ - uses: gradle/wrapper-validation-action@v1.0.4
- name: Publish Windows Artifacts
if: matrix.os == 'windows-latest'
- shell: cmd
- run: >
- ./gradlew release --no-daemon --build-cache -Ppublishing.enabled=true
- -Ppublishing.space.user=${{ secrets.SPACE_APP_ID }}
- -Ppublishing.space.token=${{ secrets.SPACE_APP_SECRET }}
+ uses: gradle/gradle-build-action@v2.1.5
+ with:
+ arguments: |
+ releaseAll
+ -Ppublishing.enabled=true
+ -Ppublishing.space.user=${{ secrets.SPACE_APP_ID }}
+ -Ppublishing.space.token=${{ secrets.SPACE_APP_SECRET }}
- name: Publish Mac Artifacts
if: matrix.os == 'macOS-latest'
- run: >
- ./gradlew release --no-daemon --build-cache -Ppublishing.enabled=true -Ppublishing.platform=macosX64
- -Ppublishing.space.user=${{ secrets.SPACE_APP_ID }}
- -Ppublishing.space.token=${{ secrets.SPACE_APP_SECRET }}
+ uses: gradle/gradle-build-action@v2.1.5
+ with:
+ arguments: |
+ releaseMacosX64
+ releaseIosArm64
+ releaseIosX64
+ -Ppublishing.enabled=true
+ -Ppublishing.space.user=${{ secrets.SPACE_APP_ID }}
+ -Ppublishing.space.token=${{ secrets.SPACE_APP_SECRET }}
diff --git a/README.md b/README.md
index 99dd6d00f..aea94f529 100644
--- a/README.md
+++ b/README.md
@@ -52,21 +52,18 @@ module definitions below. The module stability could have the following levels:
## Modules
-
-* ### [benchmarks](benchmarks)
+### [benchmarks](benchmarks)
>
>
> **Maturity**: EXPERIMENTAL
-
-* ### [examples](examples)
+### [examples](examples)
>
>
> **Maturity**: EXPERIMENTAL
-
-* ### [kmath-ast](kmath-ast)
+### [kmath-ast](kmath-ast)
>
>
> **Maturity**: EXPERIMENTAL
@@ -77,15 +74,13 @@ module definitions below. The module stability could have the following levels:
> - [mst-js-codegen](kmath-ast/src/jsMain/kotlin/space/kscience/kmath/estree/estree.kt) : Dynamic MST to JS compiler
> - [rendering](kmath-ast/src/commonMain/kotlin/space/kscience/kmath/ast/rendering/MathRenderer.kt) : Extendable MST rendering
-
-* ### [kmath-commons](kmath-commons)
+### [kmath-commons](kmath-commons)
>
>
> **Maturity**: EXPERIMENTAL
-
-* ### [kmath-complex](kmath-complex)
+### [kmath-complex](kmath-complex)
> Complex numbers and quaternions.
>
> **Maturity**: PROTOTYPE
@@ -94,9 +89,8 @@ module definitions below. The module stability could have the following levels:
> - [complex](kmath-complex/src/commonMain/kotlin/space/kscience/kmath/complex/Complex.kt) : Complex Numbers
> - [quaternion](kmath-complex/src/commonMain/kotlin/space/kscience/kmath/complex/Quaternion.kt) : Quaternions
-
-* ### [kmath-core](kmath-core)
+### [kmath-core](kmath-core)
> Core classes, algebra definitions, basic linear algebra
>
> **Maturity**: DEVELOPMENT
@@ -112,21 +106,18 @@ performance calculations to code generation.
> - [domains](kmath-core/src/commonMain/kotlin/space/kscience/kmath/domains) : Domains
> - [autodiff](kmath-core/src/commonMain/kotlin/space/kscience/kmath/expressions/SimpleAutoDiff.kt) : Automatic differentiation
-
-* ### [kmath-coroutines](kmath-coroutines)
+### [kmath-coroutines](kmath-coroutines)
>
>
> **Maturity**: EXPERIMENTAL
-
-* ### [kmath-dimensions](kmath-dimensions)
+### [kmath-dimensions](kmath-dimensions)
>
>
> **Maturity**: PROTOTYPE
-
-* ### [kmath-ejml](kmath-ejml)
+### [kmath-ejml](kmath-ejml)
>
>
> **Maturity**: PROTOTYPE
@@ -136,9 +127,8 @@ performance calculations to code generation.
> - [ejml-matrix](kmath-ejml/src/main/kotlin/space/kscience/kmath/ejml/EjmlMatrix.kt) : Matrix implementation.
> - [ejml-linear-space](kmath-ejml/src/main/kotlin/space/kscience/kmath/ejml/EjmlLinearSpace.kt) : LinearSpace implementations.
-
-* ### [kmath-for-real](kmath-for-real)
+### [kmath-for-real](kmath-for-real)
> Extension module that should be used to achieve numpy-like behavior.
All operations are specialized to work with `Double` numbers without declaring algebraic contexts.
One can still use generic algebras though.
@@ -150,9 +140,8 @@ One can still use generic algebras though.
> - [DoubleMatrix](kmath-for-real/src/commonMain/kotlin/space/kscience/kmath/real/DoubleMatrix.kt) : Numpy-like operations for 2d real structures
> - [grids](kmath-for-real/src/commonMain/kotlin/space/kscience/kmath/structures/grids.kt) : Uniform grid generators
-
-* ### [kmath-functions](kmath-functions)
+### [kmath-functions](kmath-functions)
>
>
> **Maturity**: EXPERIMENTAL
@@ -164,21 +153,18 @@ One can still use generic algebras though.
> - [spline interpolation](kmath-functions/src/commonMain/kotlin/space/kscience/kmath/interpolation/SplineInterpolator.kt) : Cubic spline XY interpolator.
> - [integration](kmath-functions/#) : Univariate and multivariate quadratures
-
-* ### [kmath-geometry](kmath-geometry)
+### [kmath-geometry](kmath-geometry)
>
>
> **Maturity**: PROTOTYPE
-
-* ### [kmath-histograms](kmath-histograms)
+### [kmath-histograms](kmath-histograms)
>
>
> **Maturity**: PROTOTYPE
-
-* ### [kmath-jafama](kmath-jafama)
+### [kmath-jafama](kmath-jafama)
>
>
> **Maturity**: PROTOTYPE
@@ -186,15 +172,13 @@ One can still use generic algebras though.
> **Features:**
> - [jafama-double](kmath-jafama/src/main/kotlin/space/kscience/kmath/jafama/) : Double ExtendedField implementations based on Jafama
-
-* ### [kmath-jupyter](kmath-jupyter)
+### [kmath-jupyter](kmath-jupyter)
>
>
> **Maturity**: PROTOTYPE
-
-* ### [kmath-kotlingrad](kmath-kotlingrad)
+### [kmath-kotlingrad](kmath-kotlingrad)
>
>
> **Maturity**: EXPERIMENTAL
@@ -203,21 +187,18 @@ One can still use generic algebras though.
> - [differentiable-mst-expression](kmath-kotlingrad/src/main/kotlin/space/kscience/kmath/kotlingrad/KotlingradExpression.kt) : MST based DifferentiableExpression.
> - [scalars-adapters](kmath-kotlingrad/src/main/kotlin/space/kscience/kmath/kotlingrad/scalarsAdapters.kt) : Conversions between Kotlin∇'s SFun and MST
-
-* ### [kmath-memory](kmath-memory)
+### [kmath-memory](kmath-memory)
> An API and basic implementation for arranging objects in a continuous memory block.
>
> **Maturity**: DEVELOPMENT
-
-* ### [kmath-multik](kmath-multik)
+### [kmath-multik](kmath-multik)
>
>
> **Maturity**: PROTOTYPE
-
-* ### [kmath-nd4j](kmath-nd4j)
+### [kmath-nd4j](kmath-nd4j)
>
>
> **Maturity**: EXPERIMENTAL
@@ -227,33 +208,28 @@ One can still use generic algebras though.
> - [nd4jarrayrings](kmath-nd4j/#) : Rings over Nd4jArrayStructure of Int and Long
> - [nd4jarrayfields](kmath-nd4j/#) : Fields over Nd4jArrayStructure of Float and Double
-
-* ### [kmath-optimization](kmath-optimization)
+### [kmath-optimization](kmath-optimization)
>
>
> **Maturity**: EXPERIMENTAL
-
-* ### [kmath-stat](kmath-stat)
+### [kmath-stat](kmath-stat)
>
>
> **Maturity**: EXPERIMENTAL
-
-* ### [kmath-symja](kmath-symja)
+### [kmath-symja](kmath-symja)
>
>
> **Maturity**: PROTOTYPE
-
-* ### [kmath-tensorflow](kmath-tensorflow)
+### [kmath-tensorflow](kmath-tensorflow)
>
>
> **Maturity**: PROTOTYPE
-
-* ### [kmath-tensors](kmath-tensors)
+### [kmath-tensors](kmath-tensors)
>
>
> **Maturity**: PROTOTYPE
@@ -263,13 +239,11 @@ One can still use generic algebras though.
> - [tensor algebra with broadcasting](kmath-tensors/src/commonMain/kotlin/space/kscience/kmath/tensors/core/BroadcastDoubleTensorAlgebra.kt) : Basic linear algebra operations implemented with broadcasting.
> - [linear algebra operations](kmath-tensors/src/commonMain/kotlin/space/kscience/kmath/tensors/api/LinearOpsTensorAlgebra.kt) : Advanced linear algebra operations like LU decomposition, SVD, etc.
-
-* ### [kmath-viktor](kmath-viktor)
+### [kmath-viktor](kmath-viktor)
>
>
> **Maturity**: DEVELOPMENT
-
## Multi-platform support
@@ -308,8 +282,8 @@ repositories {
}
dependencies {
- api("space.kscience:kmath-core:0.3.0-dev-17")
- // api("space.kscience:kmath-core-jvm:0.3.0-dev-17") for jvm-specific version
+ api("space.kscience:kmath-core:$version")
+ // api("space.kscience:kmath-core-jvm:$version") for jvm-specific version
}
```
diff --git a/benchmarks/README.md b/benchmarks/README.md
new file mode 100644
index 000000000..cd8fbafd3
--- /dev/null
+++ b/benchmarks/README.md
@@ -0,0 +1,4 @@
+# Module benchmarks
+
+
+
diff --git a/benchmarks/build.gradle.kts b/benchmarks/build.gradle.kts
index f8d39b9c5..22712816d 100644
--- a/benchmarks/build.gradle.kts
+++ b/benchmarks/build.gradle.kts
@@ -155,7 +155,7 @@ kotlin.sourceSets.all {
}
}
-tasks.withType {
+tasks.withType {
kotlinOptions {
jvmTarget = "11"
freeCompilerArgs = freeCompilerArgs + "-Xjvm-default=all" + "-Xlambdas=indy"
diff --git a/build.gradle.kts b/build.gradle.kts
index ee77f32df..1e703c5e1 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -56,7 +56,7 @@ subprojects {
readme.readmeTemplate = file("docs/templates/README-TEMPLATE.md")
ksciencePublish {
- github("kmath")
+ github("kmath", addToRelease = false)
space()
sonatype()
}
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index b69ebe6cd..fa5142538 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -1,7 +1,7 @@
plugins {
`kotlin-dsl`
`version-catalog`
- alias(npmlibs.plugins.kotlin.plugin.serialization)
+ alias(miptNpmLibs.plugins.kotlin.plugin.serialization)
}
java.targetCompatibility = JavaVersion.VERSION_11
@@ -14,8 +14,8 @@ repositories {
}
val toolsVersion: String by extra
-val kotlinVersion = npmlibs.versions.kotlin.asProvider().get()
-val benchmarksVersion = npmlibs.versions.kotlinx.benchmark.get()
+val kotlinVersion = miptNpmLibs.versions.kotlin.asProvider().get()
+val benchmarksVersion = miptNpmLibs.versions.kotlinx.benchmark.get()
dependencies {
api("ru.mipt.npm:gradle-tools:$toolsVersion")
@@ -23,7 +23,7 @@ dependencies {
api("org.jetbrains.kotlinx:kotlinx-benchmark-plugin:$benchmarksVersion")
api("org.jetbrains.kotlin:kotlin-allopen:$kotlinVersion")
//to be used inside build-script only
- implementation(npmlibs.kotlinx.serialization.json)
+ implementation(miptNpmLibs.kotlinx.serialization.json)
}
kotlin.sourceSets.all {
diff --git a/buildSrc/gradle.properties b/buildSrc/gradle.properties
index 713f9bcd9..a0b05e812 100644
--- a/buildSrc/gradle.properties
+++ b/buildSrc/gradle.properties
@@ -4,5 +4,4 @@
#
kotlin.code.style=official
-
toolsVersion=0.11.2-kotlin-1.6.10
diff --git a/buildSrc/settings.gradle.kts b/buildSrc/settings.gradle.kts
index 9c5550602..7c1df133d 100644
--- a/buildSrc/settings.gradle.kts
+++ b/buildSrc/settings.gradle.kts
@@ -4,10 +4,8 @@
*/
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
-enableFeaturePreview("VERSION_CATALOGS")
dependencyResolutionManagement {
-
val toolsVersion: String by extra
repositories {
@@ -18,8 +16,8 @@ dependencyResolutionManagement {
}
versionCatalogs {
- create("npmlibs") {
+ create("miptNpmLibs") {
from("ru.mipt.npm:version-catalog:$toolsVersion")
}
}
-}
\ No newline at end of file
+}
diff --git a/docs/templates/README-TEMPLATE.md b/docs/templates/README-TEMPLATE.md
index b0c418697..4ffa9e75f 100644
--- a/docs/templates/README-TEMPLATE.md
+++ b/docs/templates/README-TEMPLATE.md
@@ -52,7 +52,7 @@ module definitions below. The module stability could have the following levels:
## Modules
-$modules
+${modules}
## Multi-platform support
diff --git a/examples/README.md b/examples/README.md
new file mode 100644
index 000000000..d4e1c5289
--- /dev/null
+++ b/examples/README.md
@@ -0,0 +1,4 @@
+# Module examples
+
+
+
diff --git a/examples/build.gradle.kts b/examples/build.gradle.kts
index 36715cd78..60f8f5aed 100644
--- a/examples/build.gradle.kts
+++ b/examples/build.gradle.kts
@@ -58,7 +58,7 @@ kotlin.sourceSets.all {
}
}
-tasks.withType {
+tasks.withType {
kotlinOptions {
jvmTarget = "11"
freeCompilerArgs = freeCompilerArgs + "-Xjvm-default=all" + "-Xopt-in=kotlin.RequiresOptIn" + "-Xlambdas=indy"
diff --git a/gradle.properties b/gradle.properties
index 7d9628621..a7cd2f876 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -2,13 +2,10 @@
# Copyright 2018-2021 KMath contributors.
# Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
#
-
kotlin.code.style=official
+kotlin.jupyter.add.scanner=false
kotlin.mpp.stability.nowarn=true
kotlin.native.ignoreDisabledTargets=true
-
-kotlin.jupyter.add.scanner=false
-
org.gradle.configureondemand=true
-org.gradle.parallel=true
org.gradle.jvmargs=-XX:MaxMetaspaceSize=1G
+org.gradle.parallel=true
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index 7454180f2..41d9927a4 100644
Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 00e33edef..aa991fcea 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/kmath-ast/README.md b/kmath-ast/README.md
index bedf17486..4872a3a26 100644
--- a/kmath-ast/README.md
+++ b/kmath-ast/README.md
@@ -10,17 +10,17 @@ Extensions to MST API: transformations, dynamic compilation and visualization.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-ast:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-ast:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-ast:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-ast:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -31,7 +31,7 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-ast:0.3.0-dev-17")
+ implementation("space.kscience:kmath-ast:0.3.0-dev-20")
}
```
@@ -66,20 +66,19 @@ For example, the following code:
```kotlin
import space.kscience.kmath.asm.compileToExpression
-import space.kscience.kmath.complex.ComplexField
+import space.kscience.kmath.operations.DoubleField
-"x+2".parseMath().compileToExpression(ComplexField)
+"x^3-x+3".parseMath().compileToExpression(DoubleField)
```
… leads to generation of bytecode, which can be decompiled to the following Java class:
```java
-import java.util.Map;
-import kotlin.jvm.functions.Function2;
-import space.kscience.kmath.asm.internal.MapIntrinsics;
-import space.kscience.kmath.complex.Complex;
-import space.kscience.kmath.expressions.Expression;
-import space.kscience.kmath.expressions.Symbol;
+import java.util.*;
+import kotlin.jvm.functions.*;
+import space.kscience.kmath.asm.internal.*;
+import space.kscience.kmath.complex.*;
+import space.kscience.kmath.expressions.*;
public final class CompiledExpression_45045_0 implements Expression {
private final Object[] constants;
@@ -91,6 +90,32 @@ public final class CompiledExpression_45045_0 implements Expression {
}
```
+For `LongRing`, `IntRing`, and `DoubleField` specialization is supported for better performance:
+
+```java
+import java.util.*;
+import space.kscience.kmath.asm.internal.*;
+import space.kscience.kmath.expressions.*;
+
+public final class CompiledExpression_-386104628_0 implements DoubleExpression {
+ private final SymbolIndexer indexer;
+
+ public SymbolIndexer getIndexer() {
+ return this.indexer;
+ }
+
+ public double invoke(double[] arguments) {
+ double var2 = arguments[0];
+ return Math.pow(var2, 3.0D) - var2 + 3.0D;
+ }
+
+ public final Double invoke(Map arguments) {
+ double var2 = ((Double)MapIntrinsics.getOrFail(arguments, "x")).doubleValue();
+ return Math.pow(var2, 3.0D) - var2 + 3.0D;
+ }
+}
+```
+
Setting JVM system property `space.kscience.kmath.ast.dump.generated.classes` to `1` makes the translator dump class files to program's working directory, so they can be reviewed manually.
#### Limitations
@@ -134,9 +159,9 @@ MstField { x + 2 }.compileToExpression(DoubleField)
An example of emitted Wasm IR in the form of WAT:
```lisp
-(func $executable (param $0 f64) (result f64)
+(func \$executable (param \$0 f64) (result f64)
(f64.add
- (local.get $0)
+ (local.get \$0)
(f64.const 2)
)
)
diff --git a/kmath-commons/README.md b/kmath-commons/README.md
new file mode 100644
index 000000000..a17a39205
--- /dev/null
+++ b/kmath-commons/README.md
@@ -0,0 +1,32 @@
+# Module kmath-commons
+
+Commons math binding for kmath
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-commons:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-commons:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-commons:0.3.0-dev-20")
+}
+```
diff --git a/kmath-complex/README.md b/kmath-complex/README.md
index 92f2435ba..b55ce0fea 100644
--- a/kmath-complex/README.md
+++ b/kmath-complex/README.md
@@ -8,17 +8,17 @@ Complex and hypercomplex number systems in KMath.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-complex:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-complex:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-complex:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-complex:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -29,6 +29,6 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-complex:0.3.0-dev-17")
+ implementation("space.kscience:kmath-complex:0.3.0-dev-20")
}
```
diff --git a/kmath-core/README.md b/kmath-core/README.md
index e765ad50c..31965ef92 100644
--- a/kmath-core/README.md
+++ b/kmath-core/README.md
@@ -15,17 +15,17 @@ performance calculations to code generation.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-core:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-core:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-core:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-core:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -36,6 +36,6 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-core:0.3.0-dev-17")
+ implementation("space.kscience:kmath-core:0.3.0-dev-20")
}
```
diff --git a/kmath-coroutines/README.md b/kmath-coroutines/README.md
new file mode 100644
index 000000000..0d83a6c60
--- /dev/null
+++ b/kmath-coroutines/README.md
@@ -0,0 +1,32 @@
+# Module kmath-coroutines
+
+
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-coroutines:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-coroutines:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-coroutines:0.3.0-dev-20")
+}
+```
diff --git a/kmath-dimensions/README.md b/kmath-dimensions/README.md
new file mode 100644
index 000000000..52097cf40
--- /dev/null
+++ b/kmath-dimensions/README.md
@@ -0,0 +1,32 @@
+# Module kmath-dimensions
+
+A proof of concept module for adding type-safe dimensions to structures
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-dimensions:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-dimensions:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-dimensions:0.3.0-dev-20")
+}
+```
diff --git a/kmath-ejml/README.md b/kmath-ejml/README.md
index fcd092bf1..3fe6d9e1a 100644
--- a/kmath-ejml/README.md
+++ b/kmath-ejml/README.md
@@ -9,17 +9,17 @@ EJML based linear algebra implementation.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-ejml:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-ejml:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-ejml:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-ejml:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -30,6 +30,6 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-ejml:0.3.0-dev-17")
+ implementation("space.kscience:kmath-ejml:0.3.0-dev-20")
}
```
diff --git a/kmath-for-real/README.md b/kmath-for-real/README.md
index 938327612..197190dcd 100644
--- a/kmath-for-real/README.md
+++ b/kmath-for-real/README.md
@@ -9,17 +9,17 @@ Specialization of KMath APIs for Double numbers.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-for-real:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-for-real:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-for-real:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-for-real:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -30,6 +30,6 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-for-real:0.3.0-dev-17")
+ implementation("space.kscience:kmath-for-real:0.3.0-dev-20")
}
```
diff --git a/kmath-functions/README.md b/kmath-functions/README.md
index 3d4beee47..6379ad0b5 100644
--- a/kmath-functions/README.md
+++ b/kmath-functions/README.md
@@ -11,17 +11,17 @@ Functions and interpolations.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-functions:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-functions:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-functions:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-functions:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -32,6 +32,6 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-functions:0.3.0-dev-17")
+ implementation("space.kscience:kmath-functions:0.3.0-dev-20")
}
```
diff --git a/kmath-geometry/README.md b/kmath-geometry/README.md
new file mode 100644
index 000000000..6b8fb25a0
--- /dev/null
+++ b/kmath-geometry/README.md
@@ -0,0 +1,32 @@
+# Module kmath-geometry
+
+
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-geometry:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-geometry:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-geometry:0.3.0-dev-20")
+}
+```
diff --git a/kmath-histograms/README.md b/kmath-histograms/README.md
new file mode 100644
index 000000000..0b8a632d6
--- /dev/null
+++ b/kmath-histograms/README.md
@@ -0,0 +1,32 @@
+# Module kmath-histograms
+
+
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-histograms:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-histograms:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-histograms:0.3.0-dev-20")
+}
+```
diff --git a/kmath-jafama/README.md b/kmath-jafama/README.md
index 760244751..a274b3d88 100644
--- a/kmath-jafama/README.md
+++ b/kmath-jafama/README.md
@@ -7,17 +7,17 @@ Integration with [Jafama](https://github.com/jeffhain/jafama).
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-jafama:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-jafama:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-jafama:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-jafama:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -28,7 +28,7 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-jafama:0.3.0-dev-17")
+ implementation("space.kscience:kmath-jafama:0.3.0-dev-20")
}
```
diff --git a/kmath-jupyter/README.md b/kmath-jupyter/README.md
new file mode 100644
index 000000000..8014b969d
--- /dev/null
+++ b/kmath-jupyter/README.md
@@ -0,0 +1,32 @@
+# Module kmath-jupyter
+
+
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-jupyter:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-jupyter:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-jupyter:0.3.0-dev-20")
+}
+```
diff --git a/kmath-kotlingrad/README.md b/kmath-kotlingrad/README.md
index 588ccb9b4..08c913090 100644
--- a/kmath-kotlingrad/README.md
+++ b/kmath-kotlingrad/README.md
@@ -8,17 +8,17 @@
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-kotlingrad:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-kotlingrad:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-kotlingrad:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-kotlingrad:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -29,6 +29,6 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-kotlingrad:0.3.0-dev-17")
+ implementation("space.kscience:kmath-kotlingrad:0.3.0-dev-20")
}
```
diff --git a/kmath-memory/README.md b/kmath-memory/README.md
new file mode 100644
index 000000000..d37087a66
--- /dev/null
+++ b/kmath-memory/README.md
@@ -0,0 +1,32 @@
+# Module kmath-memory
+
+
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-memory:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-memory:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-memory:0.3.0-dev-20")
+}
+```
diff --git a/kmath-multik/README.md b/kmath-multik/README.md
new file mode 100644
index 000000000..167445f52
--- /dev/null
+++ b/kmath-multik/README.md
@@ -0,0 +1,32 @@
+# Module kmath-multik
+
+JetBrains Multik connector
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-multik:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-multik:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-multik:0.3.0-dev-20")
+}
+```
diff --git a/kmath-nd4j/README.md b/kmath-nd4j/README.md
index 7ca9cd4fd..225de18e9 100644
--- a/kmath-nd4j/README.md
+++ b/kmath-nd4j/README.md
@@ -9,17 +9,17 @@ ND4J based implementations of KMath abstractions.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-nd4j:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-nd4j:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-nd4j:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-nd4j:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -30,7 +30,7 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-nd4j:0.3.0-dev-17")
+ implementation("space.kscience:kmath-nd4j:0.3.0-dev-20")
}
```
diff --git a/kmath-optimization/README.md b/kmath-optimization/README.md
new file mode 100644
index 000000000..137975c90
--- /dev/null
+++ b/kmath-optimization/README.md
@@ -0,0 +1,32 @@
+# Module kmath-optimization
+
+
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-optimization:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-optimization:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-optimization:0.3.0-dev-20")
+}
+```
diff --git a/kmath-stat/README.md b/kmath-stat/README.md
new file mode 100644
index 000000000..762e61237
--- /dev/null
+++ b/kmath-stat/README.md
@@ -0,0 +1,32 @@
+# Module kmath-stat
+
+
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-stat:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-stat:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-stat:0.3.0-dev-20")
+}
+```
diff --git a/kmath-symja/README.md b/kmath-symja/README.md
new file mode 100644
index 000000000..e3c717cff
--- /dev/null
+++ b/kmath-symja/README.md
@@ -0,0 +1,32 @@
+# Module kmath-symja
+
+Symja integration module
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-symja:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-symja:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-symja:0.3.0-dev-20")
+}
+```
diff --git a/kmath-tensorflow/README.md b/kmath-tensorflow/README.md
new file mode 100644
index 000000000..f1dfa0202
--- /dev/null
+++ b/kmath-tensorflow/README.md
@@ -0,0 +1,32 @@
+# Module kmath-tensorflow
+
+Google tensorflow connector
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-tensorflow:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-tensorflow:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-tensorflow:0.3.0-dev-20")
+}
+```
diff --git a/kmath-tensors/README.md b/kmath-tensors/README.md
index 42ce91336..3d7dfd1fb 100644
--- a/kmath-tensors/README.md
+++ b/kmath-tensors/README.md
@@ -9,17 +9,17 @@ Common linear algebra operations on tensors.
## Artifact:
-The Maven coordinates of this project are `space.kscience:kmath-tensors:0.3.0-dev-17`.
+The Maven coordinates of this project are `space.kscience:kmath-tensors:0.3.0-dev-20`.
-**Gradle:**
-```gradle
+**Gradle Groovy:**
+```groovy
repositories {
maven { url 'https://repo.kotlin.link' }
mavenCentral()
}
dependencies {
- implementation 'space.kscience:kmath-tensors:0.3.0-dev-17'
+ implementation 'space.kscience:kmath-tensors:0.3.0-dev-20'
}
```
**Gradle Kotlin DSL:**
@@ -30,6 +30,6 @@ repositories {
}
dependencies {
- implementation("space.kscience:kmath-tensors:0.3.0-dev-17")
+ implementation("space.kscience:kmath-tensors:0.3.0-dev-20")
}
```
diff --git a/kmath-viktor/README.md b/kmath-viktor/README.md
new file mode 100644
index 000000000..229d4dcd4
--- /dev/null
+++ b/kmath-viktor/README.md
@@ -0,0 +1,32 @@
+# Module kmath-viktor
+
+Binding for https://github.com/JetBrains-Research/viktor
+
+## Usage
+
+## Artifact:
+
+The Maven coordinates of this project are `space.kscience:kmath-viktor:0.3.0-dev-20`.
+
+**Gradle Groovy:**
+```groovy
+repositories {
+ maven { url 'https://repo.kotlin.link' }
+ mavenCentral()
+}
+
+dependencies {
+ implementation 'space.kscience:kmath-viktor:0.3.0-dev-20'
+}
+```
+**Gradle Kotlin DSL:**
+```kotlin
+repositories {
+ maven("https://repo.kotlin.link")
+ mavenCentral()
+}
+
+dependencies {
+ implementation("space.kscience:kmath-viktor:0.3.0-dev-20")
+}
+```
diff --git a/settings.gradle.kts b/settings.gradle.kts
index a8b473fee..b3c275810 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -1,8 +1,6 @@
rootProject.name = "kmath"
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
-enableFeaturePreview("VERSION_CATALOGS")
-
include(
":kmath-memory",
":kmath-complex",