Repository: pypa/pip

Issue:
Confusing warning about missing 'wheel' when building a project that only has `build-system.requires`
### Description

The warnings here are quite confusing:
```
Collecting multidict==6.0.4
  Downloading multidict-6.0.4.tar.gz (51 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 51.3/51.3 kB 717.9 kB/s eta 0:00:00
  Installing build dependencies ... done
  WARNING: Missing build requirements in pyproject.toml for multidict==6.0.4 from https://files.pythonhosted.org/packages/4a/15/bd620f7a6eb9aa5112c4ef93e7031bcd071e0611763d8e17706ef8ba65e0/multidict-6.0.4.tar.gz.
  WARNING: The project does not specify a build backend, and pip cannot fall back to setuptools without 'wheel'.
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: multidict
  Building wheel for multidict (pyproject.toml) ... done
  Created wheel for multidict: filename=multidict-6.0.4-cp310-cp310-linux_x86_64.whl size=113460 sha256=9df21d0f626349e99094ca79f4edb9257de4141c4491220089a1d7fef83f43be
  Stored in directory: /home/ubuntu/.cache/pip/wheels/ae/d2/13/61a3897335dd417ee80bcf70d39fea8eda1f7761d28d5547f5
Successfully built multidict
```
for a project with this configuration:
```toml
[build-system]
requires = ["setuptools >= 40"]
```
when running `pip install multidict==6.0.4 --no-binary multidict` in a venv that has latest versions of `pip` and `wheel`.


### Expected behavior

No warning as the build continues without issues.

I first mentioned this in PyPA Discord and it has been suggested that the warning can be removed as setuptools injects `wheel` nowadays anyway.

### pip version

22.3.1

### Python version

3.10.6

### OS

Ubuntu 22.04

### How to Reproduce

Run commands:
```
python3.10 -m venv repro
. repro/bin/activate
python -m pip install -U pip wheel
python -m pip install multidict==6.0.4 --no-binary multidict
```

### Output

```
$ python3.10 -m venv repro
$ . repro/bin/activate
$ python -m pip install -U pip wheel                          
Requirement already satisfied: pip in ./repro/lib/python3.10/site-packages (22.0.2)
Collecting pip
  Using cached pip-22.3.1-py3-none-any.whl (2.1 MB)
Collecting wheel
  Using cached wheel-0.38.4-py3-none-any.whl (36 kB)
Installing collected packages: wheel, pip
  Attempting uninstall: pip
    Found existing installation: pip 22.0.2
    Uninstalling pip-22.0.2:
      Successfully uninstalled pip-22.0.2
Successfully installed pip-22.3.1 wheel-0.38.4

$ python -m pip install multidict==6.0.4 --no-binary multidict
DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453
Collecting multidict==6.0.4
  Using cached multidict-6.0.4.tar.gz (51 kB)
  Installing build dependencies ... done
  WARNING: Missing build requirements in pyproject.toml for multidict==6.0.4 from https://files.pythonhosted.org/packages/4a/15/bd620f7a6eb9aa5112c4ef93e7031bcd071e0611763d8e17706ef8ba65e0/multidict-6.0.4.tar.gz.
  WARNING: The project does not specify a build backend, and pip cannot fall back to setuptools without 'wheel'.
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: multidict
  Building wheel for multidict (pyproject.toml) ... done
  Created wheel for multidict: filename=multidict-6.0.4-cp310-cp310-linux_x86_64.whl size=113461 sha256=07c1ddcffc35d2f2afa4ca97acffbc5adeba5d04e347ab92b8438960ce79b451
  Stored in directory: /home/ubuntu/.cache/pip/wheels/ae/d2/13/61a3897335dd417ee80bcf70d39fea8eda1f7761d28d5547f5
Successfully built multidict
Installing collected packages: multidict
Successfully installed multidict-6.0.4
```

### Code of Conduct

- [X] I agree to follow the [PSF Code of Conduct](https://www.python.org/psf/conduct/).


Discussion:

Resolving patch:
diff --git a/src/pip/_internal/pyproject.py b/src/pip/_internal/pyproject.py
--- a/src/pip/_internal/pyproject.py
+++ b/src/pip/_internal/pyproject.py
@@ -159,9 +159,8 @@ def load_pyproject_toml(
     if backend is None:
         # If the user didn't specify a backend, we assume they want to use
         # the setuptools backend. But we can't be sure they have included
-        # a version of setuptools which supplies the backend, or wheel
-        # (which is needed by the backend) in their requirements. So we
-        # make a note to check that those requirements are present once
+        # a version of setuptools which supplies the backend. So we
+        # make a note to check that this requirement is present once
         # we have set up the environment.
         # This is quite a lot of work to check for a very specific case. But
         # the problem is, that case is potentially quite common - projects that
@@ -170,6 +169,6 @@ def load_pyproject_toml(
         # tools themselves. The original PEP 518 code had a similar check (but
         # implemented in a different way).
         backend = "setuptools.build_meta:__legacy__"
-        check = ["setuptools>=40.8.0", "wheel"]
+        check = ["setuptools>=40.8.0"]
 
     return BuildSystemDetails(requires, backend, check, backend_path)


Test patch: