Skip to content

Releases: textileio/js-powergate-client

v4.1.0

15 Mar 22:53
74bbbf6
Compare
Choose a tag to compare

Changes

🚀 Features

🙏 A big thank you to all the contributors to this release:

@asutula

v4.0.0 🌈

21 Jan 16:19
d131758
Compare
Choose a tag to compare

Changes

Please see the Powergate v2.0.0 release notes for more detailed information about API changes and additions.

🙏 A big thank you to all the contributors to this release:

@asutula

v3.1.0 🌈

11 Nov 21:49
015e132
Compare
Choose a tag to compare

This update is compatible with Powergate v1.1.0 or newer

  • Updates "storage profiles" method naming to "users" in the admin part of the API
  • Type Job renamed to StorageJob
  • Objects returned from any method related to storage jobs now uses the name storageJob(s) instead of job(s) as the object key.

Changes

🧰 Maintenance

🙏 A big thank you to all the contributors to this release:

@asutula

v3.0.0 🌈

05 Nov 16:04
29110f3
Compare
Choose a tag to compare

Changes

This release includes big and breaking API changes for the Powergate client. They are described below.

General API focus

Powergate was previously developed without a clear picture of exactly who would be using it or how they may be using it. We now have a better idea of that, and the API has been cleaned up, slimmed down, and re-organized to align better with actual Powergate usage and purpose.

No more "FFS" wording

"FFS" is an implementation detail of Powergate and doesn't really add any value to the API. It turns out that almost all interactions with Powergate rely on the FFS implementation, and this is really just the default mode of Powergate's operation from an API perspective. Removing "FFS" from the API and just assuming its use has allowed for an easier to understand API... Just supply your auth token and don't worry about the internal implementation details of Powergate.

Filecoin deal state available

When viewing information about a Powergate storage job, real time information about any Filecoin storage deals is now included.

API structure based around API concepts and not backend implementation details.

The new API is organized around entities and concepts that are important to the DX of Powergate. The general outline of the new API is as follows and can be seen in the Go client, pow CLI, as well as upcoming updates to the Javascript client.

  • Admin - Administrative functions that are secured by an admin auth token (it is possible to run Powergate with no admin auth token)
    • Profiles - Manage "storage profiles" (internally, these are FFS instances)
      • Create - This is now how storage profiles are created (used to be pow ffs create)
      • List - List storage profiles including id and auth token
    • Storage jobs - Various functions for querying Powergate storage jobs for any storage profile
      • Queued jobs
      • Executing jobs
      • Latest final jobs
      • Latest successful jobs
      • Summary of all jobs
    • Wallet
      • Create address
      • List all addresses
      • Send FIL
  • Data - General operations around data to be stored or already stored in a Powergate storage profile
    • Stage
    • Replace
    • Get
    • Watch logs for CID
    • CID info - New function that provides a summary of the desired storage state, current storage state, and any jobs and Filecoin deals for a CID.
  • Deals - Information about Filecoin storage and retrieval deals in a Powergate storage profile
    • List storage deals
    • List retrieval deals
  • Storage config - View and manage the default storage config and store data in a Powergate storage profile by applying storage configs to CIDs
    • Get default
    • Set default
    • Apply
    • Remove
  • Storage jobs - New functions to query storage jobs of a storage profile in various states, including real time information about their corresponding Filecoin storage deals state
    • Get job
    • Get storage config for job
    • Queued jobs
    • Executing jobs
    • Latest final jobs
    • Latest successful jobs
    • Summary of all jobs
    • Watch jobs
    • Cancel job
  • Wallet - Functions to interact with a storage profile's wallet addresses
    • Balance
    • New address
    • List addresses
    • Send FIL
    • Sign message
    • Verify message

Simplified client return types

The JS client now always returns the gRPC type returned from the backend. This reduces the complexity of and number of dependencies for the client code, and decouples the client code from the server code. This sets us up for creating custom client types if/where needed in the future.

Removed APIs

Some APIs were not central to the primary use of Powergate. Some were not used at all and others are only used internally for Powergate implementation. The following were removed:

  • Asks
  • Faults
  • Miners
  • Reputation
  • Net
  • Health

Other changes

🙏 A big thank you to all the contributors to this release:

@asutula

v2.0.1 🚀

29 Sep 21:06
0c25696
Compare
Choose a tag to compare

Changes

🐛 Bug Fixes

🧰 Maintenance

🙏 A big thank you to all the contributors to this release:

@asutula, @dependabot-preview[bot] and @dependabot[bot]

v2.0.0 🌈

23 Sep 19:20
e9ee5b4
Compare
Choose a tag to compare

Changes

🚀 Features

🙏 A big thank you to all the contributors to this release:

@asutula

v1.0.0

11 Aug 20:33
4a4d646
Compare
Choose a tag to compare
  • Targets Powergate 0.4.0.
  • Adds FFS stageFolder and getFolder.
  • FFS functions that accept options now take an options object instead of functional options.
  • Removes FFS close function.
  • Adds buildInfo function to get build and version information about the connected Powergate server.
  • Improved generated docs.

v0.2.0

21 Jul 18:46
Compare
Choose a tag to compare

Powergate 0.2.0 introduces some API updates meant to make things easier to use and less confusing, but some of these are breaking changes. It also includes some bug fixes and other internal improvements.

API changes in pow.ffs:

  • DefaultConfig and CidConfig, previously used to represent the default storage configuration for a FFS instance and the storage settings for a specific cid, have both been replaced by StorageConfig. StorageConfig actually is the same shape as DefaultConfig was, but is used both to represent the default storage configuration for a FFS instance as well as for storage settings for a specific cid.
  • defaultConfig() changed to DefaultStorageConfig()
  • setDefaultConfig() changed to setDefaultStorageConfig()
  • getCidConfig() changed to GetStorageConfig()
  • pushConfig() changed to pushStorageConfig()
  • pushStorageConfig() option withOverrideConfig() is now withOverride()
  • pushStorageConfig() option withConfig() is now withStorageConfig()
  • Option withCidConfig() changed to withStorageConfig()
  • addToHot() changed to stage()
  • getDefaultCidConfig() was removed because it is no longer needed
  • Return value from info() of InstanceInfo.defaultConfig changed to InstanceInfo.defaultStorageConfig

Other API changes:

Previously, some functions returned objects while others returned single values. For the sake of consistency and to minimize future breaking changes, all functions now return objects, even when the object has only a single key. You'll need to read the object keys to get return values. The functions that changed in this way are:

  • asks.get()
  • asks.query()
  • faults.get()
  • ffs.listPayChannels()
  • ffs.listStorageDealRecords()
  • ffs.listRetrievalDealRecords()
  • ffs.showAll()
  • reputation.getTopMiners()
  • wallet.newAddress()
  • wallet.list()
  • wallet.balance()

v0.1.0

15 Jul 20:10
eb6f44b
Compare
Choose a tag to compare
  • adds deal records apis to ffs
  • asks, faults, reputation, wallet api modules

v0.1.0-beta.14

10 Jul 21:16
Compare
Choose a tag to compare

Removes post install step that was causing npm install to fail