Release Date: 2024-Jul-31
This release includes some improvements to the migration process, and a migration that converts that managed matviews for the Weather Anomaly Viewer into native matviews.
Changes:
- Make migration of manual matviews conditional
- Use utility functions when recreating objects to correct permissions
- Remove pcpn_cum_amt from WAV matviews
Release Date: 2024-Mar-13
This release features several adustments (permissions, reordering) to make migrations go more smoothly and some functional enhancements to matviews and tables. Improvements to matviews include adding start_time
and end_time
columns to VarsPerHistory
and adding vars_id
and unique_variable_tags
to CrmpNetworkGeoServer
. The meta_vars
table has been updated to reject variable names containing newlines.
Changes:
- Add variable_tags column to CollapsedVariables
- Add check constraint to meta_vars.net_var_name
- Update view CrmpNetworkGoserver with variable tags column
- Update getstationvariable to distinguish climo variables correctly
- Add constraints to reject whitespace on meta_vars
- Reorder revisions after 879f0efa125f
- Grant appropriate permissions on newly created objects in migrations
- Fix permissions omission on one migration
- Add columns for earliest and latest timestamps to vars_per_history_mv
Release Date: 2023-Nov-15
Major change: Add function variable_tags
.
Changes:
- Add function variable_tags
- Don't use
*
version specs for dependencies - Loosen SQLAlchemy-related version requirements
Release Date: 2023-Nov-11
Key change in this release is to install script manage-views
.
Changes:
Release Date: 2023-Mar-31
This release looks big, but quite a bit of it is internal.
The most important change is to fix the script manage-views, which is used to update the Weather Anomaly matviews. Additionally, there have been some small tweaks to the ORM and to migrations to fix inconsistencies discovered late.
Most of the rest is internal: code cleanup, adoption of Poetry as the dependency management and build tool, fixes for testing problems.
- Add crmp2 and update migrations to accommodate crmp database idiosyncracies #144
- Use Poetry #154
- Fix transient failures in CI tests #150
- Convert to pyproject.toml #152
- Fix import and usage of WA views #148
- Change PK in CrmpNetworkGeoserver table declaration #143
- Restore caching and Python matrix #142
- Add not-null constraints to FKs in obs_raw_native_flags and obs_raw_pcic_flags #141
- Upgrade pytest #140
- Replace plpythonu with plpython3u #139
- Code cleanup #138
Release Date: 2022-Dec-07
Bugfixes for migrations, plus a couple of minor things.
- Fix NEWS.md
- Add server default for meta_station.publish in migration
- Add metnorth2 databases to alembic.ini
- Use su role to create/drop extension citext
Release Date: 2022-Feb-03
- Remove PK constraint from station_obs_stats_mv
- Add publish flag to meta_stations
- Add sqlalchemy-citext to install dependencies in setup.py
- Change StationObservationStats PK to history_id
- Refactor tests
- Add NOT NULL constraints to certain Variable (meta_vars) columns
- Update test infrastructure
- Change column meta_vars.net_var_name type to citext
Release Date: 2022-Feb-03
Note: An earlier version tagged 3.3.0 was released. That release was withdrawn and re-released as the present version.
This is a large and belated release. It includes several different classes of change, including:
- Migrations
- Bug fixes to ORM and migrations
- Refactoring of Alembic content to make it possible to migrate a (test) test database in a client app to the desired revision.
- Substantial refactoring of unit tests.
This release contains no breaking changes.
- Pin zipp dependency to "==3.5.0"
- Replace pip with pipenv
- Fix copy-conflict warnings
- Drop table meta_climo_attrs
- Apply Black
- Cleanup
- Add missing indexes
- Convert unique constraints to primary key declarations
- Add obs_raw indexes
- Refactor replaceable objects
- Add SET/RESET ROLE to migrations
- Add conditional migration for native matview VarsPerHistory
Release Date: 2022-Jan-28 WITHDRAWN
(not a release) WITHDRAWN
Release Date: 2022-Jan-27 WITHDRAWN
Release Date: 2022-Jan-25 WITHDRAWN
Release Date: 2021-Jan-11
- Include all pycds (sub)packages
- Repackage so that Alembic migrations can be performed from client apps
Release Date: 2021-Jan-11
- Publish all subpackages (using
find_packages
).
Release Date: 2021-Jan-08
- Fix weather anomaly matviews refresh
- Establish GitHub Actions for CI, Docker publishing, and PyPI publishing
Release Date: 2020-Feb-13
This is a major new release. Highlights:
- Python 3.6+ compatible only. Releases >=3.0.0 will no longer support Py 2.7. Little or no maintenance will be done on versions <3.0.0 (which remains Py 2.7 compatible).
- Enable use of variable schema name, specified by environment variable
PYCDS_SCHEMA_NAME
. - Establish database migration control using Alembic.
- Add migrations that set up standard PyCDS tables, functions, views, and materialized views.
- Pin dependency versions.
Major / dominant changes:
- Add migration version-check function
- Add migration for weather anomaly materialized views
- Add migration for utility views
- Add migration for functions (stored procedures)
- Initialize migration management
- Make PyCDS schema name agnostic
- Rationalize test fixtures
- Drop support for Python <3.6
- Modify PyCDS table definitions to bring it to canonical current state of CRMP
Minor changes:
Release Date: 2017-Oct-24
- Fixes a query in the util module where both columns were ambiguously named "obs_time"
Release Date: 2017-Oct-17
- Use regular tables for materialized views
- Use schema 'crmp' consistently throughout code
- Fix bugs discovered in script
verify-load-climate-baseline-values
while processing baseline data files:- Handle exceptions raised during verification
- Fix bugs discovered in script
load-climate-baseline-values
while processing baseline data files:- Strip spaces from datum for comparison to -9999 (missing value)
- Fix counts of climatology stations
- Filter climatology variables by network (PCIC Derived Variables network)
- Improve logging