Recent Releases of env_canada

env_canada - v0.11.2

Bug Fixes

  • ECMap: Fix multi-instance caching issue where different geographic locations shared cached data
    • Cache keys now include location-specific prefix to prevent data sharing between coordinates
    • Ensures each ECRadar/ECMap instance maintains separate caches for basemap, legend, and radar overlays

- Python
Published by michaeldavie about 1 year ago

env_canada - v0.11.1

Bug Fixes

  • ECWeather: Fix Home Assistant compatibility issue with station ID handling
    • Keep station_id as string for external API compatibility
    • Move one-time initialization from update() to _resolve_station() method for better performance
    • Add station_tuple property for accessing internal tuple representation
    • Update validate_station to return input unchanged instead of extracting digits

Technical Details

This release addresses a TypeError that occurred in Home Assistant integrations when validate_station received a tuple instead of a string. The fix maintains backward compatibility while improving performance by moving expensive initialization operations to run only once per instance.

Migration Notes

  • External API users: No changes required - station_id remains a string
  • Internal library users: Use station_tuple property if you need the (province_code, station_number) tuple

- Python
Published by michaeldavie about 1 year ago

env_canada - Release v0.11.0

env_canada v0.11.0

Major Features

New ECMap Class

Complete weather map functionality using Environment Canada's WMS layers: - Support for rain, snow, and precipitation type radar layers - Dynamic legend discovery from WMS capabilities
- Customizable map dimensions, radius, opacity, and overlay options - Animated GIF creation for weather loops - Full English/French language support

New Features

Flexible Station ID Formats

Support for multiple station ID input formats: - Full format: "AB/s0000123" (province code and full station ID) - Station ID only: "s0000123" (province resolved automatically)
- Numeric only: "123" (just the station number)

Dynamic File Discovery

Automatic handling of Environment Canada's new timestamped weather file format (effective June 2025)

Enhanced ECRadar

Now uses ECMap as internal implementation while maintaining full backward compatibility

Improvements

  • Mapbox dependency removed: Now exclusively uses Canadian government data sources (Natural Resources Canada + Environment Canada)
  • Proper logging: Module-specific loggers throughout codebase
  • Enhanced error handling: Robust network failure handling and caching
  • Station ID validation: Improved validation with regex patterns and automatic province resolution
  • Type safety: Full mypy compliance and enhanced type annotations

Infrastructure

  • Automatic adaptation to Environment Canada's infrastructure changes
  • Enhanced test coverage with comprehensive mocking
  • Support for dynamic URL structure discovery

Installation

bash pip install env-canada==0.11.0

Full Changelog

https://github.com/michaeldavie/env_canada/blob/v0.11.0/CHANGELOG.md

- Python
Published by michaeldavie about 1 year ago

env_canada - Fix alerts growing in size.

What's Changed

  • Add SPDX license identifier by @cdce8p in https://github.com/michaeldavie/env_canada/pull/106

New Contributors

  • @cdce8p made their first contribution in https://github.com/michaeldavie/env_canada/pull/106

Full Changelog: https://github.com/michaeldavie/env_canada/compare/0.10.1...0.10.2

- Python
Published by gwww about 1 year ago

env_canada - 0.10.1

What's Changed

  • Fix dependency for geopy

- Python
Published by gwww about 1 year ago

env_canada - v0.10.0

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.9.0...0.10.0

- Python
Published by gwww about 1 year ago

env_canada - v0.9.0

What's Changed

  • Give the tests some love by @gwww in https://github.com/michaeldavie/env_canada/pull/99
  • Removes errors flagged by pyright and ruff by @gwww in https://github.com/michaeldavie/env_canada/pull/100
  • Remove use of patterns to determine alert type by @gwww in https://github.com/michaeldavie/env_canada/pull/101
  • Add local radar test. by @gwww in https://github.com/michaeldavie/env_canada/pull/102
  • Update pyproject.toml by @gwww in https://github.com/michaeldavie/env_canada/pull/103
  • feature(update)!: Add resilience to error handling, including returning cached data by @gwww in https://github.com/michaeldavie/env_canada/pull/104

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.8.0...v0.9.0

- Python
Published by gwww about 1 year ago

env_canada - v0.8.0

What's Changed

  • [Snyk] Security upgrade numpy from 1.21.3 to 1.22.2 by @michaeldavie in https://github.com/michaeldavie/env_canada/pull/94
  • Fix TypeEror while logging in an exception by @maruel in https://github.com/michaeldavie/env_canada/pull/95
  • Update the packing to pyproject.toml by @fitzb in https://github.com/michaeldavie/env_canada/pull/97

New Contributors

  • @fitzb made their first contribution in https://github.com/michaeldavie/env_canada/pull/97

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.7.2...v0.8.0

- Python
Published by michaeldavie over 1 year ago

env_canada - v0.7.2

What's Changed

  • Add timestamp to daily forecast. by @gwww in https://github.com/michaeldavie/env_canada/pull/93

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.7.1...v0.7.2

