All releases of Freecell Solver


Release Notes: This release fixes the "--max-iters" flag and the empty foundations in input. It adds an experimental delta states implementation and a corresponding dbm_solver. There are many small optimizations and cleanups.


Release Notes: Some crashes using --trim-max-stored-states were fixed. A more meaningful man page was added. scripts/parallel-range-solver-total has been added to solve a range of deals in parallel by splitting them into chunks. There are many smaller improvements and fixes.


Release Notes: This release installs the fcs_dllexport.h header, which broke trying to compile with libfreecell-solver by third parties. It adds the --tracemem option. It has a bugfix for incrementally increasing the run-time limits. It adds a modified version of the kazlib balanced binary tree to the distribution to be used as a backend for storages. It revamps the various range solvers, extracting common functionality. There are some relatively minor optimizations and code cleanups.


Release Notes: The --set-pruning option was added, as well as the "enlightened-ostrich" preset for speed and the "maliciously-obscure" preset for generating short solutions. A compile-time option has been added to use RCS-like states storage, which conserves a lot of RAM. The CMake configuration now uses "lib${LIB_SUFFIX}", which allows building on some 64-bit systems. An experimental --trim-max-stored-states flag has been added, which currently may crash the solver (a known bug that should be fixed in a future release.)


Release Notes: The --depth-tests-order flag was added, which allows varying the tests' order based on the depth, which allows for interesting (and faster) searches. Several new presets were added: -l the-iglu-cabal, -l foss-nessy, and -l tea-for-two have been added; the latter were optimized for two freecell deals. Several bugs were fixed. The code was optimized and cleaned up.


Release Notes: This release implements the flares API (see the usage document), which allows running several alternative scans and then picking up the one with the shortest solution. It also adds the "-l children-playing-ball" and "-l sentient-pearls" themes that optimize on solution length (based on flares). There are also some cleanups to the internals.


Release Notes: The -o/--output flag was added to fc-solve. More executables are installed. Instances of "char *" in the interface were converted to "const char *". Some internal cleanups and optimizations and several bugfixes were made. pqueue.h was converted to the MIT/X11 licence, making Freecell Solver fully MIT/X11.


Release Notes: There is a fix to a string overflow in the command line processing. There is a new optimized command line preset. A new "Scan:" trace was added. An off-by-1 iterations count was fixed, and the iteration handling callback is now applied globally to all the instances. make_pysol_freecell_board.py now has support for generating PySol's and PySolFC's "Black Hole" Solitaire deals, intended for the author's Black Hole Solitaire Solver.


Release Notes: Now one can build the sources outside the source directory without needing AsciiDoc (this was a major build system problem). The "-F"/"--pysolfc" flag has been added to board_gen/make_pysol_freecell_board.py for generating PySolFC deals. A missing newline at the end of one of the lines of the help has been added.


Release Notes: The distributed documentation was converted to AsciiDoc, which allows it to be converted to XHTML and DocBook/XML. The test suite and benchmarking process was simplified. Some other minor changes were made.