Liking cljdoc? Tell your friends :D

Change Log

All notable changes to this project will be documented in this file. This change log follows the conventions of keepachangelog.com. Discljord follows semantic versioning.

Unreleased

1.0.0 - 2020-06-27

Added

  • Support for user-level shard control (enabling distributed bots)

Changed

  • Logging library from taoensso.timbre to clojure.tools.logging
  • Minimum reconnect time for a single shard reduced to 0 seconds

Fixed

  • Bots will not try to resume
  • Buffer size for bots is too small for large servers
  • Reflection warnings
  • Multiple bots in the same JVM have identify rate limits interfere with each other
  • Instrumenting message-pump! calls the function repeatedly
  • Instrumenting calls to all functions raises internal errors
  • Resumes do not reset the retry count
  • Direct memory leak when reconnects occur (for real this time)

0.2.9 - 2020-06-18

Added

  • Support for doing a parking take on the promises returned from all REST endpoint functions
  • Support for removing all reactions of a given emoji from a message
  • Support for stream-like data in discljord.messaging/create-message!

Fixed

  • Messages arrive out of order when rate limits are hit
  • Gateway communication started while a shard is disconnected crashes discljord
  • Spec for embeds had incorrect type for embed field values
  • Direct memory leak when reconnects occur

Removed

  • Dependency on com.rpl.specter

0.2.8 - 2020-04-13

Added

  • Support for audit log reasons on all requests made with discljord.messaging
  • Support for gateway intents
  • Support for allowed-mentions in discljord.messaging/execute-webhook! payload
  • Support for allowed-mentions in discljord.messaging/create-message! payload

Changed

  • discljord.messaging/execute-webhook! had its parameters moved to optional ones

Fixed

  • Invalid payload for bulk-message-delete requests
  • User-requested disconnect does not send a :disconnect event
  • Websocket clients of closed websockets were not stopped
  • discljord.messaging/execute-webhook! was unable to send files
  • Documentation for create-message! saying file sharing was not implemented

0.2.7 - 2020-02-24

Fixed

  • :disconnect event no longer sent when bot shuts down

0.2.6 - 2020-02-24

Fixed

  • Bots are unable to disconnect properly
  • Bots fail to reconnect after spending time with internet unavailable

Deprecated

  • discljord.util/*enable-logging*, prefer directly interacting with timbre
  • discljord.util/set-logging-level!, prefer directly interacting with timbre

Upgraded

  • gniazdo version

0.2.5 - 2019-05-27

Added

  • Support for the Watching activity type
  • Support for pass-through activity types in case discljord doesn't support them all
  • Audit log reason for modify-guild (this is a framework to add this to all other requests which it would be applicable to)

Fixed

  • Incorrect URL used for http api
  • remove-guild-member-role! makes a DELETE to /memebers instead of /members

0.2.4 - 2019-03-24

Fixed

  • NullPointerException in rare case when dealing with rate limits
  • Rate-limit decreased by one compared to what it should be if always recieve headers
  • SSLContext endpoint identification algorithm warning
  • Deprecated method send-message! broke

0.2.3 - 2019-03-01

Fixed

  • discljord.events not loading properly due to removed dependency for clojure.tools.logging

0.2.2 - 2019-03-01

Fixed

  • http-kit HTTP requests would break on java 11

Removed

  • Unnecessary dependency on clojure.tools.logging

0.2.1 - 2019-02-27

Changed

  • Spec for files to be used with create-message! now requires a file rather than any?

Fixed

  • Rate limit handling now accounts for server drift

0.2.0 - 2019-02-26

Added

  • Changelog
  • Logging about retries during connections
  • Request :guild-members-chunk events
  • Ability to update bot's status on Discord
  • Ability to update bot's voice state on Discord
  • Support for re-sharding a bot as it grows
  • Docstrings for many namespaces
  • Support for tts in messages
  • New HTTP endpoint support (all)
  • Logging when unable to recieve gateway information
  • Support for embeds (with attachments)
  • Support for sending files

Changed

  • Moved many functions from discljord.connections to an implementation namespace
  • Added new create-message! function to replace send-message!
  • Exchanged logging framework from log4j to timbre

Fixed

  • Improper handling of rate limits when none is found
  • Bot no longer starts when out of identify packets for shards

Depricated

  • send-message! function

Removed

  • Uberjar profile in Leiningen

0.1.7 - 2019-01-13

Fixed

  • README.md example bots

0.1.6 - 2018-10-02

Added

  • log4j backend for core.tools.logging
  • discljord log4j configuration
  • deps.edn file to allow use with tools.deps projects
  • README section on Java 9 and later

Removed

  • Unnecessary JVM options

0.1.5 - 2018-09-25

Added

  • Buffer size for shards can now be specified by users

Changed

  • Buffers now grow by 100k bytes on 1009 stop codes, rather than being set to a static 500k bytes

Fixed

  • Removed unneeded dependency
  • No default buffer size provided
  • Buffer size not properly set on client

0.1.4 - 2018-09-25

Fixed

  • Incorrect spec on function connect-bot!
  • Exception thrown by shards due to atoms not being associative data structures

0.1.3 - 2018-09-24

Fixed

  • README installation lacked group ID

0.1.2 - 2018-09-24

Added

  • Group ID to Maven artifact
  • Disconnects with stop code 1009 now reconnect with larger buffers
  • Can now set flag so that the bot will not try to reconnect when it disconnects
  • Function to disconnect all shards in a bot
  • Exception handling in default message pump in discljord.events

Changed

  • handle-disconnect! now takes the shard state
  • connect-shard! now returns a tuple of atoms, first is the connection, second is shard state

0.1.1 - 2018-09-23

Fixed

  • Incorrect README version

Removed

  • Example DSL code
  • user namespace

0.1.0 - 2018-09-23

Added

  • Connection process
  • Shard handling
  • Messaging process
  • Copyright notice in README
  • Proper description for project
  • Set up deployment

Changed

  • README follows new API
  • Project name from discljord-functional to discljord

Can you improve this documentation? These fine people already did:
Joshua Suskalo & Brendan Speer
Edit on GitHub

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close