Changes

Gomill 0.8.3 (2019-03-14)

Gomill 0.8.2 (2018-02-11)

  • SGF parsing: the parser now permits lower-case letters in PropIdents.
  • Bug fix: Tree_node.set() didn’t check its identifier parameter was a well-formed PropIdent.
  • Made the GTP protocol_version check more lenient: it now accepts 2.0 and similar forms as equivalent to 2.

Gomill 0.8.1 (2018-02-03)

  • The candidate_colour setting [1] [2] for the Monte Carlo tuner and cross-entropy tuner can now be "random".
  • Bug fix: candidate_colour was being ignored for the cross-entropy tuner (the candidate always played black).
  • Bug fix: Game_job_result.engine_descriptions in 0.8 was using colours rather than player codes for its keys. The effect was crashes with cem_tuner and mc_tuner, and mangled player descriptions at the end of tournament report files.
  • Updated documentation to build with Sphinx 1.4

Gomill 0.8 (2017-04-14)

  • SGF parsing: increased the length limit on PropIdents from 8 to 64.

  • Reworked the gtp_games interface and implementation, splitting out the gameplay module and gtp_controllers.Game_controller. Visible behaviour changes:

    • Gomill reports game results, rather than treating games as void, in more cases when a player exits unexpectedly after the result has been determined.
    • Gomill now ignores GTP failure responses from play for a game-ending pass.
    • GTP move commands now send the vertex in upper case.
    • Text descriptions of forfeits (eg in Game_result.detail) have changed slightly.

    Updated the twogtp example script to show the new programming interface. twogtp now supports playing multiple games and SGF output.

  • Engine comments (from gomill-explain_last_move) for resignations and forfeits are now included in SGF records.

  • Improved player descriptions in SGF files and competition reports when the GTP name command isn’t implemented.

  • Added the Game_result.is_unknown attribute.

  • Documented the Game_result.cpu_times attribute.

  • interpret_diagram() now ignores leading whitespace (it already ignored trailing whitespace).

  • Board methods now raise IndexError for out-of-range coordinates (previously behaviour was explicitly unspecified).

Gomill 0.7.4 (2012-08-26)

  • Added the GOMILL_GAME_ID and GOMILL_SLOT environment variables.
  • gtp_games now permits free-handicap games with the maximum number of handicap stones permitted by GTP (the previous restriction was one less).
  • Bug fix: Board.is_empty() was wrong after a self-capture which leaves the board empty.
  • Documentation correction: the example in Using the API in scripts showed Ringmaster.tournament_results() rather than Ringmaster.get_tournament_results().

Gomill 0.7.3 (2012-05-02)

Bug-fix release.

  • Made the documentation (index page) build properly with Sphinx v1.1.
  • Documentation correction: failure responses from startup_gtp_commands are not ignored.
  • Bug fix: internal scorer with internal_scorer_handicap_compensation "short" was off by one in a non-handicap game.
  • Bug fix: Tree_node.new_child() was failing if it was called with an explicitly-specified index on the root node of an Sgf_game which was loaded from a string and had not otherwise had its structure modified.

Gomill 0.7.2 (2011-09-05)

Gomill 0.7.1 (2011-08-15)

Bug-fix release.

  • Bug fix: made board sizes 24 and 25 work (column lettering, and therefore GTP support, was incorrect for these sizes in all previous versions).
  • Tightened up input validation for format_vertex() and colour_name().
  • Distinguished Stone, Point, and Move in the Property types table in SGF documentation.

Gomill 0.7 (2011-08-13)

The ringmaster now applies handicap stone compensation when using its internal scorer. Set internal_scorer_handicap_compensation to "no" to return to the old behaviour.

  • Added a full implementation of SGF support, replacing the previous minimal support.
  • Added a split_sgf_collection.py example script.
  • The common, boards, ascii_boards, and handicap_layout modules are now documented as stable.
  • Improved handling of long responses to the version GTP command.
  • Added support for handicap stone compensation when scoring games.
  • Gomill now checks the response to the fixed_handicap GTP command.
  • Added the gomill.__version__ constant.

Changes to (previously) undocumented parts of the library:

  • Renamed the gomill.gomill_common module to gomill.common.
  • Renamed the gomill.gomill_utils module to gomill.utils.
  • Renamed Board.board_coords to board_points.
  • Replaced the ascii_boards.play_diagram() function with interpret_diagram(), making the board parameter optional.
  • gtp_engine.interpret_float() now rejects infinities and NaNs.
  • Changes to the gtp_states module: tightened error handling, removed the komi-mangling feature, renamed History_move.coords to History_move.move.

Gomill 0.6 (2011-02-13)

Playoff tournament state files from Gomill 0.5 are incompatible with Gomill 0.6. Tuning event state files are compatible.

Gomill 0.5 (2010-10-29)

  • First public release.