### Apache Airflow version

2.2.3rc1 (release candidate)

### What happened

I ran a DAG that does nothing explicitly with context, so I'm surprised to see deprecation warnings about context being used (trimmed to cut down on noise):

```
baseoperator.py:1107 DeprecationWarning: Accessing 'execution_date' from the template is deprecated and will be removed in a future version. Please use 'data_interval_start' or 'logical_date' instead.
baseoperator.py:1107 DeprecationWarning: Accessing 'next_ds' from the template is deprecated and will be removed in a future version. Please use '{{ data_interval_end | ds }}' instead.
baseoperator.py:1107 DeprecationWarning: Accessing 'next_ds_nodash' from the template is deprecated and will be removed in a future version. Please use '{{ data_interval_end | ds_nodash }}' instead.
baseoperator.py:1107 DeprecationWarning: Accessing 'next_execution_date' from the template is deprecated and will be removed in a future version. Please use 'data_interval_end' instead.
baseoperator.py:1107 DeprecationWarning: Accessing 'prev_ds' from the template is deprecated and will be removed in a future version.
baseoperator.py:1107 DeprecationWarning: Accessing 'prev_ds_nodash' from the template is deprecated and will be removed in a future version.
baseoperator.py:1107 DeprecationWarning: Accessing 'prev_execution_date' from the template is deprecated and will be removed in a future version.
baseoperator.py:1107 DeprecationWarning: Accessing 'prev_execution_date_success' from the template is deprecated and will be removed in a future version. Please use 'prev_data_interval_start_success' instead.
baseoperator.py:1107 DeprecationWarning: Accessing 'tomorrow_ds' from the template is deprecated and will be removed in a future version.
baseoperator.py:1107 DeprecationWarning: Accessing 'tomorrow_ds_nodash' from the template is deprecated and will be removed in a future version.
baseoperator.py:1107 DeprecationWarning: Accessing 'yesterday_ds' from the template is deprecated and will be removed in a future version.
baseoperator.py:1107 DeprecationWarning: Accessing 'yesterday_ds_nodash' from the template is deprecated and will be removed in a future version.
```

### What you expected to happen

I'd only expect to see deprecation warnings about things my DAG is actually interacting with.

### How to reproduce

Run this DAG:

```python
from datetime import datetime

from airflow import DAG
from airflow.operators.bash import BashOperator

with DAG(
    dag_id="no-context", schedule_interval=None, start_date=datetime(2021, 12, 10)
) as dag:
    BashOperator(task_id="sleep", bash_command="echo 'Hello!'")
```

Note: I also tried a TaskFlow DAG and that wasn't impacted.

### Operating System

MacOS 11.6

### Versions of Apache Airflow Providers

_No response_

### Deployment

Virtualenv installation

### Deployment details

_No response_

### Anything else

This was introduced in #19886 (cc @uranusjr).

### Are you willing to submit PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

airflow/utils/helpers.py
"""Ask the user a question and timeout if they don't respond"""
    def handler(signum, frame):
        raise AirflowException(f"Timeout {timeout}s reached")
    signal.signal(signal.SIGALRM, handler)
    signal.alarm(timeout)
    try:
        return ask_yesno(question, default)
    finally:
        signal.alarm(0)
def is_container(obj: Any) -> bool:
    """Test if an object is a container (iterable) but not a string"""
    return hasattr(obj, '__iter__') and not isinstance(obj, str)
def as_tuple(obj: Any) -> tuple:
    """
    If obj is a container, returns obj as a tuple.
    Otherwise, returns a tuple containing obj.
    """
    if is_container(obj):
        return tuple(obj)
    else:
        return tuple([obj])
def chunks(items: List[T], chunk_size: int) -> Generator[List[T], None, None]: