This major release introduces a full overhaul of the codebase and
test suite. Requests now use httr2, and
GeoPackage (”gpkg”) becomes the preferred
download format when available. Cached files are reorganized into
topic-based subfolders for easier management.
Because of internal changes, existing caches are not compatible with this release and must be rebuilt.
Database management has also been improved. Instead of relying on the
static ?gisco_db dataset, the package now stores the
database in the cache. This cached database is used for all API calls
and can be updated via
gisco_get_cached_db(update_cache = TRUE). In practice, this
means that when GISCO publishes a new yearly release, you can access the
new updated data simply by refreshing the cached database without
waiting for a new version of giscoR.
We have transitioned from rappdirs::user_config_dir() to
tools::R_user_dir() for managing your persistent cache
directory. If you are a heavy giscoR user and already
have a cache directory in place, you’ll receive a one-time friendly
message informing you about this migration. Consider it a warm welcome
to giscoR 1.0.0 😉.
The package now requires R ≥ 4.1, and dependency
updates improve both performance and maintainability. All functions
return tidy objects (tibbles or sf objects with tibble
data).
Dataset subsetting is now performed at read time using GDAL’s query
capabilities (sf::read_sf()), improving performance and
reducing file size. The geojsonsf dependency is no
longer required.
Several new functions and arguments have been added, some functions renamed, and one deprecated. All bundled datasets have been updated to their latest versions.
We recommend reviewing the updated documentation at https://ropengov.github.io/giscoR/.
”gpkg”) as the preferred download
format.Note: Previous caches must be recreated.
sf::read_sf().gisco_get_cached_db()gisco_get_metadata()gisco_get_census() for accessing census grid data.gisco_get_units()):
gisco_get_unit_country()gisco_get_unit_nuts()gisco_get_unit_urban_audit()gisco_id_api_geonames()gisco_id_api_nuts()gisco_id_api_lau()gisco_id_api_country()gisco_id_api_river_basin()gisco_id_api_biogeo_region()gisco_id_api_census_grid()We renamed several functions to improve clarity and consistency:
?gisco_addressapi →
?gisco_address_apigisco_get_coastallines() →
gisco_get_coastal_lines()gisco_get_postalcodes() →
gisco_get_postal_codes()Old names remain available as aliases.
ext argument to control file format
(”gpkg”, ”shp”, ”geojson”).year to the latest release (#105).We updated all bundled datasets to their latest versions and added new ones:
?gisco_db to the newest data.?gisco_countries_2024 (replaces
gisco_countries).?gisco_nuts_2024 (replaces
gisco_nuts).?gisco_coastal_lines (replaced
gisco_coastallines).The datasets
gisco_countries,gisco_nuts, andgisco_coastallinesare no longer available. Any code that accessed them directly (e.g.,giscoR::gisco_countries) will now fail.
Please use the updated datasets or, preferably, retrieve them via the corresponding functions such as
gisco_get_countries()with default parameters.
gisco_get_units().
gisco_get_metadata() and the ?gisco_get_unit
family.cache argument in heavy-download functions
(gisco_get_lau(), gisco_get_communes()).gisco_bulk_download(), rename id_giscoR
→ id.gisco_get_lau().year argument to gisco_get_education()
and gisco_get_healthcare(); support 2020 and 2023
data.gisco_get_nuts() and
gisco_get_countries() (#93, @hannesaddec).gisco_get_education().gisco_get_education().?gisco_addressapi).?gisco_db.gisco_get_lau() → ”2021”gisco_get_urban_audit() → ”2021”country and region arguments
apply (#50, #75).tgs00026 dataset.geo column to gisco_get_nuts()
(#62).gisco_detect_cache_dir().NULL.gisco_get_healthcare() (#51).gisco_get_airports() and
gisco_get_ports():
gisco_get_postalcodes().?gisco_db.gisco_set_cache_dir()gisco_clear_cache()cache = FALSE behavior.?gisco_get documentation.eu field to ?gisco_countrycode.?gisco_get functions.verbose argument.?gisco_db.gisco_bulk_download()gisco_check_access()gisco_get_airports()gisco_get_grid()gisco_get_ports()gisco_get_units()gisco_get_countries() and
gisco_get_nuts() for faster downloads.tgs00026 dataset.