- Python
Published by michaeldavie almost 2 years ago

env_canada - v0.7.1

What's Changed

  • Improve radar CPU usage by @gwww in https://github.com/michaeldavie/env_canada/pull/91
  • Fix memory leak

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.7.0...v0.7.1

- Python
Published by michaeldavie about 2 years ago

env_canada - v0.6.3

What's Changed

  • Update README.md by @KPCOFGS in https://github.com/michaeldavie/env_canada/pull/89
  • Async all the things that were blocking. by @gwww in https://github.com/michaeldavie/env_canada/pull/90

New Contributors

  • @KPCOFGS made their first contribution in https://github.com/michaeldavie/env_canada/pull/89

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.6.2...v0.6.3

- Python
Published by michaeldavie about 2 years ago

env_canada - v0.7.0

What's Changed

  • Breaking Change: Remove yesterday's conditions (low temp, high temp, and precipitation) from weather
  • Update README.md by @KPCOFGS in https://github.com/michaeldavie/env_canada/pull/89
  • Async all the things that were blocking. by @gwww in https://github.com/michaeldavie/env_canada/pull/90

New Contributors

  • @KPCOFGS made their first contribution in https://github.com/michaeldavie/env_canada/pull/89

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.6.2...v0.7.0

- Python
Published by michaeldavie about 2 years ago

env_canada - v0.6.2

What's Changed

  • Minor fixes to imports by @everettsp in https://github.com/michaeldavie/env_canada/pull/87
  • Run imageio in the executor. by @gwww in https://github.com/michaeldavie/env_canada/pull/88

New Contributors

  • @everettsp made their first contribution in https://github.com/michaeldavie/env_canada/pull/87

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.6.1...v0.6.2

- Python
Published by michaeldavie about 2 years ago

env_canada - v0.6.1

Dependency updates

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.6.0...v0.6.1

- Python
Published by michaeldavie over 2 years ago

env_canada - v0.6.0

What's Changed

  • Support weather stations without current conditions
  • Update radar URL to HTTPS by @maruel in https://github.com/michaeldavie/env_canada/pull/86
  • Fix sunrise and sunset conditions

New Contributors

  • @maruel made their first contribution in https://github.com/michaeldavie/env_canada/pull/86

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.37...v0.6.0

- Python
Published by michaeldavie over 2 years ago

env_canada - v0.5.37

What's Changed

  • [Snyk] Security upgrade numpy from 1.21.3 to 1.22.2 by @michaeldavie in https://github.com/michaeldavie/env_canada/pull/85

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.36...v0.5.37

- Python
Published by michaeldavie over 2 years ago

env_canada - v0.5.36

What's Changed

  • Set non-numeric hourly forecast wind speeds to 0 by @MrDizzystick in https://github.com/michaeldavie/env_canada/pull/84

New Contributors

  • @MrDizzystick made their first contribution in https://github.com/michaeldavie/env_canada/pull/84

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.35...v0.5.36

- Python
Published by michaeldavie almost 3 years ago

env_canada - v0.5.35

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.34...v0.5.35

  • Add wind speed and direction to hourly forecasts
  • Handle missing AQHI forecasts
  • Fixes for dependency changes

- Python
Published by michaeldavie about 3 years ago

env_canada - v0.5.34

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.33...v0.5.34

- Python
Published by michaeldavie about 3 years ago

env_canada - v0.5.33

Bug fix for handling unexpected strings in numeric conditions.

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.32...v0.5.33

- Python
Published by michaeldavie about 3 years ago

env_canada - v0.5.32

Generalize handling unexpected string values in numeric fields.

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.31...v0.5.32

- Python
Published by michaeldavie about 3 years ago

env_canada - v0.5.31

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.30...v0.5.31

- Python
Published by michaeldavie about 3 years ago

env_canada - v0.5.30

What's Changed

  • [Snyk] Security upgrade numpy from 1.21.3 to 1.22.2 by @michaeldavie in https://github.com/michaeldavie/env_canada/pull/73
  • Update XML encoding

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.29...v0.5.30

- Python
Published by michaeldavie about 3 years ago

env_canada - v0.5.29

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.28...v0.5.29

  • Handle forecast temperatures of 0ΒΊ

- Python
Published by michaeldavie over 3 years ago

env_canada - v0.5.28

Raise an error on old weather data

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.27...v0.5.28

- Python
Published by michaeldavie over 3 years ago

env_canada - v0.5.27

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.26...v0.5.27

- Python
Published by michaeldavie over 3 years ago

env_canada - v0.5.26

What's Changed

  • Added sunrise/sunset data by @infectedroot in https://github.com/michaeldavie/env_canada/pull/70

New Contributors

  • @infectedroot made their first contribution in https://github.com/michaeldavie/env_canada/pull/70

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.25...v0.5.26

- Python
Published by michaeldavie over 3 years ago

env_canada - v0.5.25

What's Changed

  • Add ECHistoricalRange class to handle hourly and daily historical data by @Biorix in https://github.com/michaeldavie/env_canada/pull/64

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.24...v0.5.25

