StreamCatTools
StreamCatTools: Tools for Working with StreamCat and LakeCat Data
StreamCatTools is quietly moving off web services and onto cloud-native GeoParquet
◆Recent moves
- 3mo ago
Lake watersheds read from S3-hosted GeoParquet via DuckDB
Adds lc_get_watershed(), returning a lake watershed as an sf feature for a LakeCat COMID from an S3-hosted, HUC2-partitioned GeoParquet dataset, using DuckDB with optional HUC2 filtering, retries and multi-threading. A different access model from the web service the rest of the package relies on, and the first sign of a cloud-native data path.
View source ↗ - 6mo ago
National Nutrient Inventory access and budget plotting
Adds sc_get_nni() and lc_get_nni() for National Nutrient Inventory data, plus sc_plot() and lc_plot() for nitrogen and phosphorus watershed budgets. The plotting functions move the package past pure retrieval into presenting the metrics it fetches.
View source ↗ - 9mo ago
Skip tests when web service is down; vignettes converted to articles
Uses skip_on_cran() to handle web service outages during testing and converts most vignettes to articles with a new Start Here vignette. Test and documentation plumbing.
View source ↗ - 10mo ago
Graceful failure when web services are unavailable
Adds tryCatch handling so functions calling web services fail gracefully instead of erroring, addressing a CRAN test error. Defensive work against a dependency the package does not control.
View source ↗ - 10mo ago
Metric name search and vector arguments for data retrieval
Adds sc_get_metric_names() and lc_get_metric_names() to make the metric catalogue searchable, and lets sc_get_data() and lc_get_data() take vectors as well as comma-separated strings for metric, state, county and region. Discoverability for a dataset with a large metric list.
View source ↗ - 11mo ago
Data requests moved to POST body for long COMID lists
Switches sc_get_data() and lc_get_data() to pass parameters in the POST request body rather than the header, removing the length limit that capped how many COMIDs a single request could carry. A protocol detail that determines whether large watershed queries are possible at all.
View source ↗