multistockfish 0.5.0
multistockfish: ^0.5.0 copied to clipboard
Multiple flavors of Stockfish Engine
0.5.0 #
Breaking changes:
Stockfish.startnow sends the "uci" command to the engine and waits for it to respond with "uciok". When using the library, do not send "uci" yourself anymore, as that would reset UCI options.
Migration:
// Before
await Stockfish.instance.start(flavor: StockfishFlavor.variant, variant: 'atomic');
// stockfish is ready, enable uci protocol.
Stockfish.instance.stdin = 'uci';
// After
await Stockfish.instance.start(flavor: StockfishFlavor.variant, variant: 'atomic');
// "uci" command has already been sent to `stdin` internally, stockfish is ready and in uci mode.
0.4.0 #
- Update latest Stockfish to version 18.
Breaking changes:
Stockfishis now a singleton. UseStockfish.instance.- Configuration (
flavor,variant,bigNetPath,smallNetPath) moved from the constructor tostart(). - Removed
StockfishState.disposed. After callingquit(), the state returns toinitialand the engine can be restarted. start()throws aStateErrorif the engine is already running. Callquit()first.- The
stdoutstream now persists across restarts - listeners don't need to re-subscribe.
Migration:
// Before
final stockfish = Stockfish(flavor: StockfishFlavor.variant, variant: 'atomic');
// listen to stockfish state and wait for it to be ready
stockfish.stdin = 'uci';
// After
await Stockfish.instance.start(flavor: StockfishFlavor.variant, variant: 'atomic');
// stockfish is ready
Stockfish.instance.stdin = 'uci';
0.3.0 #
- Add Stockfish 16 (embedded NNUE).
- Default engine is now Stockfish 16.
0.2.1 #
- Fix wrong NNUE file for Stockfish 17.1
0.2.0 #
- Use last Stockfish as well on armv7 devices.
- Do not embed NNUE files in the app bundle.
0.1.0 #
Initial release