- Python
Published by michaeldavie almost 4 years ago

env_canada - v0.5.24

What's Changed

  • Timeframe selection added by @Biorix in https://github.com/michaeldavie/env_canada/pull/58
  • Added yesterday's high and low temperature

New Contributors

  • @Biorix made their first contribution in https://github.com/michaeldavie/env_canada/pull/58

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.23...v0.5.24

- Python
Published by michaeldavie almost 4 years ago

env_canada - v0.5.23

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.22...v0.5.23

- Python
Published by michaeldavie about 4 years ago

env_canada - v0.5.22

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.21...v0.5.22

- Python
Published by michaeldavie about 4 years ago

env_canada - v0.5.21

What's Changed

  • Cache weather site list. Add debug logs. by @gwww in https://github.com/michaeldavie/env_canada/pull/59
  • Handle missing AQHI observations

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.20...v0.5.21

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.20

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.19...v0.5.20

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.19

Work around GeoGratis map service outage

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.18...v0.5.19

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.18

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.17...v0.5.18

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.17

What's Changed

  • Caching by @gwww in https://github.com/michaeldavie/env_canada/pull/55

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.16...v0.5.17

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.16

Fixes #52

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.15...v0.5.16

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.15

What's Changed

  • Add CHANGELOG.md. by @gwww in https://github.com/michaeldavie/env_canada/pull/49
  • Update setup.py to exclude tests package by @onkelbeh in https://github.com/michaeldavie/env_canada/pull/50

New Contributors

  • @onkelbeh made their first contribution in https://github.com/michaeldavie/env_canada/pull/50

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.14...v0.5.15

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.14

What's Changed

  • Tweaks so easier to integration with HA. by @gwww in https://github.com/michaeldavie/env_canada/pull/48

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.5.13...v0.5.14

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.2.7

What's Changed

  • Hardening and support for easier HA integration by @gwww in https://github.com/michaeldavie/env_canada/pull/47

Full Changelog: https://github.com/michaeldavie/env_canada/compare/v0.2.6...v0.2.7

- Python
Published by michaeldavie over 4 years ago

env_canada - v0.5.13

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.12

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.11

Add attribution to weather metadata

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.10

Adds normal high and low temperatures

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.9

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.8

Raise an exception when XML decoding fails

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.7

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.6

Fix radar precip_type setter

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.5

Make precip_type a property in ECRadar

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.4

Support precip_type=None in ECRadar

- Python
Published by michaeldavie almost 5 years ago

env_canada - v0.5.3

Accept None for optional parameters

- Python
Published by michaeldavie almost 5 years ago

env_canada - Input validation

Validate init arguments, raise HTTP errors

- Python
Published by michaeldavie almost 5 years ago

env_canada - Faster weather server

Switch weather to a faster server

- Python
Published by michaeldavie almost 5 years ago

env_canada - Maintenance - Faster weather server

Switch weather to a faster server

- Python
Published by michaeldavie almost 5 years ago

env_canada - Add historical climate data

- Python
Published by michaeldavie almost 5 years ago

env_canada - Fix radar options

  • Fixes disabling legend and timestamp for radar πŸ›
  • Handles previous day's precipitation value of "Trace" πŸ™„

- Python
Published by michaeldavie almost 5 years ago

env_canada - Make weather data more Pythonic

Return values as int, float, or timezone-awaredatetime as appropriate.

- Python
Published by michaeldavie about 5 years ago

env_canada - Updates to radar GIF

- Python
Published by michaeldavie about 5 years ago

env_canada - Fix for Python 3.9

Remove getchildren()

- Python
Published by michaeldavie over 5 years ago

env_canada - AQHI region name

- Python
Published by michaeldavie over 5 years ago

env_canada - Async and tests

  • Make fetching methods asynchronous
  • Add tests
  • Rename data to weather
  • Separate AQHI from weather

- Python
Published by michaeldavie over 5 years ago

env_canada - Switch to bitmap font

- Python
Published by michaeldavie over 5 years ago

env_canada - Update setup.py

- Python
Published by michaeldavie over 5 years ago

env_canada - Add font to library

- Python
Published by michaeldavie over 5 years ago

env_canada - Remove OpenCV

- Python
Published by michaeldavie over 5 years ago

env_canada - Move NRCan basemap to HTTP

- Python
Published by michaeldavie almost 6 years ago

env_canada - Add legend and timestamp to radar

Overlays a legend and timestamp on the radar image

- Python
Published by michaeldavie almost 6 years ago

env_canada -

Adds legend and timestamp to radar map Fixes #24

- Python
Published by michaeldavie almost 6 years ago

env_canada - v0.0.39

- Python
Published by michaeldavie about 6 years ago

env_canada -

- Python
Published by michaeldavie over 6 years ago

env_canada -

- Python
Published by michaeldavie over 6 years ago

env_canada -

- Python
Published by michaeldavie over 6 years ago

env_canada - v0.0.30

- Python
Published by michaeldavie over 6 years ago