Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wrong conda-forge install of cloudpickle #37

Closed
pierreglaser opened this issue Apr 28, 2020 · 14 comments
Closed

wrong conda-forge install of cloudpickle #37

pierreglaser opened this issue Apr 28, 2020 · 14 comments

Comments

@pierreglaser
Copy link

installing cloudpickle from conda forge using miniconda2 installs a Python3 only version of cloudpickle. I'm not familiar with feedstocks - but we need to fix this ASAP.

@pierreglaser
Copy link
Author

closed by #36

@ogrisel ogrisel reopened this Apr 28, 2020
@ogrisel
Copy link
Contributor

ogrisel commented Apr 28, 2020

Actually, the fixed build 1 packages are online for 3.6+ but for Python 2.7:

conda create -y -n tmp27 -c conda-forge python=2.7 cloudpickle

continues to pick the broken cloudpickle 1.4.0 build 0 (conda-forge/noarch::cloudpickle-1.4.0-pyh9f0ad1d_0).

@bavardage
Copy link
Contributor

@ogrisel
Copy link
Contributor

ogrisel commented Apr 28, 2020

@bavardage indeed I tried to follow that but now I realise I was wrong when opening conda-forge/conda-forge.github.io#1045 . I should have done it here. So let me do that right now with the correct mention:

Hi @conda-forge/core,

Is there a way to mark a specific build or a specific version of a package for a specific version of Python as broken?

We would like conda to ignore cloudpickle 1.4.0 build 0 on Python 2.7 as the last Python 2.7 compatible version was the 1.3 release and we failed to release cloudpickle 1.4.0 with the proper metadata.

Build 1 of cloudpickle 1.4.0 fixed the missing metadata but cloudpickle 1.4.0 build 0 is still out there for Python 2.7.

See the above discussion for more details.

@isuruf
Copy link
Member

isuruf commented Apr 28, 2020

https://github.com/conda-forge/cf-mark-broken

@pierreglaser
Copy link
Author

just opened conda-forge/admin-requests#44

@ogrisel
Copy link
Contributor

ogrisel commented Apr 28, 2020

Thanks @isuruf. We might still have a problem though. The dependency solver seems to be in trouble. It seems to have been spinning for several minutes already.

$ conda create -y -n tmp27 -c conda-forge python=2.7 cloudpickle
Collecting package metadata (current_repodata.json): done
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): - 
\ 

@ogrisel
Copy link
Contributor

ogrisel commented Apr 28, 2020

I am running conda 4.8.3.

@isuruf
Copy link
Member

isuruf commented Apr 28, 2020

Same conda version, but works in less than a minute.

@jakirkham
Copy link
Member

With the python=2.7 bit?

@ogrisel
Copy link
Contributor

ogrisel commented Apr 28, 2020

Which version of cloudpickle did it pick in the end for you? I ctrl-c'ed my run, will try again and leave it run longer.

@ogrisel
Copy link
Contributor

ogrisel commented Apr 28, 2020

Here is the failure I got in the end:

