bopen / sarsen

Algorithms and utilities for Synthetic Aperture Radar (SAR) sensors
Apache License 2.0
271 stars 26 forks source link

sync with latest xarray #22

Closed malmans2 closed 2 years ago

malmans2 commented 2 years ago

sarsen is not compatible with the latest (unreleased) xarray. I was able to report and fix a couple of issues upstream (https://github.com/pydata/xarray/issues/6597, https://github.com/pydata/xarray/issues/6600), but we need to apply a few changes in sarsen as well.

I tested with xarray@main commit c34ef8a60227720724e90aa11a6266c0026a812a, and all tests are successful.

Let me know if you would like me to add an action that (periodically?) runs the CI using the xarray version under development.

codecov-commenter commented 2 years ago

Codecov Report

Merging #22 (ef8f8ef) into main (6b9142a) will decrease coverage by 0.16%. The diff coverage is 33.33%.

@@            Coverage Diff             @@
##             main      #22      +/-   ##
==========================================
- Coverage   70.35%   70.18%   -0.17%     
==========================================
  Files          15       15              
  Lines         425      426       +1     
  Branches       23       23              
==========================================
  Hits          299      299              
- Misses        121      122       +1     
  Partials        5        5              
Impacted Files Coverage Δ
sarsen/radiometry.py 25.39% <0.00%> (-0.41%) :arrow_down:
sarsen/orbit.py 97.87% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 6b9142a...ef8f8ef. Read the comment docs.

malmans2 commented 2 years ago

As discussed with @aurghs, the code is now simpler but we'll have to ping xarray > 2022.03.0.

TODO: Fix mypy, which is currently raising a few issues. Many typings have been introduced/improved in the latest xarray

malmans2 commented 2 years ago

@alexamici @aurghs mypy is returning this error with xarray@main. I think xarray-sentinel should somehow re-define the engine typing to allow sentinel-1

sarsen/apps.py:177: error: Argument "engine" to "open_dataset" has incompatible type "Literal['sentinel-1']"; expected "Union[Literal['netcdf4', 'scipy', 'h5netcdf'], Type[BackendEntrypoint], Literal['pydap', 'pynio', 'pseudonetcdf', 'cfgrib', 'zarr']]"
malmans2 commented 2 years ago

The other mypy issue is being fixed upstream: https://github.com/pydata/xarray/issues/6628