"pedestrian"
in
isoline()
and route()
functions (closes #167).route()
to 7 requests per
second (RPS). Although HERE’s documentation specifies a 10 RPS limit, it
has been lowered to 5 RPS to avoid frequent 429 “Too Many Requests”
errors.Please note that there are breaking changes introduced in this major
version release for the weather()
, flow()
, and
incidents()
functions. Be sure to review the updated
documentation to understand how these changes may affect your usage.
flow()
and
incident()
requests (closes #158)weather()
.sf
, data.frames
, the input
for points and areas of interest now also allows for sfc
geometry columns.aoi
from the country border of Switzerland to the districts
of Zurich. This change was necessary because the flow()
and
incident()
requests have a maximum allowed width and height
of 1 degree for the bounding box of the input AOIs.intermodal_route()
.snowFall
column to numeric in weather observation
request.defunct.R
and deprecated.R
to avoid NOTE (closes #162).R-CMD-check.yaml
and pkgdown.yaml
."scooter"
, "taxi"
,
"bus"
, "privateBus"
in route()
and route_matrix()
."car"
,
"truck"
, "taxi"
and "bus"
in
route()
. The new boolean parameter vignettes
defines if vignettes should be in inlcuded in the total toll cost of
routes (closes #151).set_currency()
to allow changing the currency used
in toll requests to a currency code compliant to ISO 4217. The default
currency is the current system locale setting. If the monetary
formatting category "LC_MONETARY"
of the C locale is not
set, "USD"
is set as default.aggregate = FALSE
as default in
isoline()
(closes #153).weather()
, due to
Status 429; Too Many Requests;
."visibility"
and
"snowCover"
to numeric in
weather(..., product = "observation")
, as they contain non
numeric character values (NAs introduced by coercion
).route(..., arrival = TRUE)
works.sapply
is not type safe, replace its use with
vapply(..., FUN.VALUE = type)
.master
and releases are tagged after CRAN has accepted the
package submission, which triggers the documentation build.isoline(..., traffic=FALSE)
(closes #147)..connection_summary
to avoid error in
CPL_geos_union
(@panhypersebastos).set_freemium
topic to index in
pkgdown.HERE_RPS
to
HERE_FREEMIUM
, and the function
hereR::set_rate_limit()
to
hereR::set_freemium()
. Use the HERE_FREEMIUM
environment variable to determine a plan-specific size of sub-matrices
in the hereR::route_matrix()
function (@szaboildi, #138).hereR::set_rate_limit()
(closes #137).geocode()
(closes #136).connection()
(closes #130).route_matrix()
. Removed query optimization because
switching the IDs results in reversed route information (closes #129).optimize
parameter to chose from “balanced”,
“quality” and “performance” in isoline()
(closes #119).route()
,
route_matrix()
and isoline()
.hereR/<version> R/<version> (<platform>)
.set_rate_limit(FALSE)
.isoline()
now handles multipart polygons
(MULTIPOLYGON) if received by the API (closes #121).route()
(closes #117).tyler::tidyverse_style()
to format the package.sfc
class of the geometry column when
there is only one geometry/row in a data.table
(closes #111).queryScore
in geocode()
results as
score
column (closes #109).sf::st_union
call in connection(..., summary = TRUE)
.route()
,
intermodal_route()
and connection()
.route_matrix()
from Routing API
v7.2 (calculatematrix) to Matrix Routing API
v8 (see #87).isoline()
from Routing API v7.2
(calculateisoline) to Isoline Routing API v8 (see #87).route()
from Routing API v7.2
(calculateroute) to Routing API v8, which brings the
elevation to the route geometries (closes #87).
Note: Currently arrival time is not yet supported.geocode()
with the
updated API v7.2 as it did with the previous API v6 (closes #98).mode
and type
in
route()
, route_matrix()
and
isoline()
, use transport_mode
and
routing_mode
instead.connection()
and
intermodal_route()
(closes #94)." "
to a space pipe combination " | "
(closes #102).geocode()
. The alternative locations are ranked according
to the order from the Geocoder API (closes #83 and #81).&
in front of the apiKey
argument (closes
#73 and #74).geocode()
from
v6.2 to v7 (closes #52).
Note: The argument autocomplete
is defunct
and the argument addresses
is deprecated, use
address
instead.geocode()
to position coordinates (display position) and
return access coordinates (navigation position) as additional column in
well-known text format (closes #53).geocode()
and
reverse_geocode()
independent of the input address level
(closes #58).reverse_geocode()
from v6.2 to v7. Note: The argument
landmarks
is defunct.autocomplete()
is
defunct, please use autosuggest()
.connection()
and station()
from v3 to v8 (closes #62).
Note: Now the geometries (LINESTRING) of the pedestrian
sections are also included in the public transport routes returned by
connection()
.set_proxy()
and unset_proxy()
. Use
a global proxy configuration for R in ~/.Renviron
instead.intermodal_route()
from Berlin to Switzerland, as the service is now also available
there.sf
argument to geocode()
function.
If TRUE
, the default, an {sf} object is returned, if
FALSE
a data.frame with lng
and
lat
columns. (@dpprdan, #44)intermodal_route()
adds support for requesting intermodal
routes between given pairs of locations.set_verbose()
function to define (for the current
R session) if the hereR package should message
information about the number of requests sent and data received (default
= FALSE
).st_make_valid()
, but sf does. Therefore
lwgeom
is moved from the package dependencies to the
suggestions (see #38).traffic()
function, which has
been replaced by the functions flow()
and
incident()
.route_matrix()
(see #30).origin
and destination
are
now accepted as input in route_matrix()
(see #31).flow()
and
incident()
to access traffic flow and incidents from the
Traffic API. Deprecated the traffic()
function.set_auth()
and
unset_auth()
are defunct and replaced by
set_key()
and unset_key()
(see #23)..Deprecated()
was skipped because the API endpoints have
also changed. After updating to a version greater than 0.2.1 the
authentication must be adjusted.traffic(..., product = "flow")
. Now it is possible to only
retrieve flow information of severe congestion with a jam factor greater
than min_jam_factor
, which speeds up requests.connection()
implements requesting the most efficient and
relevant transit connections between given pairs of locations.station()
retrieves nearby public transit stations
with corresponding line information.start
parameter to
origin
and unified the utilization of the
datetime
and arrival
parameters in
route()
, route_matrix()
,
isoline()
and connection()
.c("POSIXct", "POSIXt")
inputs for the requests (mostly
departure
) are converted to UTC using
.encode_datetime()
and the responses are parsed and
returned in the input timezone (or if missing:
Sys.timezone()
) using .parse_datetime()
(see
#28).@import sf
to the package documentation to ensure
sf
objects are handled correctly.departure
and arrival
datetime
column to the return value of route()
,
route_matrix()
and isoline()
.data.table
object type from function return
values. New: Pure data.frame
or sf, data.frame
because this integrates better with other packages (e.g. the
overline2()
function from the stplanr
package).traffic()
: Clarified that from_dt
and to_dt
have no effect on the traffic flow
(product = "flow"
). Traffic flow is always real-time.
Detailed documentation of the variables in the return value.testthat
.id
column to the output of
geocode()
and removed the id ordered row.names
in order to be consistent with other functions of the package. Using the
id
column the addresses to geocode can be joined to the
coordinates after geocoding (see #9).id
column also to autocomplete()
,
reverse_geocode()
, route()
,
isoline()
, traffic()
and
weather()
. Using the id
column the result can
be joined to the input..get_content()
. The id
column is still in
correct order, even if there are failing requests in a function call
(see #17).rownames() <- NULL
to all functions before
returning the result.city
column in the returned object of
weather()
to station
, as it stands for the
name of the nearest meteorological station.geocode()
: In the case of empty responses the
row names match the index of the geocoded addresses. Improved input
checks. Option to use autocomplete by setting
autocomplete = TRUE
.autocomplete()
allows autocompleting addresses.reverse_geocode()
implements reverse geocoding POIs in
order to retrieve suggestions for addresses or landmarks.First release of the hereR package, an sf-based interface to the HERE REST APIs. The packages binds to the following HERE APIs:
Locations and routes are returned as sf
objects and
tables as data.table
objects.