$ conda create -y -n tmp27 -c conda-forge python=2.7 cloudpickle
Collecting package metadata (current_repodata.json): done
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): failed

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 313, in recv_into
        return self.connection.recv_into(*args, **kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1840, in recv_into
        self._raise_ssl_error(self._ssl, result)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1646, in _raise_ssl_error
        raise WantReadError()
    OpenSSL.SSL.WantReadError
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 313, in recv_into
        return self.connection.recv_into(*args, **kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1840, in recv_into
        self._raise_ssl_error(self._ssl, result)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1646, in _raise_ssl_error
        raise WantReadError()
    OpenSSL.SSL.WantReadError
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 313, in recv_into
        return self.connection.recv_into(*args, **kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1840, in recv_into
        self._raise_ssl_error(self._ssl, result)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1663, in _raise_ssl_error
        raise SysCallError(errno, errorcode.get(errno))
    OpenSSL.SSL.SysCallError: (104, 'ECONNRESET')
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/response.py", line 425, in _error_catcher
        yield
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/response.py", line 755, in read_chunked
        chunk = self._handle_chunk(amt)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/response.py", line 699, in _handle_chunk
        value = self._fp._safe_read(amt)
      File "/home/ogrisel/miniconda3/lib/python3.7/http/client.py", line 610, in _safe_read
        chunk = self.fp.read(min(amt, MAXAMOUNT))
      File "/home/ogrisel/miniconda3/lib/python3.7/socket.py", line 589, in readinto
        return self._sock.recv_into(b)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 328, in recv_into
        return self.recv_into(*args, **kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 328, in recv_into
        return self.recv_into(*args, **kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 318, in recv_into
        raise SocketError(str(e))
    OSError: (104, 'ECONNRESET')
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/requests/models.py", line 751, in generate
        for chunk in self.raw.stream(chunk_size, decode_content=True):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/response.py", line 560, in stream
        for line in self.read_chunked(amt, decode_content=decode_content):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/response.py", line 781, in read_chunked
        self._original_response.close()
      File "/home/ogrisel/miniconda3/lib/python3.7/contextlib.py", line 130, in __exit__
        self.gen.throw(type, value, traceback)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/urllib3/response.py", line 443, in _error_catcher
        raise ProtocolError("Connection broken: %r" % e, e)
    urllib3.exceptions.ProtocolError: ('Connection broken: OSError("(104, \'ECONNRESET\')")', OSError("(104, 'ECONNRESET')"))
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/exceptions.py", line 1079, in __call__
        return func(*args, **kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/cli/main.py", line 84, in _main
        exit_code = do_call(args, p)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/cli/conda_argparse.py", line 82, in do_call
        return getattr(module, func_name)(args, parser)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/cli/main_create.py", line 37, in execute
        install(args, parser, 'create')
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/cli/install.py", line 265, in install
        should_retry_solve=(_should_retry_unfrozen or repodata_fn != repodata_fns[-1]),
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 117, in solve_for_transaction
        should_retry_solve)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 158, in solve_for_diff
        force_remove, should_retry_solve)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 262, in solve_final_state
        ssc = self._collect_all_metadata(ssc)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/common/io.py", line 88, in decorated
        return f(*args, **kwds)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 415, in _collect_all_metadata
        index, r = self._prepare(prepared_specs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 1011, in _prepare
        self.subdirs, prepared_specs, self._repodata_fn)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/index.py", line 228, in get_reduced_index
        repodata_fn=repodata_fn)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 105, in query_all
        result = tuple(concat(executor.map(subdir_query, channel_urls)))
      File "/home/ogrisel/miniconda3/lib/python3.7/concurrent/futures/_base.py", line 586, in result_iterator
        yield fs.pop().result()
      File "/home/ogrisel/miniconda3/lib/python3.7/concurrent/futures/_base.py", line 432, in result
        return self.__get_result()
      File "/home/ogrisel/miniconda3/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
        raise self._exception
      File "/home/ogrisel/miniconda3/lib/python3.7/concurrent/futures/thread.py", line 57, in run
        result = self.fn(*self.args, **self.kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 98, in <lambda>
        package_ref_or_match_spec))
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 110, in query
        self.load()
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 174, in load
        _internal_state = self._load()
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 248, in _load
        repodata_fn=self.repodata_fn)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 485, in fetch_repodata_remote_request
        timeout=timeout)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/requests/sessions.py", line 543, in get
        return self.request('GET', url, **kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/requests/sessions.py", line 530, in request
        resp = self.send(prep, **send_kwargs)
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/requests/sessions.py", line 683, in send
        r.content
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/requests/models.py", line 829, in content
        self._content = b''.join(self.iter_content(CONTENT_CHUNK_SIZE)) or b''
      File "/home/ogrisel/miniconda3/lib/python3.7/site-packages/requests/models.py", line 754, in generate
        raise ChunkedEncodingError(e)
    requests.exceptions.ChunkedEncodingError: ('Connection broken: OSError("(104, \'ECONNRESET\')")', OSError("(104, 'ECONNRESET')"))

`$ /home/ogrisel/miniconda3/bin/conda create -y -n tmp27 -c conda-forge python=2.7 cloudpickle`

  environment variables:
                 CIO_TEST=<not set>
                CONDA_EXE=/home/ogrisel/miniconda3/bin/conda
         CONDA_PYTHON_EXE=/home/ogrisel/miniconda3/bin/python
               CONDA_ROOT=/home/ogrisel/miniconda3
              CONDA_SHLVL=0
            DEFAULTS_PATH=/usr/share/gconf/ubuntu.default.path
           MANDATORY_PATH=/usr/share/gconf/ubuntu.mandatory.path
                     PATH=/home/ogrisel/miniconda3/bin:/home/ogrisel/miniconda3/condabin:/usr/li
                          b/ccache:/opt/zotero:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
                          :/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
       REQUESTS_CA_BUNDLE=<not set>
            SSL_CERT_FILE=<not set>
               WINDOWPATH=2

     active environment : None
            shell level : 0
       user config file : /home/ogrisel/.condarc
 populated config files : /home/ogrisel/.condarc
          conda version : 4.8.3
    conda-build version : 3.18.11
         python version : 3.7.3.final.0
       virtual packages : __glibc=2.27
       base environment : /home/ogrisel/miniconda3  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /home/ogrisel/miniconda3/pkgs
                          /home/ogrisel/.conda/pkgs
       envs directories : /home/ogrisel/miniconda3/envs
                          /home/ogrisel/.conda/envs
               platform : linux-64
             user-agent : conda/4.8.3 requests/2.23.0 CPython/3.7.3 Linux/5.3.0-46-generic ubuntu/18.04.4 glibc/2.27
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False


An unexpected error has occurred. Conda has prepared the above report.

Upload successful.


@ogrisel
Copy link
Contributor

ogrisel commented Apr 28, 2020

I just tried again and this time it worked! I got:

cloudpickle        conda-forge/noarch::cloudpickle-1.3.0-py_0

as expected. Maybe it was just a problem with my internet connection?

Anyways the original problem seems to be fixed!

Thank you very much for your assistance @isuruf and @jakirkham .

@ogrisel ogrisel closed this as completed Apr 28, 2020
@jakirkham
Copy link
Member

Was wondering if it might be a CDN thing. Though wouldn't expect it to update that slowly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants