Skip to content

Latest commit

 

History

History
1042 lines (916 loc) · 82.7 KB

CHANGELOG.md

File metadata and controls

1042 lines (916 loc) · 82.7 KB

v0.2.10

Merged PRs:

  • #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:

  • #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 and DHT_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
  • #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 and ip_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
  • #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 of exit 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 of save_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 on make 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 global unix_time

Closed issues:

  • #1105 Sodium.h missing?

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 and get_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 in list.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 to BS_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> for std::printf.
  • #964 Add some tests for our ring_buffer implementation.
  • #962 Collect PACKET_ID* constants in net_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)
  • #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

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.

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?
  • #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
  • #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

v0.1.10

Merged PRs:

  • #575 Release v0.1.10
  • #564 Fix Windows build
  • #542 Save bandwidth by moderating onion pinging

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#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:

  • #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:

  • #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

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 with qsort
  • #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 and memzero 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:

  • #327 The TOX_VERSION_REQUIRE macro is broken.
  • #221 Option to disable local peer detection

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 of unsigned int in call to accept.
  • #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 in auto_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* with RingBuffer* 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 after return.
  • #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 of sizeof(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 after return.
  • #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