diff --git a/docs/deprecations.md b/docs/deprecations.md
index 5b22362738..d5153d91e5 100644
--- a/docs/deprecations.md
+++ b/docs/deprecations.md
@@ -11,18 +11,6 @@ at least the next major release.
## Deprecations
-### `--list-*` return values
-
-The return codes of the `--list-*` family of command line arguments
-will no longer be equal to the number of tests/tags/etc found, instead
-it will be 0 for success and non-zero for failure.
-
-
-### `--list-test-names-only`
-
-`--list-test-names-only` command line argument will be removed.
-
-
### Secondary description amongst tags
Currently, the tags part of `TEST_CASE` (and others) macro can also
diff --git a/docs/release-notes.md b/docs/release-notes.md
index a7bcda2f11..9fb15aed0c 100644
--- a/docs/release-notes.md
+++ b/docs/release-notes.md
@@ -26,9 +26,11 @@
[Even Older versions](#even-older-versions)
## 3.0.0 (in progress)
-### Breaking changes
+### (Potentially) Breaking changes
* `ANON_TEST_CASE` has been removed, use `TEST_CASE` with 0 arguments instead.
-
+* `--list*` commands no longer have non-zero return code
+* `--list-test-names-only` has been removed
+ * You should use verbosity-modifiers for `--list-tests` instead
## 2.9.0
diff --git a/include/internal/catch_commandline.cpp b/include/internal/catch_commandline.cpp
index 0359272cb3..485296b383 100644
--- a/include/internal/catch_commandline.cpp
+++ b/include/internal/catch_commandline.cpp
@@ -175,9 +175,6 @@ namespace Catch {
| Opt( setVerbosity, "quiet|normal|high" )
["-v"]["--verbosity"]
( "set output verbosity" )
- | Opt( config.listTestNamesOnly )
- ["--list-test-names-only"]
- ( "list all/matching test cases names only" )
| Opt( config.listReporters )
["--list-reporters"]
( "list all reporters" )
diff --git a/include/internal/catch_config.cpp b/include/internal/catch_config.cpp
index 076ae71878..e82fa4e4db 100644
--- a/include/internal/catch_config.cpp
+++ b/include/internal/catch_config.cpp
@@ -29,10 +29,9 @@ namespace Catch {
}
bool Config::listTests() const { return m_data.listTests; }
- bool Config::listTestNamesOnly() const { return m_data.listTestNamesOnly; }
bool Config::listTags() const { return m_data.listTags; }
bool Config::listReporters() const { return m_data.listReporters; }
-
+
std::string Config::getProcessName() const { return m_data.processName; }
std::string const& Config::getReporterName() const { return m_data.reporterName; }
diff --git a/include/internal/catch_config.hpp b/include/internal/catch_config.hpp
index 95b67d25fc..2074d933e7 100644
--- a/include/internal/catch_config.hpp
+++ b/include/internal/catch_config.hpp
@@ -30,7 +30,6 @@ namespace Catch {
bool listTests = false;
bool listTags = false;
bool listReporters = false;
- bool listTestNamesOnly = false;
bool showSuccessfulTests = false;
bool shouldDebugBreak = false;
@@ -79,7 +78,6 @@ namespace Catch {
std::string const& getFilename() const;
bool listTests() const;
- bool listTestNamesOnly() const;
bool listTags() const;
bool listReporters() const;
diff --git a/include/internal/catch_list.cpp b/include/internal/catch_list.cpp
index 0d9765e2d1..12d8e26579 100644
--- a/include/internal/catch_list.cpp
+++ b/include/internal/catch_list.cpp
@@ -71,22 +71,6 @@ namespace Catch {
Catch::cout() << pluralise(matchedTestCases.size(), "matching test case") << '\n' << std::endl;
}
- void listTestsNamesOnly(Config const& config) {
- TestSpec testSpec = config.testSpec();
- std::size_t matchedTests = 0;
- std::vector matchedTestCases = filterTests(getAllTestCasesSorted(config), testSpec, config);
- for (auto const& testCaseInfo : matchedTestCases) {
- matchedTests++;
- if (startsWith(testCaseInfo.name, '#'))
- Catch::cout() << '"' << testCaseInfo.name << '"';
- else
- Catch::cout() << testCaseInfo.name;
- if (config.verbosity() >= Verbosity::High)
- Catch::cout() << "\t@" << testCaseInfo.lineInfo;
- Catch::cout() << std::endl;
- }
- }
-
void listTags(Config const& config) {
TestSpec testSpec = config.testSpec();
if (config.hasTestFilters())
@@ -163,10 +147,6 @@ namespace Catch {
listed = true;
listTests(*config);
}
- if (config->listTestNamesOnly()) {
- listed = true;
- listTestsNamesOnly(*config);
- }
if (config->listTags()) {
listed = true;
listTags(*config);
diff --git a/projects/CMakeLists.txt b/projects/CMakeLists.txt
index c4a2b3edba..47e21a3b9d 100644
--- a/projects/CMakeLists.txt
+++ b/projects/CMakeLists.txt
@@ -358,11 +358,6 @@ set_tests_properties(ListTags PROPERTIES
add_test(NAME ListReporters COMMAND $ --list-reporters)
set_tests_properties(ListReporters PROPERTIES PASS_REGULAR_EXPRESSION "Available reporters:")
-add_test(NAME ListTestNamesOnly COMMAND $ --list-test-names-only)
-set_tests_properties(ListTestNamesOnly PROPERTIES
- PASS_REGULAR_EXPRESSION "Regex string matcher"
- FAIL_REGULAR_EXPRESSION "Hidden Test")
-
add_test(NAME NoAssertions COMMAND $ -w NoAssertions)
set_tests_properties(NoAssertions PROPERTIES PASS_REGULAR_EXPRESSION "No assertions in test case")