You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Changes:
* Drop support for Python 3.7, which has reached its end of life.
* ``chess.engine.EventLoopPolicy`` is no longer needed and now merely an alias
for the default event loop policy.
* If available and requested via ``setpgrp``, use ``process_group`` support
from Python 3.11 for engine processes.
* No longer eagerly reject 8 piece positions in ``chess.syzygy``, so that
some 8 piece positions with decisive captures can be probed successfully.
* The string wrapper returned by ``chess.svg`` functions now also implements
``_repr_html_``.
* Significant changes to ``chess.engine`` internals:
``chess.engine.BaseCommand`` methods other than the constructor no longer
receive ``engine: Protocol``.
* Significant changes to board state internals: Subclasses of ``chess.Board``
can no longer hook into board state recording/restoration and need to
override relevant methods instead (``clear_stack``, ``copy``, ``root``,
``push``, ``pop``).
New features:
* Add ``chess.pgn.Game.time_control()`` and related data models.
* Add model ``sf16.1`` for ``chess.engine.Score.wdl()``, the new default.
Bugfixes:
* Fix unsolicited engine output may cause assertion errors with regard to
command states.
* Fix handling of whitespace in UCI engine communication.
* For ``chess.Board.epd()`` and ``chess.Board.set_epd()``, require that EPD
opcodes start with a letter.