Releases: everx-labs/ever-sdk
Version: 1.39.0
[1.39.0] – 2022-12-07
Improvement
-
Resolved endpoints are cached for 10 minutes so subsequent messages sent will not require
additional server request -
Queries are retried in case of network errors when websocket connection is used
-
WaitForTimeout
error code (607) is returned in case ofwait_for_transaction
function was
successfully executed but expected data did not appeared during the specified timeout -
timeout
parameter innet.query_transaction_tree
behaviour changed. Now value 0 indicates that
no time limit should be used and function will wait for all transactions execution
New
-
transaction_max_count
parameter innet.query_transaction_tree
which controls the count of
transaction to be awaited and returned -
data_layout
andfunction_name
parameters inabi.decode_message
andabi.decode_message_body
that can be used to decode responsible function output and optimize message decoding by strict layout check
Fixed
-
abi.encode_initial_data
function properly creates data in case of public key omitted.
Nowabi.encode_initial_data
call without initial data values and public key creates
the same data as compiled tvc -
Graphql error messages with HTTP response 400 was skipped (was not propagated to
the SDK client application). -
Several misspelling.
-
Message processing freeze in case of large amount of messages parallel processing using Websocket
connection -
Websocket interaction thread panic
-
Debot module:
- fill hash argument in
SDK.signHash
method with leading zeroes up to 32 bytes.
- fill hash argument in
Version: 1.38.1
[1.38.1] – 2022-11-10
Improvement
- Aditional info query is removed from
send_message
to minimize API usage
Fixed
- Error code
Unauthorized
is returned from all network functions in case of authentication failure - Server connection attempt is not retried in case of authentication failure
New
Version: 1.38.0
[1.38.0] – 2022-10-06
New
- Debot module:
- ABI specification v2.3 is supported in DEngine.
- Supported flags
OVERRIDE_TS
,OVERRIDE_EXPT
,ASYNC_CALL
for external messages in DEngine.
Improvement
- Support cookies in net module for std mode (not wasm)
- Remove network aliases (main, dev, main.ton.dev, net.ton.dev)
- No balancing logic in case of 1 endpoint + removed the check of REMP support on backend during client initialization.
These changes will make client initialization faster -> CLI tools that use SDK will work faster, web pages will load initial data faster. - Changed 401 error message to response message from API
- Tests improvements: cryptobox tests made stable
Version: 1.37.2
[1.37.2] – 2022-08-10
New
crypto.encryption_box_get_info
returns nacl box public key ininfo.public
field.- Gosh instruction are supported in local VM and executor:
- execute_diff
- execute_diff_patch_not_quiet
- execute_zip
- execute_unzip
- execute_diff_zip
- execute_diff_patch_zip_not_quiet
- execute_diff_patch_quiet
- execute_diff_patch_zip_quiet
- execute_diff_patch_binary_not_quiet
- execute_diff_patch_binary_zip_not_quiet
- execute_diff_patch_binary_quiet
- execute_diff_patch_binary_zip_quiet
Improvement
create_crypto_box
optimisation.
When a user creates a crypto box, library encrypts provided secret information using provided
password and salt.
When library encrypts the secret, it calculates encryption key from password and salt
usingscrypt
function which takes a lot of CPU time (about 1 second).
So when a user creates many crypto boxes using the same password and salt,
it takes a lot of time (about 12 seconds for 10 crypto boxes).
With the optimisations introduced in this version the library stores the
pair (password+salt => encryption key) in internal cache for approximately 2 seconds.
So when a user creates many crypto boxes at a time using the same password and salt,
library uses cached information to skip heavy calculations. As a result now it takes only
a second to create 10 crypto boxes.
Fixed
- Some enum types were not properly presented in api.json (some types that use serde(content="value"))
Version: 1.37.1
[1.37.1] – 2022-08-03
Fixed
- Pinned BOC cache now has reference counter for each pin in BOC. BOC can be pinned several times
with the same pin. BOC is removed from cache after all references for all pins are unpinned with
cache_unpin
function calls. - Fixed error resolving in case when account state was modified after message expiration time. Now
appropriate error text is added to error message instead of executor internal error
Version: 1.37.0
[1.37.0] – 2022-07-28
New
- client sends
config.network.access_key
asAuthorization: Basic ...
orAuthorization: Bearer ...
header. - client accepts endpoints with
/graphql
suffixes specified in config.
Fixed
- Updated zstd in order to fix building.
Version: 1.36.1
[1.36.1] – 2022-07-18
Improvement
- Time synchorization check between device and server improved: calculation of timediff with server is moved from batched query to send_message function and therefore now query execution time does not affect this time diff.
Version: 1.36.0
[1.36.0] – 2022-07-01
New
- ABI specification v2.3 is supported
- parameter
address
is added toabi.encode_message_body
function
Version: 1.35.1
[1.35.1] – 2022-06-28
Improved
abi
module errors have been improved
Version: 1.35.0
[1.35.0] – 2022-06-28
New
chksig_always_succeed
execution option used in params of thetvm.run_get
,tvm.run_tvm
andtvm.run_executor
.abi.calc_function_id
functiontokio
library is updated to 1.* version