v0.2.18
release-drafter
released this
18 Apr 18:31
·
342 commits
to refs/heads/master
since this release
Release Notes
Features
- Merge group announce portion of new groupchats implementation @JFreegman (#2230)
- Allow overriding mono_time in tox_new. @iphydf (#2206)
- Store announcements @zugz (#2147)
- Add support for custom random number generator. @iphydf (#2190)
- Merge moderation portion of new groupchats codebase @JFreegman (#2169)
- Add support for overriding network functions. @iphydf (#2177)
- Merge onion_announce changes from new groupchats fork @JFreegman (#2164)
Performance improvements
Bug Fixes
- remove the assert because buffer can be larger than UINT16_MAX. @zoff99 (#2299)
- Don't allow onion paths to be built from real friends. @iphydf (#2287)
- Fix potential array out-of-bounds in DHT onion path building. @iphydf (#2282)
- Allow onion paths to be built from more random nodes. @iphydf (#2283)
- Really fix overrun added in e49a477 @zugz (#2273)
- Add missing return on error @JFreegman (#2272)
- Fixed leak and overrun added in e49a477 @zugz (#2266)
- Format IP as string again in error log. @iphydf (#2257)
- Fix a stack overflow triggered by small DHT packets. @iphydf (#2255)
- Don't crash if RNG init failed. @iphydf (#2246)
- fix typo in git command in INSTALL.md @zugz (#2225)
- Correct calculation of packet sent time @zugz (#2195)
- Eliminate memory leak in toxav. @iphydf (#2155)
- Allow port range in DHT_bootstrap.c. @iphydf (#2143)
Documentation
- Add information regarding git submodules, cmp to INSTALL.md @Tha14 (#2201)
- Put all the tox public api into a fake "tox" namespace. @iphydf (#2153)
Maintenance (Grunt tasks)
- Release 0.2.18 @robinlinden (#2300)
- Downgrade C++ version to 17 @JFreegman (#2275)
- Upgrade to C++20 in CMake build. @iphydf (#2263)
- Add initial ESP32 docker build. @iphydf (#2243)
- Add MISRA-2012 check using cppcheck's misra addon. @iphydf (#2251)
- Support producing shared libraries on Windows @robinlinden (#2204)
- Add dependabot config. @iphydf (#2236)
- Fix path to fuzzer binaries in clusterfuzz build. @iphydf (#2228)
- Add
uint8_t
version ofbin_pack
for numbers. @iphydf (#2223) - Clone submodules in clusterfuzzlite Dockerfile. @iphydf (#2210)
- Remove valgrind build. @iphydf (#2208)
- Add third_party to toxcore-sources docker image. @iphydf (#2189)
- Use "master" as the branch in toktok-fuzzer. @iphydf (#2173)
- Enable memory sanitizer build. @iphydf (#2163)
- Update the Appveyor build to VS2019 to work around conan issues @robinlinden (#2159)
- Be even more explicit about integer range bounds. @iphydf (#2145)
- Add testing/Dockerfile to the CI build. @iphydf (#2146)
Maintenance (Code cleanup)
- remove unused field last_seen from Onion_Friend @zugz (#2297)
- Avoid goto in msi.c. @iphydf (#2281)
- Replace a series of
if
statements with aswitch
. @iphydf (#2233) - remove populate_path_nodes_tcp @zugz (#2250)
- Use
static_assert
instead ofassert
where possible. @iphydf (#2242) - Make
*_free
andkill_*
functions nullable. @iphydf (#2238) - Remove layers in the cmake build. @iphydf (#2229)
- Add Network object parameter for addr_resolve. @iphydf (#2217)
- Remove unused random_testing program. @iphydf (#2213)
- Remove all uses of
TOX_*_MAX_SIZE
macros. @iphydf (#2214) - Add include for assert.h for the fuzzing build. @iphydf (#2224)
- Move definitions of tox_private.h functions to tox_private.c. @iphydf (#2211)
- Expand
CONST_FUNCTION
and remove the macro. @iphydf (#2212) - Mark Mono_Time const where possible. @iphydf (#2199)
- Avoid name clash between struct field and function. @iphydf (#2202)
- Add more null checks in
tox_new
. @iphydf (#2200) - Make addr_resolve a private function. @iphydf (#2188)
- Use
_Static_assert
in gcc/clang. @iphydf (#2186) - improve CMakeLists.txt structure @sudden6 (#2101)
- Expose
struct Tox
to internal code. @iphydf (#2158) - Reduce scope of array-typed variables where possible. @iphydf (#2167)
- Reduce scope of variables as requested by cimple. @iphydf (#2166)
- Avoid
memset
on structs. @iphydf (#2149) - Split the huge TCP client packet handler. @iphydf (#2157)
- Sync doc comments between .h and .c files. @iphydf (#2156)
- Move all the group.h structs into group.c. @iphydf (#2150)
- Minor cleanups in TCP_connection.c. @iphydf (#2144)
- Count re-adding an existing bootstrap node as success. @iphydf (#2142)
- Disable LAN discovery in TCP-only mode. @iphydf (#2141)
- Add assertion for decrypted data length. @iphydf (#2140)
Maintenance (Dependencies)
Maintenance (Refactoring)
- Move crypto utilities from util to crypto_core. @iphydf (#2284)
- Avoid
static_cast
inFuzz_System
functions. @iphydf (#2277) - Protect array unpacking against invalid lengths. @iphydf (#2261)
- Rename announce functions into their own namespace. @iphydf (#2258)
- Use a struct for the
ip_ntoa
buffer. @iphydf (#2248) - Allow NULL logger; make it no-op in NDEBUG. @iphydf (#2244)
- Rename bin_pack/unpack functions the same as cmp funcs. @iphydf (#2219)
- Use cmp instead of msgpack-c for events packing. @iphydf (#2175)
Maintenance (Tests)
- Improve test hermeticity by using local TCP relay. @iphydf (#2280)
- Add a Null_System used in toxsave_harness. @iphydf (#2289)
- enable additional sanitizers for fuzzing @sudden6 (#2288)
- Enable fuzzing for TCP. @iphydf (#2279)
- Don't abort fuzz test when tox_new fails. @iphydf (#2285)
- Improve error messages in toxav_basic_test. @iphydf (#2270)
- Add more functionality to the bootstrap fuzz harness. @iphydf (#2234)
- Improve stability of forwarding_test. @iphydf (#2249)
- Add fuzzer support functions for internal toxcore objects. @iphydf (#2232)
- Add DHT and tox_events fuzz tests to the cmake build. @iphydf (#2187)
- Remove save_load_test from autotools build. @iphydf (#2196)
- Enable more tests for msan. @iphydf (#2183)
- Add some support functions to make writing fuzzers easier. @iphydf (#2184)
- Improve stability of tox_many_tcp_test. @iphydf (#2182)
- try to save the fuzzed save file again @sudden6 (#2176)
- Add fuzzer tests to the bazel build. @iphydf (#2170)
- Improve the stability of the save_load test @robinlinden (#2160)
- Speed up toxav_many_test by using fake mono_time. @iphydf (#2154)