Results 273 comments of Niklas Fiekas

Not stale. Waiting for ~~merge~~ second review.

This is tricky to deal with for `chess.pgn.read_game()` with its current interface: It reads the file line by line, without being able to look ahead. And so with the parser...

Yes. I think for 2.x I'd like to replace the stateless `chess.pgn.read_game(f: file) -> Optional[Game]` with something like a stateful ```python class PgnReader: def __init__(self, f: file): ... def read_game(self)...

Can confirm this solves the issue, builds, and works at least for basic database operations. Tested with `--target_arch arm --build-from-source`.

Exploring the space of possible tradeoffs, there's also [Hyperbola Quintessence](https://www.chessprogramming.org/Hyperbola_Quintessence), which does not need such large tables even at runtime. For example, https://github.com/niklasf/chessops uses it to reduce bootstrap time, which...

The same patch is also breaking scrolling on the last tile of tile views: https://docs.lvgl.io/master/examples.html#tileview

The behavior of `.attackers()` is intended as is, but detecting X-ray attacks seems very useful indeed. With 63aac2ec65860a64256a190220b793e80b132b50 it is now possible via: ```python board.attackers(winning_color, chess.F5, board.occupied ^ board.pieces_mask(chess.KING, board.turn))...

@bswck Interesting. Won't `import typing_extensions` fail at runtime if it's not present, or is there a way to avoid that?