* Deferred messages and msg metadata
* Store out msg queue size in state
* Add checks for queue processing
1. Collator must process at least one message from AccountDispatchQueue (unless block is full)
2. The first message from a transaction is not counted, it cannot be deferred (unless AccountDispatchQueue is not empty)
* Return msg metadata from LS in listBlockTransactions[Ext]
* Enable new features by capabilities
* Changes in deferred messages
* Process deferred messages via new_msgs in collator
* Rework setting deferred_lt, bring back check_message_processing_order, check order of deferred_lt in validator
* Use have_unprocessed_account_dispatch_queue_ in collator
* Fix setting transaction lt for deferred messages
* Fix lite-client compilation error
* Changes in process_dispatch_queue, rename deferred_lt -> emitted_lt
* Fix compilation error
* Use uint64 for msg queue size
* Add liteServer.getBlockOutMsgQueueSize
* Fix compilation error
* Fix typos in comments
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* add github action for macOS 14 (arm64, M1)
* add github action (portable) for macOS 14 (arm64, M1)
* rename macOS arm64 output artifact
* Update libsodium on windows
* Compile libsodium
* Update build-windows.bat
* use upgraded libsodium 1.0.20; use compiled static libsodium for Windows instead of precompiled;
* revert libsodium 1.0.20; use compiled static libsodium for Windows instead of precompiled;
* use upgraded libsodium 1.0.20; use compiled static libsodium for Windows instead of precompiled;
* fix libsodium version 1.0.19; use compiled static libsodium for Windows instead of precompiled;
* try 1.0.20 libsodium precompiled on github
* try 1.0.18 libsodium precompiled on github
* try windows build on win server 2019
* and use PlatformToolset=v142
* use cmake -G "Visual Studio 16 2019"
* fix path to msvc 2019 on github
* separate github windows build on win server 2019 and build on win server 2022
* Update assembly/native/build-windows-2019.bat
add retry mechanism
Co-authored-by: Dr. Awesome Doge <doge@ton.org>
---------
Co-authored-by: neodiX <neodix42@ton.org>
Co-authored-by: Dr. Awesome Doge <doge@ton.org>
* add github action for macOS 14 (arm64, M1)
* add github action (portable) for macOS 14 (arm64, M1)
* rename macOS arm64 output artifact
* Colon cannot be used as a path separator for FIFTPATH or -I argument in fift on Windows when absolute paths are used (e.g. C:\path\lib:C:\path\smartcont).
Suggestion to use @ as a new path separator on Windows.
---------
Co-authored-by: neodiX <neodix42@ton.org>
* Private overlay for external messages
* Improve ext msg overlays
* Manage from validator console
* Bypass out queue size limit for high-priority messages
* Shuffle messages in get_external_messages
* Cleanup mempool when creating validator group
* Improve private overlays for externals
1. Allow using validator adnl ids in addition to fullnode ids
2. Set priority per sender, not per overlay
3. Require the same overlay name for all nodes
4. Enable lz4 in private block overlay
* Fix typo, add debug logs
* Enable lz4 in private block overlay by config
Change proto_version for lz4 in catchain overlays to 4
* Add logs for broadcasts in fullnode
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>