Short announces with new services, tools, libraries and their features. Request a post: https://t.me/tondev_news/33
Информация о канале обновлена 03.10.2025.
Short announces with new services, tools, libraries and their features. Request a post: https://t.me/tondev_news/33
✈ TON Connect UI 2.3.1 — PLEASE UPDATE
This continues our push to improve reliability and success rates across the TON ecosystem.
📁 @tonconnect/sdk v3.3.1
📁 @tonconnect/ui v2.3.1
📁 @tonconnect/ui-react v2.3.1
👥 What changed
• BREAKING: ton_proof limits: payload ≤ 128 bytes, domain ≤ 128 bytes, payload + domain ≤ 222 bytes. If you exceed these limits, the connection will fail.
• BREAKING: sendTransaction & signData: requests are now strictly validated against the spec. Non-conformant requests will fail.
• stateInit, payload, and cell now accept both Base64 and Base64URL, auto-converted to Base64 per spec.
• Migrated wallet list URL to https://config.ton.org/wallets-v2.json for improved reliability
• Updated fallback wallets list to match https://config.ton.org/wallets-v2.json
• Client ID added to all deeplinks to allow better UX on the wallet side.
• Improved overall package quality and stability, increased test coverage.
🗒 What to test
• Connect (ton_proof only): ensure your payload and domain sizes are within limits. Typical failure causes: the payload or domain does not meet the limits.
• Send transactions: verify that the request shape, required fields, types, encodings exactly match the spec. Typical failure causes: invalid address format, amount not a string, bad payload/stateInit encoding, unknown fields.
• Sign data: verify the request type and fields are correct. Typical failure causes: wrong type and field combination, bad encoding.
⬇ To update, run npm install @tonconnect/sdk@3.3.1 @tonconnect/ui@2.3.1 @tonconnect/ui-react@2.3.1
🔗 Specification https://github.com/ton-blockchain/ton-connect/blob/main/requests-responses.md#methods
💬 Encountered issues? Please report them on GitHub at https://github.com/ton-connect/sdk/issues.
❤ Your feedback and usage examples are crucial. Share your experiences to help us evolve the SDK!
Two months have passed — maybe you even started to worry about the silence. The reason is simple: I worked on features that are "nice to have" but complex and time-consuming to implement — and they've only just been finished.
✅ Notable changes in Tolk v1.1:
1. map
— a convenient zero-overhead wrapper over TVM dictionaries
2. enum
— group numeric constants into a distinct type
3. private
and readonly
fields in structures
4. Overload resolution and partial specialization
PR on GitHub with detailed info.
✔ Built-in maps
Forget about uDictSetBuilder, sDictGetFirstAsRef, and the endless boilerplate of low-level dict helpers. A universal map
now fully replaces them.
var m: map= createEmptyMap();
m.set(1, 10);
m.addIfNotExists(9, -90);
m.delete(9); // now: [ 1 => 10 ]
m.exists(1); // true
m.isEmpty(); // false
— no need to care about cells and slices under the hood:
val r = m.get(1);
if (r.isFound) { // true
val v = r.loadValue(); // 10
}
// or if the key 100% exists
val v = m.mustGet(1); // 10
forward and backward:
var r = m.findFirst();
while (r.isFound) {
// use r.getKey() and r.loadValue()
r = m.iterateNext(r);
}
— it just works:
map
map>
map>
...
- self-explanatory methods, nicely suggested by IDEs
- DICTISETREF, DICTREPLACE, DICTUREPLACEGET, ... — 100+ asm instructions covered by the type system
- all deserialization to/from cells perfectly hidden by high-level API
- absolutely zero overhead compared to low-level TVM dictionaries
✔ Enums
A long-awaited syntax feature for grouping constants.
// will be 0 1 2
enum Color {
Red
Green
Blue
}
Being integers at runtime, enums have their own place in the type system. They resemble TypeScript/C++ enums. (Unlike Rust, where each variant may have its own shape. In Tolk we have union types — a more powerful solution)
struct Gradient {
from: Color
to: Color? = null
}
var g: Gradient = { from: Color.Blue };
g.from == Color.Red; // false
Compatible with all language features: auto-serialization, exhaustive pattern matching, generics, etc.
✔ Private and readonly fields
Fields can now have modifiers:
* private
— accessible only within methods
* readonly
— immutable after object creation
struct PosInTuple {
private readonly t: tuple
curIndex: int
}
fun PosInTuple.last(mutate self) {
// `t` is visible only in methods
// and cannot be modified
self.curIndex = self.t.size() - 1;
}
Now it's possible to overload methods for "more specific" implementations:
// general implementation
fun Iterator.next(self) { ... }
// a more specific one
fun Iterator>.next(self) { ... } |
In complex scenarios, this feature lets you adjust the behavior of specific types while keeping a common interface. It "just works", but internally the compiler was enhanced with shape of types, structural depth, type dominators, and several heuristics.
🌳 After Tolk v1.0 release, many people and companies started migrating from FunC to Tolk. I have received a lot of feedback and requests (and almost zero bug reports, huh). Meanwhile, a bigger roadmap is already in motion. In the near future I'll also try to close long-standing questions around TypeScript wrappers, and deliver proper from-scratch documentation.
Владелец канала не предоставил расширенную статистику, но Вы можете сделать ему запрос на ее получение.
Также Вы можете воспользоваться расширенным поиском и отфильтровать результаты по каналам, которые предоставили расширенную статистику.
Также Вы можете воспользоваться расширенным поиском и отфильтровать результаты по каналам, которые предоставили расширенную статистику.
Подтвердите, что вы не робот
Вы выполнили несколько запросов, и прежде чем продолжить, мы ходим убелиться в том, что они не автоматизированные.