Version 0.3 of Scheme-GNUnet has been released. The main change since the 0.2 release, is some CADET support. There are also various small fixes and improvements. If you have any questions, please reply to guile-user@gnu.org. * What is Scheme-GNUnet? Scheme-GNUnet is a WIP (Guile) Scheme port of the GNUnet client libraries. Unlike gnunet-guile, it is not a binding for the C libraries. It can be used in multi-threaded applications, e.g. with guile-fibers. It is not to be confused withhttps://git.gnunet.org/gnunet-guile2.git andhttps://git.savannah.gnu.org/cgit/guix/gnunet.git, which implement bindings for the C libraries and support a different set of services. * Things currently supported Scheme-GNUnet currently supports connecting to the DHT, NSE and CADET services. DHT monitoring is not yet supported. Listening on CADET ports is not yet supported. * Location The source code can be found at, tag v0.3 and commit bf87f7d1c2e0f16f417a1318803e9468525964df. However, it is recommended to use the slightly later commit f5dc44e66373c29f1c84ea89d8080939a8dfbfd2 instead, as it works-around a Guile 3.0.7 bug. I can send a copy of the manual (PDF, HTML or TeXmacs) by e-mail if desired (the compilation instructions, including the compilation instructions of the manual, are in the manual, so there's a small bootstrapping problem here ...). * Changes since 0.2 ** New functionality - New tools for writing services -- have a look at ‘Writing service communication code’ and ‘Testing service code’ in the manual for various procedures for writing service code and testing it. - There is some initial support for CADET in (gnu gnunet cadet client), documented in the manual. However, it is incomplete and reconnection is completely untested. - DHT searches can now be stopped (‘cancelled’) with 'stop-get!'. Additionally, DHT searches are automatically cancelled when the search object becomes unreachable. - DHT and NSE server objects are automatically disconnected when they become unreachable. - The new module (gnu gnunet concurrency lost-and-found) can detect if an object became garbage-collectable, interacting with guile-fibers. - (gnu gnunet utils bv-slice) has been extended. ** API changes - (gnu gnunet data-string) now signals bogus input with exceptions instead of returning #false. - (gnu gnunet utils hat-let) is now more flexible in recognising _ -- it is now irrelevant whether _ has been imported (from (rnrs base)) or not. ** Bug fixes - Negative floating point numbers are now recognised by the configuration parser. - Envelopes now have a 'envelope-peek-irrevocably-sent?' procedure for testing if it has been sent. ** Internals - (gnu gnunet data-string) has been modified to not mutate any variables. - The tests in tests/mq-stream are now more sensitive. - Documentation has been split in several files. - The configure script tests if the required Guile libraries are available. ** Documentation - The ‘message-symbol’ network structure property is now defined for DHT messages and documented in the manual. The aim is to make the code a little more self-documenting and understandable. - Likewise, a new ‘c-type’ property has been defined, making cross-referencing between Scheme and C sources simpler. - ‘send-message!’ and ‘priority-preferences’ are documented. Greetings, Maxime.