Skip to content

Releases: ralsina/docopt.cr

docopt.cr 1.5.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 15:29

Zero-code colored help: build with -Dcolor_docopt (tartrazine among your dependencies) and an unset colorizer falls back to tartrazine's docopt lexer — terminals only, NO_COLOR respected, explicit colorizer= still wins. A compile-time note suggests -Dnolexers + TT_LEXERS=docopt to link only the docopt lexer. The explicit require "tartrazine/docopt_color" path is unchanged.

docopt.cr 1.4.1

Choose a tag to compare

@ralsina ralsina released this 27 Sep 14:51

Hosts the tartrazine colorizer integration in the tartrazine shard instead (require "tartrazine/docopt_color"): a dependency cannot require the root project by name, so require "docopt/color" only compiled for projects already depending on tartrazine. The colorizer hook itself is unchanged.

docopt.cr 1.4.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 14:40

Colored help: Docopt.colorizer= installs a hook applied to help text and usage-in-errors on terminals (NO_COLOR respected). require "docopt/color" adds Docopt.use_tartrazine_color, implementing the hook with tartrazine's docopt lexer in-process — never shelling out. Verified with escape-code assertions and wired into tartrazine's own CLI.

docopt.cr 1.3.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 14:23

Man pages: Docopt.man_page renders the doc as a roff manual (NAME/SYNOPSIS/DESCRIPTION/OPTIONS from the doc's own structure), deterministically, verified by rendering through groff in the test suite. The doc is now the source of truth for the interface, its completions and its manual.

docopt.cr 1.2.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 14:18

Typed access: options.string("--speed"), .int, .bool, .array (plus nilable ? twins) on parse results, resolved config values and dispatch command options — wrong asks raise TypeMismatchError naming the option, value and actual type. Also fixes a misleading too-many-times message for failed matches.

docopt.cr 1.1.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 14:09

Error empathy: failed matches name the problem (unknown option, unexpected argument, flag given too many times) and suggest the fix with did-you-mean hints computed against the declared options and commands. The suggestion machinery is public in the core (Docopt.suggestions_for), and dispatch prints the message before the usage. Conformance untouched.

docopt.cr 1.0.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 11:43

The first stable release of the unified stack: reference-conformant docopt parsing (official testcases.docopt suite in CI), compile-time parsing, working bash/fish/zsh completions including subcommand-aware trees, the configuration layer (CLI > env > YAML > defaults) and git-style subcommand dispatch — one shard, opt-in layers, 353 specs.

docopt.cr v0.9.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 11:43

Full Changelog: v0.8.0...v0.9.0

docopt.cr v0.8.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 11:43

Full Changelog: v0.7.0...v0.8.0

docopt.cr v0.7.0

Choose a tag to compare

@ralsina ralsina released this 27 Sep 11:43

Full Changelog: v0.6.0...v0.7.0