feat(version-manager): add side-effect-free version resolution

Merged
C1
2d ago
+190-17

Summary

  • Add version-manager resolve <versionTags...> to print the highest matching version.
  • Skip generator bootstrap and downloads for the resolver command.
  • Keep configuration reads side-effect-free so openapitools.json is not created or modified.

Testing

  • yarn lint
  • yarn test
  • yarn build
  • Manual check: version-manager resolve latest prints 7.26.0 without creating a config file or JAR.

Fixes #1289


Summary by cubic

Adds a side-effect-free resolve subcommand to version-manager that prints the highest matching version, fixing #1289. Resolution now fails with a non-zero exit code when no version matches the given tags.

  • version-manager resolve <versionTags...> prints the first matching version and skips generator bootstrap, downloads, and config writes; unmatched tags print an error to stderr and exit non-zero.
  • The command is detected positionally, so opening flags like --openapitools are skipped and it is not confused with pass-through arguments.
  • ConfigService no longer creates or modifies openapitools.json when reading configuration—the file is only touched on writes.