Releases: JFreegman/toxic
Releases · JFreegman/toxic
Version 0.11.1
New Features
Implemented a 2-D game engine and accompanying API with basic network support. Four games are included: Centipede, Snake, Conway's Game of Life, and Chess (online support only). The game module does not require additional libraries and is enabled by default build options. It can be disabled with the DISABLE_GAMES=1
build flag.
Bug Fixes
- Fixed a rare race condition related to sound notifications
- When a window is closed, the previous window is selected instead of the Home window
- The
/clear
command now works in the Home window
Version 0.10.1
New Features
- Add ability to customize Toxic's colour scheme via config file
Bug fixes
- No longer announce when "ghost peers" exit a conference (this is caused by connection issues)
- Fix off-by-one error related to text scrolling
- Fix minor display bug with the A/V call info box
- Fix bug sometimes causing join announcement spam on conference join
Other changes
- Renamed some Makefile variables for consistency
- Added a build script for creating minimal static binaries
Version 0.10.0
New Features
- A complete UI overhaul (Before, After)
- Window no longer scrolls on output if the output is not already at the bottom of the window
- Show a small indicator in the bottom left of the window tab when output scrolling is paused
- Show join/part messages in conferences (this was removed in recent years but has now been re-implemented)
Bug fixes
- Fix bug causing notification counter in window tab to increment by 2 on certain events
Other changes
- Removed some unnecessary compile flags for ASAN builds (These flags are currently only necessary when compiling with
-O3
; the release build compiles with-O2
) - Updated some default settings and config example entries to reflect recent changes
- Attempt to handle
nanosleep()
errors
Version 0.9.1
New features
- Added a push-to-talk option for audio conferences (audio config setting:
push_to_talk
) - Added config setting allowing audio input to be set to mono or stereo (audio config settings:
chat_audio_channels
andconference_audio_channels
respectively)
Improvements
- Conferences now have persistent logs which behave identically to normal chat logs
- Implemented word wrapping
- The info bar showing active chats now minimizes the window tab name unless highlighted, allowing for many more windows to be open simultaneously without having them run off the screen
- Chat tabs in the bottom bar now show the number of unread messages
Bug fixes
- Fix bug that caused the window to occasionally not scroll down the correct number of lines on output
- Fix bug sometimes preventing typing status from being updated
- Fix bug causing glitchy sound notifications introduced in v0.9.0
- Fix bug causing an empty message to be sent when a message fails internally to convert from widechar to multibyte
- Fix bug causing tab complete to fail to complete a file/directory's line if there was only one item in the directory
- Fix bug causing empty chat log files to be created when logging is disabled
Other changes
- Added Makefile options for building with a release build (optimizations enabled and debug symbols disabled) and for building with LLVM Address Sanitizer (
ENABLE_RELEASE=1
andENABLE_ASAN=1
respectively) - Removed seconds from the default timestamp format
- Removed code for an unfinished/stale X11 feature (Drag 'n drop) and refactored remaining X11 screen focus code
Version 0.9.0
New features
- Conference audio chats
Bug fixes
- Fix use after free bug on audio calls
- Fix bug causing file names for incoming file transfers to be truncated if they were too long
- Fix bug preventing failed inbound file transfers from being properly cleaned up in some instances
- No longer allow invalid Posix file names for inbound file transfers
- Fix race condition causing a null dereference in some instances related to desktop notifications
- Fix rare bug where toxic would send its avatar as a regular file transfer after a peer has a network hickup during the initial avatar file transfer
Other changes
- Audio implementation re-write
- Refactor and greatly speed up outbound message queue
- Greatly reduce stack memory allocations to ensure compatibility with musl's smaller default stack limit
- Switch to using c99 standard from gnu99
- Convert all variable length arrays to dynamic allocations (Toxic no longer uses VLA's for memory safety reasons)
- Remove legacy code for backwards compatible tox save files created >5 years ago
- Replaced deprecated
usleep
function withnanosleep
- Rename groupchats -> conferences
- Lots of misc. code cleanup and refactoring
Version 0.8.4
New features
- Add config option to set data file auto-save frequency
- Add option for toxcore logging
- Add ability to log to file
- Add option to disable LAN
- Add ability to skip words in input field via ctrl+left/right arrows
Bug fixes
- Fix bug preventing bell notifications from working when compiled without X11
- Fix auto-complete bugs
- Fix A/V bug sometimes preventing caller from being informed of call termination
- Fix A/V related build issues
- Fix segfault on starting video
- Fix groupchat peer scrolling bug
- Fix bug preventing saved conference titles from loading on startup
Other changes
- Change group peerlist scrolling key binding to ctrl+up/down arrows
- No longer allow using the /add command for friends in the block list
- Many misc. build fixes/improvements
Version 0.8.3
- Enclosing quotes are no longer required for multi-word command arguments or file paths
- Improved issues related to long message send delays in poor network conditions
- Allow for empty status messages
- Fixed tab-complete bug that added a forward slash to files with no file extension
- Fixed OSX build issues
- Various build/portability improvements
- Update/improve install instructions
- Numerous minor bug fixes and optimization improvements
Version 0.8.2
This release is primarily to support the updated Toxcore API as of Toxcore version 0.2.x
- Remove usage of deprecated Toxcore API functions
- Add support for persistent groups (scheduled for Toxcore version 0.2.1)
- Refactor groupchats in accordance with API changes (Regression: no longer have peer join/leave notifications)
- Fix autocomplete bug that was printing blank space instead of listing matches when using the /sendfile command
- Added a .travis file for future use
- Makefile fixes for compatibility with building Toxcore with cmake (note: Toxic will no longer compile if Toxcore is compiled with autotools which is considered deprecated)
- Fixed a bug causing a crash when calling certain friends
Version 0.8.1
- Added a new command /bitrate that allows one to change the audio bitrate
- Fixed compiling issues for *BSD systems
- The /status command now prints a message indicating the status has been changed
- Fix issue with redundant UI redrawing that would cause flickering on some systems
- The /lsdev command refreshes the device list in the event that the available devices have changed
- UI, formatting, and general bug fixes
Version 0.8.0
- Added python scripting interface (see documentation in apidoc directory)
- Added run option to show toxic/toxcore version and removed them from the interface
- Minor misc. fixes