Skip to content

java-darts-cli-0.1.0

Compare
Choose a tag to compare
@mauritssilvis mauritssilvis released this 15 Mar 13:05
· 401 commits to main since this release
8207600

Release

This is a release of the java-darts-cli project (see darts > CLIs > Java).

[0.1.0] - 2023-03-15

Added

Documentation

  • Describe the installation of darts.
  • Document the usage of the darts command-line interface.
  • Document potential problems with the installation and usage of darts.

Installation

  • Add scripts to install darts in the project folder (install).

Execution

  • Add scripts to run darts from the project folder (darts).

Command-line interface

  • Add a command-line interface (DartsApp).
  • Add a command to print dartboards (BoardsCommand).
  • Add a command to generate darts checkout tables (CheckoutsCommand).

Dartboards

  • Add support for multiple dartboard field types (FieldType).
  • Add single, double, triple and quadruple dartboard fields (TypedField).
  • Add support for multiple dartboard types (BoardType).
  • Add the London dartboard (LondonBoard).
  • Add the Quadro dartboard (QuadroBoard).
  • Add the Yorkshire dartboard (YorkshireBoard).
  • Add support for multiple dartboard output formats (OutputFormat).
  • Add a string-representation-based serializer for dartboards (StringBoardSerializer).
  • Add a Markdown serializer for dartboards (MarkdownBoardSerializer).
  • Add an HTML serializer for dartboards (HtmlBoardSerializer).
  • Add a JSON serializer for dartboards (JsonBoardSerializer).

Pathfinders

  • Add support for multiple pathfinder types (FinderType).
  • Create a brute-force pathfinder that considers all combinations of weighted edges between nodes (CartesianPathfinder).
  • Create an optimized pathfinder that considers sequences of edges with non-increasing weights (DescendingPathfinder).

Checkout finders

  • Add support for multiple checkout finder types (FinderType).
  • Create a brute-force checkout finder that considers all combinations of dartboard fields (CartesianCheckoutFinder).
  • Create an optimized checkout finder that considers sequences of dartboard fields with non-increasing scores (DescendingCheckoutFinder).

Checkout tables

  • Add support for multiple check-in and checkout modes (CheckMode).
  • Add support for multiple throw modes (ThrowMode).
  • Create an ascending checkout table generator (AscendingTableGenerator).
  • Add support for multiple checkout table output formats (OutputFormat).
  • Add a string-representation-based serializer for checkout tables (StringTableSerializer).
  • Add a Markdown serializer for checkout tables (MarkdownTableSerializer).
  • Add an HTML serializer for checkout tables (HtmlTableSerializer).
  • Add a JSON serializer for checkout tables (JsonTableSerializer).