Skip to content

Commit

Permalink
Merge branch 'master' into feat/embeds
Browse files Browse the repository at this point in the history
  • Loading branch information
Snipy7374 authored Nov 14, 2024
2 parents cbc849d + fbfc814 commit d9a87cf
Show file tree
Hide file tree
Showing 5 changed files with 42 additions and 3 deletions.
1 change: 0 additions & 1 deletion changelog/1180.doc.rst

This file was deleted.

1 change: 0 additions & 1 deletion changelog/1228.feature.rst

This file was deleted.

1 change: 0 additions & 1 deletion changelog/1228.misc.rst

This file was deleted.

15 changes: 15 additions & 0 deletions disnake/gateway.py
Original file line number Diff line number Diff line change
Expand Up @@ -687,6 +687,21 @@ def latency(self) -> float:
return float("inf") if heartbeat is None else heartbeat.latency

def _can_handle_close(self) -> bool:
# bandaid fix for https://github.com/aio-libs/aiohttp/issues/8138
# tl;dr: on aiohttp >= 3.9.0 and python < 3.11.0, aiohttp returns close code 1000 (OK)
# on abrupt connection loss, not 1006 (ABNORMAL_CLOSURE) like one would expect, ultimately
# due to faulty ssl lifecycle handling in cpython.
# If we end up in a situation where the close code is 1000 but we didn't
# initiate the closure (i.e. `self._close_code` isn't set), assume this has happened and
# try to reconnect.
if self._close_code is None and self.socket.close_code == 1000:
_log.info(
"Websocket remote in shard ID %s closed with %s. Assuming the connection dropped.",
self.shard_id,
self.socket.close_code,
)
return True # consider this a reconnectable close code

code = self._close_code or self.socket.close_code
return code not in (1000, 4004, 4010, 4011, 4012, 4013, 4014)

Expand Down
27 changes: 27 additions & 0 deletions docs/whats_new.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,33 @@ in specific versions. Please see :ref:`version_guarantees` for more information.

.. towncrier release notes start
.. _vp2p9p3:

v2.9.3
------

This is a maintainance release with several minor bugfixes.
Notably, this includes support for a newer voice encryption mode;
all modes supported in previous versions are scheduled to be :ddocs:`discontinued <change-log#voice-encryption-modes>` on 18th November 2024,
and voice connections using the builtin :class:`VoiceClient` will fail to connect.

New Features
~~~~~~~~~~~~
- Add support for ``aead_xchacha20_poly1305_rtpsize`` encryption mode for voice connections, and remove deprecated ``xsalsa20_poly1305*`` modes. (:issue:`1228`)

Bug Fixes
~~~~~~~~~
- Attempt to handle abrupt websocket closures on ``aiohttp >= 3.9.0`` and ``python < 3.11.0`` gracefully. (:issue:`1241`)

Documentation
~~~~~~~~~~~~~
- Adding some clarifying documentation around the type of :attr:`AuditLogEntry.extra` when the action is :attr:`~AuditLogAction.overwrite_create`. (:issue:`1180`)

Miscellaneous
~~~~~~~~~~~~~
- Raise PyNaCl version requirement to ``v1.5.0``. (:issue:`1228`)


.. _vp2p9p2:

v2.9.2
Expand Down

0 comments on commit d9a87cf

Please sign in to comment.