Разработчикам

Установка SDK

2 мин чтенияОткрыть как Markdown ↗

Выберите нативный менеджер пакетов своего языка. Go, JavaScript и C/C++ напрямую используют базовые SDK: Go, JS/WASM и CGo. Пакеты для остальных языков оборачивают те же самые реализации.

Доступность релиза: каноническое имя @urnetwork/sdk и новые языковые пакеты ожидают публикации. Команды ниже — контракт установки для этого релиза; руководство по каждому языку также объясняет локальную сборку пакетов. Примерам с сокетами нужен релиз, содержащий новый API сокетов.

ЯзыкНативная установкаРуководство
Cvcpkg add port urnetwork-sdkРуководство по C
C++vcpkg add port urnetwork-sdkРуководство по C++
C#dotnet add package URnetwork.SDKРуководство по C#
Gogo get github.com/urnetwork/sdk/v2026@latestРуководство по Go
Javaimplementation("io.ur:urnetwork-sdk:")Руководство по Java
JavaScriptnpm install @urnetwork/sdkРуководство по JavaScript
Kotlinimplementation("io.ur:urnetwork-sdk:")Руководство по Kotlin
Pythonpip install urnetwork-sdkРуководство по Python
Rubygem install urnetwork-sdkРуководство по Ruby
Rustcargo add urnetwork-sdkРуководство по Rust
Swift.package(url: "https://github.com/urnetwork/sdk-swift", exact: "")Руководство по Swift
TypeScriptnpm install @urnetwork/sdkРуководство по TypeScript

Эти команды без уточнений выбирают релизы по умолчанию/стабильные. Для предварительных версий используйте npm install @urnetwork/sdk@nightly, pip install --pre urnetwork-sdk, dotnet add package URnetwork.SDK --prerelease или gem install urnetwork-sdk --pre. Cargo, Maven и SwiftPM позволяют закрепить точную предварительную версию. Имена пакетов предварительных версий совпадают с именами стабильных пакетов.

Java и Kotlin на Android

Используйте io.ur:urnetwork-sdk-android: вместо координат для десктопной JVM. AAR для Android собирается с помощью gomobile; десктопные Java/Kotlin используют JNA поверх рантайма CGo. Swift использует существующий Apple XCFramework.

Содержимое пакетов

Wheel-пакеты Python, гемы Ruby, пакеты NuGet и десктопные JVM-пакеты включают свои поддерживаемые нативные библиотеки. Крейт Rust во время сборки скачивает нативный ассет с закреплённой версией и проверенной контрольной суммой и встраивает его в исполняемый файл. Потребителям не нужны ни компилятор Go, ни ручное скачивание DLL. Поддержка ограничена платформами, включёнными в этот релиз; пакеты для Linux указывают свою минимальную версию libc.

npm-пакет содержит парный ему рантайм Go/WASM и объявления TypeScript, а также запускаемые примеры для Node и браузера. И те и другие используют настроенный размещённый Device. У нативного fetch API браузера нет пользовательской фабрики сокетов; адаптер запросов Axios и пример с Direct Sockets ищите в руководстве по HTTP-интеграции для этого языка.

Примеры и поведение сокетов

Откройте обозреватель примеров: для каждого языка там есть README по установке, руководство по запуску socket/README.md и исполняемые исходные файлы. О разнице между сокетом ядра и сокетом Device, включая возможную доставку дубликатов, когда UDP устраивает гонку первой датаграммы между IPv4 и IPv6, читайте в руководстве по сокетам.

Об установке из исходников, закреплении версий и альтернативных менеджерах пакетов читайте в руководствах по языкам выше. Рецепты C/C++ публикуются в настроенный собственный удалённый репозиторий Conan или Git-реестр vcpkg; добавьте этот репозиторий/реестр один раз, прежде чем выполнять команды выше. Попадание в публичные коллекции апстрима требует одобрения их мейнтейнеров. Руководства по языкам описывают эту настройку и локальную установку из архива CMake.