NCAR / CESM_postprocessing

Project repository for the CESM python based post-processing code, documentation and issues tracking.
77 stars 45 forks source link

create_postprocess failing with ImportError #220

Closed andrewpauling closed 4 years ago

andrewpauling commented 4 years ago

When running create_postprocess, the command fails with a Python import error, shown below:

ERROR:root:code for hash md5 was not found.
Traceback (most recent call last):
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type md5
ERROR:root:code for hash sha1 was not found.
Traceback (most recent call last):
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha1
ERROR:root:code for hash sha224 was not found.
Traceback (most recent call last):
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha224
ERROR:root:code for hash sha256 was not found.
Traceback (most recent call last):
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha256
ERROR:root:code for hash sha384 was not found.
Traceback (most recent call last):
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha384
ERROR:root:code for hash sha512 was not found.
Traceback (most recent call last):
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha512
Traceback (most recent call last):
  File "/glade/p/cesm/postprocessing/cesm-env2/bin/create_postprocess", line 7, in <module>
    exec(compile(f.read(), __file__, 'exec'))
  File "/glade/p/cesm/postprocessing/cesm_utils/cesm_utils/create_postprocess", line 79, in <module>
    from cesm_utils import cesmEnvLib
  File "/glade/p/cesm/postprocessing/cesm_utils/cesm_utils/__init__.py", line 2, in <module>
    from . import processXmlLib
  File "/glade/p/cesm/postprocessing/cesm_utils/cesm_utils/processXmlLib.py", line 13, in <module>
    import jinja2
  File "/glade/p/cesm/postprocessing/cesm-env2/lib/python2.7/site-packages/jinja2/__init__.py", line 36, in <module>
    from jinja2.loaders import BaseLoader, FileSystemLoader, PackageLoader, \
  File "/glade/p/cesm/postprocessing/cesm-env2/lib/python2.7/site-packages/jinja2/loaders.py", line 16, in <module>
    from hashlib import sha1
ImportError: cannot import name sha1

This error occurs if I run (as I originally wanted):

create_postprocess --caseroot $CASEROOT --add-dav /glade/p/ces,/postprocessing_dav and also occurs if just running: create_postprocess --caseroot $CASEROOT or even just: create_postprocess --help

It seems something is broken with the python environment. Any help would be much appreciated.

bertinia commented 4 years ago

I'm working with CISL to get an updated list of modules for the python 2.7.16 environment and associated ncar_pylib.

On Mon, Jul 13, 2020 at 2:52 PM Andrew Pauling notifications@github.com wrote:

When running create_postprocess, the command fails with a Python import error, shown below:

ERROR:root:code for hash md5 was not found. Traceback (most recent call last): File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in globals()[func_name] = __get_hash(func_name) File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type md5 ERROR:root:code for hash sha1 was not found. Traceback (most recent call last): File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in globals()[func_name] = get_hash(__func_name) File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha1 ERROR:root:code for hash sha224 was not found. Traceback (most recent call last): File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in globals()[func_name] = __get_hash(func_name) File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha224 ERROR:root:code for hash sha256 was not found. Traceback (most recent call last): File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in globals()[func_name] = get_hash(__func_name) File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha256 ERROR:root:code for hash sha384 was not found. Traceback (most recent call last): File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in globals()[func_name] = __get_hash(func_name) File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha384 ERROR:root:code for hash sha512 was not found. Traceback (most recent call last): File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 147, in globals()[func_name] = get_hash(__func_name) File "/glade/u/apps/ch/opt/python/2.7.16/gnu/8.3.0/lib/python2.7/hashlib.py", line 97, in get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha512 Traceback (most recent call last): File "/glade/p/cesm/postprocessing/cesm-env2/bin/create_postprocess", line 7, in exec(compile(f.read(), file, 'exec')) File "/glade/p/cesm/postprocessing/cesm_utils/cesm_utils/create_postprocess", line 79, in from cesm_utils import cesmEnvLib File "/glade/p/cesm/postprocessing/cesm_utils/cesm_utils/init.py", line 2, in from . import processXmlLib File "/glade/p/cesm/postprocessing/cesm_utils/cesm_utils/processXmlLib.py", line 13, in import jinja2 File "/glade/p/cesm/postprocessing/cesm-env2/lib/python2.7/site-packages/jinja2/init.py", line 36, in from jinja2.loaders import BaseLoader, FileSystemLoader, PackageLoader, \ File "/glade/p/cesm/postprocessing/cesm-env2/lib/python2.7/site-packages/jinja2/loaders.py", line 16, in from hashlib import sha1 ImportError: cannot import name sha1

This error occurs if I run (as I originally wanted):

create_postprocess --caseroot $CASEROOT --add-dav /glade/p/ces,/postprocessing_dav and also occurs if just running: create_postprocess --caseroot $CASEROOT or even just: create_postprocess --help

It seems something is broken with the python environment. Any help would be much appreciated.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/NCAR/CESM_postprocessing/issues/220, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACR3PGLEYMPP2X46J5VZ2NTR3NXZHANCNFSM4OY3JKAQ .

-- Alice Bertini NCAR - CSEG Software Engineer

bertinia commented 4 years ago

fixed with PR #221