Skip to content

[Behavior change] Deprecating and disabling test name filters before -- #1109

@sunshowers

Description

@sunshowers

Summary

Currently, test name filters can be specified both with and without --:

cargo nextest run my_test     # ... (format 1)
cargo nextest run -- my_test  # ... (format 2)

This proposal makes it so that format 1 is deprecated and eventually disabled, and format 2 is the only format supported.

I'd also like to make this a test case for rolling out behavior changes.

Motivation

Originally, nextest only supported test name filters in format 1. Support for format 2 was added in #265 soon after nextest's initial public release.

So far we've emphasized format 1 in documentation, but we've found that this format can cause strange issues in practice like #1108, and third-party integrations like cargo llvm-cov nextest (specifying cargo llvm-cov nextest run will cause no tests to be run).

Timeline

  1. 2023-11-14: Emphasize format 2 on website and in help text. Hide format 1 from cargo nextest run --help.
  2. Early 2024: Produce a warning in the CLI if format 1 is used.
  3. April 2024, 3 months after step 2: Error out if format 1 is used.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions