mirror of
https://github.com/markqvist/Reticulum.git
synced 2024-11-25 23:20:16 +00:00
Compare commits
8 Commits
226004da94
...
90cfaa4e82
Author | SHA1 | Date | |
---|---|---|---|
|
90cfaa4e82 | ||
|
443aa575df | ||
|
619771c3a3 | ||
|
18a56cfd52 | ||
|
55c39ff27c | ||
|
159c7a9a52 | ||
|
af8edc335b | ||
|
4d3ea37bc3 |
22
Changelog.md
22
Changelog.md
@ -1,3 +1,25 @@
|
|||||||
|
### 2023-03-08: RNS β 0.5.0
|
||||||
|
|
||||||
|
This release brings two major new additions to the Reticulum API: The Channel and Buffer classes, that provides reliable delivery, and streams over Reticulum. Thanks to @acehoss, @erethon, @gdt and @faragher, who contributed to this release!
|
||||||
|
|
||||||
|
**Changes**
|
||||||
|
- Added the Buffer class to the API
|
||||||
|
- Added the Channel class to the API
|
||||||
|
- Improved error messages for offline RNode flashing
|
||||||
|
- Improved RNode reconnection when serial device disappears
|
||||||
|
- Fixed embedded scope identifier handling for AutoInterface on BSD
|
||||||
|
- Fixed AutoInterface not ignoring lo0 on BSD
|
||||||
|
- Fixed a bug causing JSON output from rnstatus to fail
|
||||||
|
- Fixed invalid installation of test suite into root module path
|
||||||
|
- Added EPUB version of the documentation
|
||||||
|
- Updated documentation
|
||||||
|
|
||||||
|
**Release Hashes**
|
||||||
|
```
|
||||||
|
0aaf8c0b0b58f07071de5ecd432f4d9cc176b9614419c828b81ad71aa7151624 rns-0.5.0-py3-none-any.whl
|
||||||
|
f310a5192c2df7665339c5998ae13815a647283af75b95ad7acbee8c20989954 rnspure-0.5.0-py3-none-any.whl
|
||||||
|
```
|
||||||
|
|
||||||
### 2023-02-17: RNS β 0.4.9
|
### 2023-02-17: RNS β 0.4.9
|
||||||
|
|
||||||
This maintenance release contains a number of bugfixes and minor improvements, along with a few additions to the API.
|
This maintenance release contains a number of bugfixes and minor improvements, along with a few additions to the API.
|
||||||
|
@ -58,6 +58,16 @@ def program_setup(configdir, dispall=False, verbosity=0, name_filter=None,json=F
|
|||||||
if stats != None:
|
if stats != None:
|
||||||
if json:
|
if json:
|
||||||
import json
|
import json
|
||||||
|
for s in stats:
|
||||||
|
if isinstance(stats[s], bytes):
|
||||||
|
stats[s] = RNS.hexrep(stats[s], delimit=False)
|
||||||
|
|
||||||
|
for i in stats[s]:
|
||||||
|
if isinstance(i, dict):
|
||||||
|
for k in i:
|
||||||
|
if isinstance(i[k], bytes):
|
||||||
|
i[k] = RNS.hexrep(i[k], delimit=False)
|
||||||
|
|
||||||
print(json.dumps(stats))
|
print(json.dumps(stats))
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
|
33
Roadmap.md
33
Roadmap.md
@ -14,24 +14,12 @@ This document outlines the currently established development roadmap for Reticul
|
|||||||
## Currently Active Work Areas
|
## Currently Active Work Areas
|
||||||
For each release cycle of Reticulum, improvements and additions from the five [Primary Efforts](#primary-efforts) are selected as active work areas, and can be expected to be included in the upcoming releases within that cycle. While not entirely set in stone for each release cycle, they serve as a pointer of what to expect in the near future.
|
For each release cycle of Reticulum, improvements and additions from the five [Primary Efforts](#primary-efforts) are selected as active work areas, and can be expected to be included in the upcoming releases within that cycle. While not entirely set in stone for each release cycle, they serve as a pointer of what to expect in the near future.
|
||||||
|
|
||||||
- The current `0.4.x` release cycle aims at completing:
|
- The current `0.5.x` release cycle aims at completing
|
||||||
- [x] Improve storage persist call on local client connect/disconnect
|
- [ ] Overhauling and updating the documentation
|
||||||
- [x] Better path invalidation on roaming interfaces
|
- [ ] Performance and memory optimisations of the Python reference implementation
|
||||||
- [x] Improved roaming support on Android
|
- [ ] Fixing potential bugs
|
||||||
- [x] Add bluetooth pairing code output to rnodeconf
|
|
||||||
- [x] Add `rnid` utility with encryption, signing and Identity funcionality
|
|
||||||
- [x] JSON output mode for rnstatus
|
|
||||||
- [ ] Add `Buffer` class to the API
|
|
||||||
- [ ] Add automatic retries to all use cases of the `Request` API
|
- [ ] Add automatic retries to all use cases of the `Request` API
|
||||||
- [ ] Updating the documentation to reflect recent changes and improvements
|
- [ ] Improve performance and efficiency of the `Buffer` and `Channel` API
|
||||||
- Targets for related applications
|
|
||||||
- [x] Add offline & paper message transport to LXMF
|
|
||||||
- [x] Implement paper messaging in Nomad Network
|
|
||||||
- [x] Implement paper messaging in Sideband
|
|
||||||
- [x] Add spatial and multi-interface roaming support in Sideband
|
|
||||||
- [x] Expand device support in Sideband to support older Android devices
|
|
||||||
- [x] And input fields, data submission and dynamic request links to Nomad Network
|
|
||||||
- [x] Add bandwidth-based weighting to LXMF propagation node sync peer prioritisation
|
|
||||||
|
|
||||||
## Primary Efforts
|
## Primary Efforts
|
||||||
The development path for Reticulum is currently laid out in five distinct areas: *Comprehensibility*, *Universality*, *Functionality*, *Usability & Utility* and *Interfaceability*. Conceptualising the development of Reticulum into these areas serves to advance the implementation and work towards the Foundational Goals & Values of Reticulum.
|
The development path for Reticulum is currently laid out in five distinct areas: *Comprehensibility*, *Universality*, *Functionality*, *Usability & Utility* and *Interfaceability*. Conceptualising the development of Reticulum into these areas serves to advance the implementation and work towards the Foundational Goals & Values of Reticulum.
|
||||||
@ -66,7 +54,6 @@ These efforts are aimed at improving the ease of which Reticulum is understood,
|
|||||||
### Universality
|
### Universality
|
||||||
These efforts seek to broaden the universality of the Reticulum software and hardware ecosystem by continously diversifying platform support, and by improving the overall availability and ease of deployment of the Reticulum stack.
|
These efforts seek to broaden the universality of the Reticulum software and hardware ecosystem by continously diversifying platform support, and by improving the overall availability and ease of deployment of the Reticulum stack.
|
||||||
|
|
||||||
- Improved roaming support on Android
|
|
||||||
- OpenWRT support
|
- OpenWRT support
|
||||||
- Create a standalone RNS Daemon app for Android
|
- Create a standalone RNS Daemon app for Android
|
||||||
- A lightweight and portable C implementation for microcontrollers, µRNS
|
- A lightweight and portable C implementation for microcontrollers, µRNS
|
||||||
@ -77,11 +64,7 @@ These efforts seek to broaden the universality of the Reticulum software and har
|
|||||||
### Functionality
|
### Functionality
|
||||||
These efforts aim to expand and improve the core functionality and reliability of Reticulum.
|
These efforts aim to expand and improve the core functionality and reliability of Reticulum.
|
||||||
|
|
||||||
- Improve storage persist call on local client connect/disconnect
|
|
||||||
- Add automatic retries to all use cases of the `Request` API
|
- Add automatic retries to all use cases of the `Request` API
|
||||||
- Faster path invalidation on physical topography changes
|
|
||||||
- Better path invalidation on roaming interfaces
|
|
||||||
- Add a `Buffer` class to the API, for handling stream-like buffers over Reticulum
|
|
||||||
- Network-wide path balancing
|
- Network-wide path balancing
|
||||||
- Distributed Destination Naming System
|
- Distributed Destination Naming System
|
||||||
- Globally routable multicast
|
- Globally routable multicast
|
||||||
@ -94,12 +77,7 @@ These effors seek to make Reticulum easier to use and operate, and to expand the
|
|||||||
- Add bluetooth pairing code output to rnodeconf
|
- Add bluetooth pairing code output to rnodeconf
|
||||||
- Easy way to share interface configurations, see [#19](https://github.com/markqvist/Reticulum/discussions/19)
|
- Easy way to share interface configurations, see [#19](https://github.com/markqvist/Reticulum/discussions/19)
|
||||||
- Transit traffic display in rnstatus
|
- Transit traffic display in rnstatus
|
||||||
- JSON output mode for rnstatus
|
|
||||||
- rnid utility
|
|
||||||
- rnsign utility
|
|
||||||
- rncrypt utility
|
|
||||||
- rnsconfig utility
|
- rnsconfig utility
|
||||||
- Expand rnx utility to true interactive remote shell
|
|
||||||
|
|
||||||
### Interfaceability
|
### Interfaceability
|
||||||
These efforts aim to expand the types of physical and virtual interfaces that Reticulum can natively use to transport data.
|
These efforts aim to expand the types of physical and virtual interfaces that Reticulum can natively use to transport data.
|
||||||
@ -127,7 +105,6 @@ The Reticulum ecosystem is enriched by several other software and hardware proje
|
|||||||
This section lists, in no particular order, various important efforts that would be beneficial to the goals of Reticulum.
|
This section lists, in no particular order, various important efforts that would be beneficial to the goals of Reticulum.
|
||||||
|
|
||||||
- The [RNode](https://unsigned.io/rnode/) project
|
- The [RNode](https://unsigned.io/rnode/) project
|
||||||
- [x] Evolve RNode into a self-replicating system, so that anyone can use an existing RNode to create more RNodes, and bootstrap functional networks based on Reticulum, even in absence of the Internet.
|
|
||||||
- [ ] Create a WebUSB-based bootstrapping utility, and integrate this directly into the [RNode Bootstrap Console](#), both on-device, and on an Internet-reachable copy. This will make it much easier to create new RNodes for average users.
|
- [ ] Create a WebUSB-based bootstrapping utility, and integrate this directly into the [RNode Bootstrap Console](#), both on-device, and on an Internet-reachable copy. This will make it much easier to create new RNodes for average users.
|
||||||
|
|
||||||
## Release History
|
## Release History
|
||||||
|
Binary file not shown.
Binary file not shown.
@ -991,7 +991,7 @@ and encrypted connectivity with the specified destination.</p>
|
|||||||
|
|
||||||
<dl class="py attribute">
|
<dl class="py attribute">
|
||||||
<dt class="sig sig-object py" id="RNS.Link.ESTABLISHMENT_TIMEOUT_PER_HOP">
|
<dt class="sig sig-object py" id="RNS.Link.ESTABLISHMENT_TIMEOUT_PER_HOP">
|
||||||
<span class="sig-name descname"><span class="pre">ESTABLISHMENT_TIMEOUT_PER_HOP</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">5</span></em><a class="headerlink" href="#RNS.Link.ESTABLISHMENT_TIMEOUT_PER_HOP" title="Permalink to this definition">#</a></dt>
|
<span class="sig-name descname"><span class="pre">ESTABLISHMENT_TIMEOUT_PER_HOP</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">6</span></em><a class="headerlink" href="#RNS.Link.ESTABLISHMENT_TIMEOUT_PER_HOP" title="Permalink to this definition">#</a></dt>
|
||||||
<dd><p>Timeout for link establishment in seconds per hop to destination.</p>
|
<dd><p>Timeout for link establishment in seconds per hop to destination.</p>
|
||||||
</dd></dl>
|
</dd></dl>
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user