Skip to content

Commit af529f5

Browse files
committed
Merge branch 'testnet' into accelerator
2 parents 13a3622 + c720204 commit af529f5

File tree

7 files changed

+37
-30
lines changed

7 files changed

+37
-30
lines changed

CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED TRUE)
8484
set(CMAKE_CXX_EXTENSIONS FALSE)
8585

8686
#BEGIN internal
87+
option(BUILD_SHARED_LIBS "Use \"ON\" to build shared libraries instead of static where it's not specified (not recommended)" OFF)
8788
option(USE_EMSCRIPTEN "Use \"ON\" for config building wasm." OFF)
8889
option(TON_ONLY_TONLIB "Use \"ON\" to build only tonlib." OFF)
8990
if (USE_EMSCRIPTEN)

Changelog.md

+13
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
## 2025.02 Update
2+
1. Series of improvement/fixes for `Config8.version >= 9`, check [GlobalVersions.md](./doc/GlobalVersions.md)
3+
2. Fix for better discovery of updated nodes' (validators') IPs: retry dht queries
4+
3. Series of improvements for extra currency adoption: fixed c7 in rungetmethod, reserve modes
5+
4. TVM: Fix processing continuation control data on deep jump
6+
5. A few fixes of tl-b schemes: crc computation, incorrect tag for merkle proofs, advance_ext, NatWidth print
7+
6. Emulator improvements: fix setting libraries, extracurrency support
8+
7. Increase of gas limit for unlocking highload-v2 wallets locked in the beginning of 2024
9+
8. Validator console improvement: dashed names, better shard formats
10+
11+
12+
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)
13+
114
## 2024.12 Update
215

316
1. FunC 0.4.6: Fix in try/catch handling, fixing pure flag for functions stored in variables

crypto/tl/tlblib.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ bool Bool::print_skip(PrettyPrinter& pp, vm::CellSlice& cs) const {
4545
}
4646

4747
bool NatWidth::print_skip(PrettyPrinter& pp, vm::CellSlice& cs) const {
48-
long long value = (long long)cs.fetch_ulong(32);
48+
long long value = (long long)cs.fetch_ulong(n);
4949
return value >= 0 && pp.out_int(value);
5050
}
5151

crypto/vm/cells/CellSlice.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ bool CellSlice::advance_ext(unsigned bits, unsigned refs) {
264264
}
265265

266266
bool CellSlice::advance_ext(unsigned bits_refs) {
267-
return advance_ext(bits_refs >> 16, bits_refs & 0xffff);
267+
return advance_ext(bits_refs & 0xffff, bits_refs >> 16);
268268
}
269269

270270
// (PRIVATE)

emulator/CMakeLists.txt

+6-10
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
22

3-
option(BUILD_SHARED_LIBS "Use \"OFF\" for a static build." ON)
4-
53
if (NOT OPENSSL_FOUND)
64
find_package(OpenSSL REQUIRED)
75
endif()
@@ -11,11 +9,6 @@ set(EMULATOR_STATIC_SOURCE
119
tvm-emulator.hpp
1210
)
1311

14-
set(EMULATOR_HEADERS
15-
transaction-emulator.h
16-
emulator-extern.h
17-
)
18-
1912
set(EMULATOR_SOURCE
2013
emulator-extern.cpp
2114
)
@@ -29,10 +22,10 @@ include(GenerateExportHeader)
2922
add_library(emulator_static STATIC ${EMULATOR_STATIC_SOURCE})
3023
target_link_libraries(emulator_static PUBLIC ton_crypto smc-envelope)
3124

32-
if (NOT USE_EMSCRIPTEN AND BUILD_SHARED_LIBS)
33-
add_library(emulator SHARED ${EMULATOR_SOURCE} ${EMULATOR_HEADERS})
25+
if (USE_EMSCRIPTEN)
26+
add_library(emulator STATIC ${EMULATOR_SOURCE})
3427
else()
35-
add_library(emulator STATIC ${EMULATOR_SOURCE} ${EMULATOR_HEADERS})
28+
add_library(emulator SHARED ${EMULATOR_SOURCE})
3629
endif()
3730

3831
if (PORTABLE AND NOT APPLE)
@@ -42,6 +35,9 @@ else()
4235
endif()
4336

