Skip to content

TypeError in _dill.py _batch_setitems with Python 3.14 #8373

Description

@Vinello28

Describe the bug

When using load_dataset on Python 3.14, a TypeError is raised during the fingerprinting process inside the bundled _dill.py. This happens because Python 3.14 changed the signature of the internal C-level _Pickler._batch_setitems to require 3 arguments (self, items, obj), while datasets/utils/_dill.py only passes 2 arguments.

Steps to reproduce the bug

Run any load_dataset script on Python 3.14:
```python
from datasets import load_dataset
ds = load_dataset('parquet', data_files={'train': 'data.parquet'})

Error output:

TypeError: _Pickler._batch_setitems() missing 1 required positional argument: 'obj'

Expected behavior

That this thing works (?)

Environment info

nope

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions