Only when package s2 >= 1.0.1 is available: support for spherical geometry operators (predicates, transformers, measures, nearest point/feature) for geographic coordinates in package s2 is now by default switched off, and can be switched on by sf_use_s2(TRUE); see https://www.r-spatial.org/r/2020/06/17/s2.html and vignette sf7. It is planned to be switched on by default in sf 1.0-0.
drop Z and/or M coordinate in st_as_s2(), with message
geometry predicates and transformers gain an … argument to pass s2::s2_options()
dplyr::select() now ensures the geometry column sticks to the back rather than the front of the data frame; #1425
dplyr::rename() now preserves the active geometry column even when it is renamed; #1431
proj units query adjusted to PROJ 7.1.0 release; #1434
empty geom generators take care of XYZ etc dim; #1400
write_sf and read_sf no longer warn when reading tables without geometries
st_write writes non-spatial tables when given a plain data.frame or tbl_df; #1345
the default for stringsAsFactors in st_read and st_sf is FALSE for R version >= 4.1.0
the sf method for dplyr::select() supports renaming the geometry column; #1415
st_is_valid is a generic
Windows CRAN binaries use GDAL 3.0.4, PROJ 6.3.1 and GEOS 3.8.0, thanks to Jeroen Ooms’ rwinlib work; #1275
plot.sf gains an extent argument to set the extent (xlim, ylim) of the plot; extent must be an object with an st_bbox() method, such as an sf or a stars object; #1193
st_axis_order(TRUE) gives and error if GDAL has version < 2.5.0
loading PROJ units link, us_in, ind_yd, ind_ft, and ind_ch into the udunits database is no longer done at package load time, but when function sf_add_proj_units() is called.
fix line sampling for small densities; #1365
sf_project handles crs objects when PROJ version is below 6 using proj.4 string representations.
avoid using isFALSE in st_write(); #1342
fix regression in gdal_utils("translate", ...); #1339
fix an invalid read bug in st_m_range; #1332
st_crs(4326) == st_crs("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs") returns TRUE for GDAL >= 3.0, irrespective authority compliance of axis order; see #1331 and https://github.com/ropensci/scrubr/issues/34
sf_project has a parameter authority_compliant to return coordinates in “visualisation order”; when TRUE it returns coordinates in authority compliant axis order (e.g. EPSG:4326 latitude longitude); default is st_axis_order().
fix test for Solaris and certain GDAL/PROJ versions
fix error reading category table through GDAL; https://github.com/r-spatial/stars/issues/245
see r-spatial blog post: https://www.r-spatial.org/r/2020/03/17/wkt.html
modify crs objects to reflect our post-proj4string world (#1146; #1225): crs objects contain two fields, input with the user input (if any), and wkt with a well-known-text (or WKT2) representation of the coordinate reference system. crs objects have a $ method to dynamically retrieve the epsg (integer) or proj4string representation, using e.g. x$epsg.
support for PostGIS 3 using WKT and the new-style crs objects; #1234, #1303, #1308 by @etiennebr
st_write_db and st_read_db are defunct. Use st_write and st_read instead.
st_write uses append, replacing (and deprecating) argument update; st_write fails when a layer already exists and append has not been set explicitly to TRUE (append) or FALSE (overwrite); #1266
st_proj_info was renamed into sf_proj_info; sf_proj_info can get and set the PROJ data search path and use of CDN; #1277
adapt to new dplyr version; https://github.com/tidyverse/dplyr/issues/4917
st_sample is a generic
write stars rasters with wkt info, rather than proj4strings
when GEOS >= 3.8.0, st_make_valid is provided by sf rather than by lwgeom #989
allow for single-sided buffers for linear geometries; #1001
add st_reverse methods to reverse points in a linestring (requires GEOS >= 3.7.0); #1246
st_make_grid returns grid cells or points that intersect with the target geometry, not its bounding box; #1260
allow for PROJ >= 7; #1254
st_as_sf.map no longer requires maptools and sp; dropped dependency on maptools.
work around a bug in 6.0.0 <= PROJ < 6.3.1: replace +init=epsg:XXXX ... strings with the XXXX EPSG integer, to work around a bug in PROJ; see https://github.com/OSGeo/PROJ/pull/1875 and links therein. If ... arguments are present, raise a warning that these are ignored.
st_as_sf.map no longer requires maptools and sp; drop dependency on maptools.
conversion between spatstat classes owin, ppp and psp and sf classes no longer use maptools; #1204
gdal_utils processes open options -oo and -doo properly; https://github.com/ITSLeeds/geofabric/issues/12
st_sample directly interfaces spatstat sampling methods, e.g. type = "Thomas" calls spatstat::rThomas after converting input arguments (window) and converts returned ppp object to sf’s POINT geometries; #1204 with help from Ege Rubak and Jakub Nowosad
sf_project gains an option keep = TRUE to return Inf values for points not projectable; #1228
support vctrs methods for geometry list columns; this makes unnest work again (#1172); #1196 by Lionel Henry
st_as_sf.pq_geometry converts binary geom columns from RPostgres::dbGetQuery; #1195
st_cast can convert MULTICURVE to MULTILINESTRING; #1194
st_read gains a parameter wkt_filter for spatially filtering the features to be read; #1192
st_area() and st_length() handle +to_meter argument in PROJ strings; #1170
add st_filter generic for filtering on spatial features only; #1148
a new UBSAN error in wkb_read was resolved; #1154, #1152
new method st_shift_longitude to re-center data for a Pacific view. #1218
output of st_as_text() with MULTIPOINT has nested parentheses around points. E.g., MULTIPOINT ((0 0), (1 1)) instead of MULTIPOINT (0 0, 1 1); #1219, #1221
fix tests for PROJ 6.2.0 not accepting +units=
fixes for tidyr 1.0-0 release; attempt to port nest.sf and unnest.sf; #1068, #1145
gdal_utils better closes connections after use; #1143
st_write gains a drivers options, to limit the drivers attempted; #1142
rather than replacing, st_write and write_sf append to an existing layer if update=TRUE; #1126
improve plotting of POSIXct and Date attributes (Date requiring classInt >= 0.4-2)
NULL geometries read by GDAL are returned as empty geometries; #1119
gdal_utils('rasterize', ...) accepts non-existing destinations, defined by e.g. resolution and extent options (see #1116 for an example), and overwrites if needed (see #1136 for an example)
add Dan Baston as contributor; #1120 and many others
in addition to NULL, st_sfc() also converts NA values into empty geometries; #1114.
st_join is a generic
plot() handles POSIXct values in legend
constructor functions like st_linestring() check and break on NA coordinates; #1101, #1102
st_write write only to the temporary R session directoryas(x, "Spatial") gives a proper error message on empty geometries; #1093
st_cast takes care of empty polygons; #1094
st_nearest_* functions warn in case they are used with geographic coordinates; #1081
st_union no longer segfaults on zero row sf objects; #1077
st_transform no longer breaks on zero row sf objects; #1075
when PROJ >= 6.1.0 is available and sf comes with datum files (as is the case with statically linked Windows and OSX CRAN binaries), PROJ_LIB is no longer temporarily overwritten, but the PROJ C api is used to set the datum path; #1074, suggested by Jeroen Ooms
sf compiles against GDAL 3.x and PROJ 6.1.0, using the new proj.h interface; #1070
st_distance returns NA for empty geometries, rather than 0; #1055
add example on how voronoi polygons can be tied back to the points they contain; #1030
st_difference(x, y), with x an sfc with zero feature geometries, returns x; #1024
don’t reset (base) plot device when add = TRUE
== and != return NA when one of the operands is an empty geometry; #1013
st_intersects is a generic
drop requiring proj_api.h in favor of proj.h, this enables compatibility to PROJ 6.0.0 and GDAL 2.5.0-dev; #988
fix regression in binary predicates introduced in #855; #999 reported by Barry Rowlingson
fix bug in gdal_utils util warper on certain GDAL/OS combinations; https://github.com/r-spatial/stars/issues/117
c.sfc ignores the type (class) of empty sfc objects when choosing the result type; #985, #982
rename the default value for distance to "Euclidean", rather than "distance" in st_distance
add argument exact to st_sample, for defaulting to FALSE; #896
fixed n-ary st_difference for cases where geometries are entirely contained in others; #975, by Jonathan Marshall
faster Ops.sfc, added st_normalize; #973 by Thomas Lin Pedersen
new grob constructor for sfc objects; #971 by Thomas Lin Pedersen; add Thomas as contributor
add group_split and group_map methods for sf objects (experimental); #969
make st_interpolate_aw a generic;
argument col for plot of GEOMETRY sfc’s is NA (open) for (multi) polygon geometries
feature IDs are no longer returned as names on the geometry list column, but optionally returned by st_read as attribute column; #812
when plotting multiple attributes, plot.sf adds a (single, common) key if key.pos is set
precision can be specified in distance units; #901
support log-scale in color legend by setting logz to TRUE in plot.sf
st_intersects etc. will prepare y when y is polygons and x is points; #885 by Dan Baston
st_write (and write_sf) returns its first argument, invisibly; #889
st_intersection on platforms using clang; #867adds several interfaces to GDAL functions, meant to be used by package stars
st_read receives a query argument that can run queries against OGR datasets; #834, by Barry Rowlingson and Michael Sumner
read_sf no longer first creates tibbles from data.frames, but creates them directly; #853, db propagation by Etienne Racine
check difference between compile-time and run-time GEOS versions; #844
all GEOS routines are (more) robust against memory leaks, by using unique pointers; #822, #845, by Dan Baston
st_buffer receives the buffer styles endCapStyle, joinStyle and mitreLimit; #833, #842 by Michael Sumner
st_area is a generic; https://github.com/r-spatial/stars/issues/32
st_write resolves ~ correctly; #456
read and write feature IDs as sfc list column names; #812
st_centroid works for empty geometries, returning an empty point #769
add st_nearest_points, to obtain the (LINESTRING connecting the) two nearest points for pairs of geometries; #788
add hexagonal tiling to st_make_grid
add regular and hexagonal sampling to st_sample
fixes for PROJ 5.0.1; #545
fixes for GDAL 2.3.0; #759
st_sample supports regular sampling of LINESTRING; #725 by @statnmap
Support reading and writing of database Pool objects; #756
fix plotting of sf objects without attributes; #755
add reference to the R Journal article in CITATION
move dependency RPostgreSQL from Imports: back to Suggests:
st_centroid.sf and st_point_on_surface.sf also warn if attributes are not constant over geometries.
summarise allows the user to define geometries for summaries; #714, by Kirill Mueller
plot.sf emits a warning if col does not have length 1 or nrow(x), and requires pal (rather than col) to set a palette for factors.
plot.sf provides control over legend keys using key.length and key.width, decrease default key length; #731
sgbp objects receive an as.data.frame method; #715
GDAL read/write supports logical variables; #722
add st_crop to simplify cropping objects with a rectangular area; #720
fix bug in [<- when columns are added to an sf object; #718
use dynamic registration of S3 methods, similar to how hms does this; #710 by Kirill Mueller
(partially) address writing GPKG to network drive, writing to temp file first; #628
add Kirill Mueller as contributor
st_make_grid is faster; #708, by Dan Baston
st_read and st_write are generic, with methods for directly reading from and writing to database connections; st_read_db and st_write_db are deprecated; #558, thanks to Etienne Racine @etiennebr
Package RPostgreSQL moved from Suggests to Imports
restore compatibility with GDAL 2.0.x versions (which won’t have gdal_utils); #686
read_sf can also read tables without geometry; #684, by Andy Teucher
method distinct works; #669, #672
+, -, * and / for pairs of geometries (sfg, sfc) return geometric union, difference, intersection and symmetric difference, respectively.
st_cast from MULTIPOLYGON to MULTILINESTRING should work properly; #660
all Rcpp interfaces needed by package stars have been moved into sf; pkg stars is R-only, and only sf needs linking to GDAL.
gdal_utils() interfaces the 9 gdal utils using the C++ API
improve resetting (base) plots; add reset = FALSE in a call to plot to enable adding to plots that have a legend
st_read returns a data.frame when a table contains no geometries, rather than giving an error; it does emit a warning in this case. See https://stat.ethz.ch/pipermail/r-sig-geo/2018-February/026344.html
move pillar from Imports: to Suggests:
update to the new rwinlib distribution of gdal (adds JPG2000); #639
speed up computation of centroids for largest polygon; #623
add st_as_sfc.raw method
Bugfix: binary operations (st_intersection, st_difference, etc) no longer fail when operating on data frames of class "tbl_df" with common column names; #644
add pillar to Imports: to provide method for printing WKT geometries in tibbles
st_as_text, and subsequently format and print, use argument digits (or options(digits = n)) to control the number of digits used for printing coordinates; default is options("digits"), which is typically 7.
st_is_within_distance works with geographic coordinates
st_cast from MULTIPOLYGON to MULTILINESTRING no longer changes the number of features/feature geometries, but conversion from MULTIPOLYGON to LINESTRING (typically) does; #596
st_distance for long/lat geographic coordinates uses lwgeom, accepting all geometry types; argument dist_fun is deprecated as a consequence, and distance calculations are different from those in sf versions 0.5-5 or earlier; #593
add package lwgeom to Suggests; st_area, st_length, st_distance, st_segmentize for long/lat CRS use package lwgeom instead of geosphere; #593
st_length returns zero for polygon-type geometries; #593
if present, add units of attribute to default plot title; #591
add unnest method, which depends on tidyr > 0.7-2; #570 PR by @karldw
add largest option to st_join to get largest intersection match only; #547, by @tiernanmartin
change default maximum number of feature to print to 10, controllable by options(sf_max_print); #556
add Hausdorff (and Frechet for those with GEOS 3.7.0) as options to st_distance; add par for densified versions
add st_snap, for snapping geometries to other geometries, within a tolerance
make st_wrap_dateline a generic, with methods for sf, sfc and sfg; #541
plot.sf and st_as_grob (used by ggplot2) are robust against misspecified ring directions (holes that have the same direction as the exterior rings), by using rule = "evenodd"; #540
functions depending on liblwgeom (st_make_valid, st_geohash, st_plit) have been moved to their own package, https://github.com/r-spatial/lwgeom; argument use_gdal of st_transform has been deprecated, instead one can use lwgeom::st_transform_proj; sf no longer tries to link to liblwgeom; #509, #537, #487
st_read, st_sf and st_sfc gain a parameter check_ring_dir (default: FALSE) that checks ring directions and corrects to: exterior counter clockwise, holes clockwise, when seen from above.
get rid of classInt::classIntervals warning if number of unique values is smaller than the number of breaks asked for
have classInt in Imports:, to not break other package checks
add vignettes 5: plotting sf objects and 6: miscellaneous; #324
add (default) color key to plot.sf if single map is plotted, contributed by @hughjonesd; #528
st_as_sfc can read EWKT; #530
argument max.plot takes its default from options(sf_max.plot=n), if present; #516
plot.sf gets an arguments pal to specify a color palette function; #526
plot.sf gets arguments breaks and nbreaks; add support for classInt::classIntervals styles for finding class intervals (using breaks)
add st_as_sf methods for ppp, lpp and psp objects from spatstat.
allow for direct route to proj.4 ignoring GDAL (requiring liblwgeom); #509, #511
add print method for crs objects; #517
sf_extSoftVersion reveals whether GDAL was linked to GEOS; #510
better check input of st_polygon; #514
add st_node, similar to rgeos::gNode
support for reading OFTInteger64List fields; #508
sparse geometric binary predicate lists have a class, sgbp, and attributes region.id and predicate; #234, #524
prevent st_split from stopping the R session; #492
st_intersection, st_union and so on also print a message when used directly on long/lat coordinates; #496
add rep method for sfc objects
comparing two crs objects uses the GDAL function IsSame; #180
add st_collection_extract, which, given an object with geometries of type GEOMETRY or GEOMETRYCOLLECTION, returns an object consisting only of elements of the specified type; by Andy Teucher, #482
st_write exports GeoJSON with UTF-8 encoding on Windows; #444
move package methods from Imports: to Depends: ; #478
deal better with precision setting and propagation; #476
fix bug in st_layers in case layers have no geometry; #334
clarify argument envelope in st_voronoi; #474
change aggregate to make it return the same geometry as ‘by’, padding attributes with NA where needed; #453
fix compatibility problems introduced by tidyr 0.7-0 using rlang magic
convert path names to UTF-8 in st_read, st_write and st_layers; #471
st_sfc converts NULL values into empty geometries, and correctly identifies empty POINTs; #466, #463
st_write abbreviates column names if driver is ESRI Shapefile; #464
add of_largest_polygon argument to st_centroid, to get the centroid of the largest polygon; #450
fix use of st_relate as join predicate for st_join; #454
fix bug where st_intersects with empty second argument would crash; #458
produce better WKT; #463
fix bug in st_cast.sf; #461, #462
change st_read SRS assignment logic; corrects reading projected geojson with gdal 2.2.0; #449
st_intersection etc. on tbl also return tbl; #448
[.sf preserves class, e.g. of tbl; #448
support and propagate all Proj.4 +units=xx length units; #446
allow for arith ops on empty sfc objects
have st_graticule return an empty graticule object when argument datum is NA;
export as_Spatial, to make it easer for packages to convert sfc objects without importing sf
st_distance gains a parameter by_element to obtain pairwise distances; #437
add the ability to aggregate using a simple feature by argument; #429
make the op argument to [.sf work
speed up st_coordinates for POINT geometries; #433
fix performance regression for st_bbox; #418
correct bug in st_union, st_difference and st_sym_difference introduced in 0.5-2; #431
inform gdal about the CRS always through the proj4string, never through the epsg; see #424
properly deal with kilometre units; #424 (fixed by Karl Dunkle Werner)
add st_is_within_distance, only to return a sparse index matrix; #419
have st_graticule work with world2 (0,360); #421, #422, fixed by Ben Best
st_graticule to return graticules in native crs; https://github.com/tidyverse/ggplot2/issues/2200 (WIP)
st_graticule to support data in NA_crs_; https://github.com/tidyverse/ggplot2/issues/2199
fix bug when joining an sf-tibble with a tibble; #414
read gdal StringList, RealList, and IntegerList fields into a list-column; #416
made ready for rwinlib/gdal2; #408
make [.sf for selections including NA values like x[c(1,NA,2)]; #403
add a [<- method for sfc objects; automatically replaces NULL with an empty geometry; #411
add st_point_on_surface() to return a point that is guaranteed to be on the surface (standard compliance)
read_sf returns an sf-tibble, an object of class c("sf", "tbl_df", "tbl", "data.frame")
work around for dplyr::filter not dispatching geometry column subsetting to sf::[.sfc
allow units object as dist argument to st_buffer; these must be convertable to arc_degree for geographic, and to a length unit for non-geographic data; #399
prevent gdal from crashing when trying to st_transform an empty geometry; #398
add st_as_sfc method for bbox, returning the bbox polygon; #377
strip file name extension from default layer name in st_write; #392
have st_sf replace NULL values in an sfc list-column with the appropriate empty geometry; #372
allow setting ndiscr through ggplot2::coords_sf to improve graticule plotting in geom_sf; #396
add spatial indexes to most binary geometry operations; #394 and http://r-spatial.org/r/2017/06/22/spatial-index.html
drastically reduce memory footprint of st_intersection and similar; #394
support RSQLite 2.0 by providing an st_as_sfc method for list columns of class blob
drop dependency on dbplyr
better handle empty/NULL geometries in shapefiles; #351
add unite_.sf method
deprecate FUN argument to st_join; #376
improve graticule tic label placement in ggplot2; #375 and https://github.com/tidyverse/ggplot2/issues/2119
improve configure logic to deal with libraries installed in custom locations; #335
fix bug where geom_sf wouldn’t deal with Z and/or M geoms; #373
return more conveniently typed empty geoms; #372
fix subsetting with [ of sf using drop = TRUE, #370
in addition to m, allow rad units to st_segmentize
add example how to st_read GeoJSON from a string; #185
add separate_.sf method
add st_split to split geometries (only available if compiled against liblwgeom), #359
fix bug reading and writing dates (months 1 off): #358
[.sf and [.sfc also select on i when i is an sfg object, and accept a geometric predicate function with optional arguments; #352
on reading through GDAL, empty (NULL) geometries no longer result in an error; on creation, they no longer automatically give a GEOMETRY object; #351
on plotting with ggplot2::geom_sf, empty geometries no longer break; grid functions return nullGrob() for them; #351
arith operations on empty geometries no longer break or give warnings; #351
have st_as_sf.data.frame by default break on NA values in coordinates; #342
have st_join accept further arguments, to be passed on to the join function (e.g. a pattern for st_relate)
have WKB reader throw an error on (some) malformed inputs, and check for buffer bounds
back-port do_union argument to dplyr <= 0.5.0, using lazyeval
all strings returned from OGR/GDAL get encoding set to UTF-8, making them work on non-UTF-8 platforms; #5
$.crs retrieves proj4string components, such as st_crs(4326)$datum in addition to epsg and proj4string
let st_geohash return geohash for (average) points (only when sf was linked to liblwgeom)
summarise.sf always returns an sf object, also for global (non-grouped) summaries.
summarise.sf gains an argument do_union which determines whether to union the geometries for which a summary is given, or to st_combine them (not resolving boundaries); #331
rename argument union of aggregate.sf into do_union, for consistency with summarise; #331
add a nest_ method for sf objects
st_relate gets a pattern parameter, same as rgeos::gRelate; add examples to get rook and queen neighbour lists using this; #234
support for direct reading of spatialite and sqlite geometry wkb blobs
build proper support for cbind and rbind methods for sf, which work (as documented) when all arguments are of class sf; dplyr::bind_cols or st_sf(data.frame(sf, df)) work for binding data.frames to an sf object.
st_segmentize() and st_line_sample() accept units arguments
document problem reading shapefiles from USB drives on OSX; #252
improve docs of st_is_valid and st_make_valid; #296
coercing sf to data.frame works better; #298
st_line_sample gains argument sample to specify the points t.b. sampled; #299 #300 thanks to @joethorley
add compatibility to upcoming dplyr 0.6.0; #304 #42
write GDAL fields by name, not by number, fixing a KML problem #308
st_write gains arguments delete_layer and delete_dsn to allow overwrite capability #307 #274
write_sf defaults to delete_layer=TRUE, silently overwriting layers if they’re already present
compatibility with GDAL 2.2beta0; #303; #309
replace st_write_db with a version that is fast for large datasets (#285), thanks to Josh London
take out more memory leaking examples in tests
the aggregate method for sf objects assumes the by argument to be identical to that of stats::aggregate
st_wrap_dateline wraps (cuts up) geometries crossing the antimeridian, such that they no longer cross it.
restore 3.3.0 and c++11 requirement
st_read respects time that is read as UTC
st_write writes time always as UTC, since GDAL does not have a mechanism to define local timezones other than “unknown” or “local”
st_length works for POINT and MULTIPOINT (returning 0); POLYGON and MULTIPOLYGON are converted to MULTILINESTRING before computing length, thus giving polygon perimeter (#268)
st_write has update depend on driver; for databases, the default is TRUE, otherwise FALSE (it refers to update of the database, and not to overwriting the table in the database, this will by default not succeed); #274
st_read supports reading objects with multiple geometry columns #257 #255
support writing (exporting) objects with non-standard columns, such as units or POSIXlt #264
catch dependencies on GEOS 3.3.5 (hence no 0.4-0 CRAN binary for MacOSX) #260
have st_is_valid catch corrupt geometries too, returning NA in that case (requiring GEOS 3.5.0)
add st_make_valid, only available when sf was linked to liblwgeom
add st_coordinates method, returning coordinates matrix with indexes
remove unlist.sfg
add as.matrix.sfg; have as.matrix.sfg add indexes to coordinates
add st_bind_cols method
improve handling features that can’t be projected
support uniform sampling over polygons on the sphere
add st_sample, for sampling points on multipoints, linestrings, or polygons
add c method for sfc objects
import and export magrittr::%>%
support ggplot’ing geometrycollections
drop C++11 requirement, allowing build for older R versions
add st_proj_info, modelled after rgdal::projInfo
overwriting datasets with st_write is no longer allowed; update=TRUE appends to them, permitted the driver supports appending.
st_write gains an argument, update, which when TRUE will try to append to existing datasets (#204)
added list of corresponding function for migration from sp, rgdal and rgeos to sf at https://github.com/edzer/sfr/wiki/migrating
remove deprecated st_list
rename st_makegrid to st_make_grid, and st_linemerge to st_line_merge
add NEWS.md file (#207)
faster conversion of data.frame into POINT sf object, using st_as_sf (Michael Sumner)
rbind method for sf objects keeps coordinate reference system
add st_contains_properly spatial predicate
GEOS functions (geometry operations) accept XYZ geometries (and ignore Z)
make prepared = TRUE the default for all geometry binary operations
add user interrupt checks in all GEOS geometry operations
make st_graticule do something useful for polar projections
make st_graticule return NA labels when labels are useless
add merge.sf methods to merge sf object and data.frame (#193)
add st_join for table joins based on (user-defined) spatial predicates
add dplyr-style non-spatial joins for sf objects (left_join, full_join etc.) (#193)
allow for multiple non-gathered variables (#196)
add missing meridian to st_graticule (#198)
add merge method (#193)
st_graticule for laea (#198)
allow st_buffer with feature-dependent buffer distance (#197)
have spread return an sf object (#196)
clarify overwrite = TRUE in write docs
fix st_as_sf.map (#194)
add prepared arg to spatial binary predicates, to speed up large intersections
add st_voronoi interface (requires that lib GEOS >= 3.5.0)
add st_as_sf methods for map objects (library maps)
add RStudio project file
have st_bbox return a bbox object which has an st_crs method
rename st_drop_zm into st_zm, for general more handling of Z and M
allow for 3D coordinates returned, when +proj=geocent (#172; #103)
fix NA_integer_ handling in shapefiles I/O (#184)
add and fix st_agr API, to set and get attribute-to-geometry relationships