4437
generate_export_header(emulator EXPORT_FILE_NAME ${CMAKE_CURRENT_BINARY_DIR}/emulator_export.h)
38+
if (USE_EMSCRIPTEN)
39+
target_compile_definitions(emulator PUBLIC EMULATOR_STATIC_DEFINE)
40+
endif()
4541
target_include_directories(emulator PUBLIC
4642
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
4743
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>)

recent_changelog.md

+10-11
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
1-
## 2024.12 Update
1+
## 2025.02 Update
2+
1. Series of improvement/fixes for `Config8.version >= 9`, check [GlobalVersions.md](./doc/GlobalVersions.md)
3+
2. Fix for better discovery of updated nodes' (validators') IPs: retry dht queries
4+
3. Series of improvements for extra currency adoption: fixed c7 in rungetmethod, reserve modes
5+
4. TVM: Fix processing continuation control data on deep jump
6+
5. A few fixes of tl-b schemes: crc computation, incorrect tag for merkle proofs, advance_ext, NatWidth print
7+
6. Emulator improvements: fix setting libraries, extracurrency support
8+
7. Increase of gas limit for unlocking highload-v2 wallets locked in the beginning of 2024
9+
8. Validator console improvement: dashed names, better shard formats
210

3-
1. FunC 0.4.6: Fix in try/catch handling, fixing pure flag for functions stored in variables
4-
2. Merging parts of Accelerator: support of specific shard monitoring, archive/liteserver slice format, support for partial liteservers, proxy liteserver, on-demand neighbour queue loading
5-
3. Fix of asynchronous cell loading
6-
4. Various improvements: caching certificates checks, better block overloading detection, `_malloc` in emulator
7-
5. Introduction of telemetry in overlays
8-
6. Use non-null local-id for tonlib-LS interaction - mitigates MitM attack.
9-
7. Adding `SECP256K1_XONLY_PUBKEY_TWEAK_ADD`, `SETCONTCTRMANY` instructions to TVM (activated by `Config8.version >= 9`)
10-
8. Private keys export via validator-engine-console - required for better backups
11-
9. Fix proof checking in tonlib, `hash` in `raw.Message` in tonlib_api
1211

13-
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)
12+
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)

tonlib/CMakeLists.txt

+5-7
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
22

3-
option(BUILD_SHARED_LIBS "Use \"OFF\" for a static build." ON)
4-
53
if (NOT OPENSSL_FOUND)
64
find_package(OpenSSL REQUIRED)
75
endif()
@@ -92,10 +90,10 @@ set(TONLIB_JSON_HEADERS tonlib/tonlib_client_json.h)
9290
set(TONLIB_JSON_SOURCE tonlib/tonlib_client_json.cpp)
9391

9492
include(GenerateExportHeader)
95-
if (NOT USE_EMSCRIPTEN AND BUILD_SHARED_LIBS)
96-
add_library(tonlibjson SHARED ${TONLIB_JSON_SOURCE} ${TONLIB_JSON_HEADERS})
93+
if (USE_EMSCRIPTEN)
94+
add_library(tonlibjson STATIC ${TONLIB_JSON_SOURCE})
9795
else()
98-
add_library(tonlibjson STATIC ${TONLIB_JSON_SOURCE} ${TONLIB_JSON_HEADERS})
96+
add_library(tonlibjson SHARED ${TONLIB_JSON_SOURCE})
9997
endif()
10098

10199
if (PORTABLE AND NOT APPLE)
@@ -105,7 +103,7 @@ else()
105103
endif()
106104

107105
generate_export_header(tonlibjson EXPORT_FILE_NAME ${CMAKE_CURRENT_BINARY_DIR}/tonlib/tonlibjson_export.h)
108-
if (!BUILD_SHARED_LIBS)
106+
if (USE_EMSCRIPTEN)
109107
target_compile_definitions(tonlibjson PUBLIC TONLIBJSON_STATIC_DEFINE)
110108
endif()
111109
target_include_directories(tonlibjson PUBLIC
@@ -159,7 +157,7 @@ endif()
159157

160158
install(FILES ${TONLIB_JSON_HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/tonlib/tonlibjson_export.h DESTINATION include/tonlib/)
161159

162-
if (NOT USE_EMSCRIPTEN AND BUILD_SHARED_LIBS)
160+
if (NOT USE_EMSCRIPTEN)
163161
install(EXPORT Tonlib
164162
FILE TonlibTargets.cmake
165163
NAMESPACE Tonlib::

0 commit comments

Comments
 (0)