[Debian-med-packaging] Bug#1069359: python-cooler: FTBFS on arm64: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpi8kk3ih0/tmp_sf3nv42.multi.cool'

Lucas Nussbaum lucas at debian.org
Sat Apr 20 13:16:49 BST 2024


Source: python-cooler
Version: 0.9.3-1
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20240420 ftbfs-trixie ftbfs-t64-arm64

Hi,

During a rebuild of all packages in sid, your package failed to build
on arm64.


Relevant part (hopefully):
>  debian/rules binary
> dh binary --with python3 --buildsystem=pybuild
>    dh_update_autotools_config -O--buildsystem=pybuild
>    dh_autoreconf -O--buildsystem=pybuild
>    dh_auto_configure -O--buildsystem=pybuild
>    dh_auto_build -O--buildsystem=pybuild
> I: pybuild plugin_pyproject:129: Building wheel for python3.12 with "build" module
> I: pybuild base:311: python3.12 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler  
> * Building wheel...
> Successfully built cooler-0.9.3-py3-none-any.whl
> I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.12 with "installer" module
> I: pybuild plugin_pyproject:129: Building wheel for python3.11 with "build" module
> I: pybuild base:311: python3.11 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler  
> * Building wheel...
> Successfully built cooler-0.9.3-py3-none-any.whl
> I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.11 with "installer" module
>    dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build; python3.12 -m pytest tests
> ============================= test session starts ==============================
> platform linux -- Python 3.12.3, pytest-8.1.1, pluggy-1.4.0
> rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build
> configfile: pyproject.toml
> collected 136 items
> 
> tests/test_api.py ..........                                             [  7%]
> tests/test_balance.py ....                                               [ 10%]
> tests/test_cli.py .s..s.....                                             [ 17%]
> tests/test_cli_export.py .Fs                                             [ 19%]
> tests/test_cli_fileops.py ....                                           [ 22%]
> tests/test_cli_ingest.py FFFFFFFFFFF                                     [ 30%]
> tests/test_cli_ops.py FFF.                                               [ 33%]
> tests/test_core.py ...........                                           [ 41%]
> tests/test_create.py Fs.F..FFF                                           [ 48%]
> tests/test_create_ingest.py FFFFFFFFFFF.FFF                              [ 59%]
> tests/test_create_sanitize.py ........                                   [ 65%]
> tests/test_fileops.py ........s..                                        [ 73%]
> tests/test_parallel.py ...                                               [ 75%]
> tests/test_reduce.py FFFFFFFFFF                                          [ 83%]
> tests/test_util.py .........s.............                               [100%]
> 
> =================================== FAILURES ===================================
> __________________________________ test_dump ___________________________________
> 
>     def test_dump():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(dump, [f_in])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-t", "chroms", "--columns", "length"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-t", "bins", "--columns", "chrom,start"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-r", "chr1"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-r", "chr1:0-16", "-r2", "chr1:10-25"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-r", "chr1:10-25", "-r2", "chr1:0-5"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--join"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--join", "--one-based-ids"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--join", "--one-based-starts"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--annotate", "chrom", "--one-based-starts"])
>             assert result.exit_code == 0
>     
>             # unbalanced file
>             result = runner.invoke(dump, [f_in, "-b"])
>             assert result.exit_code == 1
>     
>             # roundtrip symm-upper data
>             result = runner.invoke(dump, [f_in, "-H", "-t", "bins"])
>             bins = pd.read_csv(StringIO(result.output), sep="\t")
>             result = runner.invoke(dump, [f_in, "-H"])
>             pixels = pd.read_csv(StringIO(result.output), sep="\t")
> >           cooler.create_cooler("out.cool", bins, pixels, symmetric_upper=True)
> 
> tests/test_cli_export.py:74: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> ________________ test_cload_symm_asymm[symm.upper-extra_args0] _________________
> 
> ref = 'symm.upper', extra_args = []
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect triu pairs
>             ("symm.upper", ["--input-copy-status", "unique"]),  # reflect triu pairs
>             ("asymm", ["--no-symmetric-upper"]),
>         ],
>     )
>     def test_cload_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:72: AssertionError
> ________________ test_cload_symm_asymm[symm.upper-extra_args1] _________________
> 
> ref = 'symm.upper', extra_args = ['--input-copy-status', 'unique']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect triu pairs
>             ("symm.upper", ["--input-copy-status", "unique"]),  # reflect triu pairs
>             ("asymm", ["--no-symmetric-upper"]),
>         ],
>     )
>     def test_cload_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:72: AssertionError
> ___________________ test_cload_symm_asymm[asymm-extra_args2] ___________________
> 
> ref = 'asymm', extra_args = ['--no-symmetric-upper']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect triu pairs
>             ("symm.upper", ["--input-copy-status", "unique"]),  # reflect triu pairs
>             ("asymm", ["--no-symmetric-upper"]),
>         ],
>     )
>     def test_cload_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:72: AssertionError
> _________________ test_cload_mergepass[symm.upper-extra_args0] _________________
> 
> ref = 'symm.upper', extra_args = ['--temp-dir', '.', '--no-delete-temp']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args", [("symm.upper", ["--temp-dir", ".", "--no-delete-temp"])]
>     )
>     def test_cload_mergepass(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:86: AssertionError
> _______________________________ test_cload_field _______________________________
> 
>     def test_cload_field():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             extra_args = ["--field", "score=8"]
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:98: AssertionError
> ___________________________ test_cload_other_options ___________________________
> 
>     def test_cload_other_options():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             meta = {"foo": "bar", "number": 42}
>             with open("meta.json", "w") as f:
>                 json.dump(meta, f)
>             extra_args = [
>                 "--metadata",
>                 "meta.json",
>                 "--zero-based",
>                 "--storage-options",
>                 "shuffle=True,fletcher32=True,compression=lzf",
>             ]
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:161: AssertionError
> _________________ test_load_symm_asymm[symm.upper-extra_args0] _________________
> 
> ref = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.bg2'
> extra_args = []
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect tril pairs
>             ("symm.upper", ["--one-based", "--input-copy-status", "unique"]),  # reflect tril pairs
>             ("asymm", ["--one-based", "--no-symmetric-upper"]),
>         ],
>     )
>     def test_load_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             ref = op.join(datadir, f"toy.{ref}.2.bg2")
>             result = _run_load(runner, ref, "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:201: AssertionError
> _________________ test_load_symm_asymm[symm.upper-extra_args1] _________________
> 
> ref = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.bg2'
> extra_args = ['--one-based', '--input-copy-status', 'unique']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect tril pairs
>             ("symm.upper", ["--one-based", "--input-copy-status", "unique"]),  # reflect tril pairs
>             ("asymm", ["--one-based", "--no-symmetric-upper"]),
>         ],
>     )
>     def test_load_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             ref = op.join(datadir, f"toy.{ref}.2.bg2")
>             result = _run_load(runner, ref, "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:201: AssertionError
> ___________________ test_load_symm_asymm[asymm-extra_args2] ____________________
> 
> ref = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.bg2'
> extra_args = ['--one-based', '--no-symmetric-upper']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect tril pairs
>             ("symm.upper", ["--one-based", "--input-copy-status", "unique"]),  # reflect tril pairs
>             ("asymm", ["--one-based", "--no-symmetric-upper"]),
>         ],
>     )
>     def test_load_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             ref = op.join(datadir, f"toy.{ref}.2.bg2")
>             result = _run_load(runner, ref, "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:201: AssertionError
> _______________________________ test_load_field ________________________________
> 
>     def test_load_field():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             extra_args = ["--field", "count=7:dtype=float"]
>             result = _run_load(runner, "toy.symm.upper.2.bg2", "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:211: AssertionError
> _______________________________ test_load_field2 _______________________________
> 
>     def test_load_field2():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             extra_args = ["--count-as-float"]
>             result = _run_load(runner, "toy.symm.upper.2.bg2", "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:225: AssertionError
> __________________________________ test_merge __________________________________
> 
>     def test_merge():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 merge, ["toy.2.double.cool", f_in, f_in, "--field", "count:dtype=int"]
>             )
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ops.py:31: AssertionError
> _________________________________ test_coarsen _________________________________
> 
>     def test_coarsen():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             f_ref = op.join(datadir, "toy.symm.upper.4.cool")
>             result = runner.invoke(
>                 coarsen, [
>                     f_in,
>                     "--factor", "2",
>                     "--nproc", "2",
>                     "-o", "toy.2.coarsen_2.cool"
>                 ],
>             )
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ops.py:50: AssertionError
> _________________________________ test_zoomify _________________________________
> 
>     def test_zoomify():
>         runner = CliRunner()
>     
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 zoomify, [f_in, "--balance", "--legacy", "-o", "toy.2.mcool"]
>             )
>             assert result.exit_code == 0
>     
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 zoomify, [
>                     f_in,
>                     "--balance",
>                     "--nproc", "2",
>                     "-o", "toy.2.mcool"
>                 ]
>             )
>             assert result.exit_code == 0
>     
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 zoomify, [
>                     f_in,
>                     "--balance",
>                     "--resolutions", "2,4,8",
>                     "-o", "toy.2.mcool"
>                 ]
>             )
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ops.py:98: AssertionError
> _ test_create_append[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> fp = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "fp", [op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool")]
>     )
>     def test_create_append(fp):
> >       import dask.dataframe as dd
> 
> tests/test_create.py:24: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> ___________________________ test_create_custom_cols ____________________________
> 
>     def test_create_custom_cols():
>     
>         with isolated_filesystem():
>             df = pd.DataFrame(
>                 {
>                     "bin1_id": [0, 1, 1, 1, 2, 2, 3, 4, 5],
>                     "bin2_id": [1, 1, 3, 4, 5, 6, 7, 8, 9],
>                     "foo": [1, 1, 1, 1, 1, 2, 2, 2, 2],
>                     "bar": [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9],
>                 },
>                 columns=["bin1_id", "bin2_id", "foo", "bar"],
>             )
>             bins = pd.DataFrame(
>                 {
>                     "chrom": ["chr1"] * 5 + ["chr2"] * 5,
>                     "start": list(range(5)) * 2,
>                     "end": list(range(1, 6)) * 2,
>                 }
>             )
>             # works in unordered mode
> >           cooler.create_cooler("test.cool", bins, df, columns=["foo", "bar"])
> 
> tests/test_create.py:159: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> ______________________________ test_create_cooler ______________________________
> 
>     def test_create_cooler():
>         chromsizes = cooler.util.read_chromsizes(
>             op.join(datadir, "toy.chrom.sizes")
>         )
>         bins = cooler.util.binnify(chromsizes, 1)
>         pixels = pd.read_csv(
>             op.join(datadir, "toy.symm.upper.1.zb.coo"),
>             sep='\t',
>             names=['bin1_id', 'bin2_id', 'count']
>         )
>         pixels['foo'] = 42.0
>     
>         with isolated_filesystem():
> >           cooler.create.create_cooler(
>                 "test.cool",
>                 bins,
>                 pixels,
>                 assembly='toy',
>                 metadata={'hello': 'world', 'list': [1, 2, 3]},
>             )
> 
> tests/test_create.py:304: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _________________________ test_create_cooler_from_dask _________________________
> 
>     def test_create_cooler_from_dask():
> >       dd = pytest.importorskip("dask.dataframe")
> 
> tests/test_create.py:405: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_create_scool[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> fp = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "fp", [op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool")]
>     )
>     def test_create_scool(fp):
>         c = cooler.Cooler(fp)
>         # chromsizes = c.chromsizes
>         bins = c.bins()[:]
>         pixels = c.pixels()[:]
>     
>         # random and different content to prove only chrom, start, end is linked and the rest is independent for each cell
>         from copy import deepcopy
>         bins_cell1 = deepcopy(bins)
>         bins_cell2 = deepcopy(bins)
>         bins_cell3 = deepcopy(bins)
>         bins_cell1['weight'] = np.array([0] * len(bins_cell1["start"]))
>         bins_cell2['weight'] = np.array([1] * len(bins_cell1["start"]))
>         bins_cell3['weight'] = np.array([2] * len(bins_cell1["start"]))
>     
>         bins_cell1['KR'] = np.array([3] * len(bins_cell1["start"]))
>         bins_cell2['KR'] = np.array([4] * len(bins_cell1["start"]))
>         bins_cell3['KR'] = np.array([5] * len(bins_cell1["start"]))
>     
>         name_pixel_dict = {'cell1': pixels, 'cell2': pixels, 'cell3': pixels}
>         name_bins_dict = {'cell1': bins_cell1, 'cell2': bins_cell2, 'cell3': bins_cell3}
>     
>         with isolated_filesystem():
> >           cooler.create_scool('outfile_test.scool', name_bins_dict, name_pixel_dict)
> 
> tests/test_create.py:461: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1237: in create_scool
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _____________________________ test_from_hdf5_pairs _____________________________
> 
>     def test_from_hdf5_pairs():
>         def should_not_depend_on_chunksize(chromsizes, bintable, mock_pairs):
>             # try different chunk sizes
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs, chromsizes, bintable, chunksize=66
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc1 = h5["indexes"]["chrom_offset"][:]
>                 ob1 = h5["indexes"]["bin1_offset"][:]
>                 p1 = cooler.api.pixels(h5, join=False)
>     
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs, chromsizes, bintable, chunksize=666
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc2 = h5["indexes"]["chrom_offset"][:]
>                 ob2 = h5["indexes"]["bin1_offset"][:]
>                 p2 = cooler.api.pixels(h5, join=False)
>     
>             assert np.all(oc1 == oc2)
>             assert np.all(ob1 == ob2)
>             assert np.all(p1.values == p2.values)
>     
>         def should_raise_if_input_not_sorted(chromsizes, bintable, mock_pairs):
>             # not sorted by chrm1
>             # with h5py.File(testcool_path, 'w') as h5:
>             bad_reads = {
>                 "chrms1": mock_pairs["chrms2"],
>                 "cuts1": mock_pairs["cuts2"],
>                 "chrms2": mock_pairs["chrms1"],
>                 "cuts2": mock_pairs["cuts1"],
>             }
>             with pytest.raises(ValueError):
>                 cooler.create.HDF5Aggregator(bad_reads, chromsizes, bintable, chunksize=66)
>     
>             # not triu
>             bad_reads = {
>                 "chrms1": mock_pairs["chrms1"].copy(),
>                 "cuts1": mock_pairs["cuts1"].copy(),
>                 "chrms2": mock_pairs["chrms2"].copy(),
>                 "cuts2": mock_pairs["cuts2"].copy(),
>             }
>             bad_reads["chrms1"][0] = 0
>             bad_reads["chrms2"][0] = 0
>             bad_reads["cuts1"][0] = 10
>             bad_reads["cuts2"][0] = 9
>             binner = cooler.create.HDF5Aggregator(
>                 bad_reads, chromsizes, bintable, chunksize=66
>             )
>             with pytest.raises(ValueError):
>                 cooler.create.create(testcool_path, bintable, binner)
>     
>         def should_work_with_int32_cols(chromsizes, bintable, mock_pairs):
>             # int64
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs, chromsizes, bintable, chunksize=66
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc1 = h5["indexes"]["chrom_offset"][:]
>                 ob1 = h5["indexes"]["bin1_offset"][:]
>                 p1 = cooler.api.pixels(h5, join=False)
>     
>             # int32
>             mock_pairs32 = {
>                 "chrms1": mock_pairs["chrms1"].astype(np.int32),
>                 "cuts1": mock_pairs["cuts1"].astype(np.int32),
>                 "chrms2": mock_pairs["chrms2"].astype(np.int32),
>                 "cuts2": mock_pairs["cuts2"].astype(np.int32),
>             }
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs32, chromsizes, bintable, chunksize=66
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc2 = h5["indexes"]["chrom_offset"][:]
>                 ob2 = h5["indexes"]["bin1_offset"][:]
>                 p2 = cooler.api.pixels(h5, join=False)
>     
>             assert np.all(oc1 == oc2)
>             assert np.all(ob1 == ob2)
>             assert np.all(p1.values == p2.values)
>     
>         def _mock_hdf5_pairs():
>             np.random.seed(1)
>             chrms = np.random.randint(0, n_chroms, n_records * 2)
>             cuts = np.random.randint(0, clen, n_records * 2)
>             abs_cuts = np.array([clen * chrm + cut for chrm, cut in zip(chrms, cuts)])
>             abs_cuts1, abs_cuts2 = abs_cuts[:n_records], abs_cuts[n_records:]
>             mock_pairs = {
>                 "chrms1": chrms[:n_records],
>                 "cuts1": cuts[:n_records],
>                 "chrms2": chrms[n_records:],
>                 "cuts2": cuts[n_records:],
>             }
>             # Triu-sort
>             mask = abs_cuts1 > abs_cuts2
>             mock_pairs["chrms1"][mask], mock_pairs["chrms2"][mask] = (
>                 mock_pairs["chrms2"][mask],
>                 mock_pairs["chrms1"][mask],
>             )
>             mock_pairs["cuts1"][mask], mock_pairs["cuts2"][mask] = (
>                 mock_pairs["cuts2"][mask],
>                 mock_pairs["cuts1"][mask],
>             )
>             abs_cuts1[mask], abs_cuts2[mask] = abs_cuts2[mask], abs_cuts1[mask]
>             idx = np.lexsort([abs_cuts2, abs_cuts1])
>             for key in mock_pairs:
>                 mock_pairs[key] = mock_pairs[key][idx]
>             return mock_pairs
>     
>         n_chroms = 2
>         clen = 2000
>         n_records = 3000
>         chromsizes = pd.Series(index=["chr1", "chr2"], data=[clen, clen])
>         mock_pairs = _mock_hdf5_pairs()
>     
>         # uniform bins
>         bintable = cooler.binnify(chromsizes, 100)
> >       should_not_depend_on_chunksize(chromsizes, bintable, mock_pairs)
> 
> tests/test_create_ingest.py:167: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_create_ingest.py:52: in should_not_depend_on_chunksize
>     cooler.create.create(testcool_path, bintable, binner)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_cload_tabix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.bins.2000kb.bed.gz'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.filterwarnings("ignore")
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             )
>         ],
>     )
>     def test_cload_tabix(bins_path, pairs_path, ref_path):
> >       cload_tabix.callback(
>             bins_path,
>             pairs_path,
>             testcool_path,
>             metadata=None,
>             assembly="hg19",
>             nproc=8,
>             zero_based=False,
>             max_split=2,
>         )
> 
> tests/test_create_ingest.py:190: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:240: in tabix
>     create_cooler(
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_cload_pairix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.bins.2000kb.bed.gz'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             )
>         ],
>     )
>     def test_cload_pairix(bins_path, pairs_path, ref_path):
> >       cload_pairix.callback(
>             bins_path,
>             pairs_path,
>             testcool_path,
>             metadata=None,
>             assembly="hg19",
>             nproc=8,
>             zero_based=False,
>             max_split=2,
>         )
> 
> tests/test_create_ingest.py:221: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:308: in pairix
>     create_cooler(
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool'
> 
>     @pytest.mark.skipif(
>         _pandas_major_version < 1,
>         reason="hash fix only works with pandas >= 1.0"
>     )
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs.gz"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             )
>         ],
>     )
>     def test_cload_pairs(bins_path, pairs_path, ref_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(15e6),
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             field=(),
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=False,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(bins_path, pairs_path, testcool_path, **kwargs)
> 
> tests/test_create_ingest.py:286: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy_hash.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy_hash.pairs'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool'
> 
>     @pytest.mark.skipif(
>         _pandas_major_version < 1,
>         reason="hash fix only works with pandas >= 1.0"
>     )
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs.gz"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             )
>         ],
>     )
>     def test_cload_pairs(bins_path, pairs_path, ref_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(15e6),
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             field=(),
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=False,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(bins_path, pairs_path, testcool_path, **kwargs)
> 
> tests/test_create_ingest.py:286: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy_hash.pairs.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy_hash.pairs.gz'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool'
> 
>     @pytest.mark.skipif(
>         _pandas_major_version < 1,
>         reason="hash fix only works with pandas >= 1.0"
>     )
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs.gz"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             )
>         ],
>     )
>     def test_cload_pairs(bins_path, pairs_path, ref_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(15e6),
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             field=(),
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=False,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(bins_path, pairs_path, testcool_path, **kwargs)
> 
> tests/test_create_ingest.py:286: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_cload_field[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.chrom.sizes:2'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs'
> 
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.chrom.sizes") + ":2",
>                 op.join(testdir, "data", "toy.pairs"),
>             )
>         ],
>     )
>     def test_cload_field(bins_path, pairs_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="toy",
>             chunksize=10,
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=True,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(
>             bins_path, pairs_path, testcool_path, field=("score=8:dtype=float",), **kwargs
>         )
> 
> tests/test_create_ingest.py:326: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_cload_custom_tempdir[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.chrom.sizes:2'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs'
> 
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.chrom.sizes") + ":2",
>                 op.join(testdir, "data", "toy.pairs"),
>             )
>         ],
>     )
>     def test_cload_custom_tempdir(bins_path, pairs_path):
>         for temp_dir in [op.join(testdir, "data"), "-"]:
> >           cload_pairs.callback(
>                 bins_path,
>                 pairs_path,
>                 testcool_path,
>                 metadata=None,
>                 assembly="toy",
>                 chunksize=10,
>                 zero_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 field=(),
>                 temp_dir=temp_dir,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 no_count=True,
>                 max_merge=200,
>                 chrom1=2,
>                 pos1=3,
>                 chrom2=4,
>                 pos2=5,
>                 append=False,
>             )
> 
> tests/test_create_ingest.py:345: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _____________________________ test_load_bg2_vs_coo _____________________________
> 
>     def test_load_bg2_vs_coo():
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(20e6),
>             field=(),
>             count_as_float=False,
>             one_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             append=False,
>         )
>     
>         out_path1 = op.join(tmp, "test1.cool")
>         out_path2 = op.join(tmp, "test2.cool")
>     
> >       load.callback(
>             op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>             op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.bg2.gz"),
>             out_path1,
>             format="bg2",
>             **kwargs
>         )
> 
> tests/test_create_ingest.py:394: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _________________________ test_load_zero_one_based_bg2 _________________________
> 
>     def test_load_zero_one_based_bg2():
>         kwargs = dict(
>             format="bg2",
>             metadata=None,
>             assembly="toy",
>             chunksize=10,
>             field=(),
>             count_as_float=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             append=False,
>         )
>         # 1-based-start BG2 input
>         ref = "toy.symm.upper.1.ob.bg2"
>         bins_path = op.join(testdir, "data", "toy.chrom.sizes") + ":1"
>         pixels_path = op.join(testdir, "data", ref)
> >       load.callback(bins_path, pixels_path, testcool_path, one_based=True, **kwargs)
> 
> tests/test_create_ingest.py:441: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _________________________ test_load_zero_one_based_coo _________________________
> 
>     def test_load_zero_one_based_coo():
>         kwargs = dict(
>             format="coo",
>             metadata=None,
>             assembly="toy",
>             chunksize=10,
>             field=(),
>             count_as_float=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             append=False,
>         )
>         # 1-based-start COO input
>         ref = "toy.symm.upper.1.ob.coo"
>         bins_path = op.join(testdir, "data", "toy.chrom.sizes") + ":1"
>         pixels_path = op.join(testdir, "data", ref)
> >       load.callback(bins_path, pixels_path, testcool_path, one_based=True, **kwargs)
> 
> tests/test_create_ingest.py:490: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> ____________________________ test_cload_append_mode ____________________________
> 
>     def test_cload_append_mode():
>         for append in (True, False):
>             out_path = op.join(tmp, "test.cool")
>             with h5py.File(out_path, "w") as f:
>                 f.attrs["xxxx"] = True
>             kwargs = dict(
>                 metadata=None,
>                 assembly="hg19",
>                 chunksize=int(15e6),
>                 zero_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 field=(),
>                 temp_dir=None,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 no_count=False,
>                 max_merge=200,
>                 chrom1=2,
>                 pos1=3,
>                 chrom2=4,
>                 pos2=5,
>                 append=append,
>             )
> >           cload_pairs.callback(
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 out_path,
>                 **kwargs
>             )
> 
> tests/test_create_ingest.py:551: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> ____________________________ test_load_append_mode _____________________________
> 
>     def test_load_append_mode():
>         for append in (True, False):
>             out_path = op.join(tmp, "test.cool")
>             with h5py.File(out_path, "w") as f:
>                 f.attrs["xxxx"] = True
>             kwargs = dict(
>                 metadata=None,
>                 assembly="hg19",
>                 chunksize=int(20e6),
>                 field=(),
>                 count_as_float=False,
>                 one_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 temp_dir=None,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 append=append,
>             )
> >           load.callback(
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.coo.txt"),
>                 out_path,
>                 format="coo",
>                 **kwargs
>             )
> 
> tests/test_create_ingest.py:588: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> ___________________________ test_load_custom_tempdir ___________________________
> 
>     def test_load_custom_tempdir():
>         for temp_dir in [op.join(testdir, "data"), "-"]:
> >           load.callback(
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.coo.txt"),
>                 testcool_path,
>                 format="coo",
>                 metadata=None,
>                 assembly="hg19",
>                 chunksize=int(20e6),
>                 field=(),
>                 count_as_float=False,
>                 one_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 temp_dir=temp_dir,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 append=False,
>     
>             )
> 
> tests/test_create_ingest.py:608: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> path1 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> path2 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "path1,path2",
>         [
>             (
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 op.join(datadir, "toy.asymm.2.cool")
>             )
>         ],
>     )
>     def test_merge(path1, path2):
>         with isolated_filesystem():
> >           merge_coolers("test.cool", [path1, path2], mergebuf=int(15e6))
> 
> tests/test_reduce.py:30: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool] _
> 
> path1 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool'
> path2 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool'
> 
>     @pytest.mark.parametrize(
>         "path1,path2",
>         [
>             (
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 op.join(datadir, "toy.asymm.2.cool")
>             )
>         ],
>     )
>     def test_merge(path1, path2):
>         with isolated_filesystem():
> >           merge_coolers("test.cool", [path1, path2], mergebuf=int(15e6))
> 
> tests/test_reduce.py:30: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _________________________________ test_merge2 __________________________________
> 
>     def test_merge2():
>         with isolated_filesystem():
>             path1 = op.join(datadir, "toy.symm.upper.2.cool")
>             path2 = op.join(datadir, "toy.symm.upper.2.cool")
> >           merge_coolers(
>                 "test.cool", [path1, path2], mergebuf=3, agg={'count': 'mean'}
>             )
> 
> tests/test_reduce.py:42: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.4.cool] _
> 
> input_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.cool'
> factor = 2
> ref_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.4.cool'
> 
>     @pytest.mark.parametrize(
>         "input_uri,factor,ref_uri",
>         [
>             (
>                 op.join(datadir, "toy.symm.upper.2.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.4.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 2,
>                 op.join(datadir, "toy.asymm.4.cool")
>             ),
>             (
>                 op.join(datadir, "toy.symm.upper.var.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.var2x.cool"),
>             ),
>         ],
>     )
>     def test_coarsen(input_uri, factor, ref_uri):
>     
>         with isolated_filesystem():
>             kwargs = dict(
>                 chunksize=10, nproc=1, columns=None, dtypes=None, agg=None
>             )
> >           coarsen_cooler(input_uri, "test.cool", factor, **kwargs)
> 
> tests/test_reduce.py:109: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.4.cool] _
> 
> input_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool'
> factor = 2
> ref_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.4.cool'
> 
>     @pytest.mark.parametrize(
>         "input_uri,factor,ref_uri",
>         [
>             (
>                 op.join(datadir, "toy.symm.upper.2.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.4.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 2,
>                 op.join(datadir, "toy.asymm.4.cool")
>             ),
>             (
>                 op.join(datadir, "toy.symm.upper.var.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.var2x.cool"),
>             ),
>         ],
>     )
>     def test_coarsen(input_uri, factor, ref_uri):
>     
>         with isolated_filesystem():
>             kwargs = dict(
>                 chunksize=10, nproc=1, columns=None, dtypes=None, agg=None
>             )
> >           coarsen_cooler(input_uri, "test.cool", factor, **kwargs)
> 
> tests/test_reduce.py:109: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _ test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var2x.cool] _
> 
> input_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool'
> factor = 2
> ref_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var2x.cool'
> 
>     @pytest.mark.parametrize(
>         "input_uri,factor,ref_uri",
>         [
>             (
>                 op.join(datadir, "toy.symm.upper.2.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.4.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 2,
>                 op.join(datadir, "toy.asymm.4.cool")
>             ),
>             (
>                 op.join(datadir, "toy.symm.upper.var.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.var2x.cool"),
>             ),
>         ],
>     )
>     def test_coarsen(input_uri, factor, ref_uri):
>     
>         with isolated_filesystem():
>             kwargs = dict(
>                 chunksize=10, nproc=1, columns=None, dtypes=None, agg=None
>             )
> >           coarsen_cooler(input_uri, "test.cool", factor, **kwargs)
> 
> tests/test_reduce.py:109: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> ______________________ test_coarsen_partitions_correctly _______________________
> 
>     def test_coarsen_partitions_correctly():
>         kwargs = dict(nproc=1, columns=None, dtypes=None, agg=None)
>         with isolated_filesystem():
>             f_ref = op.join(datadir, "odd.4.cool")
>             f_in = op.join(datadir, "odd.1.cool")
> >           coarsen_cooler(f_in, "odd.1.coarsen_4.cool", factor=4, chunksize=2, **kwargs)
> 
> tests/test_reduce.py:145: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _________________________________ test_zoomify _________________________________
> 
>     def test_zoomify():
>         kwargs = dict(chunksize=10, nproc=1, columns=None, dtypes=None, agg=None)
>         with isolated_filesystem():
> >           zoomify_cooler(
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 "test.2.mcool",
>                 resolutions=[4, 8, 16, 32],
>                 **kwargs
>             )
> 
> tests/test_reduce.py:156: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:832: in zoomify_cooler
>     coarsen_cooler(
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _____________________________ test_legacy_zoomify ______________________________
> 
>     def test_legacy_zoomify():
>         infile = op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool")
>         chunksize = int(10e6)
>         # n_zooms = 2
>         n_cpus = 1
>         with isolated_filesystem():
> >           legacy_zoomify(infile, "test.multires.cool", n_cpus, chunksize)
> 
> tests/test_reduce.py:197: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:900: in legacy_zoomify
>     coarsen_cooler(
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> _______________________________ test_append_mode _______________________________
> 
>     def test_append_mode():
>         # merge
>         path1 = path2 = op.join(datadir, "toy.asymm.2.cool")
>         out_path = "test.cool"
>         for append in (True, False):
>             with isolated_filesystem():
>                 with h5py.File("test.cool", "w") as f:
>                     f.attrs["xxxx"] = True
> >               merge_coolers(
>                     out_path,
>                     [path1, path2],
>                     mergebuf=int(15e6),
>                     mode="a" if append else "w"
>                 )
> 
> tests/test_reduce.py:208: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.12/inspect.py:3310: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.12/inspect.py:3054: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.12/inspect.py:2642: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffa8eeed90>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.12/inspect.py:2467: TypeError
> =============================== warnings summary ===============================
> tests/test_api.py::test_bintable_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/test_api.py:44: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(bins["chrom"].dtype)
> 
> tests/test_api.py::test_bintable_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/test_api.py:47: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(bins["chrom"].dtype)
> 
> tests/test_api.py::test_bintable_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/test_api.py:51: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(chroms.dtype)
> 
> tests/test_balance.py::test_balancing_other_options[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.cool-0.01]
> tests/test_cli_ops.py::test_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/balance.py:112: RuntimeWarning: Mean of empty slice.
>     scale = nzmarg.mean()
> 
> tests/test_balance.py::test_balancing_other_options[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.cool-0.01]
> tests/test_cli_ops.py::test_zoomify
>   /usr/lib/python3/dist-packages/numpy/core/_methods.py:129: RuntimeWarning: invalid value encountered in scalar divide
>     ret = ret.dtype.type(ret / rcount)
> 
> tests/test_cli.py::test_makebins
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/cli/makebins.py:55: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     bins["id"] = bins.groupby("chrom").cumcount()
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_cli_ops.py: 2 warnings
> tests/test_create_ingest.py: 13 warnings
> tests/test_create_sanitize.py: 18 warnings
> tests/test_reduce.py: 6 warnings
> tests/test_util.py: 2 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/util.py:730: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     is_cat = pd.api.types.is_categorical_dtype(bins["chrom"])
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_cli_ops.py: 2 warnings
> tests/test_create_ingest.py: 13 warnings
> tests/test_create_sanitize.py: 18 warnings
> tests/test_reduce.py: 6 warnings
> tests/test_util.py: 1 warning
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/util.py:771: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     self._bins_grouped = bins.groupby("chrom", sort=False)
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_cli_ops.py: 2 warnings
> tests/test_create_ingest.py: 13 warnings
> tests/test_create_sanitize.py: 18 warnings
> tests/test_reduce.py: 6 warnings
> tests/test_util.py: 2 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/util.py:395: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     for _chrom, group in bins.groupby("chrom"):
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_create_ingest.py: 8 warnings
> tests/test_create_sanitize.py: 9 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/create/_ingest.py:133: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`
>     chromsizes1 = gs.chromsizes[chrom1_ids].values
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_create_ingest.py: 8 warnings
> tests/test_create_sanitize.py: 9 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/create/_ingest.py:134: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`
>     chromsizes2 = gs.chromsizes[chrom2_ids].values
> 
> tests/test_cli_ops.py::test_coarsen
> tests/test_cli_ops.py::test_zoomify
> tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.4.cool]
> tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.4.cool]
> tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var2x.cool]
> tests/test_reduce.py::test_coarsen_partitions_correctly
> tests/test_reduce.py::test_zoomify
> tests/test_reduce.py::test_legacy_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/reduce.py:548: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     return old_bins.groupby("chrom").apply(_each).reset_index(drop=True)
> 
> tests/test_cli_ops.py::test_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/cli/zoomify.py:198: UserWarning: Map is already < 256 x 256. Provide resolutions explicitly if you want to coarsen more.
>     warnings.warn(
> 
> tests/test_cli_ops.py::test_zoomify
> tests/test_cli_ops.py::test_zoomify
> tests/test_reduce.py::test_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/reduce.py:792: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     n_bins_longest_chrom[base_binsize] = clr.bins()[:].groupby("chrom").size().max()
> 
> tests/test_cli_ops.py::test_balance
> tests/test_cli_ops.py::test_balance
> tests/test_cli_ops.py::test_balance
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/balance.py:108: ConvergenceWarning: Iteration limit reached without convergence.
>     warnings.warn(
> 
> tests/test_cli_ops.py::test_balance
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/cli/balance.py:183: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     bins_grouped = clr.bins()[:].groupby('chrom')
> 
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_create.py::test_write
> tests/test_create.py::test_write
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/core/_tableops.py:120: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     elif is_categorical_dtype(data):
> 
> tests/test_core.py::test_put
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/test_core.py:94: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(out['chrom_enum'].dtype)
> 
> tests/test_core.py::test_put
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/test_core.py:104: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert not pd.api.types.is_categorical_dtype(out['chrom_string'].dtype)
> 
> tests/test_create.py::test_rename_chroms
> tests/test_create.py::test_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/create/_create.py:349: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     if is_categorical_dtype(bins["chrom"]):
> 
> tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool]
> tests/test_reduce.py::test_merge2
> tests/test_reduce.py::test_append_mode
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/cooler/reduce.py:247: DeprecationWarning: np.find_common_type is deprecated.  Please use `np.result_type` or `np.promote_types`.
>   See https://numpy.org/devdocs/release/1.25.0-notes.html and the docs for more information.  (Deprecated NumPy 1.25)
>     dtypes[col] = np.find_common_type(dtype_map[col], [])
> 
> tests/test_util.py::test_bedslice
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/test_util.py:234: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     grouped = bins.groupby('chrom')
> 
> tests/test_util.py::test_check_bins
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/test_util.py:312: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(bins["chrom"])
> 
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info ============================
> FAILED tests/test_cli_export.py::test_dump - TypeError: descriptor '__call__'...
> FAILED tests/test_cli_ingest.py::test_cload_symm_asymm[symm.upper-extra_args0]
> FAILED tests/test_cli_ingest.py::test_cload_symm_asymm[symm.upper-extra_args1]
> FAILED tests/test_cli_ingest.py::test_cload_symm_asymm[asymm-extra_args2] - a...
> FAILED tests/test_cli_ingest.py::test_cload_mergepass[symm.upper-extra_args0]
> FAILED tests/test_cli_ingest.py::test_cload_field - assert 1 == 0
> FAILED tests/test_cli_ingest.py::test_cload_other_options - assert 1 == 0
> FAILED tests/test_cli_ingest.py::test_load_symm_asymm[symm.upper-extra_args0]
> FAILED tests/test_cli_ingest.py::test_load_symm_asymm[symm.upper-extra_args1]
> FAILED tests/test_cli_ingest.py::test_load_symm_asymm[asymm-extra_args2] - as...
> FAILED tests/test_cli_ingest.py::test_load_field - assert 1 == 0
> FAILED tests/test_cli_ingest.py::test_load_field2 - assert 1 == 0
> FAILED tests/test_cli_ops.py::test_merge - assert 1 == 0
> FAILED tests/test_cli_ops.py::test_coarsen - assert 1 == 0
> FAILED tests/test_cli_ops.py::test_zoomify - assert 1 == 0
> FAILED tests/test_create.py::test_create_append[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create.py::test_create_custom_cols - TypeError: descriptor ...
> FAILED tests/test_create.py::test_create_cooler - TypeError: descriptor '__ca...
> FAILED tests/test_create.py::test_create_cooler_from_dask - TypeError: descri...
> FAILED tests/test_create.py::test_create_scool[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create_ingest.py::test_from_hdf5_pairs - TypeError: descrip...
> FAILED tests/test_create_ingest.py::test_cload_tabix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy_hash.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy_hash.pairs.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool]
> FAILED tests/test_create_ingest.py::test_cload_field[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs]
> FAILED tests/test_create_ingest.py::test_cload_custom_tempdir[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.pairs]
> FAILED tests/test_create_ingest.py::test_load_bg2_vs_coo - TypeError: descrip...
> FAILED tests/test_create_ingest.py::test_load_zero_one_based_bg2 - TypeError:...
> FAILED tests/test_create_ingest.py::test_load_zero_one_based_coo - TypeError:...
> FAILED tests/test_create_ingest.py::test_cload_append_mode - TypeError: descr...
> FAILED tests/test_create_ingest.py::test_load_append_mode - TypeError: descri...
> FAILED tests/test_create_ingest.py::test_load_custom_tempdir - TypeError: des...
> FAILED tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool]
> FAILED tests/test_reduce.py::test_merge2 - TypeError: descriptor '__call__' f...
> FAILED tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.4.cool]
> FAILED tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.asymm.4.cool]
> FAILED tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build/tests/data/toy.symm.upper.var2x.cool]
> FAILED tests/test_reduce.py::test_coarsen_partitions_correctly - TypeError: d...
> FAILED tests/test_reduce.py::test_zoomify - TypeError: descriptor '__call__' ...
> FAILED tests/test_reduce.py::test_legacy_zoomify - TypeError: descriptor '__c...
> FAILED tests/test_reduce.py::test_append_mode - TypeError: descriptor '__call...
> =========== 44 failed, 86 passed, 6 skipped, 253 warnings in 19.76s ============
> E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_cooler/build; python3.12 -m pytest tests
> I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build; python3.11 -m pytest tests
> ============================= test session starts ==============================
> platform linux -- Python 3.11.9, pytest-8.1.1, pluggy-1.4.0
> rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build
> configfile: pyproject.toml
> collected 136 items
> 
> tests/test_api.py ..........                                             [  7%]
> tests/test_balance.py ....                                               [ 10%]
> tests/test_cli.py .s..s.....                                             [ 17%]
> tests/test_cli_export.py .Fs                                             [ 19%]
> tests/test_cli_fileops.py ....                                           [ 22%]
> tests/test_cli_ingest.py FFFFException ignored in: <function _TemporaryFileCloser.__del__ at 0xffffb8971440>
> Traceback (most recent call last):
>   File "/usr/lib/python3.11/tempfile.py", line 606, in __del__
>     self.close()
>   File "/usr/lib/python3.11/tempfile.py", line 602, in close
>     unlink(self.name)
> FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpiskg6ace/tmpks7k1q8c.multi.cool'
> FFFFFFF                                     [ 30%]
> tests/test_cli_ops.py FFF.                                               [ 33%]
> tests/test_core.py ...........                                           [ 41%]
> tests/test_create.py Exception ignored in: <function _TemporaryFileCloser.__del__ at 0xffffb8971440>
> Traceback (most recent call last):
>   File "/usr/lib/python3.11/tempfile.py", line 606, in __del__
>     self.close()
>   File "/usr/lib/python3.11/tempfile.py", line 602, in close
>     unlink(self.name)
> FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpo52wzfwe/tmps6xvgd0f.multi.cool'
> Fs.F..FFF                                           [ 48%]
> tests/test_create_ingest.py FFFFFFFFFFF.FFF                              [ 59%]
> tests/test_create_sanitize.py ........                                   [ 65%]
> tests/test_fileops.py ........s..                                        [ 73%]
> tests/test_parallel.py ...                                               [ 75%]
> tests/test_reduce.py FFFFFFFFFF                                          [ 83%]
> tests/test_util.py .........s.............                               [100%]
> 
> =================================== FAILURES ===================================
> __________________________________ test_dump ___________________________________
> 
>     def test_dump():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(dump, [f_in])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-t", "chroms", "--columns", "length"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-t", "bins", "--columns", "chrom,start"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-r", "chr1"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-r", "chr1:0-16", "-r2", "chr1:10-25"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "-r", "chr1:10-25", "-r2", "chr1:0-5"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--join"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--join", "--one-based-ids"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--join", "--one-based-starts"])
>             assert result.exit_code == 0
>             result = runner.invoke(dump, [f_in, "--annotate", "chrom", "--one-based-starts"])
>             assert result.exit_code == 0
>     
>             # unbalanced file
>             result = runner.invoke(dump, [f_in, "-b"])
>             assert result.exit_code == 1
>     
>             # roundtrip symm-upper data
>             result = runner.invoke(dump, [f_in, "-H", "-t", "bins"])
>             bins = pd.read_csv(StringIO(result.output), sep="\t")
>             result = runner.invoke(dump, [f_in, "-H"])
>             pixels = pd.read_csv(StringIO(result.output), sep="\t")
> >           cooler.create_cooler("out.cool", bins, pixels, symmetric_upper=True)
> 
> tests/test_cli_export.py:74: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> ________________ test_cload_symm_asymm[symm.upper-extra_args0] _________________
> 
> ref = 'symm.upper', extra_args = []
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect triu pairs
>             ("symm.upper", ["--input-copy-status", "unique"]),  # reflect triu pairs
>             ("asymm", ["--no-symmetric-upper"]),
>         ],
>     )
>     def test_cload_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:72: AssertionError
> ________________ test_cload_symm_asymm[symm.upper-extra_args1] _________________
> 
> ref = 'symm.upper', extra_args = ['--input-copy-status', 'unique']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect triu pairs
>             ("symm.upper", ["--input-copy-status", "unique"]),  # reflect triu pairs
>             ("asymm", ["--no-symmetric-upper"]),
>         ],
>     )
>     def test_cload_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:72: AssertionError
> ___________________ test_cload_symm_asymm[asymm-extra_args2] ___________________
> 
> ref = 'asymm', extra_args = ['--no-symmetric-upper']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect triu pairs
>             ("symm.upper", ["--input-copy-status", "unique"]),  # reflect triu pairs
>             ("asymm", ["--no-symmetric-upper"]),
>         ],
>     )
>     def test_cload_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:72: AssertionError
> _________________ test_cload_mergepass[symm.upper-extra_args0] _________________
> 
> ref = 'symm.upper', extra_args = ['--temp-dir', '.', '--no-delete-temp']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args", [("symm.upper", ["--temp-dir", ".", "--no-delete-temp"])]
>     )
>     def test_cload_mergepass(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:86: AssertionError
> _______________________________ test_cload_field _______________________________
> 
>     def test_cload_field():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             extra_args = ["--field", "score=8"]
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:98: AssertionError
> ___________________________ test_cload_other_options ___________________________
> 
>     def test_cload_other_options():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             meta = {"foo": "bar", "number": 42}
>             with open("meta.json", "w") as f:
>                 json.dump(meta, f)
>             extra_args = [
>                 "--metadata",
>                 "meta.json",
>                 "--zero-based",
>                 "--storage-options",
>                 "shuffle=True,fletcher32=True,compression=lzf",
>             ]
>             result = _run_cload_pairs(runner, 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:161: AssertionError
> _________________ test_load_symm_asymm[symm.upper-extra_args0] _________________
> 
> ref = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.bg2'
> extra_args = []
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect tril pairs
>             ("symm.upper", ["--one-based", "--input-copy-status", "unique"]),  # reflect tril pairs
>             ("asymm", ["--one-based", "--no-symmetric-upper"]),
>         ],
>     )
>     def test_load_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             ref = op.join(datadir, f"toy.{ref}.2.bg2")
>             result = _run_load(runner, ref, "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:201: AssertionError
> _________________ test_load_symm_asymm[symm.upper-extra_args1] _________________
> 
> ref = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.bg2'
> extra_args = ['--one-based', '--input-copy-status', 'unique']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect tril pairs
>             ("symm.upper", ["--one-based", "--input-copy-status", "unique"]),  # reflect tril pairs
>             ("asymm", ["--one-based", "--no-symmetric-upper"]),
>         ],
>     )
>     def test_load_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             ref = op.join(datadir, f"toy.{ref}.2.bg2")
>             result = _run_load(runner, ref, "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:201: AssertionError
> ___________________ test_load_symm_asymm[asymm-extra_args2] ____________________
> 
> ref = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.bg2'
> extra_args = ['--one-based', '--no-symmetric-upper']
> 
>     @pytest.mark.parametrize(
>         "ref,extra_args",
>         [
>             ("symm.upper", []),  # reflect tril pairs
>             ("symm.upper", ["--one-based", "--input-copy-status", "unique"]),  # reflect tril pairs
>             ("asymm", ["--one-based", "--no-symmetric-upper"]),
>         ],
>     )
>     def test_load_symm_asymm(ref, extra_args):
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             ref = op.join(datadir, f"toy.{ref}.2.bg2")
>             result = _run_load(runner, ref, "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:201: AssertionError
> _______________________________ test_load_field ________________________________
> 
>     def test_load_field():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             extra_args = ["--field", "count=7:dtype=float"]
>             result = _run_load(runner, "toy.symm.upper.2.bg2", "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:211: AssertionError
> _______________________________ test_load_field2 _______________________________
> 
>     def test_load_field2():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             extra_args = ["--count-as-float"]
>             result = _run_load(runner, "toy.symm.upper.2.bg2", "bg2", 2, extra_args)
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ingest.py:225: AssertionError
> __________________________________ test_merge __________________________________
> 
>     def test_merge():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 merge, ["toy.2.double.cool", f_in, f_in, "--field", "count:dtype=int"]
>             )
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ops.py:31: AssertionError
> _________________________________ test_coarsen _________________________________
> 
>     def test_coarsen():
>         runner = CliRunner()
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             f_ref = op.join(datadir, "toy.symm.upper.4.cool")
>             result = runner.invoke(
>                 coarsen, [
>                     f_in,
>                     "--factor", "2",
>                     "--nproc", "2",
>                     "-o", "toy.2.coarsen_2.cool"
>                 ],
>             )
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ops.py:50: AssertionError
> _________________________________ test_zoomify _________________________________
> 
>     def test_zoomify():
>         runner = CliRunner()
>     
>         with runner.isolated_filesystem():
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 zoomify, [f_in, "--balance", "--legacy", "-o", "toy.2.mcool"]
>             )
>             assert result.exit_code == 0
>     
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 zoomify, [
>                     f_in,
>                     "--balance",
>                     "--nproc", "2",
>                     "-o", "toy.2.mcool"
>                 ]
>             )
>             assert result.exit_code == 0
>     
>             f_in = op.join(datadir, "toy.symm.upper.2.cool")
>             result = runner.invoke(
>                 zoomify, [
>                     f_in,
>                     "--balance",
>                     "--resolutions", "2,4,8",
>                     "-o", "toy.2.mcool"
>                 ]
>             )
> >           assert result.exit_code == 0
> E           assert 1 == 0
> E            +  where 1 = <Result TypeError("descriptor '__call__' for 'type' objects doesn't apply to a 'property' object")>.exit_code
> 
> tests/test_cli_ops.py:98: AssertionError
> _ test_create_append[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> fp = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "fp", [op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool")]
>     )
>     def test_create_append(fp):
> >       import dask.dataframe as dd
> 
> tests/test_create.py:24: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> ___________________________ test_create_custom_cols ____________________________
> 
>     def test_create_custom_cols():
>     
>         with isolated_filesystem():
>             df = pd.DataFrame(
>                 {
>                     "bin1_id": [0, 1, 1, 1, 2, 2, 3, 4, 5],
>                     "bin2_id": [1, 1, 3, 4, 5, 6, 7, 8, 9],
>                     "foo": [1, 1, 1, 1, 1, 2, 2, 2, 2],
>                     "bar": [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9],
>                 },
>                 columns=["bin1_id", "bin2_id", "foo", "bar"],
>             )
>             bins = pd.DataFrame(
>                 {
>                     "chrom": ["chr1"] * 5 + ["chr2"] * 5,
>                     "start": list(range(5)) * 2,
>                     "end": list(range(1, 6)) * 2,
>                 }
>             )
>             # works in unordered mode
> >           cooler.create_cooler("test.cool", bins, df, columns=["foo", "bar"])
> 
> tests/test_create.py:159: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> ______________________________ test_create_cooler ______________________________
> 
>     def test_create_cooler():
>         chromsizes = cooler.util.read_chromsizes(
>             op.join(datadir, "toy.chrom.sizes")
>         )
>         bins = cooler.util.binnify(chromsizes, 1)
>         pixels = pd.read_csv(
>             op.join(datadir, "toy.symm.upper.1.zb.coo"),
>             sep='\t',
>             names=['bin1_id', 'bin2_id', 'count']
>         )
>         pixels['foo'] = 42.0
>     
>         with isolated_filesystem():
> >           cooler.create.create_cooler(
>                 "test.cool",
>                 bins,
>                 pixels,
>                 assembly='toy',
>                 metadata={'hello': 'world', 'list': [1, 2, 3]},
>             )
> 
> tests/test_create.py:304: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _________________________ test_create_cooler_from_dask _________________________
> 
>     def test_create_cooler_from_dask():
> >       dd = pytest.importorskip("dask.dataframe")
> 
> tests/test_create.py:405: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_create_scool[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> fp = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "fp", [op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool")]
>     )
>     def test_create_scool(fp):
>         c = cooler.Cooler(fp)
>         # chromsizes = c.chromsizes
>         bins = c.bins()[:]
>         pixels = c.pixels()[:]
>     
>         # random and different content to prove only chrom, start, end is linked and the rest is independent for each cell
>         from copy import deepcopy
>         bins_cell1 = deepcopy(bins)
>         bins_cell2 = deepcopy(bins)
>         bins_cell3 = deepcopy(bins)
>         bins_cell1['weight'] = np.array([0] * len(bins_cell1["start"]))
>         bins_cell2['weight'] = np.array([1] * len(bins_cell1["start"]))
>         bins_cell3['weight'] = np.array([2] * len(bins_cell1["start"]))
>     
>         bins_cell1['KR'] = np.array([3] * len(bins_cell1["start"]))
>         bins_cell2['KR'] = np.array([4] * len(bins_cell1["start"]))
>         bins_cell3['KR'] = np.array([5] * len(bins_cell1["start"]))
>     
>         name_pixel_dict = {'cell1': pixels, 'cell2': pixels, 'cell3': pixels}
>         name_bins_dict = {'cell1': bins_cell1, 'cell2': bins_cell2, 'cell3': bins_cell3}
>     
>         with isolated_filesystem():
> >           cooler.create_scool('outfile_test.scool', name_bins_dict, name_pixel_dict)
> 
> tests/test_create.py:461: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/create/_create.py:1237: in create_scool
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _____________________________ test_from_hdf5_pairs _____________________________
> 
>     def test_from_hdf5_pairs():
>         def should_not_depend_on_chunksize(chromsizes, bintable, mock_pairs):
>             # try different chunk sizes
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs, chromsizes, bintable, chunksize=66
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc1 = h5["indexes"]["chrom_offset"][:]
>                 ob1 = h5["indexes"]["bin1_offset"][:]
>                 p1 = cooler.api.pixels(h5, join=False)
>     
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs, chromsizes, bintable, chunksize=666
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc2 = h5["indexes"]["chrom_offset"][:]
>                 ob2 = h5["indexes"]["bin1_offset"][:]
>                 p2 = cooler.api.pixels(h5, join=False)
>     
>             assert np.all(oc1 == oc2)
>             assert np.all(ob1 == ob2)
>             assert np.all(p1.values == p2.values)
>     
>         def should_raise_if_input_not_sorted(chromsizes, bintable, mock_pairs):
>             # not sorted by chrm1
>             # with h5py.File(testcool_path, 'w') as h5:
>             bad_reads = {
>                 "chrms1": mock_pairs["chrms2"],
>                 "cuts1": mock_pairs["cuts2"],
>                 "chrms2": mock_pairs["chrms1"],
>                 "cuts2": mock_pairs["cuts1"],
>             }
>             with pytest.raises(ValueError):
>                 cooler.create.HDF5Aggregator(bad_reads, chromsizes, bintable, chunksize=66)
>     
>             # not triu
>             bad_reads = {
>                 "chrms1": mock_pairs["chrms1"].copy(),
>                 "cuts1": mock_pairs["cuts1"].copy(),
>                 "chrms2": mock_pairs["chrms2"].copy(),
>                 "cuts2": mock_pairs["cuts2"].copy(),
>             }
>             bad_reads["chrms1"][0] = 0
>             bad_reads["chrms2"][0] = 0
>             bad_reads["cuts1"][0] = 10
>             bad_reads["cuts2"][0] = 9
>             binner = cooler.create.HDF5Aggregator(
>                 bad_reads, chromsizes, bintable, chunksize=66
>             )
>             with pytest.raises(ValueError):
>                 cooler.create.create(testcool_path, bintable, binner)
>     
>         def should_work_with_int32_cols(chromsizes, bintable, mock_pairs):
>             # int64
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs, chromsizes, bintable, chunksize=66
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc1 = h5["indexes"]["chrom_offset"][:]
>                 ob1 = h5["indexes"]["bin1_offset"][:]
>                 p1 = cooler.api.pixels(h5, join=False)
>     
>             # int32
>             mock_pairs32 = {
>                 "chrms1": mock_pairs["chrms1"].astype(np.int32),
>                 "cuts1": mock_pairs["cuts1"].astype(np.int32),
>                 "chrms2": mock_pairs["chrms2"].astype(np.int32),
>                 "cuts2": mock_pairs["cuts2"].astype(np.int32),
>             }
>             binner = cooler.create.HDF5Aggregator(
>                 mock_pairs32, chromsizes, bintable, chunksize=66
>             )
>             cooler.create.create(testcool_path, bintable, binner)
>             with h5py.File(testcool_path, "r") as h5:
>                 oc2 = h5["indexes"]["chrom_offset"][:]
>                 ob2 = h5["indexes"]["bin1_offset"][:]
>                 p2 = cooler.api.pixels(h5, join=False)
>     
>             assert np.all(oc1 == oc2)
>             assert np.all(ob1 == ob2)
>             assert np.all(p1.values == p2.values)
>     
>         def _mock_hdf5_pairs():
>             np.random.seed(1)
>             chrms = np.random.randint(0, n_chroms, n_records * 2)
>             cuts = np.random.randint(0, clen, n_records * 2)
>             abs_cuts = np.array([clen * chrm + cut for chrm, cut in zip(chrms, cuts)])
>             abs_cuts1, abs_cuts2 = abs_cuts[:n_records], abs_cuts[n_records:]
>             mock_pairs = {
>                 "chrms1": chrms[:n_records],
>                 "cuts1": cuts[:n_records],
>                 "chrms2": chrms[n_records:],
>                 "cuts2": cuts[n_records:],
>             }
>             # Triu-sort
>             mask = abs_cuts1 > abs_cuts2
>             mock_pairs["chrms1"][mask], mock_pairs["chrms2"][mask] = (
>                 mock_pairs["chrms2"][mask],
>                 mock_pairs["chrms1"][mask],
>             )
>             mock_pairs["cuts1"][mask], mock_pairs["cuts2"][mask] = (
>                 mock_pairs["cuts2"][mask],
>                 mock_pairs["cuts1"][mask],
>             )
>             abs_cuts1[mask], abs_cuts2[mask] = abs_cuts2[mask], abs_cuts1[mask]
>             idx = np.lexsort([abs_cuts2, abs_cuts1])
>             for key in mock_pairs:
>                 mock_pairs[key] = mock_pairs[key][idx]
>             return mock_pairs
>     
>         n_chroms = 2
>         clen = 2000
>         n_records = 3000
>         chromsizes = pd.Series(index=["chr1", "chr2"], data=[clen, clen])
>         mock_pairs = _mock_hdf5_pairs()
>     
>         # uniform bins
>         bintable = cooler.binnify(chromsizes, 100)
> >       should_not_depend_on_chunksize(chromsizes, bintable, mock_pairs)
> 
> tests/test_create_ingest.py:167: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_create_ingest.py:52: in should_not_depend_on_chunksize
>     cooler.create.create(testcool_path, bintable, binner)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_cload_tabix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.bins.2000kb.bed.gz'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.filterwarnings("ignore")
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             )
>         ],
>     )
>     def test_cload_tabix(bins_path, pairs_path, ref_path):
> >       cload_tabix.callback(
>             bins_path,
>             pairs_path,
>             testcool_path,
>             metadata=None,
>             assembly="hg19",
>             nproc=8,
>             zero_based=False,
>             max_split=2,
>         )
> 
> tests/test_create_ingest.py:190: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:240: in tabix
>     create_cooler(
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_cload_pairix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.bins.2000kb.bed.gz'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             )
>         ],
>     )
>     def test_cload_pairix(bins_path, pairs_path, ref_path):
> >       cload_pairix.callback(
>             bins_path,
>             pairs_path,
>             testcool_path,
>             metadata=None,
>             assembly="hg19",
>             nproc=8,
>             zero_based=False,
>             max_split=2,
>         )
> 
> tests/test_create_ingest.py:221: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:308: in pairix
>     create_cooler(
> cooler/create/_create.py:1024: in create_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool'
> 
>     @pytest.mark.skipif(
>         _pandas_major_version < 1,
>         reason="hash fix only works with pandas >= 1.0"
>     )
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs.gz"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             )
>         ],
>     )
>     def test_cload_pairs(bins_path, pairs_path, ref_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(15e6),
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             field=(),
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=False,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(bins_path, pairs_path, testcool_path, **kwargs)
> 
> tests/test_create_ingest.py:286: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy_hash.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy_hash.pairs'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool'
> 
>     @pytest.mark.skipif(
>         _pandas_major_version < 1,
>         reason="hash fix only works with pandas >= 1.0"
>     )
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs.gz"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             )
>         ],
>     )
>     def test_cload_pairs(bins_path, pairs_path, ref_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(15e6),
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             field=(),
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=False,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(bins_path, pairs_path, testcool_path, **kwargs)
> 
> tests/test_create_ingest.py:286: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy_hash.pairs.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy_hash.pairs.gz'
> ref_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool'
> 
>     @pytest.mark.skipif(
>         _pandas_major_version < 1,
>         reason="hash fix only works with pandas >= 1.0"
>     )
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path,ref_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             ),
>             (
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy_hash.pairs.gz"),
>                 op.join(testdir, "data", "toy.symm.upper.var.cool"),
>             )
>         ],
>     )
>     def test_cload_pairs(bins_path, pairs_path, ref_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(15e6),
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             field=(),
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=False,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(bins_path, pairs_path, testcool_path, **kwargs)
> 
> tests/test_create_ingest.py:286: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_cload_field[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.chrom.sizes:2'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs'
> 
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.chrom.sizes") + ":2",
>                 op.join(testdir, "data", "toy.pairs"),
>             )
>         ],
>     )
>     def test_cload_field(bins_path, pairs_path):
>         kwargs = dict(
>             metadata=None,
>             assembly="toy",
>             chunksize=10,
>             zero_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             no_count=True,
>             max_merge=200,
>             chrom1=2,
>             pos1=3,
>             chrom2=4,
>             pos2=5,
>             append=False,
>         )
> >       cload_pairs.callback(
>             bins_path, pairs_path, testcool_path, field=("score=8:dtype=float",), **kwargs
>         )
> 
> tests/test_create_ingest.py:326: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_cload_custom_tempdir[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs] _
> 
> bins_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.chrom.sizes:2'
> pairs_path = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs'
> 
>     @pytest.mark.parametrize(
>         "bins_path,pairs_path",
>         [
>             (
>                 op.join(testdir, "data", "toy.chrom.sizes") + ":2",
>                 op.join(testdir, "data", "toy.pairs"),
>             )
>         ],
>     )
>     def test_cload_custom_tempdir(bins_path, pairs_path):
>         for temp_dir in [op.join(testdir, "data"), "-"]:
> >           cload_pairs.callback(
>                 bins_path,
>                 pairs_path,
>                 testcool_path,
>                 metadata=None,
>                 assembly="toy",
>                 chunksize=10,
>                 zero_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 field=(),
>                 temp_dir=temp_dir,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 no_count=True,
>                 max_merge=200,
>                 chrom1=2,
>                 pos1=3,
>                 chrom2=4,
>                 pos2=5,
>                 append=False,
>             )
> 
> tests/test_create_ingest.py:345: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _____________________________ test_load_bg2_vs_coo _____________________________
> 
>     def test_load_bg2_vs_coo():
>         kwargs = dict(
>             metadata=None,
>             assembly="hg19",
>             chunksize=int(20e6),
>             field=(),
>             count_as_float=False,
>             one_based=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             append=False,
>         )
>     
>         out_path1 = op.join(tmp, "test1.cool")
>         out_path2 = op.join(tmp, "test2.cool")
>     
> >       load.callback(
>             op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>             op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.bg2.gz"),
>             out_path1,
>             format="bg2",
>             **kwargs
>         )
> 
> tests/test_create_ingest.py:394: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _________________________ test_load_zero_one_based_bg2 _________________________
> 
>     def test_load_zero_one_based_bg2():
>         kwargs = dict(
>             format="bg2",
>             metadata=None,
>             assembly="toy",
>             chunksize=10,
>             field=(),
>             count_as_float=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             append=False,
>         )
>         # 1-based-start BG2 input
>         ref = "toy.symm.upper.1.ob.bg2"
>         bins_path = op.join(testdir, "data", "toy.chrom.sizes") + ":1"
>         pixels_path = op.join(testdir, "data", ref)
> >       load.callback(bins_path, pixels_path, testcool_path, one_based=True, **kwargs)
> 
> tests/test_create_ingest.py:441: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _________________________ test_load_zero_one_based_coo _________________________
> 
>     def test_load_zero_one_based_coo():
>         kwargs = dict(
>             format="coo",
>             metadata=None,
>             assembly="toy",
>             chunksize=10,
>             field=(),
>             count_as_float=False,
>             comment_char="#",
>             input_copy_status="unique",
>             no_symmetric_upper=False,
>             temp_dir=None,
>             no_delete_temp=False,
>             storage_options=None,
>             append=False,
>         )
>         # 1-based-start COO input
>         ref = "toy.symm.upper.1.ob.coo"
>         bins_path = op.join(testdir, "data", "toy.chrom.sizes") + ":1"
>         pixels_path = op.join(testdir, "data", ref)
> >       load.callback(bins_path, pixels_path, testcool_path, one_based=True, **kwargs)
> 
> tests/test_create_ingest.py:490: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> ____________________________ test_cload_append_mode ____________________________
> 
>     def test_cload_append_mode():
>         for append in (True, False):
>             out_path = op.join(tmp, "test.cool")
>             with h5py.File(out_path, "w") as f:
>                 f.attrs["xxxx"] = True
>             kwargs = dict(
>                 metadata=None,
>                 assembly="hg19",
>                 chunksize=int(15e6),
>                 zero_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 field=(),
>                 temp_dir=None,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 no_count=False,
>                 max_merge=200,
>                 chrom1=2,
>                 pos1=3,
>                 chrom2=4,
>                 pos2=5,
>                 append=append,
>             )
> >           cload_pairs.callback(
>                 op.join(testdir, "data", "toy.bins.var.bed"),
>                 op.join(testdir, "data", "toy.pairs"),
>                 out_path,
>                 **kwargs
>             )
> 
> tests/test_create_ingest.py:551: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/cload.py:584: in pairs
>     create_cooler(
> cooler/create/_create.py:1042: in create_cooler
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> ____________________________ test_load_append_mode _____________________________
> 
>     def test_load_append_mode():
>         for append in (True, False):
>             out_path = op.join(tmp, "test.cool")
>             with h5py.File(out_path, "w") as f:
>                 f.attrs["xxxx"] = True
>             kwargs = dict(
>                 metadata=None,
>                 assembly="hg19",
>                 chunksize=int(20e6),
>                 field=(),
>                 count_as_float=False,
>                 one_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 temp_dir=None,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 append=append,
>             )
> >           load.callback(
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.coo.txt"),
>                 out_path,
>                 format="coo",
>                 **kwargs
>             )
> 
> tests/test_create_ingest.py:588: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> ___________________________ test_load_custom_tempdir ___________________________
> 
>     def test_load_custom_tempdir():
>         for temp_dir in [op.join(testdir, "data"), "-"]:
> >           load.callback(
>                 op.join(testdir, "data", "hg19.bins.2000kb.bed.gz"),
>                 op.join(testdir, "data", "hg19.GM12878-MboI.matrix.2000kb.coo.txt"),
>                 testcool_path,
>                 format="coo",
>                 metadata=None,
>                 assembly="hg19",
>                 chunksize=int(20e6),
>                 field=(),
>                 count_as_float=False,
>                 one_based=False,
>                 comment_char="#",
>                 input_copy_status="unique",
>                 no_symmetric_upper=False,
>                 temp_dir=temp_dir,
>                 no_delete_temp=False,
>                 storage_options=None,
>                 append=False,
>     
>             )
> 
> tests/test_create_ingest.py:608: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/cli/load.py:339: in load
>     create_from_unordered(
> cooler/create/_create.py:723: in create_from_unordered
>     create(uri, bins, chunk, columns=columns, dtypes=dtypes, mode="a", **kwargs)
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool] _
> 
> path1 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> path2 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool'
> 
>     @pytest.mark.parametrize(
>         "path1,path2",
>         [
>             (
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 op.join(datadir, "toy.asymm.2.cool")
>             )
>         ],
>     )
>     def test_merge(path1, path2):
>         with isolated_filesystem():
> >           merge_coolers("test.cool", [path1, path2], mergebuf=int(15e6))
> 
> tests/test_reduce.py:30: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool] _
> 
> path1 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool'
> path2 = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool'
> 
>     @pytest.mark.parametrize(
>         "path1,path2",
>         [
>             (
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>                 op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 op.join(datadir, "toy.asymm.2.cool")
>             )
>         ],
>     )
>     def test_merge(path1, path2):
>         with isolated_filesystem():
> >           merge_coolers("test.cool", [path1, path2], mergebuf=int(15e6))
> 
> tests/test_reduce.py:30: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _________________________________ test_merge2 __________________________________
> 
>     def test_merge2():
>         with isolated_filesystem():
>             path1 = op.join(datadir, "toy.symm.upper.2.cool")
>             path2 = op.join(datadir, "toy.symm.upper.2.cool")
> >           merge_coolers(
>                 "test.cool", [path1, path2], mergebuf=3, agg={'count': 'mean'}
>             )
> 
> tests/test_reduce.py:42: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.4.cool] _
> 
> input_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.cool'
> factor = 2
> ref_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.4.cool'
> 
>     @pytest.mark.parametrize(
>         "input_uri,factor,ref_uri",
>         [
>             (
>                 op.join(datadir, "toy.symm.upper.2.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.4.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 2,
>                 op.join(datadir, "toy.asymm.4.cool")
>             ),
>             (
>                 op.join(datadir, "toy.symm.upper.var.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.var2x.cool"),
>             ),
>         ],
>     )
>     def test_coarsen(input_uri, factor, ref_uri):
>     
>         with isolated_filesystem():
>             kwargs = dict(
>                 chunksize=10, nproc=1, columns=None, dtypes=None, agg=None
>             )
> >           coarsen_cooler(input_uri, "test.cool", factor, **kwargs)
> 
> tests/test_reduce.py:109: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.4.cool] _
> 
> input_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool'
> factor = 2
> ref_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.4.cool'
> 
>     @pytest.mark.parametrize(
>         "input_uri,factor,ref_uri",
>         [
>             (
>                 op.join(datadir, "toy.symm.upper.2.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.4.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 2,
>                 op.join(datadir, "toy.asymm.4.cool")
>             ),
>             (
>                 op.join(datadir, "toy.symm.upper.var.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.var2x.cool"),
>             ),
>         ],
>     )
>     def test_coarsen(input_uri, factor, ref_uri):
>     
>         with isolated_filesystem():
>             kwargs = dict(
>                 chunksize=10, nproc=1, columns=None, dtypes=None, agg=None
>             )
> >           coarsen_cooler(input_uri, "test.cool", factor, **kwargs)
> 
> tests/test_reduce.py:109: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _ test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var2x.cool] _
> 
> input_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool'
> factor = 2
> ref_uri = '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var2x.cool'
> 
>     @pytest.mark.parametrize(
>         "input_uri,factor,ref_uri",
>         [
>             (
>                 op.join(datadir, "toy.symm.upper.2.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.4.cool"),
>             ),
>             (
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 2,
>                 op.join(datadir, "toy.asymm.4.cool")
>             ),
>             (
>                 op.join(datadir, "toy.symm.upper.var.cool"),
>                 2,
>                 op.join(datadir, "toy.symm.upper.var2x.cool"),
>             ),
>         ],
>     )
>     def test_coarsen(input_uri, factor, ref_uri):
>     
>         with isolated_filesystem():
>             kwargs = dict(
>                 chunksize=10, nproc=1, columns=None, dtypes=None, agg=None
>             )
> >           coarsen_cooler(input_uri, "test.cool", factor, **kwargs)
> 
> tests/test_reduce.py:109: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> ______________________ test_coarsen_partitions_correctly _______________________
> 
>     def test_coarsen_partitions_correctly():
>         kwargs = dict(nproc=1, columns=None, dtypes=None, agg=None)
>         with isolated_filesystem():
>             f_ref = op.join(datadir, "odd.4.cool")
>             f_in = op.join(datadir, "odd.1.cool")
> >           coarsen_cooler(f_in, "odd.1.coarsen_4.cool", factor=4, chunksize=2, **kwargs)
> 
> tests/test_reduce.py:145: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _________________________________ test_zoomify _________________________________
> 
>     def test_zoomify():
>         kwargs = dict(chunksize=10, nproc=1, columns=None, dtypes=None, agg=None)
>         with isolated_filesystem():
> >           zoomify_cooler(
>                 op.join(datadir, "toy.asymm.2.cool"),
>                 "test.2.mcool",
>                 resolutions=[4, 8, 16, 32],
>                 **kwargs
>             )
> 
> tests/test_reduce.py:156: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:832: in zoomify_cooler
>     coarsen_cooler(
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _____________________________ test_legacy_zoomify ______________________________
> 
>     def test_legacy_zoomify():
>         infile = op.join(datadir, "hg19.GM12878-MboI.matrix.2000kb.cool")
>         chunksize = int(10e6)
>         # n_zooms = 2
>         n_cpus = 1
>         with isolated_filesystem():
> >           legacy_zoomify(infile, "test.multires.cool", n_cpus, chunksize)
> 
> tests/test_reduce.py:197: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:900: in legacy_zoomify
>     coarsen_cooler(
> cooler/reduce.py:712: in coarsen_cooler
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> _______________________________ test_append_mode _______________________________
> 
>     def test_append_mode():
>         # merge
>         path1 = path2 = op.join(datadir, "toy.asymm.2.cool")
>         out_path = "test.cool"
>         for append in (True, False):
>             with isolated_filesystem():
>                 with h5py.File("test.cool", "w") as f:
>                     f.attrs["xxxx"] = True
> >               merge_coolers(
>                     out_path,
>                     [path1, path2],
>                     mergebuf=int(15e6),
>                     mode="a" if append else "w"
>                 )
> 
> tests/test_reduce.py:208: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> cooler/reduce.py:253: in merge_coolers
>     create(
> cooler/create/_create.py:514: in create
>     from dask.dataframe import DataFrame as dask_df
> /usr/lib/python3/dist-packages/dask/dataframe/__init__.py:81: in <module>
>     from dask.dataframe import backends, dispatch, rolling
> /usr/lib/python3/dist-packages/dask/dataframe/backends.py:15: in <module>
>     from dask.dataframe.core import DataFrame, Index, Scalar, Series, _Frame
> /usr/lib/python3/dist-packages/dask/dataframe/core.py:36: in <module>
>     from dask.dataframe import methods
> /usr/lib/python3/dist-packages/dask/dataframe/methods.py:34: in <module>
>     from dask.dataframe.utils import is_dataframe_like, is_index_like, is_series_like
> /usr/lib/python3/dist-packages/dask/dataframe/utils.py:20: in <module>
>     from dask.dataframe import (  # noqa: F401 register pandas extension types
> /usr/lib/python3/dist-packages/dask/dataframe/_dtypes.py:9: in <module>
>     from dask.dataframe.extensions import make_array_nonempty, make_scalar
> /usr/lib/python3/dist-packages/dask/dataframe/extensions.py:8: in <module>
>     from dask.dataframe.accessor import (
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:126: in <module>
>     class DatetimeAccessor(Accessor):
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:81: in __init_subclass__
>     _bind_property(cls, pd_cls, attr, min_version)
> /usr/lib/python3/dist-packages/dask/dataframe/accessor.py:35: in _bind_property
>     setattr(cls, attr, property(derived_from(pd_cls, version=min_version)(func)))
> /usr/lib/python3/dist-packages/dask/utils.py:858: in wrapper
>     method.__doc__ = _derived_from(
> /usr/lib/python3/dist-packages/dask/utils.py:811: in _derived_from
>     method_args = get_named_args(method)
> /usr/lib/python3/dist-packages/dask/utils.py:572: in get_named_args
>     s = inspect.signature(func)
> /usr/lib/python3.11/inspect.py:3263: in signature
>     return Signature.from_callable(obj, follow_wrapped=follow_wrapped,
> /usr/lib/python3.11/inspect.py:3011: in from_callable
>     return _signature_from_callable(obj, sigcls=cls,
> /usr/lib/python3.11/inspect.py:2599: in _signature_from_callable
>     call = _descriptor_get(call, obj)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> descriptor = <slot wrapper '__call__' of 'type' objects>
> obj = <property object at 0xffffb19c2200>
> 
>     def _descriptor_get(descriptor, obj):
>         if isclass(descriptor):
>             return descriptor
>         get = getattr(type(descriptor), '__get__', _sentinel)
>         if get is _sentinel:
>             return descriptor
> >       return get(descriptor, obj, type(obj))
> E       TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object
> 
> /usr/lib/python3.11/inspect.py:2432: TypeError
> =============================== warnings summary ===============================
> tests/test_api.py::test_bintable_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/test_api.py:44: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(bins["chrom"].dtype)
> 
> tests/test_api.py::test_bintable_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/test_api.py:47: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(bins["chrom"].dtype)
> 
> tests/test_api.py::test_bintable_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/test_api.py:51: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(chroms.dtype)
> 
> tests/test_balance.py::test_balancing_other_options[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.cool-0.01]
> tests/test_cli_ops.py::test_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/balance.py:112: RuntimeWarning: Mean of empty slice.
>     scale = nzmarg.mean()
> 
> tests/test_balance.py::test_balancing_other_options[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.cool-0.01]
> tests/test_cli_ops.py::test_zoomify
>   /usr/lib/python3/dist-packages/numpy/core/_methods.py:129: RuntimeWarning: invalid value encountered in scalar divide
>     ret = ret.dtype.type(ret / rcount)
> 
> tests/test_cli.py::test_makebins
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/cli/makebins.py:55: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     bins["id"] = bins.groupby("chrom").cumcount()
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_cli_ops.py: 2 warnings
> tests/test_create_ingest.py: 13 warnings
> tests/test_create_sanitize.py: 18 warnings
> tests/test_reduce.py: 6 warnings
> tests/test_util.py: 2 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/util.py:730: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     is_cat = pd.api.types.is_categorical_dtype(bins["chrom"])
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_cli_ops.py: 2 warnings
> tests/test_create_ingest.py: 13 warnings
> tests/test_create_sanitize.py: 18 warnings
> tests/test_reduce.py: 6 warnings
> tests/test_util.py: 1 warning
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/util.py:771: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     self._bins_grouped = bins.groupby("chrom", sort=False)
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_cli_ops.py: 2 warnings
> tests/test_create_ingest.py: 13 warnings
> tests/test_create_sanitize.py: 18 warnings
> tests/test_reduce.py: 6 warnings
> tests/test_util.py: 2 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/util.py:395: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     for _chrom, group in bins.groupby("chrom"):
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_create_ingest.py: 8 warnings
> tests/test_create_sanitize.py: 9 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/create/_ingest.py:133: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`
>     chromsizes1 = gs.chromsizes[chrom1_ids].values
> 
> tests/test_cli_ingest.py: 11 warnings
> tests/test_create_ingest.py: 8 warnings
> tests/test_create_sanitize.py: 9 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/create/_ingest.py:134: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`
>     chromsizes2 = gs.chromsizes[chrom2_ids].values
> 
> tests/test_cli_ingest.py::test_cload_symm_asymm[asymm-extra_args2]
>   /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:80: PytestUnraisableExceptionWarning: Exception ignored in: <function _TemporaryFileCloser.__del__ at 0xffffb8971440>
>   
>   Traceback (most recent call last):
>     File "/usr/lib/python3.11/tempfile.py", line 606, in __del__
>       self.close()
>     File "/usr/lib/python3.11/tempfile.py", line 602, in close
>       unlink(self.name)
>   FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpa3vw1tcx/tmptn4kuii7.multi.cool'
>   
>     warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
> 
> tests/test_cli_ingest.py::test_load_symm_asymm[symm.upper-extra_args1]
>   /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:80: PytestUnraisableExceptionWarning: Exception ignored in: <function _TemporaryFileCloser.__del__ at 0xffffb8971440>
>   
>   Traceback (most recent call last):
>     File "/usr/lib/python3.11/tempfile.py", line 606, in __del__
>       self.close()
>     File "/usr/lib/python3.11/tempfile.py", line 602, in close
>       unlink(self.name)
>   FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmp439pwc_k/tmpkmcc2_kc.multi.cool'
>   
>     warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
> 
> tests/test_cli_ingest.py::test_load_field2
>   /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:80: PytestUnraisableExceptionWarning: Exception ignored in: <function _TemporaryFileCloser.__del__ at 0xffffb8971440>
>   
>   Traceback (most recent call last):
>     File "/usr/lib/python3.11/tempfile.py", line 606, in __del__
>       self.close()
>     File "/usr/lib/python3.11/tempfile.py", line 602, in close
>       unlink(self.name)
>   FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpj_7otwlk/tmpu1j_rplz.multi.cool'
>   
>     warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
> 
> tests/test_cli_ops.py::test_coarsen
> tests/test_cli_ops.py::test_zoomify
> tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.4.cool]
> tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.4.cool]
> tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var2x.cool]
> tests/test_reduce.py::test_coarsen_partitions_correctly
> tests/test_reduce.py::test_zoomify
> tests/test_reduce.py::test_legacy_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/reduce.py:548: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     return old_bins.groupby("chrom").apply(_each).reset_index(drop=True)
> 
> tests/test_cli_ops.py::test_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/cli/zoomify.py:198: UserWarning: Map is already < 256 x 256. Provide resolutions explicitly if you want to coarsen more.
>     warnings.warn(
> 
> tests/test_cli_ops.py::test_zoomify
> tests/test_cli_ops.py::test_zoomify
> tests/test_reduce.py::test_zoomify
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/reduce.py:792: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     n_bins_longest_chrom[base_binsize] = clr.bins()[:].groupby("chrom").size().max()
> 
> tests/test_cli_ops.py::test_zoomify
>   /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:80: PytestUnraisableExceptionWarning: Exception ignored in: <function _TemporaryFileCloser.__del__ at 0xffffb8971440>
>   
>   Traceback (most recent call last):
>     File "/usr/lib/python3.11/tempfile.py", line 606, in __del__
>       self.close()
>     File "/usr/lib/python3.11/tempfile.py", line 602, in close
>       unlink(self.name)
>   FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpi8kk3ih0/tmp_sf3nv42.multi.cool'
>   
>     warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
> 
> tests/test_cli_ops.py::test_balance
> tests/test_cli_ops.py::test_balance
> tests/test_cli_ops.py::test_balance
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/balance.py:108: ConvergenceWarning: Iteration limit reached without convergence.
>     warnings.warn(
> 
> tests/test_cli_ops.py::test_balance
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/cli/balance.py:183: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     bins_grouped = clr.bins()[:].groupby('chrom')
> 
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_core.py::test_put
> tests/test_create.py::test_write
> tests/test_create.py::test_write
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/core/_tableops.py:120: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     elif is_categorical_dtype(data):
> 
> tests/test_core.py::test_put
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/test_core.py:94: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(out['chrom_enum'].dtype)
> 
> tests/test_core.py::test_put
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/test_core.py:104: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert not pd.api.types.is_categorical_dtype(out['chrom_string'].dtype)
> 
> tests/test_create.py::test_rename_chroms
> tests/test_create.py::test_many_contigs
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/create/_create.py:349: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     if is_categorical_dtype(bins["chrom"]):
> 
> tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool]
> tests/test_reduce.py::test_merge2
> tests/test_reduce.py::test_append_mode
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/cooler/reduce.py:247: DeprecationWarning: np.find_common_type is deprecated.  Please use `np.result_type` or `np.promote_types`.
>   See https://numpy.org/devdocs/release/1.25.0-notes.html and the docs for more information.  (Deprecated NumPy 1.25)
>     dtypes[col] = np.find_common_type(dtype_map[col], [])
> 
> tests/test_util.py::test_bedslice
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/test_util.py:234: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.
>     grouped = bins.groupby('chrom')
> 
> tests/test_util.py::test_check_bins
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/test_util.py:312: DeprecationWarning: is_categorical_dtype is deprecated and will be removed in a future version. Use isinstance(dtype, pd.CategoricalDtype) instead
>     assert pd.api.types.is_categorical_dtype(bins["chrom"])
> 
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info ============================
> FAILED tests/test_cli_export.py::test_dump - TypeError: descriptor '__call__'...
> FAILED tests/test_cli_ingest.py::test_cload_symm_asymm[symm.upper-extra_args0]
> FAILED tests/test_cli_ingest.py::test_cload_symm_asymm[symm.upper-extra_args1]
> FAILED tests/test_cli_ingest.py::test_cload_symm_asymm[asymm-extra_args2] - a...
> FAILED tests/test_cli_ingest.py::test_cload_mergepass[symm.upper-extra_args0]
> FAILED tests/test_cli_ingest.py::test_cload_field - assert 1 == 0
> FAILED tests/test_cli_ingest.py::test_cload_other_options - assert 1 == 0
> FAILED tests/test_cli_ingest.py::test_load_symm_asymm[symm.upper-extra_args0]
> FAILED tests/test_cli_ingest.py::test_load_symm_asymm[symm.upper-extra_args1]
> FAILED tests/test_cli_ingest.py::test_load_symm_asymm[asymm-extra_args2] - as...
> FAILED tests/test_cli_ingest.py::test_load_field - assert 1 == 0
> FAILED tests/test_cli_ingest.py::test_load_field2 - assert 1 == 0
> FAILED tests/test_cli_ops.py::test_merge - assert 1 == 0
> FAILED tests/test_cli_ops.py::test_coarsen - assert 1 == 0
> FAILED tests/test_cli_ops.py::test_zoomify - assert 1 == 0
> FAILED tests/test_create.py::test_create_append[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create.py::test_create_custom_cols - TypeError: descriptor ...
> FAILED tests/test_create.py::test_create_cooler - TypeError: descriptor '__ca...
> FAILED tests/test_create.py::test_create_cooler_from_dask - TypeError: descri...
> FAILED tests/test_create.py::test_create_scool[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create_ingest.py::test_from_hdf5_pairs - TypeError: descrip...
> FAILED tests/test_create_ingest.py::test_cload_tabix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.sorted.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairix[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.bins.2000kb.bed.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.pairs.subsample.blksrt.txt.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy_hash.pairs-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool]
> FAILED tests/test_create_ingest.py::test_cload_pairs[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.bins.var.bed-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy_hash.pairs.gz-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool]
> FAILED tests/test_create_ingest.py::test_cload_field[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs]
> FAILED tests/test_create_ingest.py::test_cload_custom_tempdir[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.chrom.sizes:2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.pairs]
> FAILED tests/test_create_ingest.py::test_load_bg2_vs_coo - TypeError: descrip...
> FAILED tests/test_create_ingest.py::test_load_zero_one_based_bg2 - TypeError:...
> FAILED tests/test_create_ingest.py::test_load_zero_one_based_coo - TypeError:...
> FAILED tests/test_create_ingest.py::test_cload_append_mode - TypeError: descr...
> FAILED tests/test_create_ingest.py::test_load_append_mode - TypeError: descri...
> FAILED tests/test_create_ingest.py::test_load_custom_tempdir - TypeError: des...
> FAILED tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/hg19.GM12878-MboI.matrix.2000kb.cool]
> FAILED tests/test_reduce.py::test_merge[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool]
> FAILED tests/test_reduce.py::test_merge2 - TypeError: descriptor '__call__' f...
> FAILED tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.4.cool]
> FAILED tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.2.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.asymm.4.cool]
> FAILED tests/test_reduce.py::test_coarsen[/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var.cool-2-/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build/tests/data/toy.symm.upper.var2x.cool]
> FAILED tests/test_reduce.py::test_coarsen_partitions_correctly - TypeError: d...
> FAILED tests/test_reduce.py::test_zoomify - TypeError: descriptor '__call__' ...
> FAILED tests/test_reduce.py::test_legacy_zoomify - TypeError: descriptor '__c...
> FAILED tests/test_reduce.py::test_append_mode - TypeError: descriptor '__call...
> =========== 44 failed, 86 passed, 6 skipped, 257 warnings in 24.41s ============
> E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cooler/build; python3.11 -m pytest tests
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.12 3.11" returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2024/04/20/python-cooler_0.9.3-1_unstable-arm64.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240420;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240420&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.



More information about the Debian-med-packaging mailing list