I'm setting up `pytest` for a new project and need help with configuration. First, what are the three main configuration files `pytest` looks for, and in what order of precedence? Second, I'm curious about the `console_output_style` option: what's its default value, and what are the possible settings? Finally, I want to know about the `min_version` configuration option. What is its purpose, and what is the minimum `pytest` version required for it to be effective?
Navigate to 'https://pytest.readthedocs.io'. Click on 'Reference guides' in the left navigation menu. Click on 'Configuration' under 'Reference guides'. On the 'Configuration' page, identify and list the three main configuration files `pytest` looks for and their order of precedence. Scroll down the 'Configuration' page to locate the 'Builtin configuration file options' section. Within the 'Builtin configuration file options' section, find the 'console_output_style' option. Identify its default value and list its possible settings. Locate the 'min_version' option within the 'Configuration file formats' section (specifically under 'pyproject.toml' or a general INI options section). Determine the purpose of the 'min_version' option and the minimum `pytest` version required for it to be effective. Synthesize all gathered information into a concise answer.
State that `pytest` looks for `pytest.ini`, `pyproject.toml`, and `setup.cfg` files. State the order of precedence for configuration files as `pytest.ini` (highest), then `pyproject.toml`, then `setup.cfg` (lowest). State that the default value for `console_output_style` is 'classic'. List the possible settings for `console_output_style` as 'classic', 'progress', and 'count'. Explain that the `min_version` option specifies the minimum `pytest` version required to run the tests in the project. State that the minimum `pytest` version required for `min_version` to be effective is 6.0.