Changelog History
Page 1
-
v2.5.2 Changes
September 22, 2016🛠 Fixes
- 🛠 Fixes issue regarding legal move generation for king in check due to error in moves available for the attacking piece
-
v2.5.1 Changes
August 18, 2016 -
v2.5.0 Changes
August 17, 2016🆕 New Features
➕ Added pinned(for:) method to Board
➕ Added
between(_:)
,isBetween(start:end:)
andline(with:)
methods to Square➕ Added
hasMoreThanOne
to Bitboard
✨ Enhancements
- 🚚 Made legal move generation/checking faster for king pieces
🛠 Fixes
- 🛠 Fixed conditions for castling so that a king cannot castle in check and it can't castle through squares that are being attacked
-
v2.4.1 Changes
August 08, 2016 -
v2.4.0 Changes
August 06, 2016🆕 New Features
- ➕ Added
init(position:whitePlayer:blackPlayer:variant:)
toGame
✨ Enhancements
🐎 Greatly improved performance of
attackers(to:color:)
method forBoard
👌 Improved performance for
pieceCount(for:)
forBoard
👌 Improved performance for
contains(_:)
forBitboard
- ➕ Added
-
v2.3.0 Changes
August 01, 2016 -
v2.2.0 Changes
July 30, 2016🆕 New Features
➕ Added
execute(uncheckedMove:)
family of methods toGame
➕ Added initializer with moves array to Game
✨ Enhancements
- 👌 Improved performance for
bitboard(for color: Color)
method forBoard
-
v2.1.0 Changes
July 24, 2016🆕 New Features
➕ Added static
white
,black
,kingside
, andqueenside
constants toCastlingRights
andCastlingRights.Right
➕ Added
canCastle(for:)
methods toCastlingRights
that take aColor
orBoard.Side
➕ Added
init(color:)
andinit(side:)
toCastlingRights
-
v2.0.1 Changes
July 21, 2016 -
v2.0.0 Changes
July 17, 2016✨ Enhancements
- 🐎 Performance greatly improved when performing operations with
Board
🆕 New Features
Most significant bit operations to
Bitboard
:- Properties:
msb
,msbIndex
,msbSquare
- Methods:
popMSB()
,popMSBIndex()
,popMSBSquare()
- Properties:
Board
initializer from arrays of piece charactersBoard(pieces: [["r", "n", "b", "q", "k", "b", "n", "r"], ["p", "p", "p", "p", "p", "p", "p", "p"], [" ", " ", " ", " ", " ", " ", " ", " "], [" ", " ", " ", " ", " ", " ", " ", " "], [" ", " ", " ", " ", " ", " ", " ", " "], [" ", " ", " ", " ", " ", " ", " ", " "], ["P", "P", "P", "P", "P", "P", "P", "P"], ["R", "N", "B", "Q", "K", "B", "N", "R"]])
📜 Parsing PGN string data with
PGN(parse:)
Exporting PGN string data with
exported()
🆕 New
Player
struct
💥 Breaking Changes
Piece
has been changed to a struct type with nested aKind
type- Values such as
isKing
andrelativeValue
now belong toKind
- Values such as
The argument-less
bitboard()
method forBoard
has been changed tooccupiedSpaces
Replaced
Game.Mode
with twoPlayer
instances for a game
🛠 Fixes
🚚 Calling
redoMove()
would sometimes cause a crash if theGame
instance had no available moves (e.g. was over).The
Board
playground view for iOS and tvOS was flipped verticallycanPromote(_:)
forPiece
didn't take king into account⏪ Castling rights weren't restored in
undoMove()
🚚
execute(move:)
didn't check the promotion piece's kind
- 🐎 Performance greatly improved when performing operations with