Failing code snippet on current master branch:

>>> import pandas as pd
>>> data = pd.DataFrame({'data': [("a", "b",), ("b",)]})
>>> data['data'].map({("a", "b"): "new_value"})

I stumbled across this one by chance working on a data frame containing sequences recorded as tuples in a column. I am not sure what is the correct behaviour here but it seems like something that should be handled without issue as these objects are hashable. The error generated is:

Error
**********************************************************************
File "/Users/halls23/Repos/pandas/pandas/core/series.py", line 316, in Series
Failed example:
    data['data'].map({("a", "b"): "new_value"})
Exception raised:
    Traceback (most recent call last):
      File "/Applications/PyCharm.app/Contents/plugins/python/helpers/pycharm/docrunner.py", line 138, in __run
        exec(compile(example.source, filename, "single",
      File "<doctest Series[18]>", line 1, in <module>
        data['data'].map({("a", "b"): "new_value"})
      File "/Users/halls23/Repos/pandas/pandas/core/series.py", line 4323, in map
        new_values = self._map_values(arg, na_action=na_action)
      File "/Users/halls23/Repos/pandas/pandas/core/base.py", line 871, in _map_values
        indexer = mapper.index.get_indexer(values)
      File "/Users/halls23/Repos/pandas/pandas/core/indexes/base.py", line 3585, in get_indexer
        pself, ptarget = self._maybe_promote(target)
      File "/Users/halls23/Repos/pandas/pandas/core/indexes/base.py", line 5831, in _maybe_promote
        other = type(self).from_tuples(other)  # type: ignore[attr-defined]
      File "/Users/halls23/Repos/pandas/pandas/core/indexes/multi.py", line 210, in new_meth
        return meth(self_or_cls, *args, **kwargs)
      File "/Users/halls23/Repos/pandas/pandas/core/indexes/multi.py", line 583, in from_tuples
        arrays = list(lib.tuples_to_object_array(tuples).T)
      File "pandas/_libs/lib.pyx", line 2860, in pandas._libs.lib.tuples_to_object_array
    IndexError: tuple index out of range

Full version information:

    <BLANKLINE>
    INSTALLED VERSIONS
    ------------------
    commit           : a5cbd1e52e9078637c899167f40a29b4bc8901b9
    python           : 3.8.15.final.0
    python-bits      : 64
    OS               : Darwin
    OS-release       : 21.6.0
    Version          : Darwin Kernel Version 21.6.0: Thu Sep 29 20:12:57 PDT 2022; root:xnu-8020.240.7~1/RELEASE_X86_64
    machine          : x86_64
    processor        : i386
    byteorder        : little
    LC_ALL           : None
    LANG             : None
    LOCALE           : en_GB.UTF-8
    <BLANKLINE>
    pandas           : 2.0.0.dev0+923.ga5cbd1e52e.dirty
    numpy            : 1.23.5
    pytz             : 2022.6
    dateutil         : 2.8.2
    setuptools       : 65.5.1
    pip              : 22.3.1
    Cython           : 0.29.32
    pytest           : 7.2.0
    hypothesis       : 6.61.0
    sphinx           : 4.5.0
    blosc            : None
    feather          : None
    xlsxwriter       : 3.0.3
    lxml.etree       : 4.9.2
    html5lib         : 1.1
    pymysql          : 1.0.2
    psycopg2         : 2.9.3
    jinja2           : 3.1.2
    IPython          : 8.7.0
    pandas_datareader: None
    bs4              : 4.11.1
    bottleneck       : 1.3.5
    brotli           : 
    fastparquet      : 2022.12.0
    fsspec           : 2021.11.0
    gcsfs            : 2021.11.0
    matplotlib       : 3.6.2
    numba            : 0.56.4
    numexpr          : 2.8.4
    odfpy            : None
    openpyxl         : 3.0.10
    pandas_gbq       : None
    pyarrow          : 9.0.0
    pyreadstat       : 1.2.0
    pyxlsb           : 1.0.10
    s3fs             : 2021.11.0
    scipy            : 1.9.3
    snappy           : 
    sqlalchemy       : 1.4.45
    tables           : 3.7.0
    tabulate         : 0.9.0
    xarray           : 2022.12.0
    xlrd             : 2.0.1
    zstandard        : 0.19.0
    tzdata           : None
    qtpy             : None
    pyqt5            : None