errata-ai / vale

:pencil: A markup-aware linter for prose built with speed and extensibility in mind.
https://vale.sh
MIT License
4.52k stars 155 forks source link

Include a more reproducible integration test environment setup #903

Open ptgott opened 1 month ago

ptgott commented 1 month ago

Check for existing issues

Describe the feature

The current CONTRIBUTING.md includes the following instructions for setting up a development environment:

Prerequisites:

* [Ruby](https://www.ruby-lang.org/en/downloads/) (v2.3+)
* [Go](https://golang.org/) (v1.7+) installed.
* [Asciidoctor](http://asciidoctor.org/) available on your `$PATH`.
* [rst2html](http://docutils.sourceforge.net/docs/user/tools.html#rst2html-py) available on your `$PATH`. The latter is installed with both [Sphinx](http://www.sphinx-doc.org/en/stable/) and [docutils](https://pypi.python.org/pypi/docutils).
* [xsltproc](http://xmlsoft.org/xslt/xsltproc.html) available on your `$PATH`.
* [dita](https://www.dita-ot.org/download) available on your `$PATH` (v3.6+).

```bash
$ gem install bundler:2.2.31 # if necessary
$ make setup
$ make test


However, while following these steps, I was unable to get cucumber-based integration tests to pass on my machine on `v3`. It would be great to have either:

- A containerized version of `make test`. Is there a locally runnable variation of the AppVeyor container image used in CI?
- A script that checks for more specific requirements, e.g., dependency versions, and lets you know when something is incorrect. This could run as part of the `make setup` target.