question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

push: Unsupported pickle protocol: 5 on python 3.7.11

See original GitHub issue

Bug Report

Description

When attempting to push to remote (Google Cloud Storage) using DVC version 2.10.2 and Python version 3.7.11 I encounter the following error:

$ dvc push     
ERROR: unexpected error - unsupported pickle protocol: 5              

Having any troubles? Hit us up at https://dvc.org/support, we are always happy to help!

In my tests on python 3.8 this issue does not happen.

Reproduce

Install DVC version 2.10.2 with Python version 3.7.11 and attempt to push to remote.

Expected

Expected to pickle successfully and push the pickled data to remote (Google Cloud Storage).

Environment information

$ dvc doctor
DVC version: 2.10.2 (conda)
---------------------------------
Platform: Python 3.7.11 on Darwin-21.2.0-x86_64-i386-64bit
Supports:
        gs (gcsfs = 2022.1.0),
        webhdfs (fsspec = 2022.1.0),
        http (aiohttp = 3.8.1, aiohttp-retry = 2.4.6),
        https (aiohttp = 3.8.1, aiohttp-retry = 2.4.6)
Cache types: reflink, hardlink, symlink
Cache directory: apfs on /dev/disk1s1s1
Caches: local
Remotes: gs
Workspace directory: apfs on /dev/disk1s1s1
Repo: dvc, git

Issue Analytics

  • State:closed
  • Created a year ago
  • Comments:7 (2 by maintainers)

github_iconTop GitHub Comments

2reactions
jnissincommented, May 11, 2022

Alright, I’ll try to switch our pre-commit environment to use python 3.7 as well. Thanks a lot!

2reactions
pmrowlacommented, May 11, 2022

@jnissin this behavior (but not the incorrect error message) is expected if you are mixing python3.8 and 3.7 usage within the same repo. See the docs linked by @daavoo, you will need to remove .dvc/tmp/index before running in python 3.7 in this case.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Python 3.7 Error: Unsupported Pickle Protocol 5 - Stack Overflow
In the event that you cannot load pickle5 because of its dependencies (mainly Visual Building c++), another solution could be that you change ......
Read more >
PEP 574 – Pickle protocol 5 with out-of-band data
Abstract. This PEP proposes to standardize a new pickle protocol version, and accompanying APIs to take full advantage of it: · Rationale. The...
Read more >
Python Error: Unsupported Pickle Protocol 5 - Teition Solutions
This package backports all features and APIs added in the pickle module in Python 3.8.3, including the PEP 574 additions. It should work...
Read more >
Python 3.5.3 ValueError - unsupported pickle protocol: 5
It seems that your pickle file 'existing_videos.pkl' was saved using protocol=5 and Python 3.5.3 does not support pickle protocol=5.
Read more >
How to generate a report out of a script with Python 3.8? - Reddit
The error I get is related to the pickle protocol (protocol 5 it's not supported, it says), but I suppose the root problem...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found