- Update to Stockfish 16.1.
⚠️ Stockfish now requiresEvalFile
andEvalFileSmall
options to be set after launch, with a path to the*.nnue
files provided.- Currently
chesskit-engine
assumesnn-baff1ede1f90.nnue
,nn-b1a57edbea57.nnue
are available in your app'sBundle.main
. - Click the file names in the previous line to access the download pages.
- Any other files can be added via
.setoption(id:value:)
engine commands.
Engine.start()
now takes acompletion
handler.- This is called once the engine has finished initializing.
- Engine commands (i.e. setting options or requesting evaluations) should not be sent until this completion handler is called.
Released Wednesday, March 27, 2024.
- Add background engine processing for better performance.
- Remove neural network resource files for greatly reduced package size.
- These can be added manually by bundling the desired files and setting the appropriate engine to use them (see
Resources
directory). - For
Stockfish 15.1
(nn-1337b1adec5b.nnue
):engine.send(command: .setoption(id: "EvalFile", value: evalFileURL)) engine.send(command: .setoption(id: "Use NNUE", value: "true"))
- For
LeelaChessZero 0.29
(192x15_network
):engine.send(command: .setoption(id: "WeightsFile", value: weightsFileURL))
- These can be added manually by bundling the desired files and setting the appropriate engine to use them (see
Released Thursday, May 18, 2023.
- Replaced submodule URLs with HTTPS instead of SSH
Released Friday, April 28, 2023.
- Removed unsafe flags from
Package.swift
Released Wednesday, April 26, 2023.
- Add
LeelaChessZero (lc0)
engine- Currently comes bundled with a neural network weights file
192x15_network
- Currently comes bundled with a neural network weights file
Engine
initializer no longer has a defaultengineType
(previously.stockfish
)- Type must be specified using
Engine(type: <engine type>)
- Type must be specified using
- Add Stockfish
EvalFile
as Swift package resource
Released Saturday, April 15, 2023.
- Add default
nil
value forvalue
parameter inEngineCommand.setoption(id:value:)
- Fix
loggingEnabled
default value to match documentation - Fix
EngineCommand.PositionString(rawValue:)
when passing a FEN string
- Simplify internal Obj-C and C++ targets
- Increase test coverage
Released Friday, April 14, 2023.
- Hide internal Obj-C and C++ targets
- Created separate Swift and Obj-C
EngineType
enums - Package user should only need to import
ChessKitEngine
now
- Created separate Swift and Obj-C
Released Friday, April 14, 2023.
- Fix build issue related to missing
ChessKitEngine_Cxx
target
Released Friday, April 14, 2023.
- Initial release