Skip to content

Releases: 0gfoundation/0g-storage-client

v1.4.3-testnet

v1.4.3-testnet Pre-release
Pre-release

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 10 Jun 07:43

What's Changed

🐛 Fixes

  • Preserve the landed Flow.submit tx hash across SkipTx retries (#157) — when indexer.SplitableUpload lands the on-chain submit on one internal retry iteration but only completes on a later (skipped-tx) iteration, it now returns the tx hash from the iteration that actually submitted, instead of the zero (skipped) hash. Callers that bill from the returned tx hash (e.g. the 0g-storage-s3 gateway, which was recording storage_fee=0) can now tell "we paid earlier" from genuine pre-existing dedup. Dedup with no submit at all still returns a zero hash, so refund paths are unchanged.

Full Changelog: v1.4.2-testnet...v1.4.3-testnet

v1.4.2-testnet

v1.4.2-testnet Pre-release
Pre-release

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 07 Jun 01:02

What's Changed

✨ New

  • Extend storage period without re-upload (#154) — new extend CLI command and ExtendStorage SDK methods (transfer.Uploader.ExtendStorage, indexer.Client.ExtendStorage). Re-pays the storage fee for data already stored on the network, identified by the original Flow.submit tx hash(es), without re-transferring the bytes. The submission is recovered from its on-chain Submit event, every fragment is checked to confirm it is still stored (via the indexer / storage nodes), and a fresh submit pays the fee again. If any fragment has been pruned, no transaction is sent and you are asked to upload that data again.

🐛 Fixes

  • SplitableUpload returns the data root when the on-chain submit is skipped (#156) — a --skip-tx upload of already-settled data previously returned an empty roots list (regression introduced in v1.4.1-testnet). The root is now always returned on success, while the submit-hash-on-error surfacing for retry dedup (#148) is preserved.

Full Changelog: v1.4.1-testnet...v1.4.2-testnet

v1.4.1-testnet

v1.4.1-testnet Pre-release
Pre-release

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 28 May 00:57
1ccb3a9

Pre-release tag for testnet consumers. Supersedes v1.4.0-testnet; main now contains the hot-storage work from the testnet branch (squashed via PRs #133/#135/#137) plus the additions below.

Importing repos can pull this with:

go get github.com/0gfoundation/0g-storage-client@v1.4.1-testnet

Features

  • ECIES asymmetric encryption alongside AES-256 symmetric (#136)
  • S3 gateway additions (#138)
  • Batch small files in upload-dir to reduce on-chain transactions (#134)
  • Hot storage download support and client (#133)
  • Hot storage EIP-712 signatures and signing updates (#135, #137)

Fixes

  • transfer: surface Flow.submit txHash on segment-upload error (#149, closes #148)
  • kv: forward-port EncodedSizeForSingleWrite and its test (#147, closes #146)
  • indexer: skip Flow.submit on retry after first submit succeeded (#145)

Refactors / Docs

  • Options refactor (#131)
  • General refactor (#130)
  • README updates with new repository links and hot storage docs (#132)

Full changelog: v1.4.0-testnet...v1.4.1-testnet

v1.3.0

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 24 Feb 06:44
  • Added encryption/decryption
  • Code refactoring

v1.2.2

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 22 Jan 02:03
  • new contract interfaces

v1.2.0

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 16 Nov 11:45
3bed76a

Version update and repo path update

v1.0.0

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 23 Apr 09:25
d42257f

Minor bug fix and function improvement

v0.6.9

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 25 Mar 03:52
4e8ed14
  1. Bug fixes on tx seq/root mismatch
  2. Align with storage node api

v0.6.6

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 12 Mar 01:27
fd2bf15

Retry when waiting too long for tx receipt.

v0.6.5

Choose a tag to compare

@0g-peterzhb 0g-peterzhb released this 07 Mar 23:49
6d45bae

make contract tool usable by external package