Skip to content

Releases: fluxroot/pulse

Pulse Chess 1.7.3

09 Nov 23:52
Compare
Choose a tag to compare

Fixed crash when opponent's time is 0.

Release Notes

  • #84: Use precondition for active color only

Pulse Chess 1.7.2

21 Jun 21:57
Compare
Choose a tag to compare

Small patch release to fix timing issues.

Release Notes

  • [PULSE-101] - Fix timer for C++

Pulse Chess 1.7.1

14 Nov 20:19
Compare
Choose a tag to compare

Small patch release for Maven Central.

Release Notes

  • [PULSE-96] - Create JAR for Javadoc again

Pulse Chess 1.7.0

12 Nov 21:31
Compare
Choose a tag to compare

Modernized code base and kicked out third-party dependencies. Enjoy!

Release Notes

  • [PULSE-74] - Remove assertions
  • [PULSE-75] - Review unit tests
  • [PULSE-76] - Change indentation to 4 spaces
  • [PULSE-77] - Update to JDK 1.8
  • [PULSE-78] - Use Google Test from GitHub
  • [PULSE-79] - problems on raspberry pi (with linux) #54
  • [PULSE-80] - Switch to tabs
  • [PULSE-81] - Review code
  • [PULSE-82] - Replace Bitboard instances with long
  • [PULSE-83] - Create custom exception
  • [PULSE-84] - No static instance variables
  • [PULSE-86] - Annotate only nullable parameters
  • [PULSE-87] - required for linking #53
  • [PULSE-89] - Upgrade codebase
  • [PULSE-90] - Fix static analysis issues
  • [PULSE-91] - Fix packaging
  • [PULSE-92] - Fix abs() ambiguity
  • [PULSE-93] - Downgrade to CMake 3.10
  • [PULSE-94] - Fix mutex compilation error
  • [PULSE-95] - Fix condition variable in timer

Pulse Chess 1.6.1

06 Jul 20:34
Compare
Choose a tag to compare

This is a patch release for two minor issues. Woohoo!

Release Notes

  • [PULSE-72] - Switch to Mingw-w64 as main compiler for C++ Edition
  • [PULSE-73] - Fix filenames for artifacts

Pulse Chess 1.6.0

06 Jul 20:34
Compare
Choose a tag to compare
Pulse Chess 1.6.0 Pre-release
Pre-release

Made slight changes to the code style. Added Google Guava for non-critical code and switched to Hamcrest for unit tests. Also the skeleton branch is no more! Have fun!

Release Notes

  • [PULSE-66] - Add Google Guava as Maven dependency
  • [PULSE-67] - Use Google Guava Preconditions
  • [PULSE-70] - Use Google Guava Collection Utilities
  • [PULSE-56] - Change threading logic
  • [PULSE-57] - Refactor Castling to use bits instead of array
  • [PULSE-58] - Merge position pieces into one array
  • [PULSE-59] - Generify MoveList
  • [PULSE-60] - Use Hamcrest for Unit Testing
  • [PULSE-62] - Add @NotNull/@nullable annotations and remove assertions
  • [PULSE-63] - Switch from Cobertura to JaCoCo
  • [PULSE-64] - Statically Import Members where possible
  • [PULSE-65] - Use Google Guava for non-critical code
  • [PULSE-68] - Remove skeleton branch
  • [PULSE-69] - Refactoring 1.6
  • [PULSE-71] - Remove default target in switch statement where possible
  • [PULSE-53] - Add Main class as starting point
  • [PULSE-54] - Remove unused board constructor from Chess 960 id
  • [PULSE-55] - Decouple protocol from internal models

Pulse Chess 1.5

15 Aug 21:40
Compare
Choose a tag to compare

Pulse Chess has a twin! I have ported the Java code base to C++ using the exact same feature set. Both editions share most of the code lines and should perform equally well. In addition to this new edition, I removed a lot of features which had confused some developers. Enjoy!

Release Notes

  • [PULSE-41] - Add skeleton files for Pulse C++ Edition
  • [PULSE-42] - Add Pulse C++ Edition
  • [PULSE-46] - Add perft as command line argument
  • [PULSE-47] - Add Tempo
  • [PULSE-45] - Refactor Java code to match C++ code base
  • [PULSE-51] - Do move legality check in search
  • [PULSE-43] - Remove VersionInfo for simplicity
  • [PULSE-44] - Remove Configuration for simplicity
  • [PULSE-48] - Remove tapered eval for simplicity
  • [PULSE-49] - Remove castling evaluation for simplicity
  • [PULSE-50] - Remove staged move generator
  • [PULSE-52] - Remove check extensions

Pulse Chess 1.4.0

31 May 22:44
Compare
Choose a tag to compare

This release has many source code improvements. We also added Check Extensions as minor feature. Additionally we switched the build system to Maven as it is more commonly used. Pulse Chess is now distributed under the MIT license, which basically allows you to do anything you like with the source code. Happy coding!

Release Notes

  • [PULSE-31] - Change to MIT license
  • [PULSE-34] - Using Maven as build tool
  • [PULSE-30] - Change logo file format to bmp
  • [PULSE-39] - Add check extension
  • [PULSE-38] - Rewrite in check testing
  • [PULSE-33] - Remove IntelliJ IDEA settings
  • [PULSE-24] - Remove unused MASK
  • [PULSE-28] - Remove unused methods and refactor tests
  • [PULSE-19] - Remove testing and add integration source set
  • [PULSE-25] - Split Castling into Castling and Type
  • [PULSE-27] - Refactor Piece constants
  • [PULSE-26] - Refactor NOTYPE to NOMOVETYPE
  • [PULSE-32] - Make Zobrist a static utility class
  • [PULSE-35] - Rewrite move conversion from JCPI
  • [PULSE-29] - Replace assertions with exceptions
  • [PULSE-22] - Do not throw exception in isValid()
  • [PULSE-21] - Use long instead of int for number of nodes
  • [PULSE-20] - Fix Color in setFullMoveNumber()
  • [PULSE-23] - Fix insufficient material

Pulse Chess 1.3.0

31 May 22:47
Compare
Choose a tag to compare

This release has many source code and playing strength improvements. Variables and methods now use common namings to make the source code even easier to read. Additionally we switched to a pseudo-legal move generator to make the legality check more explicit and clear. By request, Pulse now also has a simple mobility evaluation to add some variation to the game play. This should bump up the playing strength quite a bit. Cheers!

Release Notes

  • Refactor variables and methods to use common namings
  • Cleanup code to improve readability
  • Build release and debug binaries
  • Extract PV from search
  • Add more comments
  • Add Int* model classes from JCPI to show their implementation
  • Add mobility evaluation
  • Add hasInsufficientMaterial()
  • Add incremental material evaluation
  • Add pseudo-legal move generator
  • Remove repetitionTable and replace with stack search
  • Improve performance in isAttacked()
  • Fix best move update on abort
  • Fix MAX_PLY and CHECKMATE_THRESHOLD bound usage
  • Fix time management with fixed time search

Pulse Chess 1.2.0

31 May 22:48
Compare
Choose a tag to compare

There's a new version of Pulse available. Version 1.2.0 has many source code improvements. As this is a didactic engine, no features were added. It should play in the same ELO range as version 1.0.0.

Release Notes

  • Add more comments
  • Cleanup code to improve readability
  • Remove save/restore move list in Iterative Deepening
  • Abort search if depth is equal to mate distance
  • Add support for UCI seldepth
  • Merge get*Generators() to improve readability