Avoid failing when a dependency is too old
authorDebian Science Team <debian-science-maintainers@lists.alioth.debian.org>
Tue, 28 Jan 2025 22:18:06 +0000 (22:18 +0000)
committerRebecca N. Palmer <rebecca_palmer@zoho.com>
Tue, 28 Jan 2025 22:18:06 +0000 (22:18 +0000)
commit6cc9b5a821d90f1589dc37f3604175b9e5726bee
tree48810e98c9b55e80b5b3113d14b5712cc2522b0c
parent29f8c0e1e5b0dcf9da325da409685002f66a91f3
Avoid failing when a dependency is too old

(some of them are pulled in by other dependencies, so
just not including them in d/control doesn't stop them being installed)

Most of the content of this patch was generated by the following Python code:

import pathlib
import re

basedir = pathlib.Path.cwd()
if not (basedir / 'pandas/tests').exists():
    raise FileNotFoundError('must be run from the pandas root')
for source_file in basedir.glob('pandas/**/*.py'):
    with open(source_file, 'r') as fd:
        source_text = fd.read()
    if 'pytest.importorskip' in source_text:
        source_text = re.sub(r'pytest\.importorskip(.*)minversion', r'td.versioned_importorskip\1min_version', source_text)
        source_text = re.sub(r'pytest\.importorskip', r'td.versioned_importorskip', source_text)
        if '_test_decorators as td' not in source_text:
            # add the import if it isn't already present
            source_text, count = re.subn(r'^(import pandas|from pandas.*import)',r'import pandas.util._test_decorators as td\n\1', source_text, count=1, flags=re.MULTILINE)
            if count != 1:
                raise KeyError("failed to add import")
        with open(source_file, 'w') as fd:
            fd.write(source_text)

Author: Rebecca N. Palmer <rebecca_palmer@zoho.com>
Forwarded: no

Gbp-Pq: Name versioned_importorskip.patch
159 files changed:
pandas/_testing/_io.py
pandas/conftest.py
pandas/tests/apply/test_frame_apply.py
pandas/tests/apply/test_numba.py
pandas/tests/arrays/categorical/test_warnings.py
pandas/tests/arrays/datetimes/test_constructors.py
pandas/tests/arrays/interval/test_interval_pyarrow.py
pandas/tests/arrays/masked/test_arrow_compat.py
pandas/tests/arrays/period/test_arrow_compat.py
pandas/tests/arrays/sparse/test_accessor.py
pandas/tests/arrays/sparse/test_constructors.py
pandas/tests/arrays/string_/test_string.py
pandas/tests/arrays/string_/test_string_arrow.py
pandas/tests/computation/test_compat.py
pandas/tests/copy_view/test_astype.py
pandas/tests/dtypes/test_common.py
pandas/tests/dtypes/test_inference.py
pandas/tests/extension/test_arrow.py
pandas/tests/extension/test_string.py
pandas/tests/frame/indexing/test_indexing.py
pandas/tests/frame/indexing/test_setitem.py
pandas/tests/frame/methods/test_astype.py
pandas/tests/frame/methods/test_convert_dtypes.py
pandas/tests/frame/methods/test_cov_corr.py
pandas/tests/frame/methods/test_describe.py
pandas/tests/frame/methods/test_dot.py
pandas/tests/frame/methods/test_info.py
pandas/tests/frame/methods/test_interpolate.py
pandas/tests/frame/methods/test_join.py
pandas/tests/frame/methods/test_rank.py
pandas/tests/frame/test_api.py
pandas/tests/frame/test_arrow_interface.py
pandas/tests/frame/test_constructors.py
pandas/tests/frame/test_query_eval.py
pandas/tests/frame/test_reductions.py
pandas/tests/frame/test_repr.py
pandas/tests/frame/test_subclass.py
pandas/tests/frame/test_ufunc.py
pandas/tests/generic/test_finalize.py
pandas/tests/generic/test_to_xarray.py
pandas/tests/groupby/aggregate/test_numba.py
pandas/tests/groupby/test_counting.py
pandas/tests/groupby/test_groupby.py
pandas/tests/groupby/test_numba.py
pandas/tests/groupby/test_reductions.py
pandas/tests/groupby/test_timegrouper.py
pandas/tests/groupby/transform/test_numba.py
pandas/tests/indexes/base_class/test_constructors.py
pandas/tests/indexes/base_class/test_reshape.py
pandas/tests/indexes/multi/test_constructors.py
pandas/tests/indexes/numeric/test_indexing.py
pandas/tests/indexes/test_base.py
pandas/tests/indexing/test_datetime.py
pandas/tests/indexing/test_loc.py
pandas/tests/interchange/test_impl.py
pandas/tests/interchange/test_utils.py
pandas/tests/io/conftest.py
pandas/tests/io/excel/test_odf.py
pandas/tests/io/excel/test_odswriter.py
pandas/tests/io/excel/test_openpyxl.py
pandas/tests/io/excel/test_readers.py
pandas/tests/io/excel/test_style.py
pandas/tests/io/excel/test_xlrd.py
pandas/tests/io/excel/test_xlsxwriter.py
pandas/tests/io/formats/style/test_bar.py
pandas/tests/io/formats/style/test_exceptions.py
pandas/tests/io/formats/style/test_format.py
pandas/tests/io/formats/style/test_highlight.py
pandas/tests/io/formats/style/test_html.py
pandas/tests/io/formats/style/test_matplotlib.py
pandas/tests/io/formats/style/test_non_unique.py
pandas/tests/io/formats/style/test_style.py
pandas/tests/io/formats/style/test_to_latex.py
pandas/tests/io/formats/style/test_to_string.py
pandas/tests/io/formats/style/test_tooltip.py
pandas/tests/io/formats/test_format.py
pandas/tests/io/formats/test_to_excel.py
pandas/tests/io/formats/test_to_latex.py
pandas/tests/io/formats/test_to_markdown.py
pandas/tests/io/formats/test_to_string.py
pandas/tests/io/json/test_pandas.py
pandas/tests/io/json/test_readlines.py
pandas/tests/io/parser/conftest.py
pandas/tests/io/parser/dtypes/test_dtypes_basic.py
pandas/tests/io/parser/test_concatenate_chunks.py
pandas/tests/io/parser/test_network.py
pandas/tests/io/parser/test_python_parser_only.py
pandas/tests/io/parser/test_read_fwf.py
pandas/tests/io/parser/test_upcast.py
pandas/tests/io/pytables/common.py
pandas/tests/io/pytables/test_append.py
pandas/tests/io/pytables/test_compat.py
pandas/tests/io/pytables/test_read.py
pandas/tests/io/pytables/test_round_trip.py
pandas/tests/io/pytables/test_store.py
pandas/tests/io/pytables/test_subclass.py
pandas/tests/io/test_clipboard.py
pandas/tests/io/test_common.py
pandas/tests/io/test_feather.py
pandas/tests/io/test_fsspec.py
pandas/tests/io/test_gcs.py
pandas/tests/io/test_html.py
pandas/tests/io/test_http_headers.py
pandas/tests/io/test_orc.py
pandas/tests/io/test_parquet.py
pandas/tests/io/test_pickle.py
pandas/tests/io/test_s3.py
pandas/tests/io/test_spss.py
pandas/tests/io/test_sql.py
pandas/tests/io/test_stata.py
pandas/tests/io/xml/test_to_xml.py
pandas/tests/io/xml/test_xml.py
pandas/tests/plotting/conftest.py
pandas/tests/plotting/frame/test_frame.py
pandas/tests/plotting/frame/test_frame_color.py
pandas/tests/plotting/frame/test_frame_groupby.py
pandas/tests/plotting/frame/test_frame_legend.py
pandas/tests/plotting/frame/test_frame_subplots.py
pandas/tests/plotting/frame/test_hist_box_by.py
pandas/tests/plotting/test_boxplot_method.py
pandas/tests/plotting/test_common.py
pandas/tests/plotting/test_converter.py
pandas/tests/plotting/test_datetimelike.py
pandas/tests/plotting/test_groupby.py
pandas/tests/plotting/test_hist_method.py
pandas/tests/plotting/test_misc.py
pandas/tests/plotting/test_series.py
pandas/tests/plotting/test_style.py
pandas/tests/reductions/test_reductions.py
pandas/tests/reductions/test_stat_reductions.py
pandas/tests/resample/test_datetime_index.py
pandas/tests/reshape/merge/test_merge.py
pandas/tests/reshape/test_melt.py
pandas/tests/series/accessors/test_list_accessor.py
pandas/tests/series/accessors/test_struct_accessor.py
pandas/tests/series/methods/test_convert_dtypes.py
pandas/tests/series/methods/test_cov_corr.py
pandas/tests/series/methods/test_drop_duplicates.py
pandas/tests/series/methods/test_explode.py
pandas/tests/series/methods/test_interpolate.py
pandas/tests/series/methods/test_rank.py
pandas/tests/series/methods/test_reset_index.py
pandas/tests/series/test_api.py
pandas/tests/series/test_constructors.py
pandas/tests/series/test_formats.py
pandas/tests/series/test_logical_ops.py
pandas/tests/series/test_reductions.py
pandas/tests/strings/test_extract.py
pandas/tests/test_algos.py
pandas/tests/test_downstream.py
pandas/tests/test_nanops.py
pandas/tests/test_optional_dependency.py
pandas/tests/tools/test_to_datetime.py
pandas/tests/tools/test_to_numeric.py
pandas/tests/tools/test_to_timedelta.py
pandas/tests/window/test_online.py
pandas/tests/window/test_rolling_skew_kurt.py
pandas/tests/window/test_win_type.py
pandas/util/_test_decorators.py