Skip to content

v2.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 13 Feb 11:15
· 926 commits to master since this release
ddd84a0

2.0.0 (2024-02-13)

Features

Market

  • Added proposal batching to avoid duplicate offers and lower down the number of unnecessary negotiations (d82b09a)

Work

No relevant changes

Payments

  • added support mid-agreement debit note interval configuration option (bda6a92)
  • Add a way to manually list and pay invoices via InvoiceProcessor (18eaccd) (c0fa1db) (a9fa117)

General APIs

  • ResultState enum is exposed in typings (ac51cd1)
  • Introduced new structure and hierarchy of errors thrown by modules (GolemError and its derived classes) (3988086) (135f4e5)

Experimental APIs

  • Reimplemented Job to run without a task executor underneath (97a9b7c)

Bug Fixes

TaskExecutor

  • task-executor: propagate issues with invoice and debit note filter to user (0e2136c)
  • task: fixed retrying and timeout measurement for task (b728835)
  • spawn: terminating spawned activity in case of timeout (969e246)

Market

  • market: all proposal filters are no longer async and have been renamed to be more accurate (43b3476)
  • cleaning of terminated agreements (e1ea286)

Work

No relevant changes

Networking

  • network: fixed adding an existing node to the network (42a5778)

Payments

  • payment: fixed payment service termination (socket-hang-up bug) (d59404c)
  • payment: renamed expires parameter to expirationSec for the Allocation (72f07fc)

General APIs

  • ws_storage_provider: fixed missing header in gsb api (3609e09)

Experimental APIs

  • job: fix json decode error caused by incorrect activity parameter (cc1e0d6)

Documentation

  • example: fixed incorrect manifest and url for outbound example (532c08d)

BREAKING CHANGES

General

  • The SDK now requires yagna at least in version 0.13.2 and will throw an error if you're using a version that's too old.
  • The SDK won't log anything to the console by default, and will use debug package to implement logging.
  • The events accessible via EventTarget passed to TaskExecutor are now going to contain a provider: ProviderInfo property that will be enhanced with the walletAddress property. Old providerId and providerName fields are removed from the event.

Task Executor

  • The TaskExecutor will now be cancelled when an issue will be raised with processing the payments - including errors in the invoice and debit note filters.
  • Deprecated TaskExecutor.isSubprocess option is now removed.
  • Deprecated TaskExecutor.end is now removed (use TaskExecutor.shutdown instead)
  • Deprecated TaskExecutor.beforeEach is now removed (use TaskExecutor.onActivityReady instead)
  • Deprecated WorkContext.rejectResult method is removed.

Market

The following filter re-names were introduced:

  • ProposalFilters renamed to ProposalFilterFactory.
  • acceptAllProposalFilter renamed to acceptAll and no longer async.
  • blackListProposalIdsFilter renamed to disallowProvidersById and no longer async.
  • blackListProposalNamesFilter renamed disallowProvidersByName and no longer async.
  • blackListProposalRegexpFilter renamed to disallowProvidersByNameRegex and no longer async.
  • whiteListProposalIdsFilter renamed to allowProvidersById and no longer async.
  • whiteListProposalNamesFilter renamed to allowProvidersByName and no longer async.
  • whiteListProposalRegexpFilter renamed to allowProvidersByNameRegex and no longer async.

If you are implementing your own proposalFilter, make sure that it's no longer async as passing an async proposalFilter will not be working anymore.

Work

No relevant changes

Payments

  • PaymentService.acceptDebitNote is now removed, use PaymentService.acceptPayments instead.