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:
* Dropped support for Python 3.4 (end of life reached).
* `chess.polyglot.Entry.move` **is now a property instead of a method**.
The raw move is now always decoded in the context of the position (relevant
for castling moves).
* `Piece`, `Move`, `BaseBoard` and `Board` comparisons no longer support
ducktyping.
* FENs sent to engines now always include potential en-passant squares, even if
no legal en-passant capture exists.
* Circular SVG arrows now have a `circle` CSS class.
* Superfluous dashes (-) in EPDs are no longer treated as opcodes.
* Removed `GameCreator`, `HeaderCreator` and `BoardCreator` aliases for
`{Game,Headers,Board}Builder`.
Bugfixes:
* Notation like `Kh1` is no longer accepted for castling moves.
* Remove stale files from wheels published on PyPI.
* Parsing Three-Check EPDs with moves was always failing.
* Some methods in `chess.variant` were returning bool-ish integers, when they
should have returned `bool`.
* `chess.engine`: Fix line decoding when Windows line-endings arrive seperately
in stdout buffer.
* `chess.engine`: Survive timeout in analysis.
* `chess.engine`: Survive unexpected `bestmove` sent by misbehaving UCI engines.
New features:
* **Experimental type signatures for almost all public APIs** (`typing`).
Some modules do not yet internally pass typechecking.
* Added `Board.color_at(square)`.
* Added `chess.engine.AnalysisResult.get()` and `empty()`.
* `chess.engine`: The `UCI_AnalyseMode` option is still automatically managed,
but can now be overwritten.
* `chess.engine.EngineProtocol` and constructors now optionally take
an explicit `loop` argument.