Skip to content

v9.0.8 release

Choose a tag to compare

@braindigitalis braindigitalis released this 14 Oct 12:52
· 3540 commits to master since this release

Version 9.0.8 of D++ is finally here, with a whole load of new features and fixes for use in your projects! This is a recommended upgrade as it fixes a lot of issues, some related to receiving voice which was introduced as a feature in 9.0.7.

The full changelog of D++ 9.0.8 is listed below:

Release Changelog

✨ New Features

  • feat: #121 - set_timestamp() for dpp::embed objects
  • feat: specialised from_string for plain integer types like snowflake
  • add support for animated guild banners (experiment). add comments where missing to other headers
  • Add optional channel_types in dpp::command_option
  • Added SOCKET_ERROR and INVALID_SOCKET defines if they dont exis
  • Updated WantWrite to use INVALID_SOCKET
  • Added dpp::socket typedef to handle different socket types for windows/other
  • updated socket related code to use dpp::socket
  • add support for webhook icon that is already base64 encoded
  • Change CoreExport macro to be DPP_EXPORT

🐞 Bug Fixes

  • fix: discord_voice_client::log not declared const, shadows parent
  • fix guild_get_member bug, incorrectly named endpoint
  • fix: getaddrinfo hints in sslclient
  • fix: thread_member_update event never initialised member information
  • fix: thread metadata not initialised on reading thread JSON from event
  • fix: not able to remove components on message edit
  • Change addrLen to socklen_t for cross platform compatability
  • Replace random number generator for port selection, replacing with 0 to let kernel pick port
  • Removed no longer used in_queue_port and out_queue_port variables.
  • explicit u8 on the start of emoji string literals to make this more portable to C++20 and other charsets
  • removed unused str_length from string_has_prefix
  • emoji_flags set to uint8_t
  • binary operators used on signed type role_flags set to uint8_t
  • binary operators used on signed type cluster constructor exception formal parameter removed as its unused lots of type conversions
  • forward declarations removed from commandhandler.cpp
  • add win32_safe_warnings.h pragma squasher
  • Fix warnings in commandhandler.h
  • fix: check if voice_client_speaking is attached before calling it, fixes voice send/receive breaking
  • Remove redundant component::build_json()
  • fix: component buttons: copy the emoji of the first button if the first button has an emoji and following buttons have no emoji

👷 CI/Build

  • remove some warnings not supported by clang
  • fix: these warnings not supported on gcc8, gcc9 - fails CI
  • fix: make safe for a bunch more warnings, e.g. switch-fallthrough
  • now -Wall-safe
  • Warning set to 3 for windows builds
  • Disabled warning 4251 on windows as it is given by exporting classes or structures with stl member variables (this is perfectly safe for our use case)

📚 Documentation

  • #126, properly hide our crawl links div and update to doxygen-awesome-css 1.6.0
  • created an embed example page
  • spdlog example now includes dpp after spdlog. add_subdirectory() for the spdlog added in the example of 'Building with CMake'
  • fixed css name
  • add register_commands() to commandhandler example
  • fix minor typo in commandhandler example
  • amendment to #119 - -note-colour-darker is better for eyes
  • docs: improvements to indexability
  • re added struct forward decl to commandhandler::route for doxygen
  • docs: document new methods
  • makedocs internal script
  • feat/docs: version dropdown

Thanks for using D++!