Skip to content

Conversation

msci-jordancrawford
Copy link
Collaborator

Adapt to new climada dependencies.

schmide and others added 30 commits July 17, 2020 16:23
sameberenz and others added 24 commits September 16, 2020 17:43
* Reduce size of demo file for TCs in Florida

* Reduce size of MAT demo file for TCs in Florida

* Reduce size of MAT demo file for WS in ERA40
* fix test

* Update climada/hazard/test/test_tc_tracks.py

that message doesn't make sense after the request is accepted

Co-authored-by: schmide <[email protected]>
add missing dash in ``git fetch -–all``
# Conflicts:
#	climada/hazard/centroids/centr.py
#	climada/hazard/tc_tracks.py
#	climada/util/coordinates.py
#	climada/util/test/test_coordinates.py
#	doc/climada/climada.entity.exposures.rst
#	doc/climada/climada.entity.impact_funcs.rst
#	doc/climada/climada.hazard.rst
#	doc/guide/developer.rst
#	requirements/env_docs.yml

resolved using develop
* climada.util.coordinates: slightly increased readability of read_raster

* tests_runner: enable specific test selection

* tests: allow small discrepancy

* conda environment: update rasterio to 1.1.5 - and bear the consequences

* config: suppress FutureWarning

* conda environment: fix cfgrib dependency

* Reduce size of demo file for TCs in Florida

* Reduce size of MAT demo file for TCs in Florida

* Reduce size of MAT demo file for WS in ERA40

* litpop: fix several issues with updated SparseArray and SparseDataFrame

* conda: make sure matplotlib and matplotlib-base have a matching version

* open_street_map: turn FutureWarning and DeprecationWarning off temporarily, to save the logs from being flooded

* Update requirements/env_climada.yml

* Update requirements/env_climada.yml

* dependencies: sync setup.py + cosmetics in env_climada.yml: proj 7.0.0 from the default channel logs with batch echo on

Co-authored-by: schmide <[email protected]>
Co-authored-by: Thomas Vogt <[email protected]>
doc: fix erroneous '-' sign
…is unambiguous (which prevents warning E1137)
@msci-jordancrawford msci-jordancrawford force-pushed the library_deps_1.5 branch 2 times, most recently from 4e95864 to 9c061cd Compare September 24, 2020 00:03
All dependencies are changed to >= dependencies, rather than ==, which make
climada suitable for use as a library. In addition, the following changes were
made to ensure compatability with lab:

 - Removed cartopy as a requirement, since it tends to break automation with its
   requirements on numpy at install time.
 - Downgrade the version of the following packages to match lab:
   - cython
   - geopandas
   - matplotlib
   - nbformat
   - numpy
   - pillow
   - xlrd
   - xlsxwriter
   - pandas
 - Change the specified dependence of proj==7.0.0 (which is a c library) to
   pyproj>=2.6, the python package the exposes proj API bindings in python.
 - Pin the following dependences (i.e. == instead of >=):
   - xarray==0.13.0 to stop it from bringing in a pandas>=0.25 dependency
   - gdal==3.0.4 version, since 3.0.4 is what ships with Ubuntu 20.04. Running
     higher versions causes compile time problems.
 - Include explicit dependencies on rtree (optional dep of geopandas) and fsspec
   (optional dep of dask)

This change is not without impact. There are known test failures on the
cannoncial lab setup (Ubuntu 20.04, Python 3.8, installed with
rebuild-venv.sh), including:

 - TypeError: visit_Constant() got an unexpected keyword argument 'side'
   in pandas code. This is a known error with pandas 0.24 when running on
   python 3.8 which is fixed in 0.25.2. See discussion at:
   - https://bugzilla.redhat.com/show_bug.cgi?id=1746847
   - pandas-dev/pandas#28101
 - In pandas, either:
     AttributeError: 'Series' object has no attribute 'to_numpy'
   or
     AttributeError: module 'pandas' has no attribute 'arrays'
   Both of these refer to pandas functionality introduced in 0.24.0 that is
   used directly by CLIMADA.
 - ModuleNotFoundError: No module named 'pyepsg'
   'pyepsg' is a wrapper tool that downloads epsg info from the web. This is
   explicitly excluded in order to prevent production instances from relying on
   a third party site.
 - When pandas is reading an excel file, it uses the xlrd library, which
   references the time.clock() API, which has been long deprecated and was
   completley removed in Python 3.8.

Note that most of these errors could be resolved by bumping the pandas version
to 0.25.2, a change which is pending further work in lab.
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

Successfully merging this pull request may close these issues.