Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ion sync upstream #5

Merged
merged 55 commits into from
Oct 4, 2024
Merged

Ion sync upstream #5

merged 55 commits into from
Oct 4, 2024

Commits on Sep 26, 2024

  1. Soft send message validation (ton-blockchain#1021)

    * check mode on invalid action_send_msg
    
    * Fix random seed generation
    
    * Explicitly skip invalid actions
    
    * Count skipped valid messages, rename cfg option to message_skip_enabled
    
    * Allow unfreeze via external messages
    
    * Detect and handle bounce_on_fail mode for invalid messages
    
    * Fix codestyle
    
    * Adjust doc
    EmelyanenkoK authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    fac3a14 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5ad7acd View commit details
    Browse the repository at this point in the history
  3. Fix TON compilation on Windows (github only) (ton-blockchain#1020)

    * 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 <[email protected]>
    
    ---------
    
    Co-authored-by: neodiX <[email protected]>
    Co-authored-by: Dr. Awesome Doge <[email protected]>
    3 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    27c28eb View commit details
    Browse the repository at this point in the history
  4. Fix skipped action list order (ton-blockchain#1036)

    * nullify incorrect actions directly in skipped_action_list
    EmelyanenkoK authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    bbdda57 View commit details
    Browse the repository at this point in the history
  5. Doclinks that refer to docs.ton.org domain (ton-blockchain#1029)

    * Correct documentation link
    
    Update moved URL in comments
    
    * Update all doc links
    mercuriev authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    9d97594 View commit details
    Browse the repository at this point in the history
  6. chore: fix typos (ton-blockchain#980)

    Signed-off-by: snoppy <[email protected]>
    xiaoxianBoy authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    1ac83a9 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    f50aacf View commit details
    Browse the repository at this point in the history
  8. Added nullptr check for emulation_result (ton-blockchain#1037)

    * Added nullptr check for emulation_result
    
    * Typo
    
    * added cast to EmulationExternalNotAccepted and diagnostic message
    
    * formatting
    
    * formatting
    
    * removed unnecessary nesting
    
    ---------
    
    Co-authored-by: dbaranov34 <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    0a82d05 View commit details
    Browse the repository at this point in the history
  9. Merge message dispatch queue (ton-blockchain#1030)

    * 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 <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    8f77d64 View commit details
    Browse the repository at this point in the history
  10. Tonlib: add methods smc.getRawFullAccountState and blocks.getOutMsgQu…

    …eueSizes (ton-blockchain#1027)
    
    * add method smc.getRawFullAccountState
    
    * Add method blocks.getOutMsgQueueSizes
    dungeon-master-666 authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    465d4bd View commit details
    Browse the repository at this point in the history
  11. Fix typos (ton-blockchain#998)

    simlecode authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    eaf4213 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    7d07b55 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    f41e687 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    744d22e View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    4f7f535 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    b5aabd2 View commit details
    Browse the repository at this point in the history
  17. Add collator options (ton-blockchain#1052)

    * Set collator options from validator console
    
    * Fix compilation error in manager-disk
    
    * Defer all messages if out msg queue is too big
    
    * Fix checking queue size in collator
    
    ---------
    
    Co-authored-by: SpyCheese <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    21df9fa View commit details
    Browse the repository at this point in the history
  18. Improved Docker image (ton-blockchain#1051)

    * 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 <[email protected]>
    
    * rework docker image; provide installation, configuration and troubleshooting guidelines; add nc, ifconfig, netstat and iptraf-ng utilities for troubleshooting;
    
    * put back control.template
    
    * add tcpdump and curl to the docker image;
    update default validator ports;
    add kubernetes deployment guidelines with network=host;
    test metalLB load balancer
    
    * tested metalLB load balancer
    
    * tested aws deployment
    
    * tested gcp deployment
    
    * todo ali cloud and storage mount points, currently only the networking was tested
    
    * add storage/pv/pvc; repair broken links, adjust docu
    
    * change to dynamic storage provisioning without node affinity (statefulSet+headless service)
    WIP
    
    * modify gcp deployment WIP
    
    * modify aws deployment WIP
    
    * add resource requests/limits
    
    * some docu changes
    
    * some docu changes; aws tested
    
    * support $DUMP_URL parameter as well as $ZFS_POOL_NAME;
    add pv and plzip to docker image for dump extraction;
    use mainnet dump by default in k8s deployments;
    
    * support $DUMP_URL parameter as well as $ZFS_POOL_NAME;
    add pv and plzip to docker image for dump extraction;
    use mainnet dump by default in k8s deployments;
    add AliCloud support
    
    * minor remarks, final tests
    
    * remove ZFS_POOL_NAME parameter
    
    * improve docker github action - run test and add release tag, compile against arm64
    
    * set docker test timeout
    
    * test if validator-engine inside the docker image is valid
    
    * test if validator-engine inside the docker image is valid
    
    * test if validator-engine inside the docker image is valid
    
    * adjust recommended node values for ali cloud deployment
    
    ---------
    
    Co-authored-by: neodiX <[email protected]>
    Co-authored-by: Dr. Awesome Doge <[email protected]>
    3 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    6ae782d View commit details
    Browse the repository at this point in the history
  19. add test-emulator (ton-blockchain#1048)

    * 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 <[email protected]>
    
    * add test-emulator; disable test groovy pipeline
    
    * trigger all gh actions
    
    * fix win build
    
    * call test-emulator
    
    * fix test-emulator
    
    ---------
    
    Co-authored-by: neodiX <[email protected]>
    Co-authored-by: Dr. Awesome Doge <[email protected]>
    Co-authored-by: ms <[email protected]>
    4 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    3e07d1f View commit details
    Browse the repository at this point in the history
  20. Fix processing dispatch queue (ton-blockchain#1057)

    Co-authored-by: SpyCheese <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    aa58ccd View commit details
    Browse the repository at this point in the history
  21. "getcollatoroptionsjson" command in validator console (ton-blockchain…

    …#1059)
    
    * "getcollatoroptionsjson" command in validator console
    
    * Improve state serializer
    
    Use previous persistent state to speed up reading
    SpyCheese authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    13c5b76 View commit details
    Browse the repository at this point in the history
  22. Fix tonlib client crashing when block lookup error (ton-blockchain#979)

    Co-authored-by: hey-researcher <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    abff17e View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    6aa32ab View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    ccc68f8 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    e957e4b View commit details
    Browse the repository at this point in the history
  26. More verbose vm logs, fix parsing slice literals (ton-blockchain#1076)

    * More verbose VM logs
    
    * Fix parsing slice literals in fift
    SpyCheese authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    f613574 View commit details
    Browse the repository at this point in the history
  27. Remove rocksdb usage from fift (ton-blockchain#1064)

    * 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 <[email protected]>
    
    * add test-emulator; disable test groovy pipeline
    
    * trigger all gh actions
    
    * fix win build
    
    * call test-emulator
    
    * remove usage of rocksdb in fift-lib
    
    * put back some code for test-db
    
    * fix test-emulator
    
    * remove usage of db-path parameter in fift
    
    * some func adjustments
    
    * fix checkout of openssl in fift-func-wasm-build-ubuntu.sh
    
    * typo
    
    * improve wasm build script for quicker turn around
    
    * remove sENVIRONMENT=web,worker for funcfiftlib. will be added later.
    
    * remove sENVIRONMENT=web,worker for funcfiftlib. will be added later.
    
    * remove sENVIRONMENT=web,worker for funcfiftlib. will be added later.
    
    * minor adjustments
    
    * remove -d option in fift; optimize fift-lib usage
    
    * reduce tondb usage
    
    ---------
    
    Co-authored-by: neodiX <[email protected]>
    Co-authored-by: Dr. Awesome Doge <[email protected]>
    Co-authored-by: ms <[email protected]>
    4 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    a1b0b63 View commit details
    Browse the repository at this point in the history
  28. Print oldest celldb snapshot to stats (ton-blockchain#1078)

    Co-authored-by: SpyCheese <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    2e37c0f View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    12e9a39 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    ab2c8e1 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    285f671 View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    a5149c0 View commit details
    Browse the repository at this point in the history
  33. Add --fast-state-serializer flag and responding to AdnlMessageCreateC…

    …hannel with Nop (ton-blockchain#1096)
    
    * Add --fast-state-serializer and tools for jemalloc
    
    * Disable fast state serializer by default unless RAM is >= 90GB
    * Print jemalloc stats once a minute
    * Dump jemalloc profile on request
    
    * Respond to AdnlMessageCreateChannel with Nop
    
    ---------
    
    Co-authored-by: SpyCheese <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    943f4bc View commit details
    Browse the repository at this point in the history
  34. Add github action for Ubuntu 24.04 (ton-blockchain#1085)

    * 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 <[email protected]>
    
    * add test-emulator; disable test groovy pipeline
    
    * trigger all gh actions
    
    * fix win build
    
    * call test-emulator
    
    * fix test-emulator
    
    * test ubuntu 24.04 native build
    
    * ubuntu 24.04 has clang-16 by default
    
    ---------
    
    Co-authored-by: neodiX <[email protected]>
    Co-authored-by: Dr. Awesome Doge <[email protected]>
    Co-authored-by: ms <[email protected]>
    4 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    d75f9fa View commit details
    Browse the repository at this point in the history
  35. Update changelog

    EmelyanenkoK authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    ba9eefb View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    106f759 View commit details
    Browse the repository at this point in the history
  37. Improve creating channels in adnl (ton-blockchain#1108)

    * Improve creating channels in adnl
    
    * Improve handling of cryptographic keys
    SpyCheese authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    5065c7b View commit details
    Browse the repository at this point in the history
  38. Improve dht lookup in overlays (ton-blockchain#1104)

    Continue dht lookup even if value was found
    SpyCheese authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    7305e29 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    13a7a4b View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    e9e1664 View commit details
    Browse the repository at this point in the history
  41. Improve validator session stats (ton-blockchain#1117)

    * Improve validator session stats
    
    * Collator stats: block limits, number of processed external messages
    * Collator and validator work time
    * Last key block seqno
    * Approvers and signers
    
    * End validator session stats
    SpyCheese authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    81c6b11 View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    3cb0f9d View commit details
    Browse the repository at this point in the history
  43. * update links to docker image (ton-blockchain#1109)

    * include fift and func into Docker image
    
    Co-authored-by: EmelyanenkoK <[email protected]>
    Co-authored-by: neodiX <[email protected]>
    3 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    8a41c38 View commit details
    Browse the repository at this point in the history
  44. 5 Configuration menu
    Copy the full SHA
    3fa8b04 View commit details
    Browse the repository at this point in the history
  45. Configuration menu
    Copy the full SHA
    4d05351 View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    5ee0bd0 View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    8a6b981 View commit details
    Browse the repository at this point in the history
  48. add gh action to create docker image with a specified branch. Branch …

    …name will be used as image's tag name. (ton-blockchain#1133)
    
    Co-authored-by: neodiX <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    2b65038 View commit details
    Browse the repository at this point in the history
  49. Dynamic catchain delays, state serialization improvements (ton-blockc…

    …hain#1140)
    
    * Validator improvements
    
    * Fix cancelling state serialization
    * Disable state serializer on all mainnet validators
    * Flag --catchain-max-block-delay-slow
    
    * Set default catchain-max-block-delay to 0.4, delay-slow to 1.0
    
    ---------
    
    Co-authored-by: SpyCheese <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    e93a8e6 View commit details
    Browse the repository at this point in the history
  50. Ratelimit nochannel ADNL packets (ton-blockchain#1147)

    * Get ADNL stats in validator console
    
    * Add timestamp to stats
    
    * Limit nochannel adnl packets
    
    ---------
    
    Co-authored-by: SpyCheese <[email protected]>
    2 people authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    28ed668 View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    ce16d1e View commit details
    Browse the repository at this point in the history
  52. Configuration menu
    Copy the full SHA
    447cb8a View commit details
    Browse the repository at this point in the history
  53. Configuration menu
    Copy the full SHA
    98d39a0 View commit details
    Browse the repository at this point in the history
  54. Adapt test-adnl to rate limits

    SpyCheese authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    348f7c1 View commit details
    Browse the repository at this point in the history
  55. rebranding ton to ion

    ice-hermes authored and ice-charon committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    8eeb363 View commit details
    Browse the repository at this point in the history