- Make functions more robust to non-functioning WMS/WFS GetCapabilities requests (#339, #341)
- dbplyr 2.5.0 has made the requirement for using
!!
orlocal()
for local functions more restrictive; updated tests and examples (#341). - Deprecate the
bcdata.single_download_limit
option, as it was mostly redundant withbcdata.chunk_limit
, and should always be set by the server. Please set the page size limit for paginated requests via thebcdata.chunk_limit
option (#332)
- Add
jsonlite::read_json()
as a file read method, so users can now download & readjson
resources in B.C. Data Catalogue records - Change the
download_audience
default fromPublic
toNULL
inbcdc_search()
(#315) - Fix bug where some/all facet values in
bcdc_search()
need to be quoted to generate a valid API query (#315) - Add new functions
bcdc_list_organizations
andbcdc_list_organization_records
as helper functions for finding records #322
- For WFS queries constructed using
bcdc_query_geodata()
, function calls infilter()
that need to be evaluated locally are no-longer auto-detected. They now need to be wrapped inlocal()
to force local evaluation before theCQL
query is constructed and sent to the WFS server. Please seevignette("local-filter")
for more information. This aligns with recommended usage patterns in otherdbplyr
backends (#304, PR #305).
- Fixed a test that was failing when no internet was available
- Upgraded to
dbplyr
edition 2, bumped dependency to2.0.0
(#300)
- Added
bcdc_get_citation
to generate bibliographic entries (viautils::bibentry
) for individuals records. #273 - Results from
bcdc_search()
(objects of class"bcdc_recordlist"
) now print 50 records by default, instead of 10. In addition, there is a new[
method for"bcdc_recordlist"
objects, allowing you to subset these lists and still have a nice printout (#288). - Ensure that
bcdc_get_data()
fails informatively when a given resource doesn't exist in a record (#290) - Ensure compatibility with upcoming
dbplyr 2.2.0
(#297, 82b9defa376ab)
- The BC Data Catalogue and its API have been updated, requiring changes to the
bcdata
package, most of which are internal only (#283). These should be mostly invisible to the user, except for the removal of thetype
search facet inbcdc_search()
andbcdc_search_facets()
. If you use an API key (authorized catalogue editors only), you will need to login to the new catalogue and get your updated key and set the value yourBCDC_KEY
environment variable to the new key.
- Add
names
method forbcdc.promise
objects. You can now callnames
on an object produced bybcdc_query_geodata
. This is handy when trying to figure out exact column spelling etc. #278
- Fix bug where sticky column were incorrectly identified in
bcdc_describe_feature
(#279)
- Code in
.onLoad()
that sent a request to the wfs getCapabilities endpoint could cause the package to fail to load. This was moved into an internal functionbcdc_get_capabilities()
that makes the request the first time it's required, and stores the result for the remainder of the session (#271) - testthat is now used conditionally to only run tests if the testthat package is installed.
- Setting the
bcdata.single_download_limit
limit dynamically from the getCapabilities endpoint. #256 bcdc_describe_feature
now joins an object description column to the returned object to provide more information about a field directly in R. #241, #259- Better documentation and information surrounding the
bcdata.max_geom_pred_size
option. #243, #258 - Add new function
bcdc_check_geom_size
so users can check prior to submitting a WFS request withfilter
to see if the request will require a bounding box conversion. #243, #258 - Better documentation and messaging about when and why paginated requests are required by
bcdc_query_geodata()
. #240, #264 - Better documentation and print method for what records are suitable for use with
bcdc_query_geodata()
. #265, #267
- Added
bcdc_list_groups
andbcdc_list_group_records
to provide the ability to query on the group endpoint of the catalogue API. #234 - Added new option
bcdata.single_download_limit
to enable setting the maximum number of records an object can be before forcing a paginated download (#252)
- Fixed bug in
collect.bcdc_promise
where the wrong parameter name incrul::Paginator$new()
resulted in an error in paginated wfs requests (#250, thanks @meztez) - Fixed a bug where the name of
bcdata.chunk_limit
option had a typo, so that it was not actually used properly (#252)
- Remove link for pipe documentation for simplicity.
- Fixed bug where using many
as.
functions (e.g.,as.Date()
,as.character()
,as.numeric()
) in a filter statement would fail. (#218, #219)
- Updated internal SQL translation to use
DBI
S4 generics (DBI::dbQuoteIdentifier()
is now used instead ofdbplyr::sql_escape_ident()
andDBI::dbQuoteString()
instead ofdbplyr::sql_escape_string()
), to comply with upcomingdbplyr
2.0 release (#225, #225; tidyverse/dbplyr#385) - Wrapped all examples that call web resources in
try()
to avoid spurious check failures (#229).
- Rename
selectable
column frombcdc_describe_feature
tosticky
and modify corresponding docs and tests (#180).
- Add explore-silviculture-data-using-bcdata vignette/article. h/t @hgriesbauer
- Add
head
andtail
methods forbcdc.promise
objects. Thanks to @hgriesbauer for the suggestion! (#182, #186) - Provide
as_tibble
as an alias forcollect
in line withdbplyr
behaviour (#166) - Geometry predicates can now take a
bbox
object as well as ansf*
object (#176) - When reading in excel files,
bcdc_get_data
now outputs a messages indicating the presence and names of any sheets (#190) bcdc_get_data()
&bcdc_query_geodata()
will now work with full B.C. data catalogue url including resource (#125, #196)bcdc_sf
objects now have antime_downloaded
attribute- Authorized B.C. Data Catalogue editors can now authenticate with the catalogue by setting
a
BCDC_KEY
environment variable with their catalogue API token (https://github.com/bcgov/bcdata#bcdc-authentication; #208).
- Fix
select
,filter
andmutate
roxygen so that bcdata specific documentation to these methods is available - Add tests for attributes
- Add
bcdc_tidy_resources
for retrieving a data frame containing the metadata for all resources from a single B.C. Data Catalogue record (PR#149, #147) - Add a more decorative record print method (#73)
- More reliable detection of layer name for a wfs call in
bcdc_query_geodata()
(#129, #138, #139) - Add
mutate
method for bcdc_promise that only fails and suggest an alternative approach. (PR#134) - Add back in querying vignette
- Using
tidyselect
so thatselect.bcdc_promise
behaviour is typical ofdplyr::select
($140, #138) - Using GitHub actions for CI.
- Remove
BEYOND()
andRELATE()
geometry predicates as they are currently not fully supported by geoserver
- Now precompiling vignettes so that queries are submitted locally and no actually requests are made from CRAN (#151)
- Fix
NOTE: Namespace in Imports field not imported from: ‘methods’
error on CRAN (#145) - Fixed a bug where functions nested inside geometry predicates were not evaluated (#146, #154)
- Fixed a bug where
DWITHIN
wasn't working becauseunits
needed to be unquoted (#154) - Fixed a bug where
BBOX()
used in afilter()
statement combined withbcdc_query_geodata()
did not work (#135, #137, #131) - Fixed a bug where layer names with a number in them would not work in
bcdc_query_geodata()
(#126, #127)
- Expand and standardize checking w[ms]f features to make package more resistant to slight warehouse API changes.
- Data retrieval functions now work with BCGW name (#106)
- Add CITATION file (#104)
- Increased test coverage (#112)
- Skipping all tests on CRAN that require a web connection
- Better and more informative error message when experiencing http failures occur (#121)
- Added print methods for
show_query
- Change examples to donttest
- Added verbose argument to
bcdc_get_record
to enable suppressing console writing
- Initial Release