Releases: hyriver/pydaymet
v0.19.1
Release Notes
This release is a major refactoring of the package to make it more lightweight and independent. The package now uses aiohttp
and aiofiles
with a limit on the number of simulnatious connections to the host, for handling all server requests. This avoids hammering the server with multiple requests and improves the performance and reliability of the package. The package no longer depends on other HyRiver libraries, making it more lightweight and faster to load.
New Features
- Add a new function to get Daymet tile IDs for a given geometry called
daymet_tiles
.
Internal Changes
- Remove dependency on other HyRiver libraries to make the package more lightweight and independent.
- Use
aiohttp
andaiofiles
for handling all server requests. This avoids hammering the server with multiple requests and improves the performance and reliability of the package. - Remove dependency on
geopandas
and useshapely
only for handling geometries. This makes the package more lightweight and faster.
Breaking Changes
- Use a more efficient and reliable approach for adding elevation data to the climate dataset for computing PET. We now directly use 30-m elevation data from 3DEP and resample it to the climate data resolution by averaging each cell within a 1-km window.
- Remove the option to disable SSL in all functions. Now, SSL verification is always enabled.
v0.19.0
Release Notes
This release is a major refactoring of the package to make it more lightweight and independent. The package now uses aiohttp
and aiofiles
with a limit on the number of simulnatious connections to the host, for handling all server requests. This avoids hammering the server with multiple requests and improves the performance and reliability of the package. The package no longer depends on other HyRiver libraries, making it more lightweight and faster to load.
New Features
- Add a new function to get Daymet tile IDs for a given geometry called
daymet_tiles
.
Internal Changes
- Remove dependency on other HyRiver libraries to make the package more lightweight and independent.
- Use
aiohttp
andaiofiles
for handling all server requests. This avoids hammering the server with multiple requests and improves the performance and reliability of the package. - Remove dependency on
geopandas
and useshapely
only for handling geometries. This makes the package more lightweight and faster.
Breaking Changes
- Use a more efficient and reliable approach for adding elevation data to the climate dataset for computing PET. We now directly use 30-m elevation data from 3DEP and resample it to the climate data resolution by averaging each cell within a 1-km window.
- Remove the option to disable SSL in all functions. Now, SSL verification is always enabled.
v0.18.0
Release Notes
Breaking Changes
- Drop support for Python 3.8 since its end-of-life date is October 2024.
- Remove all exceptions from the main module and raise them from the
exceptions
module. This is to declutter the public API and make it easier to maintain.
v0.17.1
Release Notes
Internal Changes
- Drop support for Python 3.8 since its end-of-life date is October 2024.
v0.17.0
Release Notes
Bug Fixes
- In
get_bystac
function, only three variables were being returned regardless of the input variables. This version fixes this issue by returning all the requested variables.
Internal Changes
- Add the
exceptions
module to the high-level API to declutter the main module. In the future, all exceptions will be raised from this module and not from the main module. For now, the exceptions are raised from both modules for backward compatibility. - Switch to using the
src
layout instead of theflat
layout for the package structure. This is to make the package more maintainable and to avoid any potential conflicts with other packages.
v0.16.3
Release Notes
Bug Fixes
- In
get_bystac
function, only three variables were being returned regardless of the input variables. This version fixes this issue by returning all the requested variables.
Internal Changes
- Add the
exceptions
module to the high-level API to declutter the main module. In the future, all exceptions will be raised from this module and not from the main module. For now, the exceptions are raised from both modules for backward compatibility.
v0.16.1
Release Notes
New Features
- Add a new function for getting Daymet data from Microsoft's Planetary Computer called
get_bystac
. Although this function can be much faster thanget_bygeom
, currently, it gives access to Daymet v4.2 from 1980 to 2020. As discussed here, the Daymet v4.5 will be added to the Planetary Computer in the future. Until then, for accessing the latest version of Daymet (v4.5) you need to useget_bygeom
. Additionally, this function requiresfsspec
,dask
,zarr
, andpystac-client
packages. - Make
separate_snow
a standalone, pure, and public function. Now, it can be used like so:pydaymet.separate_snow
. - Change the length unit from
km
tom
forget_bygeom
.
Internal Changes
- The
potential_et
function usespy3dep.add_elevation
function but the CRS info gets lost in the process for the newelevation
variable. This version fixes this issue by adding the CRS info to theelevation
variable. - Change
PetParams
class fromNamedTuple
todataclass
for better performance and consistency. Now, it has a newclassmethod
calledfields
that returns a list of the four fields of the class.
v0.16.0
Release Notes
Breaking Changes
- Bump min version of
shapely
to 2.
Internal Changes
- Use the new
py3dep.add_elevation
API.
v0.15.2
Release Notes
Internal Changes
- Remove dependency on
dask
.
v0.15.1
Release Notes
Bug Fixes
- Fix HyRiver libraries requirements by specifying a range instead of exact version so
conda-forge
can resolve the dependencies.