261d2e53b7
11ab1d2a723 fix: reduce memory usage in group chats by 75% Significantly reduced the memory usage of groups since all message slots are preallocated for every peer for send and receive buffers of buffer size (hundreds of MiB peak when save contained alot of peers to try to connect to) 4f09f4e147c chore: Fix tsan build by moving it to GitHub CI. 6460c25c9e0 refactor: Use `merge_sort` instead of `qsort` for sorting. c660bbe8c95 test: Fix crypto_test to initialise its plain text buffer. 0204db6184b cleanup: Fix layering check warnings. df2211e1548 refactor: Use tox memory allocator for temporary buffers in crypto. ac812871a2e feat: implement the last 2 missing network struct functions and make use of them 29d1043be0b test: friend request test now tests min/max message sizes 93aafd78c1f fix: friend requests with very long messages are no longer dropped 819aa2b2618 feat: Add option to disable DNS lookups in toxcore. 0ac23cee035 fix: windows use of REUSEADDR 7d2811d302d chore(ci): make bazel server shutdown faster 1dc399ba20d chore: Use vcpkg instead of conan in the MSVC build. 14d823165d9 chore: Migrate to conan 2. bdd17c16787 cleanup: Allocate logger using tox memory allocator. b396c061515 chore(deps): bump third_party/cmp from `2ac6bca` to `52bfcfa` 2e94da60d09 feat(net): add missing connect to network struct 41fb1839c7b chore: Add check to ensure version numbers agree. 934a8301113 chore: Release 0.2.20 3acef4bf044 fix: Add missing free in dht_get_nodes_response event. git-subtree-dir: external/toxcore/c-toxcore git-subtree-split: 11ab1d2a7232eee19b51ce126ccce267d6578903
171 KiB
171 KiB
v0.2.20
Merged PRs:
- #2788 fix: Add missing free in dht_get_nodes_response event.
- #2786 cleanup: Fix all
-Wsign-compare
warnings. - #2785 fix: wrong comment for closelist
- #2784 chore: lower cirrus ci timeout drastically
- #2783 fix: Return an error instead of crashing on nullptr args in NGC.
- #2782 fix(toxav): pass video bit rate as kbit
- #2780 chore: Add release-drafter github action.
- #2779 chore: Use toktok's cmp instead of upstream.
- #2778 cleanup: Sort apk/apt install commands in Dockerfiles.
- #2777 chore: Upgrade to FreeBSD 14.1 in cirrus build.
- #2772 fix: friend_connections leak on allocation failure.
- #2771 fix: events leak that can occur if allocation fails
- #2769 chore(ci): new minimum for all android versions is 21
- #2768 fix: toxav rtp temp buffer allocation size was too large
- #2762 chore(cmake): set options changes as cache and with force
- #2761 chore: Fix CI
- #2757 fix: Use Opus in the CBR mode
- #2755 chore: Fix Circle CI build failing
- #2754 docs(toxav): fix docs of toxav.h
- #2751 chore(deps): bump golang.org/x/net from 0.17.0 to 0.23.0 in /other/bootstrap_daemon/websocket/websockify
- #2747 fix: Memory leak in the bootstrap daemon
- #2745 chore: Fix GitHub actions deprecation warnings
- #2717 cleanup: Remove useless if clause
- #2692 refactor: Make tox-bootstrapd use bool instead of int
- #2651 refactor: Make ToxAV independent of toxcore internals.
v0.2.19
Merged PRs:
- #2744 docs: Document that group topic lock is default on.
- #2743 docs: Add missing param docs for callbacks.
- #2742 chore: Add cmake flag to disable unit tests.
- #2741 refactor: Don't expose Tox_System in the public API
- #2736 cleanup: A more descriptive error for group invite accept function
- #2735 chore: Small API doc fixes
- #2732 cleanup: event length naming inconsistencies
- #2731 cleanup: align group send err enum order
- #2729 cleanup: use typedef for private message ID's in callback
- #2728 refactor: Observers/ignored peers can now send and receive custom packets
- #2727 feat: add message IDs to private group messages
- #2726 refactor: Rename
out
parameters toout_$something
. - #2718 chore: Use a specific non-broken slimcc version.
- #2713 feat: Update and improve the Windows cross-compilation
- #2712 chore: Update github actions.
- #2710 docs: Update the list of CMake options
- #2709 refactor: Remove "mod" and "founder" from group API naming scheme
- #2708 docs: add the experimental api build option to INSTALL.md
- #2705 refactor: Rename Queries to Query to align with other enums.
- #2704 fix: Correct type for conference offline peer numbers.
- #2700 test: Add FreeBSD VM action on GitHub.
- #2699 test: Add pkgsrc build.
- #2698 chore: Only install tox_private.h on request.
- #2697 test: Build toxcore on NetBSD (VM).
- #2696 fix: save_compatibility_test failing on big-endian systems
- #2695 fix: Don't serve files from websockify.
- #2691 chore: Release 0.2.19
- #2689 fix: Correctly pass extended public keys to group moderation code.
- #2686 chore: Compile libsodium reference implementation with compcert.
- #2685 cleanup: correct a few nullable annotations
- #2684 cleanup: Don't use
memcpy
to cast arbitrarystruct
s touint8_t[]
. - #2683 fix: Pass array, not array pointer, to
memcmp
. - #2682 cleanup: Never pass
void*
directly tomemcpy
. - #2678 chore: Disable NGC saving by default, enable through Tox_Options.
- #2675 cleanup: Replace pointer arithmetic with explicit
&arr[i]
. - #2672 refactor: Use
structs
for extended public/secret keys. - #2671 refactor: Use tox rng to seed the keypair generation.
- #2666 cleanup: Small improvements found by PVS Studio.
- #2664 docs: Run prettier-markdown on markdown files.
- #2662 fix: Correct a few potential null derefs in bootstrap daemon.
- #2661 fix: Zero out stack-allocated secret key before return.
- #2660 fix: Add missing memunlock of local variable when it goes out of scope.
- #2659 cleanup: Simplify custom packet length check in NGC.
- #2658 refactor: Make prune_gc_sanctions_list more obviously correct.
- #2657 fix: Fix some false positive from PVS Studio.
- #2656 docs: Add static analysis tool list to README.
- #2655 cleanup: Check that WINXP macro exists before comparing it.
- #2652 refactor: Make tox mutex non-recursive.
- #2648 docs: Add more documentation to crypto_core.
- #2647 docs: Fix up doxyfile.
- #2645 refactor: Remove
Tox *
fromtox_dispatch
. - #2644 refactor: Don't rely on tox_dispatch passing tox in tests.
- #2643 refactor: Use strong typedef for NGC peer id.
- #2642 chore: Use C++ mode for clang-tidy.
- #2640 refactor: Use strong
typedef
instead ofstruct
forSocket
. - #2637 chore: Check that both gtest and gmock exist for tests.
- #2634 chore: Add some comments to the astyle config.
- #2629 chore: Reformat sources with astyle.
- #2626 chore: Rename C++ headers to .hh suffixes.
- #2624 test: Add slimcc compiler compatibility test.
- #2622 cleanup: Add more
const
where possible. - #2621 cleanup: Remove implicit bool conversions.
- #2620 chore: Only check the bootstrap daemon checksum on release.
- #2617 cleanup: Further
#include
cleanups. - #2614 cleanup: Use Bazel modules to enforce proper
#include
hygiene. - #2612 refactor: Move pack/unpack
IP_Port
from DHT into network module. - #2611 chore: Really fix coverage docker image build.
- #2610 chore: Fix post-submit coverage image.
- #2609 fix: partially fix a bug that prevented group part messages from sending
- #2605 fix: Don't use
memcmp
to compareIP_Port
s. - #2604 chore: Fix rpm build; add a CI check for it.
- #2603 chore: Speed up docker builds a bit by reducing layer count.
- #2602 cleanup: Add
const
where possible in auto tests. - #2601 fix: a few off by one errors in group autotests
- #2598 refactor: Rename
system_{memory,...}
toos_{memory,...}
. - #2597 test: Add goblint static analyser.
- #2594 cleanup: Use
memzero(x, s)
instead ofmemset(x, 0, s)
. - #2593 cleanup: Use explicit 0 instead of
PACKET_ID_PADDING
. - #2592 cleanup: Remove all uses of
SIZEOF_VLA
. - #2591 cleanup: Expand the
Tox_Options
accessor macros. - #2590 test: Add a simple new/delete test for Tox.
- #2588 cleanup: Remove plan9 support.
- #2587 cleanup: Add comment after every
#endif
. - #2583 test: Fix comment I broke in the events test PR.
- #2582 cleanup: Rename group to conference in groupav documentation.
- #2581 cleanup: Ensure handler params are named after callback params.
- #2580 cleanup: Minor cleanup of event unpack code.
- #2578 refactor: Allow NULL pointers for byte arrays in events.
- #2577 refactor: Add common msgpack array packer with callback.
- #2576 cleanup: make some improvements to group moderation test
- #2575 refactor: Pass
this
pointer as first param to s11n callbacks. - #2573 cleanup: skip a do_gc iteration before removing peers marked for deletion
- #2572 cleanup: Remove
bin_pack_{new,free}
. - #2568 feat: Add dht_get_nodes_response event to the events system.
- #2567 refactor: Use enum-specific pack functions for enum values.
- #2566 cleanup: Remove empty test doing nothing.
- #2565 refactor: Factor out union pack switch from event packer.
- #2564 cleanup: Move the 2-element array pack out of individual events.
- #2563 test: Add printf log statement to group_moderation_test.
- #2562 chore: add clangd files to .gitignore
- #2561 refactor: Move file streaming test to its own file.
- #2560 fix(ci): window builds now build in parallel
- #2559 refactor: Migrate auto_tests to new events API.
- #2557 test: Add C++ classes wrapping system interfaces.
- #2555 fix: Remove fatal error for non-erroneous case
- #2554 fix: Make all the fuzzers work again, and add a test for protodump.
- #2552 fix: Make sure there's enough space for CONSUME1 in fuzzers.
- #2551 chore: Move from gcov to llvm source-based coverage.
- #2549 fix: issues with packet broadcast error reporting
- #2547 test: Add fuzz tests to the coverage run.
- #2545 refactor: Use
operator==
for equality tests ofNode_format
. - #2543 refactor(test): Slightly nicer C++ interface to tox Random.
- #2542 refactor: packet broadcast functions now return errors
- #2541 fix: don't pass garbage data buffer to packet send functions
- #2540 cleanup: Make group packet entry creation less error-prone
- #2539 refactor: Minor refactoring of get_close_nodes functions.
- #2538 refactor: Factor out malloc+memcpy into memdup.
- #2536 cleanup: Some more test cleanups, removing overly smart code.
- #2531 test: Add more unit tests for
add_to_list
. - #2530 refactor: Assign malloc return to a local variable first.
- #2529 test: Add "infer" CI check to github, remove from circle.
- #2527 cleanup: Add Toxav alias for ToxAV.
- #2526 cleanup: Make Tox_Options a typedef.
- #2525 cleanup: Add dynamically derived array sizes to the API.
- #2524 cleanup: Add explicit array sizes to toxencryptsave.
- #2523 cleanup: Move
tox_get_system
out of the public API. - #2522 cleanup: Make setters take non-const
Tox *
. - #2521 cleanup: Make array params in toxav
[]
instead of*
. - #2520 cleanup: Mark arrays in the tox API as
[]
instead of*
. - #2519 refactor: Align group message sending with other send functions.
- #2518 cleanup: Add typedefs for public API int identifiers.
- #2517 chore: Spellcheck tox-bootstrapd
- #2516 chore: Remove settings.yml in favour of hs-github-tools.
- #2515 chore: Use GPL license with https.
- #2513 chore: Add fetch-sha256 script to update bootstrap node hash.
- #2512 cleanup: Move all vptr-to-ptr casts to the beginning of a function.
- #2510 cleanup: Use github actions matrix to simplify CI.
- #2509 fix: Use QueryPerformanceCounter on windows for monotonic time.
- #2508 chore: Add
net_(new|kill)_strerror
to cppcheck's allocators. - #2507 cleanup: Run clang-tidy on headers, as well.
- #2506 cleanup: Make TCP connection failures a warning instead of error.
- #2505 cleanup: Make all .c files include the headers they need.
- #2504 cleanup: Upgrade cppcheck, fix some warnings.
- #2503 cleanup: Upgrade to clang-tidy-17 and fix some warnings.
- #2502 chore: Use
pkg_search_module
directly in cmake. - #2501 chore: Add
IMPORTED_TARGET
to pkg-config packages. - #2499 cleanup: Use target_link_libraries directly in cmake.
- #2498 chore: Simplify msvc build using vcpkg.
- #2497 cleanup: Remove NaCl support.
- #2494 fix: unpack enum function names in event impl generator
- #2493 chore: Disable targets for cross-compilation.
- #2491 chore: Build a docker image with coverage info in it.
- #2490 cleanup: Some portability/warning fixes for Windows builds.
- #2488 fix: Correct a use-after-free and fix some memory leaks.
- #2487 refactor: Change all enum-like
#define
sequences into enums. - #2486 refactor: Change the
TCP_PACKET_*
defines into an enum. - #2485 refactor: event generation tool for reorder pr
- #2484 chore: Fix make_single_file to support core-only.
- #2481 chore: Update github actions
uses
. - #2480 feat: add ngc related unpack functions
- #2479 feat: Add
to_string
functions for all public enums. - #2477 test: add real timeout test
- #2476 chore: Move s390x build to post-merge.
- #2475 refactor: Give
enum-from-int
functions the ability to report errors. - #2474 cleanup: Remove test net support.
- #2472 feat: Enable ubsan on bootstrap nodes.
- #2470 test: Add check-c run to bazel build.
- #2468 fix(test): tests use ipv6 by default, even with USE_IPV6 set to 0
- #2466 cleanup: Make group saving/loading more forgiving with data errors
- #2465 refactor: replace memset with a loop
- #2459 fix: Enable debug flag for ubsan.
- #2458 fix: also Install header for private/experimental API functions with autotools
- #2456 docs: Remove defunct IRC channel from README.md
- #2454 fix: memory leaks
- #2453 refactor: Install header for private/experimental API functions
- #2452 refactor: replace DEFAULT_TCP_RELAY_PORTS_COUNT with a compile-time calculation
- #2451 cleanup: clarify disabling of static assert checks
- #2449 cleanup: replace tabs with spaces
- #2448 feat: group connection queries now return our own connection type
- #2447 fix: Docker tox-bootstrapd hash update failing when using BuildKit
- #2446 feat: Add groupchat API function that returns an IP address string for a peer
- #2442 perf: Slightly reduce bandwidth usage when there are few nodes.
- #2439 test: Make esp32 build actually try to instantiate tox.
- #2438 cleanup: Remove explicit layering_check feature.
- #2437 chore: Upgrade sonar-scan jvm to java 17.
- #2436 fix: Add missing
htons
call when adding configured TCP relay. - #2434 chore: Cancel old PR builds on docker and sonar-scan workflows.
- #2432 chore: Use C99 on MSVC instead of C11.
- #2430 chore: Retry freebsd tests 2 times.
- #2429 test: Add an s390x build (on alpine) for CI.
- #2428 chore: Add a compcert docker run script.
- #2427 cleanup: Use tcc docker image for CI.
- #2424 fix: Fix memory leak in the error path of loading savedata.
- #2420 refactor: Use Bin_Pack for packing Node_format.
- #2416 chore: Add more logging to loading conferences from savedata.
- #2415 refactor: Add a
bin_unpack_bin_max
for max-length arrays. - #2414 fix: inversed return values
- #2413 cleanup: Fix GCC compatibility.
- #2408 fix: Ensure we have allocators available for the error paths.
- #2407 cleanup: Remove redundant
-DSODIUM_EXPORT
from definitions. - #2406 cleanup: Fix a few more clang-tidy warnings.
- #2405 cleanup: Fix a few more clang-tidy warnings.
- #2404 cleanup: Enforce stricter identifier naming using clang-tidy.
- #2396 chore: Add devcontainer setup for codespaces.
- #2393 refactor: Add
mem
module to allow tests to override allocators. - #2392 refactor: Make event dispatch ordered by receive time.
- #2391 docs: Fix doxygen config and remove some redundant comments.
- #2390 chore: Fix the Android CI job
- #2389 fix: Add missing
#include <array>
. - #2388 chore: Add missing module dependencies.
- #2384 feat: increase NGC lossy custom packet size
- #2383 fix: add missing ngc constants getter declarations and definitions
- #2381 fix: incorrect documentation
- #2380 feat: allow for larger incoming NGC packets
- #2371 docs: fix group_peer_exit_cb
- #2370 fix: behaviour of group api function
- #2369 fix: flaky tcp test
- #2367 fix: fuzz support for TCP server
- #2364 fix: potential endless loop under extremely high load
- #2362 test: enable tcp relay for bootstrap fuzzing
- #2361 fix: resolve_bootstrap_node() not checking net_getipport() returned count correctly
- #2357 feat: get the number of close dht nodes with announce/store support
- #2355 fix: group custom packet size limits
- #2354 fix: DHTBootstrap should always respond to version packets with toxcore version
- #2351 fix: Increase max group message length by four bytes
- #2348 refactor: Make some improvements to how often/when we announce a group
- #2341 fix: #1144 by forcing misc_tools to be a static lib
- #2340 fix: missing net to host conversion of port in logging in group_chat.c
- #2339 fix: missing net to host conversion of port in logging
- #2338 fix: bug causing friend group invites to sometimes fail & improve logging
- #2333 docs: Update README for bootstrap node docker
- #2329 refactor: extract each case in handle packet in messenger
- #2327 fix: unlock correct dht_friend
- #2325 fix: Remove cmake cache files after copying to container build directory
- #2323 docs: Update README.md to include cmp submodule info
- #2318 chore: disable warning about pre C99 code
- #2317 Refactor: Extract shared key cache into separate file
- #2311 cleanup: make it more clear that assert and uint32_t increment both only exist if NDEBUG is not defined
- #2291 test: Add a protocol dump test to generate initial fuzzer input.
- #2271 chore: Migrate from Appveyor to Azure Pipelines
- #2269 feat: Merge the remainder of the new groupchats implementation
- #2203 refactor: Store time in Mono_Time in milliseconds.
- #1944 chore: tox_new() should return null when savedata loading fails
Closed issues:
- #2739 Tox_Options.operating_system is not clear about it being an experimental option
- #2734 error compiling on fedora
- #2649 create_extended_keypair should use Random and be made deterministic for fuzzing
- #2462 Fix code scanning alert - Uncontrolled data used in path expression
- #2358 resolve_bootstrap_node assert hit
- #2352 SEGV after infinite loop retrying proxy_socks5_read_connection_response
- #2335 ipv6 disabled on kernel cmdline disrupts Tox = most tests fail
- #2303 Add new group chats events to tox_events and tox_dispatch modules.
- #2302 Run strong fuzz tests against NGC
- #2301 Implement NGC save/load in hs-toxcore and run round-trip tests against c-toxcore
- #2192 Provide official signed release tarballs
- #2118 Add a private "get mono_time" API to
tox_private.h
and use it in auto_tests. - #2029 Migrate all auto tests to the events API.
- #2014 Add sodium autotools CI build
- #1144 DHT_bootstrap should not link against misc_tools
v0.2.18
Merged PRs:
- #2300 chore: Release 0.2.18
- #2299 fix: remove the assert because buffer can be larger than UINT16_MAX.
- #2297 cleanup: remove unused field last_seen from Onion_Friend
- #2289 test: Add a Null_System used in toxsave_harness.
- #2288 test: enable additional sanitizers for fuzzing
- #2287 fix: Don't allow onion paths to be built from real friends.
- #2285 test: Don't abort fuzz test when tox_new fails.
- #2284 refactor: Move crypto utilities from util to crypto_core.
- #2283 fix: Allow onion paths to be built from more random nodes.
- #2282 fix: Fix potential array out-of-bounds in DHT onion path building.
- #2281 cleanup: Avoid goto in msi.c.
- #2280 test: Improve test hermeticity by using local TCP relay.
- #2279 test: Enable fuzzing for TCP.
- #2277 refactor: Avoid
static_cast
inFuzz_System
functions. - #2275 chore: Downgrade C++ version to 17
- #2273 fix: Really fix overrun added in e49a477a
- #2272 fix: Add missing return on error
- #2270 test: Improve error messages in toxav_basic_test.
- #2266 fix: Fixed leak and overrun added in e49a477a
- #2263 chore: Upgrade to C++20 in CMake build.
- #2261 refactor: Protect array unpacking against invalid lengths.
- #2258 refactor: Rename announce functions into their own namespace.
- #2257 fix: Format IP as string again in error log.
- #2255 fix: Fix a stack overflow triggered by small DHT packets.
- #2251 chore: Add MISRA-2012 check using cppcheck's misra addon.
- #2250 cleanup: remove populate_path_nodes_tcp
- #2249 test: Improve stability of forwarding_test.
- #2248 refactor: Use a struct for the
ip_ntoa
buffer. - #2246 fix: Don't crash if RNG init failed.
- #2244 refactor: Allow NULL logger; make it no-op in NDEBUG.
- #2243 chore: Add initial ESP32 docker build.
- #2242 cleanup: Use
static_assert
instead ofassert
where possible. - #2240 chore(deps): Use upstream cmp directly instead of our fork.
- #2238 cleanup: Make
*_free
andkill_*
functions nullable. - #2236 chore: Add dependabot config.
- #2234 test: Add more functionality to the bootstrap fuzz harness.
- #2233 cleanup: Replace a series of
if
statements with aswitch
. - #2232 test: Add fuzzer support functions for internal toxcore objects.
- #2230 feat: Merge group announce portion of new groupchats implementation
- #2229 cleanup: Remove layers in the cmake build.
- #2228 chore: Fix path to fuzzer binaries in clusterfuzz build.
- #2227 cleanup: Disallow stack frames of over 9000 bytes.
- #2225 fix: fix typo in git command in INSTALL.md
- #2224 cleanup: Add include for assert.h for the fuzzing build.
- #2223 chore: Add
uint8_t
version ofbin_pack
for numbers. - #2219 refactor: Rename bin_pack/unpack functions the same as cmp funcs.
- #2217 cleanup: Add Network object parameter for addr_resolve.
- #2214 cleanup: Remove all uses of
TOX_*_MAX_SIZE
macros. - #2213 cleanup: Remove unused random_testing program.
- #2212 cleanup: Expand
CONST_FUNCTION
and remove the macro. - #2211 cleanup: Move definitions of tox_private.h functions to tox_private.c.
- #2210 chore: Clone submodules in clusterfuzzlite Dockerfile.
- #2208 chore: Remove valgrind build.
- #2206 feat: Allow overriding mono_time in tox_new.
- #2204 chore: Support producing shared libraries on Windows
- #2202 cleanup: Avoid name clash between struct field and function.
- #2201 docs: Add information regarding git submodules, cmp to INSTALL.md
- #2200 cleanup: Add more null checks in
tox_new
. - #2199 cleanup: Mark Mono_Time const where possible.
- #2196 test: Remove save_load_test from autotools build.
- #2195 fix: Correct calculation of packet sent time
- #2193 perf: Make time move a lot faster in fuzzing runs.
- #2190 feat: Add support for custom random number generator.
- #2189 chore: Add third_party to toxcore-sources docker image.
- #2188 cleanup: Make addr_resolve a private function.
- #2187 test: Add DHT and tox_events fuzz tests to the cmake build.
- #2186 cleanup: Use
_Static_assert
in gcc/clang. - #2184 test: Add some support functions to make writing fuzzers easier.
- #2183 test: Enable more tests for msan.
- #2182 test: Improve stability of tox_many_tcp_test.
- #2177 feat: Add support for overriding network functions.
- #2176 test: try to save the fuzzed save file again
- #2175 refactor: Use cmp instead of msgpack-c for events packing.
- #2173 chore: Use "master" as the branch in toktok-fuzzer.
- #2170 test: Add fuzzer tests to the bazel build.
- #2169 feat: Merge moderation portion of new groupchats codebase
- #2167 cleanup: Reduce scope of array-typed variables where possible.
- #2166 cleanup: Reduce scope of variables as requested by cimple.
- #2164 feat: Merge onion_announce changes from new groupchats fork
- #2163 chore: Enable memory sanitizer build.
- #2160 test: Improve the stability of the save_load test
- #2159 chore: Update the Appveyor build to VS2019 to work around conan issues
- #2158 cleanup: Expose
struct Tox
to internal code. - #2157 cleanup: Split the huge TCP client packet handler.
- #2156 cleanup: Sync doc comments between .h and .c files.
- #2155 fix: Eliminate memory leak in toxav.
- #2154 test: Speed up toxav_many_test by using fake mono_time.
- #2153 docs: Put all the tox public api into a fake "tox" namespace.
- #2150 cleanup: Move all the group.h structs into group.c.
- #2149 cleanup: Avoid
memset
on structs. - #2147 feat: Store announcements
- #2146 chore: Add testing/Dockerfile to the CI build.
- #2145 chore: Be even more explicit about integer range bounds.
- #2144 cleanup: Minor cleanups in TCP_connection.c.
- #2143 fix: Allow port range in DHT_bootstrap.c.
- #2142 cleanup: Count re-adding an existing bootstrap node as success.
- #2141 cleanup: Disable LAN discovery in TCP-only mode.
- #2140 cleanup: Add assertion for decrypted data length.
- #2101 cleanup: improve CMakeLists.txt structure
- #2100 chore: remove cpufeatures.c
- #2098 chore: remove DHT_test.c since it's unused
Closed issues:
- #2298 assert makes incorrect assumption
- #2256 New Defects reported by Coverity Scan for TokTok/c-toxcore
- #2109 Assimilate
messenger_test.c
: replace with public API test - #2012 Support building a DLL on Windows
- #907 use dll abnormal System.AccessViolationException win7 x32 but x64 no problem
v0.2.17
Merged PRs:
- #2138 chore: Release 0.2.17
- #2136 docs: Clean up doxygen comments to be more doxygen-like.
- #2135 cleanup: Move test-only functions into tests.
- #2134 cleanup: Add explicit callback setters for MSI callbacks.
- #2133 cleanup: Remove redundant Messenger and DHT tests.
- #2132 cleanup: Remove dependency from LAN_discovery onto DHT.
- #2131 cleanup: Split util.c out of the network library.
- #2130 cleanup: Remove redundant
()
aroundreturn
expression. - #2128 test: Add unit test for create/handle request packets.
- #2127 cleanup: Remove
EAGAIN
from the list of ignored errors. - #2126 cleanup: Remove port from
Broadcast_Info
. - #2125 cleanup: Don't reference local variables in macro bodies.
- #2123 cleanup: Remove some more implicit bool conversions.
- #2122 chore: Enable a bunch more warnings in GCC builds.
- #2120 cleanup: Remove all boolean-int conversions.
- #2117 cleanup: Comply with strict include ordering.
- #2116 cleanup: Remove more boolean conversions (and a bugfix).
- #2115 cleanup: Log at ERROR level when
connect()
fails. - #2114 cleanup: Avoid creating invalid enum values.
- #2113 cleanup: Remove superfluous parentheses on the rhs of assignments.
- #2108 test: Add mallocfail and proxy test to our coverage runs.
- #2106 test: Add test coverage docker build for local tests.
- #2105 cleanup: Change valid status of onion friend to bool.
- #2104 fix: Report failure to DHT bootstrap back to the client.
- #2103 cleanup: Remove more implicit bool conversions.
- #2102 cleanup: Mark all local non-pointers as const where possible.
- #2099 cleanup: Reduce name shadowing; remove ptr-to-bool conversions.
- #2097 cleanup: Remove implicit conversions from
uint32_t
tobool
. - #2096 cleanup: Return boolean constants, not ints from bool functions.
- #2094 fix: Null function pointer dereference.
- #2093 cleanup: Remove any disallowed casts.
- #2092 perf: fix issue with friend finding taking too long after disconnects.
- #2091 cleanup: Avoid casting function pointers.
- #2090 refactor: Move
tox_new_log
toauto_test_support
. - #2088 cleanup: Remove all implicit bool conversions in if-conditions.
- #2086 cleanup: Enable most cppcheck warnings as errors.
- #2084 fix: out-of-memory condition by corrupted save file
- #2079 cleanup: Remove unused execution trace library.
- #2078 perf: Refactor onion_client.c do_friends() to reduce network traffic
- #2075 chore: Add a .clang-format that mostly agrees with astyle.
- #2074 chore: Make coverity scan a nightly job.
- #2073 chore: Fix build-args in win32/win64 docker build.
- #2072 chore: Simplify and speed up windows builds using docker image.
- #2070 chore: Add docker image builds for windows cross compiler.
- #2064 fix: toxsave memory leak while loading groups
Closed issues:
- #2121 Improve speed and stability of LAN discovery test
- #2083 Tox save file format/loader doesn't limit or check the number of frozen peers
- #2080 speedup getting online after tox process has been suspended
- #2050 Excessive onion friend lookups
- #2034 Make coverity-scan workflow a nightly build instead of on master push
- #2000 Move win32 docker image build out to dockerfiles
- #1990 Add a .clang-format config that matches the astyle config as closely as possible.
- #1115 Add empty handler for LAN discovery packets when LAN discovery is disabled
- #647
tox_bootstrap
should return an error on unrecoverablegetnodes
failure - #169 Get rid of TOX_USER_STATUS_BUSY + 1
v0.2.16
Merged PRs:
- #2071 chore: Release 0.2.16
- #2069 chore: Simplify and speed up nacl build using toxchat/nacl.
- #2066 test: Add a profiling script and Dockerfile.
- #2058 fix: properly deallocate frozen peers
- #2056 cleanup: Avoid implicit boolean and floating point conversions in decls.
- #2055 cleanup: Avoid implicit bool conversions in logical operators.
- #2053 cleanup: Enable tokstyle's
-Wlarge-struct-params
. - #2052 fix: Fix return type of functions returning uint64_t.
- #2049 cleanup: Apply stronger type checks and fix errors.
- #2047 feat: Improve how we share TCP relays with friends
- #2046 cleanup: Avoid implicit pointer-to-bool conversion in
if
in toxav. - #2043 refactor: Compare pointers in if conditions to nullptr.
- #2041 fix: file transfer bug introduced in commit 2073d02
- #2039 refactor: Add a bit more logging; change WARNING to ERROR.
- #2036 chore: Add BUILD file for websockify.
- #2035 chore: fine tune fuzzing settings
- #2033 cleanup: Add some more error path logging to TCP server code.
- #2032 chore: update the list of CMake options & Windows Docker build deps
- #2031 fix: remove bogus asserts in fuzzer harness
- #2030 chore: expand fuzzing to toxsave
- #2028 fix: syntax error introduced in 8bf37994fd12acec9e3010437502f478399b99b4
- #2027 fix: add continous fuzzing
- #2026 chore: Fix implicit declaration warning in fuzz build
- #2025 chore: add continous fuzzing to our CI
- #2024 perf: Reduce minimal encoding size of packed events.
- #2023 cleanup: Add wrapper library for msgpack pack functions
- #2022 cleanup: Split tox_unpack into two smaller libs
- #2021 chore: Disable non-null attributes by default.
- #2019 chore: Silence clang compile warnings causing circle-ci/asan to fail
- #2018 fix: Coverty scan
- #2016 docs: Add libmsgpack dependency in INSTALL.md
- #2015 fix: shared toxcore autotools build failing
- #2013 cleanup: Don't use VLAs for huge allocations.
- #2011 fix: Conan build link failures
- #2010 chore: Remove duplicate source file in autotools build.
- #2008 chore: get skeletons out of the closet
- #2007 feat: add bash-completion for tox-bootstrapd
- #2006 cleanup: Add more nonnull and nullable annotations.
- #2002 cleanup: Add nonnull annotations to function definitions.
- #2001 chore: Add an undefined behaviour/integer sanitizer build.
- #1999 chore: Speed up cmake builds with
UNITY_BUILD
. - #1996 feat: Add unpacker functions for events structures.
- #1993 feat: Add binary packing functions for tox events.
- #1992 chore: Set up an Android CI job
- #1988 cleanup: Make LAN discovery thread-safe without data races.
- #1987 cleanup: Comply with new cimple callback rules.
- #1985 cleanup: Split msi callback array into 1 member per callback
- #1982 chore: Add an easy way to run autotools and circleci builds locally.
- #1979 chore: Update readme header
- #1952 feat: Add async event handling (callbacks) code.
- #1935 feat: add DHT queries to private API
- #1668 perf: Take advantage of fast networks for file transfers
Closed issues:
- #2009 Autotools build fails
- #2004 Add
nullable
andnonnull
annotations to all functions. - #1998 Large stack allocations
- #1977 Turn array of callbacks in msi.h into separate callbacks.
- #1670 Broken link in readme
- #405 Remove all¹ uses of global state in toxcore
- #340 Set up a continuous integration build for Android
- #236 Tox file transfers do not use available bandwidth
- #128 Toxcore should provide an easy, local method for making sure Travis checks will pass
v0.2.15
Merged PRs:
- #1984 fix: Reduce logging verbosity even more.
- #1983 chore: Release 0.2.15
- #1980 fix: Reduce logging verbosity in TCP server.
v0.2.14
Merged PRs:
- #1978 chore: Release 0.2.14
- #1976 docs: Make crypto_core.h appear on doxygen.
- #1975 refactor: use proper method for generating random numbers in a range
- #1974 docs: Add doxygen configuration and netlify publishing.
- #1972 chore: Make the last few remaining top level comments doxygen style.
- #1971 chore: Sync all comments between header and source files.
- #1968 cleanup: Ensure we limit the system headers included in .h files.
- #1964 cleanup: Don't pass the whole DHT object to lan discovery.
- #1958 chore: Make run-infer script use docker.
- #1956 chore: Disable some cimple warnings for now.
- #1955 cleanup: Properly copy Node_format using serialized format
- #1954 cleanup: make functions take const pointer to IP_Port wherever possible
- #1950 feat: Add WASM build for toxcore and websocket bootstrap node.
- #1948 fix: potential freeing of an immutable static buffer
- #1945 fix: Fix bootstrap on emscripten/wasm.
- #1943 chore: use latest toktok-stack msan version
- #1942 cleanup: Add some toxav bounds/sanity checks
- #1940 chore: Use latest instead of versioned toktok-stack image.
- #1939 chore: Rename bazel-release to -opt and -debug to -dbg.
- #1938 cleanup: small refactor of DHT getnodes function
- #1937 cleanup: remove brackets from ip_ntoa ipv6 formatting
- #1933 chore: Add a Bazel Buildifier CI job
- #1932 test: separate run_auto_tests into a library (revival of #1505)
- #1929 cleanup: make some non-const pointers const
- #1928 fix: unintentional integer down-casts
- #1926 fix: group av memory leak
- #1924 test: refactor autotest live network bootstrapping
- #1923 fix: corruption in key files, making it unable to load when node starts.
- #1922 chore: Don't run sonar scan on pull requests.
- #1920 cleanup: refactor group audio packet data handling
- #1918 chore: Run sonar scan on pull requests.
- #1917 fix: buffer overwrite in bootstrap config
- #1916 chore: Add a make_single_file script, used for CI.
- #1915 cleanup: replace magic numbers with appropriately named constants
- #1914 chore: Add cpplint to the CI.
- #1912 cleanup: Remove uses of
strcpy
andsprintf
. - #1910 cleanup: Remove our only use of flexible array members in toxcore.
- #1909 chore: Expose public API headers as files in bazel.
- #1906 cleanup: Split large switch statement into functions.
- #1905 chore: Mark unsafe code as testonly.
- #1903 cleanup: Even more pointer-to-const parameters.
- #1901 cleanup: Make parameters pointers-to-const where possible.
- #1900 cleanup: Remove old check Suite compat layer.
- #1899 cleanup: Make
Networking_Core
pointer-to-const where possible. - #1898 cleanup: Use pointer cast instead of memcpy in qsort callback.
- #1897 refactor: Deduplicate a bunch of code in TCP client/server.
- #1894 cleanup: Deduplicate a somewhat complex loop in DHT.c.
- #1891 cleanup: Remove our only use of sprintf.
- #1889 cleanup: Stop using
strerror
directly. - #1887 test: Add two more bootstrap/TCP nodes to autotests
- #1884 chore: Add mypy Python type check.
- #1883 chore: Add sonar-scan analysis on pushes.
- #1881 cleanup: Merge crypto_core and crypto_core_mem.
- #1880 chore: Run static analysers in multiple variants.
- #1879 fix: Fix
toxav_basic_test
buffer overflow. - #1878 fix: don't count filetransfer as sending until accepted
- #1877 fix: Fix some uninitialised memory errors found by valgrind.
- #1876 chore: Ignore some failures in bazel-tsan.
- #1875 chore: Add asan/tsan bazel builds.
- #1874 cleanup: replace all instances of atoi with strtol
- #1873 chore: Enable layering check in all c-toxcore build files.
- #1871 chore: Enable compiler layering check.
- #1870 chore: Disable the OpenMP cracker in bazel for now.
- #1867 chore: Retry asan/tsan tests a few more times.
- #1866 chore: Run tokstyle with 3 cores.
- #1865 cleanup: Remove extra parens around function arguments.
- #1864 cleanup: Don't use memcpy where assignment can be used.
- #1862 chore: Remove all references to Travis CI.
- #1861 cleanup: Use
calloc
instead ofmalloc
for struct allocations. - #1860 cleanup: Fix
calloc
argument order. - #1857 chore: Get all* autotests working with MSVC
- #1853 cleanup: Remove useless parentheses.
- #1850 chore: Add a GH Actions code coverage job
- #1845 fix: use correct sample size in toxav_basic_test
- #1844 cleanup: make struct typedefs have the same name as their struct
- #1841 cleanup: refactor toxav_call_control
- #1840 chore: Remove old travis docker scripts.
- #1837 chore: Add bazel-debug build.
- #1836 fix: possible unintended negative loop bound
- #1835 cleanup: remove dead code
- #1834 cleanup: Reduce the scope of for-loop iterator variables.
- #1832 fix: a double-unlocking mutex in toxav
- #1830 chore: Add "tcc" and "compcert" compiler targets.
- #1820 chore: Add macOS build.
- #1819 refactor: Extract some functions from the big run_auto_test function.
- #1818 feat: Add programs for creating savedata & bootstrap keys
- #1816 cleanup: put breaks inside case braces
- #1815 test: add ability for autotests to use TCP connections
- #1813 chore: Login to dockerhub before trying to push to dockerhub.
- #1812 chore: Only push versioned docker image on tag builds.
- #1811 chore: Add bootstrap daemon docker image build.
- #1810 chore: Remove apidsl comment from tox.h.
- #1807 chore: Don't run CI on master branch pushes.
- #1802 cleanup: Sync doc comments in a few more .c/.h files.
- #1801 chore: Fix up a few source code comment and style issues.
- #1798 chore: merge friend_connections from NGC fork
- #1797 cleanup: Move
sodium.h
include to front of network.c. - #1794 chore: Move cmake-freebsd-stage2 back into the toxcore repo.
- #1793 chore: Add FreeBSD build to CI.
- #1792 chore: Add cross compilation CI targets.
- #1790 cleanup: remove redundant (and incorrect) comments
- #1789 refactor: rename variable to clarify purpose
- #1786 cleanup: Remove apidsl; remove
crypto_memcmp
. - #1783 cleanup: fix format-source
- #1779 chore: Update toktok-stack version.
- #1778 chore: Tie down the use of doxygen comments.
- #1777 cleanup: Remove crypto_pwhash import.
- #1776 cleanup: remove unused function argument from set_tcp_connection_status()
- #1775 cleanup: Remove apidsl for everything except the public API.
- #1774 chore: Remove config.h.
- #1773 chore: Fix gen-file.sh: it wasn't globbing properly.
- #1772 chore: Add .cc files to the static analysis.
- #1770 cleanup: merge onion.c changes from new groupchats fork
- #1769 chore: merge tcp_connection changes from new groupchats fork
- #1768 chore: merge DHT changes from new groupchats fork
- #1766 chore: Use docker for the autotools ci build.
- #1765 fix: Fix file permission issue with toxchat/bootstrap-node Docker container
- #1762 chore: Add autotools build; exempt crypto_pwhash from tokstyle.
- #1761 cleanup: Don't include
"config.h"
unless needed. - #1759 cleanup: address some unused return values
- #1758 test: Make ERROR logging fatal in tests.
- #1754 fix: off-by-one error caused by integer division without proper cast
- #1753 cleanup: use crypto_memzero to wipe secret keys when no longer in use
- #1752 chore: Use an incrementing version number for coverity scans.
- #1751 fix: Fixed uninitialised value copy.
- #1747 cleanup: Fix some clang-tidy warnings and make them errors.
- #1746 chore: Add clang-tidy review github workflow.
- #1744 cleanup: Enforce for loop consistency.
- #1743 chore: Minor cleanups of warnings given by cppcheck.
- #1742 test: Add a simple test for
ip_ntoa
. - #1740 cleanup: Put fatal errors where API return values should be impossible
- #1738 chore: Add missing
sudo
to coverity apt-get calls. - #1737 refactor: Fix previous refactor
- #1736 chore: Add workflow for running coverity scan.
- #1735 cleanup: Use
static_assert
instead of preprocessor#error
. - #1734 chore: Add logger to onion and onion announce objects
- #1733 cleanup: Minor fixes in test code.
- #1732 cleanup: Refactor kill_nonused_tcp()
- #1730 cleanup: Fix last instance of
-Wcast-align
and enable the warning. - #1729 cleanup: Ensure that error codes are always initialised.
- #1727 cleanup: Avoid endian-specific code in
crypto_core
. - #1720 feat: Add automatic fuzz testing for c-toxcore
- #1673 cleanup: Remove hardening code from DHT
- #1622 perf: Make the key cracker a bit faster
- #1333 refactor: Clean up friend loading.
- #1307 refactor: Split toxav_iterate into audio and video part
Closed issues:
- #1967 Potential freeing of an immutable static buffer
- #1788 Rename dht->last_run
- #1719 Enforce braces around macros that compute a value
- #1694 Double unlocking in the ac_iterate
- #1332 Padding bytes in Tox save format are not specified
- #1217 valgrind reports "Conditional jump or move depends on uninitialised value(s)"
- #1118 Fix threading issues in tests caught by tsan (data race etc)
- #1087 Remove all uses of
%zu
in printf formats. - #1040 Random numbers should not be produced using
rng() % max
. - #540 Stop deleting source files
- #501 Testsuite fails and hangs on FreeBSD
- #451 Don't fail when building toxcore on windows with
cmake .
- #350 Configure coverity runs for nightly builds
- #349 Run clang-tidy on Travis with specific warnings as errors.
- #348 Run cppcheck on Travis and push the results to toktok.github.io.
- #323 Set library version on future releases
- #235 Video corruption: Don't drop video keyframes
- #203 ToxAV is still on the old API style
- #198 Crash on call while peer calling you
- #167 Const-ify pointers
- #124 Don't include OS specific headers in .h files
- #106 Sometimes Toxcore reports the wrong connection status for both the DHT, and friends.
- #85 Reproducible Builds // OBS a bad Idea
v0.2.13
Merged PRs:
- #1725 cleanup: add some missing null checks
- #1723 chore: Run infer static analyser on circle ci builds.
- #1722 chore: Release 0.2.13
- #1718 fix: Sec/fix crypto size compute
- #1716 chore: Use toktok-stack docker image with built third_party.
- #1713 test: Add some unit tests for important internal DHT functions.
- #1708 perf: reduce calling into Mono_Time in DHT
- #1706 chore: Enable cimple tests on cirrus build.
- #1705 fix: issue with save_load autotest
- #1703 chore: Upgrade to toktok-stack:0.0.11.
- #1699 fix: some friend connection issues
- #1698 fix: bug causing API to report wrong self connection status
- #1693 chore: Update IRC info
- #1691 chore: Fix Appveyor and add workarounds for Cirrus CI
- #1686 chore: Enable c-toxcore conan packaging
- #1684 cleanup: Update INSTALL.md instructions
- #1679 cleanup: Trivial cleanup
- #1674 cleanup: filetransfer code
- #1672 docs: Add instructions for building unit tests to INSTALL.md
- #1667 chore: Update tox-bootstrapd checksum due to newer packages in Alpine
- #1664 cleanup: use heap memory instead of stack for large variables
- #1663 fix: Fix file tests on windows
- #1633 fix: AppVeyor failing due to conan remote being added twice
- #1602 fix: Fix buffer over-read when a peer leaves a conference
- #1586 test: Fix tcp_relay_test by adding a second bootstrap node.
- #1580 style: Format comments according to tokstyle's requirements.
- #1557 chore: Add conan support
- #1537 chore: Cygwin build
- #1516 cleanup: Make pylint and mypy happy with bootstrap_node_info.py.
- #1515 style: Run restyled on Travis and Circle CI scripts.
- #1514 refactor: Remove multi-declarators entirely.
- #1513 refactor: Disallow multiple initialised declarators per decl.
- #1510 chore: Don't build pushes to branches, only to tags.
- #1504 chore: Remove release-drafter configuration in favour of global one.
- #1498 refactor: Limit scope of loop iterators.
- #1497 refactor: Use bash arrays instead of strings for static analysis scripts.
- #1496 cleanup: Stop hard-coding packet IDs in tests.
- #1495 chore: Exclude imported libsodium sources from restyled.
- #1493 feat: Add logging to TCP and onion client.
- #1489 cleanup:
NAC_LIBS
->NACL_LIBS
. - #1487 chore: Add autotools build to localbuild docker images.
- #1473 chore: Add a script to run Travis CI locally.
- #1467 fix: Fix a bug in savedata loading when malloc fails.
- #1464 fix: Fix errors on error paths found by oomer.
- #1463 cleanup: Add a check that we don't have any unused functions.
- #1462 cleanup: Include
<string.h>
forexplicit_bzero
. - #1436 chore: Enable cimple tests by default but allow disabling them.
Closed issues:
- #1598 ERROR: heap-buffer-overflow in group.c found with AddressSanitizer
- #1326 the cause is great, but this thing is completely unusable
- #1319 Is this new application is safe & trusted ??
- #1236 Ruby Extension?
- #1149 uTox aborts on toxcore restart
- #886 Maybe need to set the stacksize for musl-libc
v0.2.12
Merged PRs:
- #1458 Release 0.2.12
- #1457 Disable non-hermetic tests by default.
- #1456 Limit the number of friends you can have to ~4 billion.
- #1452 Add execution trace option for debugging.
- #1444 Set up release-drafter to automatically draft the next release.
- #1443 Allow test coverage to fluctuate 2% up and down, but not below 80%.
- #1442 Add CODEOWNERS and settings.yml files.
- #1441 [ImgBot] Optimize images
- #1439 Fix continuous integration builds.
- #1437 Rework the toxchat/bootstrap-node Docker image.
- #1435 Enable TCP relay test in Bazel and autotools build.
- #1434 Skip invalid TCP relays and DHT nodes when loading save data.
- #1433 Fix saving of combination of loaded and connected TCP relays
- #1430 Invert
not_valid
functions and name themis_valid
. - #1429 Fix things not being initialized if creating a TCP-only network
- #1426 Remove tokstyle exemptions from build files.
- #1425 Stop using the "inline namespace" feature of apidsl.
- #1424 Add new semi-private API functions to set per-packet-id custom handlers.
- #1423 Give CI workflow a better name: clang-sanitizers
- #1422 Use public API for sending in RTP
- #1421 Install ci-tools and get tokstyle via the script it provides.
- #1420 Use tox public API for sending packets in toxav BWController
- #1419 Remove newlines from the end of LOGGER format strings.
- #1418 Change ToxAVCall struct mutex to a more distinct name
- #1417 Create own instance of Mono_Time for ToxAV
- #1416 Stop using Messenger's mono_time in bandwidth controller.
- #1415 Fix 2 memory leaks in ToxAV.
- #1414 Show function names in asan/tsan stack traces on CircleCI.
- #1413 Make afl_toxsave.c a bit more portable; fix memory leak.
- #1411 Fixes towards building on MSVC.
- #1409 Mark conference test as small.
- #1407 Add minimal save generator
- #1406 Migrate format-source script to new apidsl web app.
- #1404 Smarter setup of bazel remote cache on Cirrus CI.
- #1331 Add basic test adapter for AFL
Closed issues:
- #1365 Add the option to use LAN discovery even when using a proxy for remote connections
- #1353 libtoxdns.a and libtoxav.a
- #86 Freenet as Offline Messaging Backend
v0.2.11
Merged PRs:
- #1405 Release 0.2.11
- #1403 Install libsodium from apt instead of from source.
- #1402 Remove bazel build from Travis.
- #1400 Disable bazel remote cache on CI.
- #1399 Periodically try to send direct packets when connected by TCP.
- #1398 Minor cleanup: use
assoc_timeout
function where possible. - #1397 Check that LOGGER macros are only called with string literals.
- #1396 Make function defns match their decls regarding storage class.
- #1395 Mark file-local function definitions as
static
. - #1394 Enable remote cache for bazel builds.
- #1393 Add another bootstrap node to the bootstrap test.
- #1392 Clear out old conference connections.
- #1391 Minor cleanups in network code.
- #1390 Avoid casting back and forth between void-ptr.
- #1389 Standardise on having a comma at the end of enums.
- #1388 Fix up comments a bit to start being more uniform.
- #1387 Use rules_cc instead of native cc_library rules.
- #1386 Use spdx license identifier instead of GPL blurb.
- #1383 Pass packet ID to custom packet handlers.
- #1382 Add a mutex lock/unlock inside every public API function.
- #1381 Use
net_pack
instead of casting bytes to ints. - #1380 Disable FreeBSD travis build until it is fixed.
- #1379 Update and fix FreeBSD setup on Travis-CI
- #1378 Use ninja build system for the cmake-linux build.
- #1376 Remove testing/av_test.c.
- #1375 Add "cimple_test" to the bazel build.
- #1374 Handle invite to existing conference
- #1372 Upgrade bazel to 2.1.1.
- #1371 Bump to astyle-3.1 in travis build.
- #1370 use -1 rather than ~0 in unsigned integer types
- #1362 Workaround for message number saving
- #1358 Allow Bazel to rerun tests marked as flaky
- #1352 Update tests to use a working bootstrap node
- #1349 Fix tox-bootstrapd's README and update Dockerfile
- #1347 Fix pthread_mutex_destroy getting too many arguments
- #1346 Fix most TSAN failures
- #1345 fix concurrency issues in mono_time
- #1343 Fix TSAN failures in tests
- #1334 fix missing group title length check
- #1330 Force IPv4 for cirrus-ci tests
- #1329 bump libsodium version in appveyor.yml
- #1322 Clean-up of group.c code
- #1321 Some small fixes to groups.
- #1299 Add VScode folder to .gitignore
- #1297 Use net_pack/unpack instead of host_to_net.
Closed issues:
- #1373 handle crashes after group invites
- #1368 Are tox clients also open source
- #1366 Generate a link for websites (Friendship and proxy)
- #1354 Unstable Tests
- #1316 Documentation claims toxav_iteration_interval is threadsafe but it's not
- #1274 build error
- #850 GPG App Usage
v0.2.10
Merged PRs:
- #1324 Release 0.2.10
- #1320 add undef guard in tox_many_tcp_test
- #1314 Fix bazel build version at 0.22.0 for CI.
- #1311 Disable failing TCP server test
- #1310 Do not send the same packet to the same node twice
- #1309 add configurable limit on number of stored frozen peers
- #1305 Expose api functions for enabling and disabling AV in AV groups
- #1302 Specify that buffer size for tox_conference_peer_get_name is given by $size
Closed issues:
- #1325 Question: ETA of v0.2.10?
- #1313 CirrusCI is failing and blocking PRs
- #1312 Onion client review
- #1306 Persistent conference's offline peer list always grows and never decreases
- #1303 Loaded persistent groups fail to send audio
- #1298 How to make libtox4j-c.so for android?
- #1261 Bump so version
- #1116 Message length is too large log spam
v0.2.9
Merged PRs:
- #1296 Add some const qualifiers
- #1295 Implement all min/max functions for (un)signed int types.
- #1293 Fix misaligned 4-byte access in trace logging.
- #1291 Use correct path to test log to cat on error.
- #1290 Display build log for autotools build on failure.
- #1289 Enable auto tests under STRICT_ABI if static libs are available.
- #1288 Add MIN_LOGGER_LEVEL to the Circle CI builds.
- #1287 Avoid sending group messages to a peer before we have its group number
- #1284 Use new WineHQ Debian package repository key
- #1283 Release 0.2.9
- #1282 Merge irungentoo/master back into toktok/master.
- #1281 Allow unauthenticated wine packages in the Windows build.
- #1278 Add cmake option for building additional tests
- #1277 Define tox_conference_id_size and tox_conference_uid_size
- #1273 Avoid format truncation in save compatibility test
- #1272 Upgrade bazel to 0.19.0 to fix the bazel build.
- #1271 Return TOX_ERR_CONFERENCE_SEND_MESSAGE_NO_CONNECTION if we are not connected to any peers
- #1268 Fix indices calculation for congestion control.
- #1267 Improve handling of peers entering and leaving conferences
- #1266 Expose offline conference peers in API
- #1242 Fix critical stack overflow arising from VLA usage
- #1239 Add some hopefully helpful documentation to the functions in mono_time.h
- #1235 Change method of PK production for FAKE friend in DHT
- #1234 Increase NOFILE limit for tox-bootstrapd
- #1231 Use
bool
for IPv6 flag in test programs andDHT_bootstrap
. - #1230 Add
LOGGER_ASSERT
for checking fatal error conditions. - #1229 Include
CTest
in CMakeLists.txt to get valgrind support. - #1228 Consistently use camel case enum names.
- #1223 Add AUTOTEST option to CMakeLists.txt
- #1221 Make tox-bootstrapd free memory on SIGINT and SIGTERM
- #1218 Support DragonFlyBSD and prune unused variables.
- #1215 Ensure save data unchanged after save and load
- #1213 Make saving and loading the responsibility of Tox rather than Messenger
- #1211 Some improvements to tox-bootstrapd's Dockerfile
- #1210 Remove Alpine Linux bootstrap daemon dockerfile.
- #1209 Improve Windows compatibility of toxav code.
- #1206 Add LAN_discovery to the list of apidsl-generated files.
- #1156 conferences saving
Closed issues:
- #1285 Persistent group titles get mixed up
- #1276 How to run test case?
- #1275 Save file corruption
- #1269 Tox conference connected callback isn't triggered
- #1264 tox_conference_id_size() symbol missing
- #1262 Fails to build with STRICT_ABI option
- #1169 PK should not be generated with random_bytes
- #1143 Test #1081
- #956 friendlist access (add, delete, ...) causes crashes sometimes
- #777 Proposal: TFCL [Tox Friend Capabilities Level]
- #762 packet ranges not very clearly explained
- #743 Proposal: reduce Video corruption even more by negotating the reference frame between sender and receiver
- #735 Proposal: Tox MessageV2
- #663 libvpx vulnerability
- #626 please add documentation to: bwcontroller.c
- #625 function names misleading in ToxAV
- #617 WIP: ToxIdenticon - howto
- #610 PACKET_LOSSY_AV_RESERVED 8 # why?
- #609 payload_type hardcoded
- #589 running a normal tox node as tcp relay is not possible
- #584 [INFO]: network graphs 0.1.9 vs 0.1.10
- #548 toxcore removes message receipts and filetransfers from memory, when client has short network outage
- #375 Invalid bit rate prevents call
v0.2.8
Merged PRs:
- #1225 Release 0.2.8
- #1224 Avoid use of IPv6 in tests if not supported (e.g. on Travis).
- #1216 Fix memory leak in tcp server by wiping priority queues on deletion.
- #1212 Fix logger level defaulting to TRACE in CMake
- #1208 Remove a function-like macro and replace it with a function.
- #1205 Use a working DHT node for bootstrap tests.
- #1203 Revert "Improve cmake build for MSVC."
- #1202 Reset onion search rate for a friend when we see evidence that they are online
- #1199 Run tests on Appveyor (Windows native build).
- #1198 Add Cirrus CI configuration.
- #1197 Use new
@pthread
library from toktok-stack for Windows compat. - #1196 Run UBSAN (undefined behaviour sanitizer) on Circle CI.
- #1195 Fix using uninitialized mutex on call end
- #1192 Send rejoin packets on conference disconnection
- #1191 Improve cmake build for MSVC
- #1188 Fix yamllint test (it's gone from bazel, add a new one).
- #1187 Fix typos in comments and log and test assertion messages.
- #1165 Fixed a silly boolean practice using uint8_t
- #1164 Format yaml files according to yamllint's requirements and remove branch filter for appveyor.
- #1161 Use most recent version of Bazel (0.17.1).
- #1158 Use C++ style casts in C++ code.
- #1157 Use run_auto_test fixture in typing_test.c
- #1155 Standardise header guards.
- #1154 Assert that we don't kill tox before killing toxav.
- #1153 Always use the passed logger (from Messenger) in msi_kill.
- #1151 Fix typo: tcp_replays -> tcp_relays.
- #1150 Use
(void)
for empty parameter lists in C. - #1147 Ignore "unused-result" warning in super_donators code.
- #1145 Fix login issue on Travis-CI FreeBSD build
- #1141 Include necessary opencv2 header on OSX.
- #1140 Clean up
add_to_list
function a bit. - #1139 Avoid recursion in
ip_is_lan
andip_is_local
. - #1138 Add tool to find directly recursive calls in toxcore.
- #1136 Remove the use of
CLOCK_MONOTONIC_RAW
. - #1135 Avoid use of global mutable state in mono_time on win32.
- #1134 Use
code font
for tool names and flags in INSTALL.md. - #1126 Simplify configure.ac for faster autotools build.
- #1095 Use test clock in run_auto_test tests and dht test
- #1069 Add mechanism for recovering from disconnections in conferences
- #1046 Finish the messenger state plugin system
- #895 Feature bootstrap trace/debug log output
Closed issues:
- #1214 Massive red shutdown of nodes
- #1201 Windows cross-compilation is broken
- #1194 Cancelling unanswered toxav call locks uninitialied mutex
- #961 Can't send messages in persistent group chat
- #960 Persistent groups don't work properly when using toxync bot
- #838 How to get groupchat identifier?
v0.2.7
Merged PRs:
- #1142 Release 0.2.7
- #1137 Make
ip_is_lan
return bool instead of 0/-1. - #1133 Make the tsan build fail instead of swallowing its errors.
- #1132 Use
bool
in place of 0/1 int values. - #1131 Format crypto_core.c.
- #1130 Fix test class name for mono_time_test.
- #1129 Call
abort
instead ofexit
on test failure. - #1128 Add some tests for
ping_array
. - #1127 Update copyright to 2018.
- #1125 Run save_compatibility_test in the autotools build.
- #1124 Fix the
PORT_ALLOC
failure ofsave_compatibility_test
. - #1123 Add support for setting a custom monotonic time function in mono_time
- #1122 Run all tests (and compilation) in parallel with autotools.
- #1120 Stop using massive macros in
toxav_basic_test
. - #1119 Use do-while instead of while in tests.
- #1117 Fix leave callback calling in del_groupchat
- #1112 Fix auto_tests Makefile
- #1110 Add check to make sure tox was created successfully
- #1109 Consistently use 'mono_time' rather than 'monotime'
- #1107 Always print output on failure in cmake tests on Travis.
- #1106 Fix libmisc_tools building
- #1104 Avoid redefining macros from different files.
- #1103 Upload coverage to codecov as well as coveralls.
- #1102 Enable color diagnostics on circleci.
- #1101 Make the save_compatibility_test work with bazel.
- #1100 Make Mono_Time an argument to current_time_monotonic
- #1099 Fix const cast in save-generator.
- #1098 Run both asan and tsan on Circle CI.
- #1097 Run project tests like yamllint_test.
- #1096 Enable .travis.yml check and use non-markdown license.
- #1094 Set
_POSIX_C_SOURCE
to 200112L. We need it for C99 compat. - #1092 Install the
DHT_bootstrap
binary onmake install
. - #1086 Try ipv6 connections even after udp timeout
- #1081 Change while-loop to for-loop to express for-each-frame.
- #1075 Fix FreeBSD VM on Travis not shutting down
- #1061 Force storing the result of crypto_memcmp in the test.
- #1057 Reduce the number of times
unix_time_update
is called. - #1051 Add save file generator, compatibility test, and generate a savefile
- #1038 Use per-instance
Mono_Time
instead of a globalunix_time
Closed issues:
v0.2.6
Merged PRs:
- #1093 Release 0.2.6
- #1090 Fix possible resource leaks in test
- #1089 Limit the size of a save file in file_saving_test.
- #1088 Use
--config
to tell bazel about the environment. - #1085 Prune long long warnings.
- #1084 Fix style in toxav.c.
- #1083 Fix coding style in rtp module.
- #1082 Fix groupav.c style and avoid casts in toxav_old.c.
- #1080 Fix memory leak in error path in group A/V.
- #1079 Fix style in video.c.
- #1078 Fix style in msi.c.
- #1077 Make
conferences_object
properly typed. - #1076 Fix style in bwcontroller module.
- #1074 Move OSX to stage 1 of Travis.
- #1073 Stop running tests in the bazel build.
- #1072 Avoid forward declaration of rtp structs.
- #1071 Temporarily disable FreeBSD build, since it times out.
- #1070 Fix enumerator names in toxav to comply with toxcore naming standards.
- #1068 Fix a few warnings from clang.
- #1067 Remove last use of the
MIN
macro. - #1066 Remove all uses of the PAIR macro in toxav.
- #1064 Fix ToxAv's use of
struct Tox
. - #1063 Avoid passing -1 as friend connection to new groups.
- #1062 Check that the save file size isn't larger than our address space.
- #1060 Avoid implicit conversion of negative value to uint32_t.
- #1059 Assert that we don't divide by 0 in random_testing.cc.
- #1056 Fix typo in loop over assocs.
- #1053 Use tokstyle in the cmake travis build.
- #1049 Fix some printf format specifiers.
- #1043 Add simple deterministic random number generator for tests
- #1042 Add callback for successful connection to a conference
- #1039 Use the crypto random functions instead of
rand()
. - #1036 Add deprecation notice to some UPPER_CASE enums.
- #1016 Split out conference type (text/av) from identifier.
v0.2.5
Merged PRs:
- #1054 Release 0.2.5
- #1048 Fix error message in m_send_generic_message
- #1047 Remove unused
m_callback_log
function. - #1041 Avoid multiple for-next expressions.
- #1037 Run all tests in the Autotools build
- #1035 Fix problems with initial connections and name-setting in conferences
- #1032 Use auto_test fixture in some tests and standardise filenames
- #1030 Make a separate
struct Tox
containing the Messenger. - #1029 Add
by_id
andget_id
functions, renaming from*_uid
. - #1025 More fixed_width ints and incorporating file_saving_test.c
- #1023 Run buildifier on c-toxcore BUILD files.
- #1022 Make
resize
inlist.c
return bool instead of 0/1. - #1021 Remove redundant casts to the same type.
- #1020 Add github usernames to TODOs.
- #1019 Synchronise parameter names in headers with those in the implementation.
- #1018 Reduce nesting by doing more early returns on error.
- #1017 Add missing braces in dht_test.c.
- #1011 Run Clang global static analysis on Travis.
- #1010 Avoid implementations in .h files or #including .c files.
Closed issues:
- #1028 qTox crashes 1-2 times a day after update to 0.2.4
- #1002 Implement an abstraction over pthread and windows thread synchronisation primitives
v0.2.4
Merged PRs:
- #1024 Release v0.2.4
- #1014 Use string comparison operator in configure.ac.
- #1013 Link -lsocket and -lnsl for socket functions on Solaris.
- #1012 Correct the max hostname length constant.
- #1009 Using stdint instead of int/long
- #1008 Set
_XOPEN_SOURCE
to 700 for FreeBSD. - #1007 Use enums for group packet types.
- #1006 Set C++11/C99 flag manually in older cmake on not-msvc.
- #1005 Use the correct repository name in the coverage badge.
- #1003 Remove LOGGER_ERROR for harmless send failure.
- #1001 Add conference_by_uid and conference_get_uid functions.
- #1000 Limit number of group chats to 65536.
- #998 Use named function types for group callbacks.
- #997 Style fixes in TCP code; remove MIN and PAIR from util.h.
- #996 Add the bazel build as one of the PR blocking builds.
- #995 Fix style in some header files.
- #994 Fix style in DHT.c.
- #993 Move
load_state
and its helper functions to their own module. - #991 Use named function types for friend_connection callbacks.
- #990 Use named function types for friend_requests callbacks.
- #989 Use named function types for callbacks in net_crypto.
- #987 Use named types for onion callbacks.
- #986 Simplify Travis-CI FreeBSD build
- #985 Clarify the intent of "file kinds" in the API.
- #984 Avoid side-effectful assignments in conditionals.
- #981 Factor out time keeping code into its own module: mono_time.c.
- #979 Add a thread-safe version of unix_time and friends.
- #978 Rename
BS_LIST
toBS_List
to follow the naming conventions. - #977 Remove VLA usage from
send_audio_packet
. - #976 Call the "peer leaves" callback only once on group delete.
- #975 Factor out the actual test code from conference_test.
- #972 Add a test that reproduces the NULL peer nick bug.
- #968 Make tox.c unambiguously parseable.
- #967 lan_discovery_test and version_test cleanup
- #966 Use run_auto_test.h test fixture for some auto-tests.
- #965 Add
#include <cstdio>
forstd::printf
. - #964 Add some tests for our ring_buffer implementation.
- #962 Collect
PACKET_ID*
constants innet_crypto.h
, cleanup their uses - #958 Fix leak of Logger instances in dht_test.
- #957 Remove broken conference tests.
- #955 Another TCP_test upgrade
- #954 Proposal: Make arg
host
understand clearly. - #953 Add missing MAX_HOSTNAME_LENGTH doc.
- #945 Add a test to try and overflow the send queue in net_crypto.
- #943 Correct check for net_crypto packet index.
- #942 Simplify Travis CI builds.
- #932 Various minor cleanups in
net_crypto
.
Closed issues:
- #1015 Improve Solaris support
- #1004 qTox: "Program received signal SIGPIPE, Broken pipe." with TokTok-c-toxcore-v0.2.3_GH0 on FreeBSD 11.x.
- #988 Registration on https://nodes.tox.chat (question)
- #982 Merge the two travis stages for freebsd back into one
- #970 Crash with persistent groups
- #963 ToxAV's
rb_write
function is written in a strange way - #946 [API] for max proxy address length
- #944 How detect that friend is busy
- #936 Help needed in testing a tox client,I need some dummy toxids to test .
- #923 Crash on malloc in ping_array_add
- #911 Weekly Tox Dev Meeting
- #910 Crash in clear_entry in ping_array.c
- #903 c-toxcore and LGPL (question)
- #528 c-toxcore on Windows can be compiled using MSYS2 (with modern MinGW-w64)
- #472 Crash in ping_array.c:35
- #450 Run format-test earlier in the build
- #429 Cannot build on Windows using MinGW
v0.2.3
Merged PRs:
- #952 Release v0.2.3
- #951 Only run astyle if the astyle binary exists.
- #950 Remove utils.c and utils.h from toxencryptsave build.
- #949 Fixes to the imported sodium sources to compile without warnings.
- #948 Add a MAX_HOSTNAME_LENGTH constant.
- #947 Remove the format test.
- #937 Add new Circle CI configuration.
- #935 Add a test for double conference invite.
- #933 Add Logger to various net_crypto functions, and add
const
to Logger where possible. - #931 Avoid conditional-uninitialised warning for tcp test.
- #930 Disable UDP when proxy is enabled.
- #928 Use clang-format for C++ code.
- #927 Add assertions to bootstrap tests for correct connection type.
- #926 Make NULL options behave the same as default options.
- #925 Add tests for what happens when passing an invalid proxy host.
- #924 Make the net_crypto connection state an enum.
- #922 Clarify/Improve test_some test
- #921 Beginnings of a TCP_test.c overhaul
- #920 Add test for creating multiple conferences in one tox.
- #918 Merge irungentoo/master into toktok
- #917 Add random testing program.
- #916 Fix linking with address sanitizer.
- #915 Remove resource_leak_test.
- #914 Make dht_test more stable.
- #913 Minor cleanup: return early on error condition.
- #906 Sort bazel build file according to buildifier standard.
- #905 In DEBUG mode, make toxcore crash on signed integer overflow.
- #902 Log only the filename, not the full path in LOGGER.
- #899 Fix macOS macro because of GNU Mach
- #898 Fix enumeration of Crypto_Connection instances
- #897 Fix ipport_isset: port 0 is not a valid port.
- #894 Fix logging related crash in bootstrap node
- #893 Fix bootstrap crashes, still
- #892 Add empty logger to DHT bootstrap daemons.
- #887 Fix FreeBSD build on Travis
- #884 Fix the often call of event tox_friend_connection_status
- #883 Make toxcore compile on BSD
- #878 fix DHT_bootstrap key loading
- #877 Add minitox to under "Other resources" section in the README
- #875 Make bootstrap daemon use toxcore's version
- #867 Improve network error reporting on Windows
- #841 Only check full rtp offset if RTP_LARGE_FRAME is set
- #823 Finish @Diadlo's network Family abstraction.
- #822 Move system header includes from network.h to network.c
Closed issues:
- #900 Log messages include the full build path
- #881 Toxcore does not build with cmake on OpenBSD.
- #879 DHT_bootstrap asserts due to no default logger
- #868 A tox_friend_connection_status event often occurs
v0.2.2
Merged PRs:
- #872 Restrict packet kinds that can be sent through onion path.
- #864 CMake warn if libconfig not found
- #863 Remove broken and unmaintained scripts.
- #862 Release v0.2.2
- #859 Add clarifying comment to cryptpacket_received function.
- #857 Avoid the use of rand() in tests.
- #852 bugfix build error on MacOS
- #846 Disallow stderr logger by default.
- #845 Fix coveralls reporting.
- #844 Add COVERAGE cmake flag for clang.
- #825 Add default stderr logger for logging to nullptr.
- #824 Simplify sendpacket function, deduplicate some logic.
- #809 Remove the use of the 'hh' format specifier.
- #801 Add logging to the onion_test.
- #797 Move struct DHT_Friend into DHT.c.
Closed issues:
v0.2.1
Merged PRs:
- #839 Update changelog for 0.2.1
- #837 Update version to 0.2.1.
- #833 Add missing tox_nospam_size() function
- #832 Don't set RTP_LARGE_FRAME on rtp audio packets
- #831 Don't throw away rtp packets from old Toxcore
- #828 Make file transfers 50% faster.
v0.2.0
Merged PRs:
- #821 Remove deprecated conference namelist change callback.
- #820 Fix auto_tests to stop using the deprecated conference API.
- #819 Change default username to empty string
- #818 Change README to talk about cmake instead of autoreconf.
- #817 Fix warning on Mac OS X and FreeBSD.
- #815 Some minor cleanups suggested by cppcheck.
- #814 Fix memory leak of Logger instance on error paths.
- #813 Minor cleanups: dead stores and avoiding complex macros.
- #811 Update changelog for 0.2.0
- #808 Fix a bunch of compiler warnings and remove suppressions.
- #807 Link all tests to the android cpufeatures library if available.
- #806 Fix toxcore.pc generation.
- #805 Add an option that allows us to specify that we require toxav.
- #804 Fix OSX tests: find(1) doesn't work like on Linux.
- #803 Fix the windows build: pthread needs to be linked after vpx.
- #800 Make group number in the toxav public API uint32_t
- #799 Implement the "persistent conference" callback changes as new functions.
- #798 Add deprecation notices to functions that will go away in v0.3.0.
- #796 Make some sizeof tests linux-only.
- #794 Remove apidsl from the build.
- #793 Add a bazel test that ensures all our projects are GPL-3.0.
- #792 Increase range of ports available to Toxes during tests
- #791 Run all tests in parallel on Travis.
- #790 Disable lan discovery in most tests.
- #789 Remove tox_test from autotools build.
- #788 Don't print trace level logging in tests.
- #787 Split up tox_test into multiple smaller tests
- #784 Use Wine Devel instead of Wine Staging
- #783 Send 0 as peer number in CHANGE_OCCURRED group event.
- #782 Use
const
more in C code. - #781 Don't build all the small sub-libraries.
- #780 Get rid of the only GNU extension we used.
- #779 Remove leftover symmetric key from DHT struct.
- #778 Add static asserts for all the struct sizes in toxcore.
- #776 Optionally use newer cmake features.
- #775 Look for dependencies in third_party/
- #774 Improve gtest finding, support local checkout.
- #773 Add gtest include directory to -I flags if found.
- #772 Reject discovery packets coming from outside the "LAN".
- #771 Adopt the "change occurred" API change from isotoxin-groupchat.
- #770 Add MSVC compilation instructions
- #767 Build toxcore with libsodium.dll instead of libsodium.lib.
- #766 Remove libcheck from the dependencies.
- #765 Make outgoing Filetransfers round-robin.
- #764 Fix LAN discovery on FreeBSD.
- #761 use official debian domain
- #760 Make cmake script more forgiving.
- #759 Use more ubuntu packages; remove hstox for now.
- #757 Improve stability of crypto_memcmp test.
- #756 Format .cpp files with format-source.
- #755 Add some unit tests for util.h.
- #754 Move the tox_sync tool to the toxins repository.
- #753 Move irc_syncbot to the toxins repository.
- #752 Move tox_shell program to the toxins repository.
- #751 Use the markdown GPLv3 license in the c-toxcore repo.
- #750 Remove csrc from the RTPHeader struct.
- #748 Revert "Add correction message type"
- #745 Change the "capabilities" field to a "flags" field.
- #742 Improve conference test stability.
- #741 Add
-D__STDC_LIMIT_MACROS=1
for C++ code. - #739 Add RTP header fields for the full frame length and offset.
- #737 Use nullptr as NULL pointer constant instead of NULL or 0.
- #736 Avoid clashes with "build" directories on case-insensitive file systems.
- #734 Make audio/video bit rates "properties"
- #733 Fix link in README.md
- #730 Fix out of bounds read in error case in messenger_test.
- #729 Remove dead return statement.
- #728 Disable the autotools build in PR builds.
- #727 Rename some rtp header struct members to be clearer.
- #725 Publish a single public BUILD target for c-toxcore.
- #723 Use <stdlib.h> for alloca on FreeBSD.
- #722 Use self-built portaudio instead of system-provided.
- #721 Manually serialise RTPHeader struct instead of memcpy.
- #718 Improve sending of large video frames in toxav.
- #716 Add comment from #629 in ring_buffer.c.
- #714 Make BUILD files more finely-grained.
- #713 Add BUILD files for all the little tools in the repo.
- #712 Fix high quality video sending (backport to 0.1.x).
- #711 Make the monolith test a C++ binary.
- #710 Don't allocate or dereference Tox_Options in tests.
- #709 Remove nTox from the repo.
- #708 Add testing/*.c (except av_test) to bazel build.
- #707 Fix log message in simple_conference_test: invite -> message.
- #705 Add correction support for conference
- #703 Add a simple conference test with 3 friends.
- #702 Update to astyle 2.04 on CircleCI to get the correct result
- #701 Add astyle to Circle CI build.
- #700 Use more descriptive names in bwcontroller.
- #699 Add some explanatory comments to the toxav audio code.
- #698 Extract named constants from magic numbers in toxav/audio.c.
- #697 Use C99 standard in bazel builds.
- #694 Add bazel build scripts for c-toxcore.
- #693 Make libcheck optional for windows builds.
- #691 Don't install packages needlessly on Travis
- #690 Run fewer Travis jobs during Pull Requests.
- #689 Make Net_Crypto a module-private type.
- #688 Make DHT a module-private type.
- #687 Use apidsl to generate LAN_discovery.h.
- #686 Remove hstox test for now.
- #685 Add message type for correction
- #684 Add random_u16 function and rename the others to match.
- #682 Use larger arrays in crypto timing tests.
- #681 Fix some memory or file descriptor leaks in test code.
- #680 Filter out annoying log statements in unit tests.
- #679 Use apidsl to generate ping.h.
- #678 Sort monolith.h according to ls(1): uppercase first.
- #677 Make pack/unpack_ip_port public DHT functions.
- #675 Make Onion_Announce a module-private type.
- #674 Make TCP_Client_Connection a module-private type.
- #673 Move TCP_Secure_Connection from .h to .c file.
- #672 Make Friend_Connections a module-private type.
- #670 Make Friend_Requests a module-private type.
- #669 Make Onion_Client a module-private type.
- #668 Make Ping_Array a module-private type.
- #667 pkg-config .pc files: added .private versions of Libs and Required
- #666 Fix some typos in code and cmake comments
- #665 Remove useless if statement
- #662 Move Networking_Core struct into the .c file.
- #661 Disable asan, since it seems to break on travis.
- #660 Increase test retries to 10 (basically infinite).
- #659 Fix formatting in some C files.
- #658 Call freeaddrinfo on error paths in net_getipport.
- #657 Zero-initialise stack-allocated objects in hstox driver.
- #656 Fix file descriptor leak in hstox test.
- #654 Bump toxcore version to 0.2.0.
- #652 Add support for building the monolith test on android.
- #650 Remove deprecated ToxDNS
- #648 Make hstox compile on FreeBSD
- #624 Update rpm spec and use variables in cmake instead of hardcoded paths
- #616 Add projects link to Readme.
- #613 Fix travis
- #605 Fix OS X Travis.
- #598 Fix typos in docs
- #578 Split toxav_bit_rate_set() into two functions to hold the maximum bitrates libvpx supports
- #477 Update install instructions to use CMake
- #465 Add Alpine linux Dockerfile in addition to the existing Debian one
- #442 Generate only one large library "libtoxcore".
- #334 Change toxencryptsave API to never overwrite pass keys.
Closed issues:
- #810 Release 0.2.0
- #704 Add CORRECTION support to group chats
- #620 Video bug: large video frames are not sent correctly
- #606 groupId is int whereas friendId is uint32_t, reason?
- #599 Error when linking against libtoxcore: undefined reference to symbol 'crypto_hash_sha256'
- #572 int32_t may be not large enough as a argument for video_bit_rate of vp8/9 codec
- #566 LAYER #: modules for static linking - build issue
- #383 TODO: add cmake instructions in README.md
- #42 Remove ToxDNS and related stuff from toxcore
v0.1.11
Merged PRs:
- #643 Add .editorconfig
- #638 Release v0.1.11
- #637 Update tox-bootstrapd Dockerfile
- #635 Separate FreeBSD Travis build in 2 stages
- #632 Lift libconfig to v1.7.1
- #631 Add aspcud for Opam
- #630 Fix for Travis fail on addr_resolve testing
- #623 Split video payload into multiple RTP messages when too big to fit into one
- #615 forget DHT pubkey of offline friend after DHT timeout
- #611 Fix typo
- #607 set onion pingid timeout to announce timeout (300s)
- #592 Adjust docs of few toxencrypt function to the code
- #587 Fix tox test
- #586 Improve LAN discovery
- #576 Replace include(CTest) on enable_testing()
- #574 Reset hole-punching parameters after not punching for a while
- #571 Configure needs to find libsodium headers.
- #515 Network cleanup: reduce dependency on system-defined constants
- #505 Add FreeBSD Travis
- #500 Fixed the bug when receipts for messages sent from the receipt callback never arrived.
Closed issues:
- #493 Receipts for messages sent from the receipt callback never arrive
- #240 Tox doesn't reconnect after internet connection interruption
- #237 Contacts are shown offline when they are online
v0.1.10
Merged PRs:
v0.1.9
Merged PRs:
- #563 Release v0.1.9
- #561 Remove unused variable
- #560 Fix non-portable zeroing out of doubles
- #559 Fix theoretical memory leaks
- #557 Document inverted mutex lock/unlock.
- #556 Build tests on appveyor, the MSVC build, but don't run them yet.
- #555 Fold hstox tests into the general linux test.
- #554 Add a monolith_test that includes all toxcore sources.
- #553 Factor out strict_abi cmake code into a separate module.
- #552 Fix formatting and spelling in version-sync script.
- #551 Forbid undefined symbols in shared libraries.
- #546 Make variable names in file saving test less cryptic
- #539 Make OSX test failures fail the Travis CI build.
- #537 Fix TokTok/c-toxcore#535
- #534 Fix markdown formatting
- #530 Implement missing TES constant functions.
- #511 Save bandwidth by avoiding superfluous Nodes Requests to peers already on the Close List
- #506 Add test case for title change
- #498 DHT refactoring
- #487 Split daemon's logging backends in separate modules
- #468 Test for memberlist not changing after changing own name
- #449 Use new encoding of
Maybe
in msgpack results.
Closed issues:
- #482 CMake can't detect and compile ToxAV on OSX
v0.1.8
Merged PRs:
- #538 Reverting tox_loop PR changes
- #536 Release v0.1.8
- #526 Add TOX_NOSPAM_SIZE to the public API.
- #525 Retry autotools tests the same way as cmake tests.
- #524 Reduce ctest timeout to 2 minutes from 5 minutes.
- #512 Add test for DHT pack_nodes and unpack_nodes
- #504 CMake: install bootstrapd if it is built
- #488 Save compiled Android artifacts after CircleCI builds.
- #473 Added missing includes: <netinet/in.h> and <sys/socket.h>
- #335 Implement tox_loop
Closed issues:
- #535 OS X tests failing
- #503 Undefined functions: tox_pass_salt_length, tox_pass_key_length, tox_pass_encryption_extra_length
- #456 Tox.h doesn't expose the size of the nospam.
- #411 Reduce CTest timeout to 2 minutes
v0.1.7
Merged PRs:
- #523 Release v0.1.7
- #521 Fix appveyor script: install curl from chocolatey.
- #510 Fix list malloc(0) bug
- #509 Fix network malloc(0) bug
- #497 Fix network
- #496 Fix Travis always succeeding despite tests failing
- #491 Add crypto_memzero for temp buffer
- #490 Move c_sleep to helpers.h and misc_tools.h
- #486 Remove empty line in Messenger.c
- #483 Make BUILD_TOXAV an option and fail if dependencies are missing
- #481 Remove dependency on strings.h
- #480 Use VLA macro
- #479 Fix pthreads in AppVeyor build
- #471 Remove statics used in onion comparison functions.
- #461 Replace part of network functions on platform-independent implementation
- #452 Add VLA compatibility macro for C89-ish compilers.
Closed issues:
- #495 Fix heap buffer overflow introduced by #461
- #494 Format networking code introduced by #461
- #474 TOX_VERSION_PATCH isn't in sync with the version
v0.1.6
Merged PRs:
- #460 Release v0.1.6.
- #459 Add Android build to CI.
- #454 Add appveyor build for native windows tests.
- #448 Only retry failed tests on Circle CI instead of all.
- #434 Replace redundant packet type check in handler with assert.
- #432 Remove some static variables
- #385 Add platform-independent Socket and IP implementation
Closed issues:
- #457 EPOLLRDHUP not defined in android ndk on lower API that 21
- #415 Set up a native windows build on appveyor
v0.1.5
Merged PRs:
- #447 Release v0.1.5.
- #446 Limit number of retries to 3.
- #445 Make Travis tests slightly more robust by re-running them.
- #443 Make building
DHT_bootstrap
in cmake optional. - #433 Add tutorial and "danger: experimental" banner to README.
- #431 Update license headers and remove redundant file name comment.
- #424 Fixed the FreeBSD build failure due to the undefined MSG_NOSIGNAL.
- #420 Setup autotools to read .so version info from a separate file
- #418 Clarify how the autotools build is done on Travis.
- #414 Explicitly check if compiler supports C99
Closed issues:
- #413 Support C compilation with
-std=c99
in autotools
v0.1.4
Merged PRs:
- #422 Release v0.1.4.
- #410 Fix NaCl build: tar was called incorrectly.
- #409 Clarify that the pass key
new
function can fail. - #407 Don't use
git.depth=1
anymore. - #404 Issue 404: semicolon not found
- #403 Warn on -pedantic, don't error yet.
- #401 Add logging callback to messenger_test.
- #400 Run windows tests but ignore their failures.
- #398 Portability Fixes
- #397 Replace make_quick_sort with qsort
- #396 Add an OSX build that doesn't run tests.
- #394 CMake: Add soversion to library files to generate proper symlinks
- #393 Set up autotools build to build against vanilla NaCl.
- #392 Check that TCP connections aren't dropped in callbacks.
- #391 Minor simplification in
file_seek
code. - #390 Always kill invalid file transfers when receiving file controls.
- #388 Fix logging condition for IPv6 client timestamp updates.
- #387 Eliminate dead return statement.
- #386 Avoid accessing uninitialised memory in
net_crypto
. - #381 Remove
TOX_DEBUG
and have asserts always enabled.
Closed issues:
- #378 Replace all uses of
make_quick_sort
withqsort
- #364 Delete misc_tools.h after replacing its use by qsort.
- #363 Test against NaCl in addition to libsodium on Travis.
v0.1.3
Merged PRs:
- #395 Revert "Portability fixes"
- #380 Test a few cmake option combinations before the build.
- #377 Fix SSL verification in coveralls.
- #376 Bring back autotools instructions
- #373 Only fetch 1 revision from git during Travis builds.
- #369 Integrate with CircleCI to build artifacts in the future
- #366 Release v0.1.3.
- #362 Remove .cabal-sandbox option from tox-spectest find line.
- #361 Simplify integration as a third-party lib in cmake projects
- #354 Add secure memcmp and memzero implementation.
- #324 Do not compile and install DHT_bootstrap if it was disabled in configure
- #297 Portability fixes
Closed issues:
- #347 Implement our own secure
memcmp
andmemzero
if libsodium isn't available - #319 toxcore installs
DHT_bootstrap
even though--disable-daemon
is passed to./configure
v0.1.2
Merged PRs:
- #355 Release v0.1.2
- #353 Fix toxav use after free caused by premature MSI destruction
- #346 Avoid array out of bounds read in friend saving.
- #344 Remove unused get/set salt/key functions from toxencryptsave.
- #343 Wrap all sodium/nacl functions in crypto_core.c.
- #341 Add test to check if tox_new/tox_kill leaks.
- #336 Correct TES docs to reflect how many bytes functions actually require.
- #333 Use
tox_options_set_*
instead of direct member access.
Closed issues:
- #345 Array out of bounds read in "save" function
- #342 Wrap all libsodium functions we use in toxcore in
crypto_core
. - #278 ToxAV use-after-free bug
v0.1.1
Merged PRs:
- #337 Release v0.1.1
- #332 Add test for encrypted savedata.
- #330 Strengthen the note about ABI compatibility in tox.h.
- #328 Drop the broken
TOX_VERSION_REQUIRE
macro. - #326 Fix unresolved reference in toxencryptsave API docs.
- #309 Fixed attempt to join detached threads (fixes toxav test crash)
- #306 Add option to disable local peer discovery
Closed issues:
v0.1.0
Merged PRs:
- #325 Fix Libs line in toxcore.pc pkg-config file.
- #322 Add compatibility pkg-config modules: libtoxcore, libtoxav.
- #318 Fix
--enable-logging
flag in autotools configure script. - #316 Release 0.1.0.
- #315 Fix version compatibility test.
- #314 Fix off by one error in saving our own status message.
- #313 Fix padding being in the wrong place in
SAVED_FRIEND
struct - #312 Conditionally enable non-portable assert on LP64.
- #310 Add apidsl file for toxencryptsave.
- #307 Clarify toxencryptsave documentation regarding buffer sizes
- #305 Fix static builds
- #303 Don't build nTox by default.
- #301 Renamed messenger functions, prepend
m_
. - #299 net_crypto give handle_data_packet_helper a better name
- #294 Don't error on warnings by default
Closed issues:
- #317 toxcore fails to build with autotools and debugging level enabled
- #311 Incorrect padding
- #308 Review TES and port it to APIDSL
- #293 error building on ubuntu 14.04
- #292 Don't build nTox by default with CMake
- #290 User Feed
- #266 Support all levels listed in TOX_DHT_NAT_LEVEL
- #216 When v0.1 release?
v0.0.5
Merged PRs:
- #289 Version Patch v0.0.4 => v0.0.5
- #287 Add CMake knobs to suppress building tests
- #286 Support float32 and float64 in msgpack type printer.
- #285 Mark
Tox_Options
struct as deprecated. - #284 Add NONE enumerator to bit mask.
- #281 Made save format platform-independent
- #277 Fix a memory leak in hstox interface
- #276 Fix NULL pointer dereference in log calls
- #275 Fix a memory leak in GroupAV
- #274 Options in
new_messenger()
must never be null. - #271 Convert to and from network byte order in set/get nospam.
- #262 Add ability to disable UDP hole punching
Closed issues:
- #254 Add option to disable UDP hole punching
- #215 The current tox save format is non-portable
- #205 nospam value is reversed in array returned by
tox_self_get_address()
v0.0.4
Merged PRs:
- #272 v0.0.4
- #265 Disable -Wunused-but-set-variable compiler warning flag.
- #261 Work around Travis issue that causes build failures.
- #260 Support arbitrary video resolutions in av_test
- #257 Add decode/encode PlainText test support.
- #256 Add spectest to the cmake test suite.
- #255 Disable some gcc-specific warnings.
- #249 Use apidsl for the crypto_core API.
- #248 Remove new_nonce function in favour of random_nonce.
- #224 Add DHT_create_packet, an abstraction for DHT RPC packets
v0.0.3
Merged PRs:
- #251 Rename log levels to remove the extra "LOG" prefix.
- #250 Release v0.0.3.
- #245 Change packet kind enum to use hex constants.
- #243 Enable address sanitizer on the cmake build.
- #242 Remove assoc
- #241 Move log callback to options.
- #233 Enable all possible C compiler warning flags.
- #230 Move packing and unpacking DHT request packets to DHT module.
- #228 Remove unimplemented "time delta" parameter.
- #227 Compile as C++ for windows builds.
- #223 TravisCI shorten IRC message
- #220 toxav renaming: group.{h,c} -> groupav.{h,c}
- #218 Rename some internal "group chat" thing to "conference".
- #212 Convert series of
NET_PACKET_*
defines into a typedef enum - #196 Update readme, moved the roadmap to a higher position
- #193 Remove duplicate tests: split tests part 2.
Closed issues:
- #40 Stateless callbacks in toxcore's public API
v0.0.2
Merged PRs:
- #207 docs: correct instructions for cloning & harden against repo name changes
- #206 Corrected libsodium tag
- #204 Error if format_test can't be executed.
- #202 Version Patch v0.0.2
- #190 Install libraries with RPATH.
- #189 Use
socklen_t
instead ofunsigned int
in call toaccept
. - #188 Add option to set test timeout
- #187 Add option to build tox-bootstrapd
- #185 Import the hstox SUT interface from hstox.
- #183 Set log level for DEBUG=ON to LOG_DEBUG.
- #182 Remove return after no-return situation.
- #181 Minor documentation fixes.
- #180 Add the 'Tox' context object to the logger.
- #179 Remove the
_test
suffix inauto_test
calls. - #178 Rebuild apidsl'd headers in cmake.
- #177 docs(INSTALL): update compiling instructions for Linux
- #176 Merge irungentoo/toxcore into TokTok/c-toxcore.
- #173 Duplicate tox_test to 4 other files.
Closed issues:
- #201 Logging callback was broken
v0.0.1
Merged PRs:
- #174 Remove redundant callback objects.
- #171 Simple Version tick to v0.0.1
- #170 C++ the second round.
- #166 Add version-sync script.
- #164 Replace
void*
withRingBuffer*
to avoid conversions. - #163 Move ring buffer out of toxcore/util into toxav.
- #162 Allow the OSX build to fail on travis.
- #161 Minor cleanups: unused vars, unreachable code, static globals.
- #160 Work around bug in opencv3 headers.
- #157 Make TCP_Connections module-private.
- #156 Make TCP_Server opaque.
- #153 Fix strict-ld grep expressions to include digits.
- #151 Revert #130 "Make ToxAV stateless"
- #148 Added UB comment r/t deleting a friend w/ active call
- #146 Make group callbacks stateless
- #145 Make internal chat list function take uint32_t* as well.
- #144 Only build toxav if opus and vpx are found.
- #143 Make toxcore code C++ compatible.
- #142 Fix for windows dynamic libraries.
- #141 const-correctness in windows code.
- #140 Use C99 %zu format conversion in printf for size_t.
- #139 Clean up Travis build a bit in preparation for osx/win.
- #138 Remove format-source from travis script.
- #135 Convert old groupchats to new API format
- #134 Add some astyle options to make it do more.
- #133 Ensure that all TODOs have an owner.
- #132 Remove
else
directly afterreturn
. - #130 Make ToxAV stateless
- #129 Use TokTok's apidsl instead of the iphydf one.
- #127 Use "phase" script for travis build phases.
- #126 Add option to build static libraries.
- #125 Group #include directives in 3-4 groups.
- #123 Use correct logical operator for tox_test
- #120 make the majority of the callbacks stateless and add some status to a testcase
- #118 Use
const
for version numbers. - #117 Add STRICT_ABI cmake flag to generate export lists.
- #116 Fix potential null pointer dereference.
- #115 Fix memory leak on error paths in tox_new.
- #114 Fix compilation for Windows.
- #111 Add debugging option to autotools configuration
- #110 Comment intentional switch fallthroughs
- #109 Separate ip_port packing from pack_nodes() and unpack_nodes()
- #108 Prevent
<winsock.h>
inclusion by<windows.h>
. - #107 Print a message about missing astyle in format-source.
- #104 Merge with irungentoo/master
- #103 Allocate
sizeof(IP_ADAPTER_INFO)
bytes instead ofsizeof(T*)
. - #101 Add TODO for @mannol.
- #100 Remove the packet mutation in toxav's bwcontroller.
- #99 Make packet data a ptr-to-const.
- #97 Improve static and const correctness.
- #96 Improve C standard compliance.
- #94 Rearrange fields to decrease size of structure
- #84 Remove useless casts.
- #82 Add missing #include <pthread.h> to av_test.c.
- #81 Match parameter names in declarations with their definitions.
- #80 Sort #includes in all source files.
- #79 Remove redundant
return
statements. - #78 Do not use
else
afterreturn
. - #77 Add OSX and Windows build to travis config.
- #76 Remove unused and bit-rotten friends_test.
- #75 Enable build of av_test.
- #74 Add missing #includes to headers and rename tox_old to tox_group.
- #73 Add braces to all if statements.
- #72 Add getters/setters for options.
- #70 Expose constants as functions.
- #68 Add address sanitizer option to cmake file.
- #66 Fix plane size calculation in test
- #65 Avoid large stack allocations on thread stacks.
- #64 Comment out useless TODO'd if block.
- #63 Initialise the id in assoc_test.
- #62 Reduce the timeout on travis to something much more reasonable
- #60 Make friend requests stateless
- #59 Replace uint with unsigned int in assoc.c.
- #58 Make Message received receipts stateless
- #57 Make Friend User Status stateless
- #55 docs(INSTALL.md): update instructions for Gentoo
- #54 Make typing change callback stateless
- #53 Add format-source script.
- #52 Build assoc DHT code on travis.
- #51 Fix operation sequencing in TCP_test.
- #49 Apidsl test
- #48 Make friend message callback stateless
- #46 Move logging to a callback.
- #45 Stateless friend status message
- #43 Allow NULL as argument to tox_kill.
- #41 Fix warnings
- #39 Merge irungentoo/toxcore into TokTok/c-toxcore.
- #38 Try searching for libsodium with pkg-config in ./configure.
- #37 Add missing DHT_bootstrap to CMakeLists.txt.
- #36 Make tox_callback_friend_name stateless.
- #33 Update readme with tentative roadmap, removed old todo.md
- #32 Fix a bug I introduced that would make toxcore fail to initialise a second time
- #31 7. Travis envs
- #30 2. Hstox test
- #29 1. Move toxcore travis build scripts out of .travis.yml.
- #27 8. Stateless
- #26 6. Cmake bootstrapd
- #25 5. Coverage clang
- #24 Silence/fix some compiler warnings.
- #23 4. Cmake
- #20 3. Travis astyle
- #13 Enable, and report test status
- #12 Fix readme for TokTok
- #11 Documentation: SysVInit workaround for <1024 ports
- #2 Enable toxcore logging when building on Travis.
- #1 Apidsl fixes and start tracking test coverage
Closed issues:
- #158 Error while build with OpenCV 3.1
- #147 Add comment to m_delfriend about the NULL passing to the internal conn status cb
- #136 Replace astyle by clang-format
- #113 Toxcore tests fail
- #83 Travis tests are hard to quickly parse from their output.
- #22 Make the current tests exercise both ipv4 and ipv6.
- #9 Fix the failing test
- #8 Toxcore should make more liberal use of assertions
- #4 Integrate hstox tests with toxcore Travis build