-
0.10.2 Stable
released this
2025-12-18 08:22:26 +03:00 | 7 commits to main since this release0.10.2 - 2025-12-17
Added
- Move Tables-kt to DataForge repository
- Json schema support for MetaDescriptor.
Changed
- BREAKING
Context.request(plugin)now has nullable parameter null means taking existing plugin with any configuration.
Fixed
- Bugs in NameToken parsing
Downloads
-
0.10.1 Stable
released this
2025-02-23 11:07:28 +03:00 | 34 commits to main since this releaseAdded
- Relax requirements for
withDefaultandview. Now they could be used withMutableMetaProvider - Add
MutableMetaProvidertoMutableMetaconverterasMutableMeta.
Changed
- Implementation of
Meta::withDefault schemeextension limited toMutableMetato avoid resolution ambiguity withScheme
Fixed
- Incorrect work of
MetaWithDefault::getValue - Incorrect work of scheme delegate
Downloads
- Relax requirements for
-
0.10.0 Stable
released this
2025-01-19 12:44:48 +03:00 | 48 commits to main since this releaseAdded
- Coroutine exception logging in context
ObservableMutableMetaSerializerMutableMetaView- a Meta wrapper that creates nodes only when its or its children are changed.
Changed
- Simplify inheritance logic in
MutableTypedMeta - Full rework of
DataTreeand associated interfaces (DataSource,DataSink, etc.). - Filter data by type is moved from
dataforge-datatodataforge-workspaceto avoid reflection dependency.
Deprecated
- MetaProvider
specis replaced byreadable.listOfSpecreplaced withlistOfReadable
Removed
- Remove implicit io format resolver in
IOPluginandFileWorkspaceCache. There are no guarantees that only one format is present in the contrxt for each type. - Dependencies on
atomicfuandkotlin.reflectfrom dataforge-data to improve performance.
Fixed
- Fixed NameToken parsing.
- Top level string list meta conversion.
Downloads
-
0.6.2 Stable
released this
2023-07-29 13:15:37 +03:00 | 149 commits to main since this release0.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
@valuefield.
0.6.1 - 2023-03-31
Added
- File cache for workspace
- Smart task metadata transformation for workspace
- Add
readOnlyproperty to descriptors - Add
specOrNulldelegate to meta and Scheme - Suspended read methods to the
Binary - Synchronously accessed
metato allDataSets - More fine-grained types in Action builders.
Changed
Name::replaceLastAPIPluginFactoryno longer requires plugin class- Collection toMap -> associateByName
- Simplified
DFTLenvelope format. Closing symbols are unnecessary. Properties are discontinued. - Meta
getmethod allows nullable receiver withDefaultfunctions do not add new keys to meta children and are consistent.dataforge.meta.valuespackage is merged intodataforge.metafor better star imports- Kotlin 1.8.20
Factoryis nowfun interfaceand usesbuildinstead ofinvoke. `invoke moved to an extension.- KTor 2.0
- DataTree
itemscall is blocking. - DataSet
getDatais no longer suspended and renamed toget - DataSet operates with sequences of data instead of flows
- PartialEnvelope uses
IntinsteadUInt. ActiveDataSetrenamed toDataSourceselectOne->getByType- Data traversal in
DataSetis done via iterator - Remove all unnecessary properties for
IOFormat - Separate interfaces for
IOReaderandIOWriter
Deprecated
- Context.fetch -> Context.request
Fixed
readDataDirectorydoes not split names with dots- Front matter reader does not crash on non-UTF files
- Meta file name in readMeta from directory
- Tagless and FrontMatter envelope partial readers fix.
Downloads
-
0.5.2 Stable
released this
2021-11-30 13:12:20 +03:00 | 212 commits to main since this releaseAdded
- Yaml plugin
- Partial fix to #53
Changed
Deprecated
Removed
Fixed
- MutableMetaImpl attachment and checks
- Listeners in observable meta are replaced by lists
- JS number comparison bug.
Downloads
-
0.5.0 Stable
released this
2021-08-13 21:42:32 +03:00 | 226 commits to main since this releaseAdded
- Experimental
listOfSpecdelegate.
Changed
- API breaking Config is deprecated, use
ObservableMetainstead. - API breaking Descriptor no has a member property
defaultValueinstead ofdefaultItem()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
- Build tools 0.10.0
- Relaxed type restriction on
MetaConverter. Now nullables are available. - Huge API-breaking refactoring of Meta. Meta now can have both value and children. There is only one kind of descriptor now.
- API breaking
String.toName()is replaced byName.parse() - API breaking Configurable
configchanged tometa
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.
Downloads
- Experimental
-
0.4.0 Stable
released this
2021-04-27 11:23:43 +03:00 | 276 commits to main since this release[0.4.0]
Added
- LogManager plugin
- dataforge-context API dependency on SLF4j
- Context
withEnvandfetchmethods to manipulate plugins without changing plugins after creation. - Split
ItemDescriptorinto 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
- Global context is a variable (the singleton is hidden and will be deprecated in future)
- Kotlin 1.5
- Added blank builders for children context.
- 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.
Downloads
-
0.4.0-dev-1 Pre-Release
released this
2021-03-07 15:43:34 +03:00 | 288 commits to main since this releaseAdded
- LogManager plugin
- dataforge-context API dependency on SLF4j
Changed
- Kotlin-logging moved from common to JVM and JS. Replaced by console for native.
- Package changed to
space.kscience
Deprecated
Removed
- Common dependency on Kotlin-logging
- Kotlinx-io fork dependency. Replaced by Ktor-io.
Fixed
Security
Downloads
-
0.3.0 Stable
released this
2021-02-07 21:18:04 +03:00 | 301 commits to main since this release[0.3.0]
Added
- Yaml meta format based on yaml.kt
Pathbuilders- Special ValueType for lists
copymethod to descriptors- Multiplatform yaml meta
Changed
ListValueandDoubleArrayValueimplementIterable.- Changed the logic of
Value::isListto check for type instead of size Meta{}builder made inline- Moved
Envelopebuilder to a top level function. Companion invoke is deprecated. - Context logging moved to the extension
numberandstringmethods onValuemoved to extensions (breaking change)- [Major breaking change] Schemes and configurables us
MutableItemProviderinstead ofConfig - [Major breaking change]
MetaItemrenamed toTypedMetaItemandMetaItemis now an alias forTypedMetaItem<*> - [Major breaking change] Moved
NodeItemandValueItemto a top level - Plugins are removed from Context constructor and added lazily in ContextBuilder
- [Major breaking change] Full refactor of DataTree/DataSource
- [Major Breaking change] Replace KClass with KType in data. Remove direct access to constructors with types.
Downloads