Releases: ton-blockchain/ton
TON v2025.02
2025.02 Update
- Series of improvement/fixes for
Config8.version >= 9
, check GlobalVersions.md - Fix for better discovery of updated nodes' (validators') IPs: retry dht queries
- Series of improvements for extra currency adoption: fixed c7 in rungetmethod, reserve modes
- TVM: Fix processing continuation control data on deep jump
- A few fixes of tl-b schemes: crc computation, incorrect tag for merkle proofs, advance_ext, NatWidth print
- Emulator improvements: fix setting libraries, extracurrency support
- Increase of gas limit for unlocking highload-v2 wallets locked in the beginning of 2024
- Validator console improvement: dashed names, better shard formats
Besides the work of the core team, this update is based on the efforts of @dbaranovstonfi from StonFi(libraries in emulator), @Rexagon (ret on deep jumps), @tvorogme from DTon (advance_ext
), Nan from Zellic (stk_und
and JNI)
tolk-0.8
Merge pull request #1516 from ton-blockchain/fix-ls-capabilities Fix get_prev_blocks_info() at LS getConfigParams [does not affect validators]
Tolk 0.7
Notable changes in Tolk v0.7
- Under the hood: refactor and revamp compiler internals. AST-level semantic analysis kernel
- Under the hood: rewrite the type system from Hindley-Milner to static typing
- Clear and readable error messages on type mismatch
- Generic functions
fun f<T>(...)
and instantiations likef<int>(...)
- The
bool
type - Type casting via
value as T
The documentation and IDE plugins have been updated accordingly (see related pull requests below).
TON v2024.12-1
2024.12 Update
- FunC 0.4.6: Fix in try/catch handling, fixing pure flag for functions stored in variables
- Merging parts of Accelerator: support of specific shard monitoring, archive/liteserver slice format, support for partial liteservers, proxy liteserver, on-demand neighbour queue loading
- Fix of asynchronous cell loading
- Various improvements: caching certificates checks, better block overloading detection,
_malloc
in emulator - Introduction of telemetry in overlays
- Use non-null local-id for tonlib-LS interaction - mitigates MitM attack.
- Adding
SECP256K1_XONLY_PUBKEY_TWEAK_ADD
,SETCONTCTRMANY
instructions to TVM (activated byConfig8.version >= 9
) - Private keys export via validator-engine-console - required for better backups
- Fix proof checking in tonlib,
hash
inraw.Message
in tonlib_api
Besides the work of the core team, this update is based on the efforts of OtterSec and LayerZero (FunC), tg:@throwunless (FunC), Aviv Frenkel and Dima Kogan from Fordefi (LS MitM), @hacker-volodya (Tonlib), OKX team (async cell loading), @krigga (emulator)
FunC 0.4.6
Fix in try/catch handling, fixing pure flag for functions stored in variables
TVM with version v9
tonNode.getOutMsgQueueProof query in public shard overlays (#1413) * tonNode.getOutMsgQueueProof query in public shard overlays * Allow responding to getOutMsgQueueProof requests one at a time only
TON v2024.10 and FunC 0.4.5
2024.10 Update
- Parallel write to celldb: substantial improvement of sync and GC speed, especially with slow disks.
- Decreased network traffic: only first block candidate is sent optimistically.
- Improved channel creation and dht lookups, introduction of semi-private overlays
- New LS dispatch queue related methods and improvement security
- Fixing recursion in TVM continuations
- Improved stats for actors, validator sessions, perf counters, overlays, adnl, rocksdb
- Migration to C++20
- Improved block size estimates: account for depth in various structures
- Fix bug with
<<
optimization in FunC - Minor changes of TVM which will be activated by
Config8.version >= 9
- Multiple minor improvements
Besides the work of the core team, this update is based on the efforts of @krigga (emulator), Arayz @ TonBit (LS security, TVM recursion), @ret2happy (UB in BLST).
TON v2024.09
2024.09 Update
- Add ratelimit for ADNL packets sent/received without channel: this type of communication requires slow asymmetric encryption and may cause issues (high memory consumption and long queues of packets to be decrypted) under load.
- Dynamic catchchain delays: reach consensus faster when possible, but reduce load if block production is difficult.
- State serialization improvement: explicitly clean the memory if serialization was canceled.
- Collator config updates: update default block collation parameters (message deferral threshold) to better match real-world load.
- Added more verbose garbage collection stats and fixed issues in LS.
TON v2024.08
2024.08 Update
- Introduction of dispatch queues, message envelopes with transaction chain metadata, and explicitly stored msg_queue size, which will be activated by
Config8.version >= 8
and newConfig8.capabilities
bits:capStoreOutMsgQueueSize
,capMsgMetadata
,capDeferMessages
. - A number of changes to transcation executor which will activated for
Config8.version >= 8
:- Check mode on invalid
action_send_msg
. Ignore action ifIGNORE_ERROR
(+2) bit is set, bounce ifBOUNCE_ON_FAIL
(+16) bit is set. - Slightly change random seed generation to fix mix of
addr_rewrite
andaddr
. - Fill in
skipped_actions
for both invalid and valid messages withIGNORE_ERROR
mode that can't be sent. - Allow unfreeze through external messages.
- Don't use user-provided
fwd_fee
andihr_fee
for internal messages.
- Check mode on invalid
- A few issues with broadcasts were fixed: stop on receiving last piece, response to AdnlMessageCreateChannel
- A number of fixes and improvements for emulator and tonlib: correct work with config_addr, not accepted externals, bounces, debug ops gas consumption, added version and c5 dump, fixed tonlib crashes
- Added new flags and commands to the node, in particular
--fast-state-serializer
,getcollatoroptionsjson
,setcollatoroptionsjson
Besides the work of the core team, this update is based on the efforts of @krigga (emulator), stonfi team, in particular @dbaranovstonfi and @hey-researcher (emulator), and @loeul, @xiaoxianBoy, @simlecode (typos in comments and docs).
TON v2024.06
2024.04 Update
- Make Jemalloc default allocator
- Add candidate broadcasting and caching
- Limit per address speed for external messages broadcast by reasonably large number
- Overlay improvements: fix dropping peers in small custom overlays, fix wrong certificate on missed keyblocks
- Extended statistics and logs for celldb usage, session stats, persistent state serialization
- Tonlib and explorer fixes
- Flags for precize control of Celldb:
--celldb-cache-size
,--celldb-direct-io
and--celldb-preload-all
- Add valiator-console command to stop persistent state serialization
- Use
@
path separator for defining include path in fift and create-state utilities on Windows only.