Skip to content

Commit

Permalink
Prepare 1.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
niklasf committed Sep 24, 2020
1 parent f49be1a commit bb8d57c
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 5 deletions.
34 changes: 34 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,40 @@
Changelog for python-chess
==========================

New in v1.0.0
-------------

Changes:

* Now requires Python 3.7+.
* `chess.engine` will now cut off illegal principal variations at the first
illegal move instead of discarding them entirely.
* `chess.engine.EngineProtocol` renamed to `chess.engine.Protocol`.
* `chess.engne.Option` is no longer a named tuple.
* Renamed `chess.gaviota` internals.
* Relaxed type annotations of `chess.pgn.GameNode.variation()` and related
methods.
* Documentation improvements. Will now show type aliases like `chess.Square`
instead of `int`.

Bugfixes:

* Fix insufficient material with same-color bishops on both sides.
* Clarify that `chess.Board.can_claim_draw()` and related methods refer to
claims by the player to move. Three-fold repetition could already be claimed
before making the final repeating move. `chess.Board.can_claim_fifty_moves()`
now also allows a claim before the final repeating move. The previous
behavior is `chess.Board.is_fifty_moves()`.
* Fix parsing of green arrows/circles in `chess.pgn.GameNode.arrows()`.
* Fix overloaded type signature of `chess.engine.Protocol.engine()`.

New features:

* Added `chess.parse_square()`, to be used instead of
`chess.SQUARE_NAMES.index()`.
* Added `chess.Board.apply_mirror()`.
* Added `chess.svg.board(..., colors)`, to allow overriding the default theme.

New in v0.31.4
--------------

Expand Down
2 changes: 0 additions & 2 deletions chess/engine.py
Original file line number Diff line number Diff line change
Expand Up @@ -879,8 +879,6 @@ async def popen(cls: Type[ProtocolT], command: Union[str, List[str]], *, setpgrp

return await asyncio.get_running_loop().subprocess_exec(cls, *command, **popen_args) # type: ignore

EngineProtocol = Protocol # TODO: Remove before 1.0


class CommandState(enum.Enum):
New = 1
Expand Down
3 changes: 0 additions & 3 deletions chess/syzygy.py
Original file line number Diff line number Diff line change
Expand Up @@ -380,9 +380,6 @@ def is_tablename(name: str, *, one_king: bool = True, piece_count: Optional[int]
(not normalized or normalize_tablename(name) == name) and
(not one_king or (name != "KvK" and name.startswith("K") and "vK" in name)))

def is_table_name(name: str) -> bool: # TODO: Remove before 1.0
return is_tablename(name, one_king=False)


def tablenames(*, one_king: bool = True, piece_count: int = 6) -> Iterator[str]:
first = "K" if one_king else "P"
Expand Down

0 comments on commit bb8d57c

Please sign in to comment.