diff --git a/CHANGELOG.md b/CHANGELOG.md index 86a0a625..e32cc6bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,10 +3,26 @@ ## Unreleased ### Added + +### Changed + +### Deprecated + +### Removed + +### Fixed + +### Security + +## 0.7.0 - 2023-11-26 + +### Added + - Obligatory `type: KType` and `descriptor` property for `MetaConverters` - Added separate `Meta`, `SealedMeta` and `ObservableMutableMeta` builders. ### Changed + - Meta converter `metaToObject` returns a non-nullable type. Additional method `metaToObjectOrNull` for nullable return. - Kotlin 1.9.20. - Migrated from ktor-io to kotlinx-io. @@ -15,24 +31,24 @@ - Remove unnecessary confusion with `get`/`getMeta` by removing `getMeta` from the interface. ### Deprecated + - `String.parseValue` is replaced with `Value.parse` -### Removed - ### Fixed -- Memory leak in SealedMeta builder -### Security +- Memory leak in SealedMeta builder ## 0.6.2 - 2023-07-29 ### Changed + - Meta to Json serializer now serializes a single item with index as an array. It is important for plotly integration. - Meta to Json serializes Meta without children a value as literal or array instead of an object with `@value` field. ## 0.6.1 - 2023-03-31 ### Added + - File cache for workspace - Smart task metadata transformation for workspace - Add `readOnly` property to descriptors @@ -42,6 +58,7 @@ - More fine-grained types in Action builders. ### Changed + - `Name::replaceLast` API - `PluginFactory` no longer requires plugin class - Collection toMap -> associateByName @@ -63,9 +80,11 @@ - Separate interfaces for `IOReader` and `IOWriter` ### Deprecated + - Context.fetch -> Context.request ### Fixed + - `readDataDirectory` does not split names with dots - Front matter reader does not crash on non-UTF files - Meta file name in readMeta from directory @@ -74,10 +93,12 @@ ## 0.5.2 ### Added + - Yaml plugin - Partial fix to #53 ### Fixed + - MutableMetaImpl attachment and checks - Listeners in observable meta are replaced by lists - JS number comparison bug. @@ -85,9 +106,11 @@ ## 0.5.0 ### Added + - Experimental `listOfSpec` delegate. ### Changed + - **API breaking** Config is deprecated, use `ObservableMeta` instead. - **API breaking** Descriptor no has a member property `defaultValue` instead of `defaultItem()` extension. It caches default value state on the first call. It is done because computing default on each call is too expensive. - Kotlin 1.5.10 @@ -98,24 +121,28 @@ - **API breaking** Configurable`config` changed to `meta` ### Removed + - `Config` - Public PluginManager mutability - Tables and tables-exposed moved to the separate project `tables.kt` - BinaryMetaFormat. Use CBOR encoding instead ### Fixed + - Proper json array index treatment. - Proper json index for single-value array. ## 0.4.0 ### Added + - LogManager plugin - dataforge-context API dependency on SLF4j - Context `withEnv` and `fetch` methods to manipulate plugins without changing plugins after creation. - Split `ItemDescriptor` into builder and read-only part ### Changed + - Kotlin-logging moved from common to JVM and JS. Replaced by console for native. - Package changed to `space.kscience` - Scheme made observable @@ -125,18 +152,22 @@ - Refactor loggers ### Deprecated + - Direct use of PluginManager ### Removed + - Common dependency on Kotlin-logging - Kotlinx-io fork dependency. Replaced by Ktor-io. ### Fixed + - Scheme properties properly handle children property change. ## 0.3.0 ### Added + - Yaml meta format based on yaml.kt - `Path` builders - Special ValueType for lists @@ -144,6 +175,7 @@ - Multiplatform yaml meta ### Changed + - `ListValue` and `DoubleArrayValue` implement `Iterable`. - Changed the logic of `Value::isList` to check for type instead of size - `Meta{}` builder made inline @@ -160,6 +192,7 @@ ## 0.2.0 ### Changed + - Context content resolution refactor - Kotlin 1.4.10 (build tools 0.6.0) - Empty query in Name is null instead of "" @@ -169,13 +202,16 @@ - Configurable is no longer MutableItemProvider. All functionality moved to Scheme. ### Deprecated + - Context activation API - TextRenderer ### Removed + - Functional server prototype - `dataforge-output` module ### Fixed + - Global context CoroutineScope resolution - Library mode compliance diff --git a/README.md b/README.md index a973a25f..da910804 100644 --- a/README.md +++ b/README.md @@ -5,32 +5,29 @@ ### [dataforge-context](dataforge-context) -> +> Context and provider definitions > > **Maturity**: DEVELOPMENT ### [dataforge-data](dataforge-data) -> > > **Maturity**: EXPERIMENTAL ### [dataforge-io](dataforge-io) -> +> IO module > -> **Maturity**: PROTOTYPE +> **Maturity**: EXPERIMENTAL ### [dataforge-meta](dataforge-meta) -> +> Meta definition and basic operations on meta > > **Maturity**: DEVELOPMENT ### [dataforge-scripting](dataforge-scripting) -> > > **Maturity**: PROTOTYPE ### [dataforge-workspace](dataforge-workspace) -> > > **Maturity**: EXPERIMENTAL diff --git a/dataforge-context/README.md b/dataforge-context/README.md index 06e06f3a..905171b1 100644 --- a/dataforge-context/README.md +++ b/dataforge-context/README.md @@ -6,27 +6,18 @@ Context and provider definitions ## Artifact: -The Maven coordinates of this project are `space.kscience:dataforge-context:0.6.2-dev-2`. +The Maven coordinates of this project are `space.kscience:dataforge-context:0.7.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:dataforge-context:0.6.2-dev-2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { maven("https://repo.kotlin.link") + //uncomment to access development builds + //maven("https://maven.pkg.jetbrains.space/spc/p/sci/dev") mavenCentral() } dependencies { - implementation("space.kscience:dataforge-context:0.6.2-dev-2") + implementation("space.kscience:dataforge-context:0.7.0") } ``` diff --git a/dataforge-data/README.md b/dataforge-data/README.md index 3b74b2de..5935af6e 100644 --- a/dataforge-data/README.md +++ b/dataforge-data/README.md @@ -6,27 +6,18 @@ ## Artifact: -The Maven coordinates of this project are `space.kscience:dataforge-data:0.6.2-dev-2`. +The Maven coordinates of this project are `space.kscience:dataforge-data:0.7.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:dataforge-data:0.6.2-dev-2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { maven("https://repo.kotlin.link") + //uncomment to access development builds + //maven("https://maven.pkg.jetbrains.space/spc/p/sci/dev") mavenCentral() } dependencies { - implementation("space.kscience:dataforge-data:0.6.2-dev-2") + implementation("space.kscience:dataforge-data:0.7.0") } ``` diff --git a/dataforge-io/README.md b/dataforge-io/README.md index 6ce35db3..ec431a04 100644 --- a/dataforge-io/README.md +++ b/dataforge-io/README.md @@ -6,27 +6,18 @@ IO module ## Artifact: -The Maven coordinates of this project are `space.kscience:dataforge-io:0.6.2-dev-2`. +The Maven coordinates of this project are `space.kscience:dataforge-io:0.7.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:dataforge-io:0.6.2-dev-2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { maven("https://repo.kotlin.link") + //uncomment to access development builds + //maven("https://maven.pkg.jetbrains.space/spc/p/sci/dev") mavenCentral() } dependencies { - implementation("space.kscience:dataforge-io:0.6.2-dev-2") + implementation("space.kscience:dataforge-io:0.7.0") } ``` diff --git a/dataforge-io/dataforge-io-yaml/README.md b/dataforge-io/dataforge-io-yaml/README.md index 452ba504..06a0efb4 100644 --- a/dataforge-io/dataforge-io-yaml/README.md +++ b/dataforge-io/dataforge-io-yaml/README.md @@ -6,27 +6,18 @@ YAML meta IO ## Artifact: -The Maven coordinates of this project are `space.kscience:dataforge-io-yaml:0.6.2-dev-2`. +The Maven coordinates of this project are `space.kscience:dataforge-io-yaml:0.7.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:dataforge-io-yaml:0.6.2-dev-2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { maven("https://repo.kotlin.link") + //uncomment to access development builds + //maven("https://maven.pkg.jetbrains.space/spc/p/sci/dev") mavenCentral() } dependencies { - implementation("space.kscience:dataforge-io-yaml:0.6.2-dev-2") + implementation("space.kscience:dataforge-io-yaml:0.7.0") } ``` diff --git a/dataforge-meta/README.md b/dataforge-meta/README.md index 0088dcf7..5f214640 100644 --- a/dataforge-meta/README.md +++ b/dataforge-meta/README.md @@ -6,27 +6,18 @@ Meta definition and basic operations on meta ## Artifact: -The Maven coordinates of this project are `space.kscience:dataforge-meta:0.6.2-dev-2`. +The Maven coordinates of this project are `space.kscience:dataforge-meta:0.7.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:dataforge-meta:0.6.2-dev-2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { maven("https://repo.kotlin.link") + //uncomment to access development builds + //maven("https://maven.pkg.jetbrains.space/spc/p/sci/dev") mavenCentral() } dependencies { - implementation("space.kscience:dataforge-meta:0.6.2-dev-2") + implementation("space.kscience:dataforge-meta:0.7.0") } ``` diff --git a/dataforge-scripting/README.md b/dataforge-scripting/README.md index c4d2caad..af79cc8f 100644 --- a/dataforge-scripting/README.md +++ b/dataforge-scripting/README.md @@ -6,27 +6,18 @@ ## Artifact: -The Maven coordinates of this project are `space.kscience:dataforge-scripting:0.6.2-dev-2`. +The Maven coordinates of this project are `space.kscience:dataforge-scripting:0.7.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:dataforge-scripting:0.6.2-dev-2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { maven("https://repo.kotlin.link") + //uncomment to access development builds + //maven("https://maven.pkg.jetbrains.space/spc/p/sci/dev") mavenCentral() } dependencies { - implementation("space.kscience:dataforge-scripting:0.6.2-dev-2") + implementation("space.kscience:dataforge-scripting:0.7.0") } ``` diff --git a/dataforge-workspace/README.md b/dataforge-workspace/README.md index 2aafb8df..c096699f 100644 --- a/dataforge-workspace/README.md +++ b/dataforge-workspace/README.md @@ -6,27 +6,18 @@ ## Artifact: -The Maven coordinates of this project are `space.kscience:dataforge-workspace:0.6.2-dev-2`. +The Maven coordinates of this project are `space.kscience:dataforge-workspace:0.7.0`. -**Gradle Groovy:** -```groovy -repositories { - maven { url 'https://repo.kotlin.link' } - mavenCentral() -} - -dependencies { - implementation 'space.kscience:dataforge-workspace:0.6.2-dev-2' -} -``` **Gradle Kotlin DSL:** ```kotlin repositories { maven("https://repo.kotlin.link") + //uncomment to access development builds + //maven("https://maven.pkg.jetbrains.space/spc/p/sci/dev") mavenCentral() } dependencies { - implementation("space.kscience:dataforge-workspace:0.6.2-dev-2") + implementation("space.kscience:dataforge-workspace:0.7.0") } ```