Changes
=======

0.8.0a1 (2023-06-29)
------------------
- cache WFS GetCapabilities response for faster requests and fewer http errors
- retry bc2pg requests on failure
- move bc2pg download logging to bcdata.log
- fix dem command default output CRS (#125)
- upgrade to sqlalchemy v2 (#124)

0.7.12 (2023-06-28)
------------------
- fix bc2pg cli error

0.7.11 (2023-06-28)
------------------
- fix conflicting bc2pg short option definitions (#134)

0.7.10 (2023-06-28)
------------------
- add bc2pg option --geometry_type to avoid issues when type sniffing (#132)
- fix appending to table with name different from source (#133)

0.7.9 (2023-06-13)
------------------
- fix geometry type checking (#131)
- update geopandas requirement (#129)

0.7.8 (2023-06-01)
------------------
- pin geopandas requirement to <v0.13 (#129)

0.7.7 (2023-04-13)
------------------
- add option to lowercasify properties keys / column names (#126)

0.7.6 (2023-02-01)
------------------
- better handling of connection errors (#118)
- correctly handle empty geodataframes (#121)
- pin sqlalchemy to <2.0               (#124)

0.7.4 (2022-09-28)
------------------
- bc2pg - option --no_timestamp now recognized (#116)
- bc2pg - preserve floating point data (#117)

0.7.3 (2022-09-26)
------------------
- bc2pg - fully handle geometries with Z values (#114) and add a test to check

0.7.2 (2022-09-26)
------------------
- bc2pg - handle geometries with Z values (#114)

0.7.1 (2022-09-26)
------------------
- bc2pg - add missing --sortby option
- bc2pg - better --append checks

0.7.0 (2022-07-18)
------------------
- bcdata.define_request function renamed to define_requests, returns list of
  parsed urls rather than a list of request parameter dictionaries  - this makes
  it easy to interactively generate request urls for geopandas/debugging/other
- new bc2pg Python module/function
    + general purpose loading tool
    + output table column types and comments are as specified in BC Data
      Catalogue API
    + data loads are via sqlalchemy/geopandas
    + schema_only option included for creation of empty tables
    + all features are promoted to multipart
    + BC Albers only, no re-projection support
- updated bc2pg command line tool
    + uses new bc2pg Python function (no longer an ogr2ogr wrapper)
    + fid option renamed to primary_key
    + new option --schema_only
    + options removed: bounds,bounds_crs,max_workers,dim,promote_to_multi,makevalid
- added a count option to most functions/commands for downloading only n records

0.6.3 (2022-06-08)
------------------
- add --max_workers option to bcdata cat
- improve logging with bcdata cat

0.6.2 (2022-06-08)
------------------
- fix bc2pg append mode and primary key handling (#104)
- bc2pg --append now requires --fid
- add bc2pg tests (#43)
- require local test database for running tests

0.6.1 (2022-04-26)
------------------
- enable configuration of cache file location via $BCDATA_CACHE environment variable (#99)

0.6.0 (2022-04-26)
------------------
- dem - add option to align downloaded tiff to BC default (#97)
- remove bcgw object name shell completion (#98)

0.5.1 (2021-11-25)
------------------
- bc2pg - remove non-functional option to specify geom type on load, revert to --promote_to_multi (#92)

0.5.0 (2021-11-25)
------------------
- bc2pg - add option to validate on load (#91)
- bc2pg - add option to specify geometry type on load (#92)
- bump click version requirement (#94)

0.4.5 (2021-04-06)
------------------
- fix outdated setup.py (#88)

0.4.4 (2021-04-03)
------------------
- track most recent date a table is downloaded to postgres via bc2pg with `public.bcdata` (#86)
- cleanup temp tables on bail (#73)
- remove pgdata dependency and use psycopg2 built in string methods (#87)

0.4.3 (2020-11-10)
------------------
- make dataset name arguments case insensitive
- default max_workers to 2 in functions outside of CLI
- bc2pg - add option --promote_to_multi to invoke ogr2ogr's -nlt PROMOTE_TO_MULTI and support
  layers with mixed single/multipart types
- add optional crs object to geojson output of bcdata.get_data() (#82)

0.4.2 (2020-08-26)
------------------
- bc2pg - fix bug that populated incorrect primary key values for multi-page requests (#78)
- bc2pg - for large requests, default max_workers to 2 rather than 5 (#75)

0.4.1 (2020-02-28)
------------------
- fix bc2pg connection string (#74)

0.4.0 (2020-02-27)
------------------
- WxS requests made via https (#59)
- add options --verbose / --quiet to CLI (#62)
- add option --interpolation to dem command (#63)
- add option as_gdf to get_data function to load directly to a geopandas
  dataframe (#67)
- fix bc2pg to actually use port specified in --db_url (#69)
- regenerate data list cache daily (#70)
- fix bc2pg to only use a password when provided in --db_url (#72)

0.3.5 (2019-10-08)
------------------
- use http WFS requests to avoid certificate errors (#59)
- fix bug introduced in v0.3.4 (#60)

0.3.4 (2019-09-30)
------------------
- support using --bounds and --filter at the same time (#58)
- support --bounds_crs option for most tools/functions
- rename --src_crs option for dem command to --bounds_crs

0.3.3 (2019-05-16)
------------------
- use OBJECTID as default sortby key (#57)
- bc2pg - add dim option to support loading data with Z dimensions
- bc2pg - add fid option to enable correct assignment of primary key
- bc2pg - remove sortby option
- fix get_dem to use CRS parameters correctly (#53)
- bug fixes

0.3.2 (2019-03-22)
------------------
- add append option to bc2pg
- fix bcdata cat not requesting specified CRS (#48)
- fix crash when DATABASE_URL not set (#49)
- handle WCS request errors

0.3.1 (2019-01-28)
------------------
- fix #45
- add progress bar
- enable bc2pg pagesize

0.3.0 (2019-01-04)
------------------
Major revision, nothing is backwards compatible
- download data via WFS rather than DWDS
- functions renamed
- data downloaded to file is to geojson only
- added `bc2pg` command for mirroring BC table in postgres

0.2.0 (2018-01-22)
------------------
- use DataBC Catalogue API to find data (#25, #31)

0.1.0.post1 (2018-01-17)
------------------
- fix typo in README

0.1.0 (2018-01-17)
------------------
- upload release to PyPI
- add continuous integration testing
- simplify file structure
- add info function/option (#30)
- require html5lib (#29)
- add path option to download function (#28)
- set default timeout 2hrs (#27, #26)
- Python 3 compatible, test with tox (#23)
- fix test (#21)

0.0.5 (2016-10-18)
------------------
- remove selenium and phantomjs dependencies
- geomark support removed
- CRS support removed

0.0.4 (2016-07-08)
------------------
- headless downloads! (#1)
- cli testing now functional (#3)

0.0.3 (2016-07-08)
------------------
- use a better key to find download link on catalog page (#15)

0.0.2 (2016-07-06)
------------------
- close issues related to layers / projections / appending (#2, #9, #10)
- cleanup
- fix problems with CLI

0.0.1 (2016-07-03)
------------------
Automation of simple downloads from British Columbia's Data Distribution Service.