Tags give the ability to mark specific points in history as being important
-
1.2.0
d7c3859f · ·This release brings the ability to use Git natively over Reticulum networks, adds the `rnsh` program as part of the included utilities, and additionally includes several improvements and performance optimizations. **Changes** - Added Reticulum Git Repositories Node utility as part of included utility programs. - Added git remote helper to interact with git repositories over Reticulum. - Added the `rnsh` program to the included utilities. - Added LocalInterface client TX hold on client app sleep on Android. - Added AutoInterface filters for `rmnet` interfaces on Android. - Added inbound packet wait during transport core initialization. - Added the ability to set logfile destination before RNS initialization. - Added automatic active link teardown on instance shutdown. - Improved link teardown on SIGINT/SIGTERM. - Improved ratchet cleaning. **Release Hashes** ``` b58e97332241755ed32e309d46e09615a123490430ae85fcbdec9318c9e26154 rns-1.2.0-py3-none-any.whl 9813a6c2236edba18af7d3a072a6226bc65ae384d23b1f41467cb3617d65fdae rnspure-1.2.0-py3-none-any.whl ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.2.0-py3-none-any.whl.rsg ```
-
1.1.9
45e12cc6 · ·This maintenance release fixes a critical security issue, that would allow an attacker to craft a BZ2 decompression bomb via Resource transfers or Buffer StreamDataMessage, causing an out-of-memory condition and crashing the receiving process via OOM killer. Big thanks to @defidude (github.com/ratspeak) for discovering and reporting this vulnerability! **Changes** - Fixed bz2 decompression bomb vulnerability in Resource transfer assembly and Buffer StreamDataMessage unpacking. **Release Hashes** ``` 39a131aeb5d76fd73bfc67f68135f49ab0cf8628af154e04096a05c208ce77b6 rns-1.1.9-py3-none-any.whl aab7bfc8c65514c9bdf4c22f00d288faf6c9e1777fc002dbe3eb29c286e67128 rnspure-1.1.9-py3-none-any.whl ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.1.9-py3-none-any.whl.rsg ```
-
1.1.8
a70bd444 · ·This maintenance release fixes a critical bug in path state management, that could result in significant path convergence degradation under certain conditions. **Changes** - Fixed path state potentially being applied before path table entry exists, causing worse paths to be selected. **Release Hashes** ``` 9cf728e9e9a9fe113e4ac14e6b833f7ee65feedf8468e6ab94a261bf205f2632 rns-1.1.8-py3-none-any.whl 407dc3975335e9eabaaddb7ed1dc75fc3a1b8d24a7207e740797440c2ad0b3e5 rnspure-1.1.8-py3-none-any.wh ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.1.7-py3-none-any.whl.rsg ```
-
1.1.7
e1340e87 · ·RNS 1.1.7 **Changes** - Added periodic known destination data cleaning based on local relevance. - Improved resource transfer sequencing timing calculations and reliability. - Improved BackboneInterface error handling on EPOLL errors. - Ensured non-background data persist runs synchronously. **Release Hashes** ``` 4d9702c5d9bb8a3c8b94766cb51cccad5afd78d615af9a6b146730347044e6f0 rns-1.1.7-py3-none-any.whl 172dede7656b41b85e4319354ed04649b518e58c54586da7e443579c620a0a5b rnspure-1.1.7-py3-none-any.whl ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.1.7-py3-none-any.whl.rsg ```
-
1.1.6
7fdac211 · ·RNS 1.1.6 **Changes** - Improved transport memory consumption. - Improved transport tunnel handling. - Improved gracious transport data persist handling. - Added ingress control bypass for pending path requests. - Added local destinations lookup map for better transport efficiency to local destinations. - Fixed disk I/O bound thread execution time starvation on cache management jobs. - Fixed invalid EPOLL modification error handler. - Fixed incorrect default IFAC size for autoconnected, discovered interfaces. Thanks @taprootmx! - Ensure loop-originating closures have variables captured at iteration-time. Thanks @taprootmx! **Release Hashes** ``` 2ce4451668f8c464295cc269188c232e7805ddd618ec0135550a5e6809df5de0 rns-1.1.6-py3-none-any.whl ba3e541e69a2f4892177383c8ec4e7d172d298546317e08270928c0163865aa3 rnspure-1.1.6-py3-none-any.wh ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.1.6-py3-none-any.whl.rsg ```
-
1.1.5
1901cca2 · ·RNS 1.1.5 **Changes** - Initial refactoring work for free-threaded transport I/O. - Improved interface discovery validation. - Fixed invalid ingress control burst activation and subsequent path resolution failure due to incorrect announce frequency calculation. - Fixed missing configuration entry generation for discovered I2P interfaces. - Fixed resource transfer cancellation failing on in-flight split resource transfers. - Fixed ingress control configuration not inheriting down to spawned interfaces on some interface types. **Release Hashes** ``` 28f39ad97ef307a1e270b91ef19db07d8e1a7bbc8628c478303725894c64deff rns-1.1.5-py3-none-any.whl 1a90db16d2cff4ad909b44baf9b4fd0177da2ed545cdb9cfb2c51423707b49e9 rnspure-1.1.5-py3-none-any.whl ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.1.5-py3-none-any.whl.rsg ```
-
1.1.4
1b50b7f4 · ·RNS 1.1.4 **Changes** - Fixed invalid application of IP/hostname validation for on non-relevant interfaces. Thanks @joakim! **Release Hashes** ``` b2a175abd64d1581dd058206832793dbf7053a304c819ff8bc143a79c49cb747 rns-1.1.4-py3-none-any.whl 16c4ae6722bbd016e8db046e7bdd60eb24f9ec55966ec5723dc39301265d0186 rnspure-1.1.4-py3-none-any.whl ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.1.4-py3-none-any.whl.rsg ```
-
1.1.3
286a78ef · ·RNS 1.1.3 **Changes** - Improved discovered interface auto-connect handling - Improved interface discovery handling - Added `discovered_interfaces` API method - Fixed a potential race condition in request timeout handling - Fixed a regression in resource file transfers **Release Hashes** ``` 1de9b46c8f24931fa41974664ddbf4251d3fdd069be4de03c64b42a7cf4f8fb4 rns-1.1.3-py3-none-any.whl eac8d223fcb6ce94e1bd3f04730d8542675caf4b22286e11988e9402ea9b69c0 rnspure-1.1.3-py3-none-any.whl ``` **Release Signatures** Release artifacts include `rsg` signature files that can be validated against the RNS release signing identity `<bc7291552be7a58f361522990465165c>` using `rnid`: ```sh rnid -i bc7291552be7a58f361522990465165c -V rns-1.1.3-py3-none-any.whl.rsg ```
-
-
-
1.1.0
4eb5dbc6 · ·RNS 1.1.0 Enjoy. **Changes** - Added on-network global interface discovery. Hello world. - Added discovered interface auto-connection. Robotic. - Added external IP resolution for discovery-enabled interfaces. Snip-snip. - Added encrypted interface discovery announces. Welcome home. - Added bootstrap interface functionality. Decent. - Added blackhole handling and management. Thank the Chinese guy. - Added distributed blackhole list publishing and updating. Spammers go home. - Added foundational network identity implementation. All your base. - Added `await_path` method to API. Tick-tock. - Added reverse-unicast peer discovery packet mechanism to AutoInterface. Ping-pong. - Added custom identity support to `rncp`, thanks MikelCalvo! - Added monitor mode to `rnstatus`, thanks MikelCalvo! - Improved announce processing. Swoosh. - Updated documentation quite a bit. Looky. - Enabled per-peer ingress limiting on Weave and Auto interfaces. Hammertime. - Fixed **the** typo, yes it's the olny one I'm sure. - Fixed bugs. Squish. **Release Hashes** ``` 180b8baec2ec7d21abe2cec25ff763e70b2129c012fb02fc23c2fd654f94c1f5 dist/rns-1.1.0-py3-none-any.whl d9e32caf66a9c53199e901d2c173e1de1bf50f1f0c9d5250e5d1b3b07bedcd7c dist/rnspure-1.1.0-py3-none-any.whl ```
-
1.0.4
708f6667 · ·RNS 1.0.4 This release includes updates to RNode BLE reliability, and adds support for connecting RNodes to a host over WiFi and Ethernet. **Changes** - Improved handling for RNodes with PA/LNA combo - Added interference detection stats to `rnstatus` output for RNode interfaces - Updated documentation **Release Hashes** ``` 7a2b7893410833b42c0fa7f9a9e3369cebb085cdd26bd83f3031fa6c1051653c rns-1.0.4-py3-none-any.whl ee647e7b3b94abdf1fab618a861390531a4aacc93eecce12c9e97280195c0e2d rnspure-1.0.4-py3-none-any.whl ```
-
1.0.3
a63dd67a · ·RNS 1.0.3 This release includes updates to RNode BLE reliability, and adds support for connecting RNodes to a host over WiFi and Ethernet. **Changes** - Added support for connecting RNode devices over WiFi and Ethernet - Added support for configuring RNode WiFi and IP settings to `rnodeconf` - Updated BLE connection read timeouts on Android, fixes intermittent BLE connection resets in areas with high 2.4GHz spectrum utilization - Added handling for edge case where RNode serial port was never opened due to failure on interface detach - Fixed broken links in documentation **Release Hashes** ``` 6bafde4c838ad778bf6878967e84c798e34d6ca621b255f59a60f38cb04ac138 dist/rns-1.0.3-py3-none-any.whl f277899f95c1189c6bf3beb40ac656c8b36dfd3d7e4cfb2bc3b4a1e6dc3484fa dist/rnspure-1.0.3-py3-none-any.whl ```
-
1.0.2
080216bd · ·RNS 1.0.2 This maintenance release adds support for high-power RNodes with a LoRa PA and/or LNA. **Changes** - Added support for RNodes with a PA and/or LNA - Added support for monitoring RNode CPU temperature via `rnodeconf`
-
1.0.1
a699d7c1 · ·RNS 1.0.1 This release brings a number of bugfixes, as well as stability and reliability improvements. It also adds support for using Weave devices as Reticulum interfaces, fixes long-standing Bluetooth Low Energy connection issues on Android, and includes several API and usability improvements. **Changes** - Added path response signalling to announce handler API - Added interface module for Weave devices - Added support for connecting to Weave devices over serial/USB on Android - Added support for allow files to `rnx` - Added detection and logging of multicast echoes never arriving on AutoInterface system devices. - Added Heltec v4 support to `rnodeconf` - Implemented handler for ensuring dynamic destination app data can be generated and sent even on first system-internal discovery announce - Updated documentation and manual - Improved `AutoInterface` peering timing - Fixed RNodeInterface Bluetooth Low Energy connection hangs on Android - Fixed RNodeInterface Bluetooth Low Energy MTU not being configured correctly on Android - Fixed command byte collision in RNodeInterface and RNodeMultiInterface - Fixed string formatting for Android log output - Updated output formatting for `rnid` **Release Hashes** ``` aa77b4c8e1b6899117666e1e55b05b3250416ab5fea2826254358ae320e8b3ed rns-1.0.1-py3-none-any.whl b3ddfa0b533631d9f1213043a0282952ae6e9f72c3072bbca053ac48e0483f7e rnspure-1.0.1-py3-none-any.whl ```
-
1.0.0
8579a7f2 · ·RNS 1.0.0 We're out of beta. Thanks to **everyone** who helped make it this far. This release brings a number of bugfixes, as well as stability and reliability improvements. **Changes** - Improved BLE device discovery on Android - Improved BLE MTU configuration on Android - Fixed a bug in handling of link requests with invalid link mode bytes - Fixed potential AutoInterface peer discovery add before final init complete - Fixed a potential EPOLL backend hang on interface failure - Fixed various log statements - Fixed announce cap crash for `RNodeMultiInterface` with transport mode enabled - Updated documentation - Removed legacy AES-128 handlers **Release Hashes** ``` 5a9f18840510b69f89c6706d130177e2843c9e19c774707ae2661030d693dfc1 rns-1.0.0-py3-none-any.whl acfd52af9bf41f78be017579ca06c0abe748d0b98dbdc9baacf140a0606599ec rnspure-1.0.0-py3-none-any.whl ```
-
0.9.6
5387264d · ·RNS β 0.9.6 This release activates AES-256 as the default encryption mode for all communication. It is the last release that will support the old AES-128 based modes, which will be entirely phased out in the next release. This release also includes a number of API and resource consumption improvements, and fixes a bug. **Changes** - Enabled AES-256 as default encryption mode for all traffic - Added dynamic link keepalive and timeout calculation - Added ability to efficiently transfer files as responses in the `Request` API - Added ability to include metadata on `Resource` transfers - Added option to specify `Resource` auto-compression limits - Added option to specify `Request` response auto-compression limits - Added `Resource` transfer example - Added allow overwrite option to `rncp` - Improved hardware MTU auto-configuration - Improved handling of file transfers using the `Resource` API - Improved `Resource` transfer memory consumption - Improved memory consumption of applications connected to a shared instance - Improved `rncp` memory consumption for large files - Fixed announce handlers not triggering after shared instance disappearance **Release Hashes** ``` a23c64a04c1e83fd0ab449f564ac904da7fd4f61c0faf68a063f486cc48b44bd rns-0.9.6-py3-none-any.whl 4544882dea902b18b00d8a04c9ab93201974573b7b63c3db06cb310b0acec240 rnspure-0.9.6-py3-none-any.whl ```
-
0.9.5
32c839f4 · ·RNS β 0.9.5 This release initiates migration of Reticulum from AES-128 to AES-256 as the default link and packet cipher mode. It is a compatibility/migration release, that while supporting AES-256 doesn't use it by default. It will work with both the old AES-128 based modes, and the new AES-256 based modes. There's a very slight penalty in performance to support both the old and new modes at the same time, but only for single packet APIs (not links), and it really shouldn't be noticeable in any everyday use. In the next release, version `0.9.6`, Reticulum will transition fully to AES-256 and use it by default for all communications. That means that both single packets and links will use AES-256 by default. The old AES-128 link mode may or may not be available for a few releases, but will ultimately be phased out entirely. The update requires no intervention, configuration changes or anything similar from a users or developers perspective. Everything should simply work. This goes both for the 0.9.5 update, and the next 0.9.6 update that transitions fully to AES-256. **Changes** - Added support for AES-256 mode to links and packets - Added dynamic link mode support - Added temporary backwards compatibility for AES-128 link and packet modes - Added `get_mode()` method to link API - Added tests for all enabled link modes - Added `instance_name` option and description to default config file - Improved ratchet persist reliability if Reticulum is force killed while persisting ratchets - Fixed interface string representation for some interfaces - Fixed instance name config option being overwritten if option was not last in section - Fixed unhandled potential exception on fast-flapping `BackboneInterface` connections **Release Hashes** ``` 0b880827369dd4bda7e4691e0e157e75fab4c22554743c1c7f07a350106114e8 rns-0.9.5-py3-none-any.whl 6c00d12176de40d7dc45d9edd7952a161413f4cc4cc276b82bf3811f99440556 rnspure-0.9.5-py3-none-any.whl ```
-
0.9.4
bfe5b876 · ·RNS β 0.9.4 This release significantly improves memory utilisation and performance. It also includes a few new features and general improvements to the included utilities and programs. **Changes** - Significantly improved memory utilisation, thread count and performance on nodes with many interfaces or clients - Switched local instance communication to run over abstract domain sockets on Linux and Android - Switched instance IPC to run over abstract domain sockets on Linux and Android - Added kernel event based I/O backend on Linux and Android - Added fast `BackboneInterface` type - Added support for XIAO-ESP32S3 to `rnodeconf` - Added interactive shell option to `rnsd` - Added API option to search for identity by identity hash - Added option to run TCP and Backbone interfaces in AP mode - Improved `RNodeMultiInterface` host communications specification - Improved `rncp` statistics output - Improved link and reverse-table culling - Fixed an occasional I/O thread hang on instance shutdown, that would result in an error printed to the console - Fixed various minor interface logging inconsistencies - Fixed various minor interface checking inconsistencies - Updated internal `configobj` implementation - Refactored various parts of the transport core code - Swicthed to using internal `netinfo` implementation instead of including full `ifaddr` library - Cleaned out unneeded dependencies - Cleaned various **Release Hashes** ``` 4b01260519d0c995f343ad325c302b779557fa686ec81bf00161696f0d657689 rns-0.9.4-py3-none-any.whl c590be37c813f5c145649fcf488a4fdd1687b6187ab02a8679ca730c511fb042 rnspure-0.9.4-py3-none-any.whl ```
-
0.9.3
f5420d3b · ·RNS β 0.9.3 This maintenance release improves performance and fixes a number of bugs. **Changes** - Enabled link MTU discovery by default - Added on-demand object code compilation and loader shim - Added link API methods - Added child interface spawning for AutoInterface - Fixed corrupt ratchet files not being removed on maintenance cleaning - Fixed `rnid` not waiting for announce timebase tick before announcing **Release Hashes** ``` 0270c988a2b898b28348cd78138667115d4ef3f7e09c86531baaefbee35ef851 rns-0.9.3-py3-none-any.whl eee1a6c4c9c0f04bb17b12b8fb37b9c4cec12a99c87a046730eb7c9a6ffd999f rnspure-0.9.3-py3-none-any.whl ```