v2.0.0
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 toTaskExecutor
are now going to contain aprovider: ProviderInfo
property that will be enhanced with thewalletAddress
property. OldproviderId
andproviderName
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 (useTaskExecutor.shutdown
instead) - Deprecated
TaskExecutor.beforeEach
is now removed (useTaskExecutor.onActivityReady
instead) - Deprecated
WorkContext.rejectResult
method is removed.
Market
The following filter re-names were introduced:
ProposalFilters
renamed toProposalFilterFactory
.acceptAllProposalFilter
renamed toacceptAll
and no longer async.blackListProposalIdsFilter
renamed todisallowProvidersById
and no longer async.blackListProposalNamesFilter
renameddisallowProvidersByName
and no longer async.blackListProposalRegexpFilter
renamed todisallowProvidersByNameRegex
and no longer async.whiteListProposalIdsFilter
renamed toallowProvidersById
and no longer async.whiteListProposalNamesFilter
renamed toallowProvidersByName
and no longer async.whiteListProposalRegexpFilter
renamed toallowProvidersByNameRegex
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, usePaymentService.acceptPayments
instead.