OwlCore.Nomad.Storage.Kubo
0.7.0
See the version list below for details.
dotnet add package OwlCore.Nomad.Storage.Kubo --version 0.7.0
NuGet\Install-Package OwlCore.Nomad.Storage.Kubo -Version 0.7.0
<PackageReference Include="OwlCore.Nomad.Storage.Kubo" Version="0.7.0" />
paket add OwlCore.Nomad.Storage.Kubo --version 0.7.0
#r "nuget: OwlCore.Nomad.Storage.Kubo, 0.7.0"
// Install OwlCore.Nomad.Storage.Kubo as a Cake Addin #addin nuget:?package=OwlCore.Nomad.Storage.Kubo&version=0.7.0 // Install OwlCore.Nomad.Storage.Kubo as a Cake Tool #tool nuget:?package=OwlCore.Nomad.Storage.Kubo&version=0.7.0
A storage implementation powered by shared event sourcing on IPFS.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.Bcl.AsyncInterfaces (>= 8.0.0)
- OwlCore.Kubo (>= 0.17.1)
- OwlCore.Nomad.Kubo (>= 0.8.0)
- OwlCore.Nomad.Storage (>= 0.7.0)
- System.Linq.Async (>= 6.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.14.0 | 80 | 11/21/2024 |
0.12.0 | 123 | 9/14/2024 |
0.11.0 | 105 | 8/27/2024 |
0.10.0 | 126 | 8/24/2024 |
0.9.0 | 119 | 8/23/2024 |
0.8.0 | 124 | 8/23/2024 |
0.7.0 | 117 | 8/15/2024 |
0.6.2 | 130 | 8/12/2024 |
0.6.1 | 134 | 8/12/2024 |
0.6.0 | 129 | 8/12/2024 |
0.5.0 | 98 | 8/6/2024 |
0.4.0 | 87 | 8/3/2024 |
0.3.0 | 120 | 7/17/2024 |
0.2.0 | 114 | 7/1/2024 |
0.1.0 | 115 | 6/2/2024 |
0.0.0 | 131 | 4/28/2024 |
--- 0.7.0 ---
[Fixes]
Fixed an issue where calling AppendAndPublishNewEntryToEventStreamAsync with concurrency could have caused data to be lost.
Fixed an issue where an empty CID was applied to the file on pull, despite not appearing in the event stream. Folder and file creation now properly return existing data when overwrite is false.
Fixed an issue where some file streams weren't being consistently flushed. WritableNomadFileStream.Flush now properly waits for the underlying task to complete.
[Improvements]
KuboBasedNomadStorageExtensions.TryAdvanceEventStreamAsync now consistently throws when a mismatch event and storage id are provided.
KuboBasedNomadStorageExtensions.TryAdvanceEventStreamAsync now uses separate overloads instead of a single method with a type check.
KuboBasedNomadStorageExtensions.ApplyFolderUpdateAsync now uses separate overloads instead of a single method with a type check.
Flushing WritableNomadFileStream now hashes the data and compares the CID without pinning before deciding to copy/pin to ipfs.
Additional guards and check when flushing WritableNomadFileStream.
--- 0.6.2 ---
[Fixes]
Fixed an issue where KuboNomadFolder.CreateFileAsync wasn't returning an empty file when overwrite: true was provided and the file exists.
--- 0.6.1 ---
[Fixes]
IModifiableKuboBasedNomadFile now inherits IReadOnlyKuboBasedNomadFile, fixing an issue where KuboBasedNomadStorageExtensions.TryAdvanceEventStreamAsync wouldn't advance the stream for modifiable files.
IModifiableKuboBasedNomadFolder now inherits IReadOnlyKuboBasedNomadFolder, fixing an issue where KuboBasedNomadStorageExtensions.TryAdvanceEventStreamAsync wouldn't advance the stream for modifiable folders.
--- 0.6.0 ---
[Breaking]
Inherited and implemented breaking changes from OwlCore.Nomad.Kubo 0.8.0.
Inherited and implemented breaking changes from OwlCore.Nomad.Storage 0.7.0.
Removed IReadOnlyKuboBasedNomadStorage.
Removed IModifiableKuboBasedNomadStorage.
Removed IReadOnlyKuboBasedNomadStorage.
Overloads for KuboBasedNomadStorageExtensions.ApplyEntryUpdateAsync were split into ApplyFileUpdateAsync and ApplyFolderUpdateAsync.
Parameters for KuboBasedNomadStorageExtensions.AppendAndPublishNewEntryToEventStreamAsync were updated. IModifiableNomadKuboEventStreamHandler{T} is used instead of IModifiableKuboBasedNomadStorage. updateEventContentCid is passed directly instead of serializing internally. eventId and targetId are passed directly instead of being pulled from the handler.
[New]
Added Models.FileUpdateEvent.
Added KuboNomadFile.EventStreamEntries.
[Improvements]
IModifiableKuboBasedNomadFolder now implements IModifiableNomadKuboEventStreamHandler{FolderUpdateEvent} directly, instead of using IModifiableKuboBasedNomadStorage and polymorphism.
IModifiableKuboBasedNomadFile now implements IModifiableNomadKuboEventStreamHandler{FileUpdateEvent} directly, instead of using IModifiableKuboBasedNomadStorage and polymorphism.
IReadOnlyKuboBasedNomadFolder now implements IReadOnlyNomadKuboEventStreamHandler{FolderUpdateEvent} directly, instead of using IReadOnlyKuboBasedNomadStorage and polymorphism.
IReadOnlyKuboBasedNomadFile now implements IReadOnlyNomadKuboEventStreamHandler{FileUpdateEvent} directly, instead of using IReadOnlyKuboBasedNomadStorage and polymorphism.
KuboBasedNomadStorageExtensions.TryAdvanceEventStreamAsync now uses IReadOnlyNomadKuboEventStreamHandler{T} instead of IReadOnlyKuboBasedNomadStorage.
Newly created files now internally use a null cid instead of getting a cid representing empty content.
[Fixes]
Flushing WriteableNomadFileStream now applies the appended event entry to the file.
--- 0.5.0 ---
[Breaking]
Inherited and implemented breaking changes from OwlCore.Nomad.Kubo 0.7.1.
Inherited and implemented breaking changes from OwlCore.Nomad.Storage 0.6.0.
KuboNomadFolder.CreateAsync no longer advances the event stream for you before returning.
[Fixes]
Fixed KuboNomadFolder.EventStreamPosition not updating during certain operations.
Fixed 'already disposed' exception when flushing WritableNomadFileStream.
Fixed an issue where KuboNomadFolder.CreateFileAsync wouldn't respect the overwrite parameter.
Fixed an issue where KuboNomadFolder.CreateFolderAsync wouldn't respect the overwrite parameter.
[New]
Added KuboNomadFolder.EventStreamEntries. Since subfolders and files share the same events stream as the root folder, this allows us to avoid re-resolving the event stream every time we get or create a child item instance.
--- 0.4.0 ---
[Breaking]
Inherited and implemented breaking changes from OwlCore.Nomad.Kubo 0.5.0.
Inherited and implemented breaking changes from OwlCore.Nomad.Storage 0.5.0.
[New]
Added static KuboNomadFolder.CreateAsync.
Added static ReadOnlyKuboNomadFolder.CreateAsync.
--- 0.3.0 ---
[Breaking]
Migrated to and inherited breaking changes from OwlCore.Nomad 0.5.0.
[Improvement]
Updated dependencies to latest stable versions.
--- 0.2.0 ---
[Breaking]
Migrated to and inherited breaking changes from OwlCore.Nomad 0.4.0.
--- 0.1.0 ---
[Breaking]
Migrated to OwlCore.Nomad 0.3.0, implementing new required members and consolating several types and helpers.
Inherited and implemented changes from OwlCore.Nomad.Storage 0.2.0.
--- 0.0.0 ---
[New]
Initial release of OwlCore.Nomad.Storage.Kubo.