- fix OSM XML output
- fix for pandas 1.0
- fix errant print statement
- fix .osm xml output
- fix geopandas future compatibility
- fix get_nearest_edges search when not using a spatial index
- drop formal python 2 support
- refactor all modules for cleaner package organization
- make stats betweenness centrality compatible with networkx>=2.4
- allow configurable overpass and nominatim endpoints
- allow gdf_from_places to take a which_result list argument
- handle zero-division in street grade calculation
- better footprint relation handling
- improve network type queries for better filtering
- fix pois_from_polygon returning points outside polygon
- remove deprecated buildings module
- filter steps ways out of bike queries
- convert CRS-handling to proj4 strings
- save graph to xml-formatted .osm file
- minor refactoring
- deprecate buildings module and replace with generalized footprints module
- improve handling of multipolygon footprints
- new function to find nearest edge(s), given coordinates
- add "search," "reverse," and "lookup" nominatim queries
- use unprojected graphs for figure-ground plotting functions
- allow non-integer osmid values for custom data
- improve get_route_edge_attributes function
- improve color mapping by node/edge attribute value
- make bidirectional network types explicit
- networkx compatibility fixes to resolve warnings
- add python 3.7 compatibility
- add convenience function to plot several routes over the same map
- optimize graph truncation to bounding box
- give self-loops a null bearing when calculating edge bearings
- make accept-language http header explicit and configurable
- add citation function
- refactor POI module
- add Gephi compatibility argument for saving GraphML
- handle square bracket encapsulated strings when loading GraphML
- add ability to retrieve points of interest
- improve performance for retrieving huge geographies' street networks
- fix building footprint retrieval query syntax
- minor bug fixes
- add fast nearest-nodes search
- allow custom network query filters
- allow create_graph to return graph with no edges
- improve figure_ground joint smoothing
- fix handling of parallel edges when making multidigraph undirected
- generalize same-geometry checker
- improve detection of prior topology simplification
- custom error types for finer-grained handling
- turn off x- and y-axes to improve plotting appearance
- make floating-point precision and rounding more sensible
- improve OS path handling cross-platform
- replace great-circle distance calculator with haversine
- add access filter as configurable setting
- improve performance of inducing subgraphs
- fix utils.get_largest_component for networkx 2.2 compatibility
- fix config settings namespacing
- compatibility with networkx 2.1
- fix documentation build
- ignore ways marked access=no
- ability to load a graph from a .osm file
- change datum from NAD83 to WGS84
- make roundabouts one-way
- conformal plotting for unprojected graphs
- fix folium web maps rendering
- migrate to the networkx 2.0 API
- add optional cleaned intersections count to basic stats
- allow circuity to be calculated for projected or unprojected networks
- various code clean-up and refactoring
- add requirements files to distribution
- add ability to download other infrastructures besides just roads/paths (e.g., rail lines, power lines, etc.)
- calculate graph edges' bearings
- add ability to get nearest node by great circle or euclidean distance
- move examples/demo notebooks to new repo: osmnx-examples
- fix docstrings
- fix building footprint downloads that require multiple calls for large areas
- fix missing MultiPolygon import in buildings module
- functionality to clean-up and consolidate complex intersections
- let save_gdf_shapefile save building footprint GeoDataFrames
- set node color correctly in figure-ground diagrams
- add elevation module to get node elevations and street grades
- new color sequence creation and conversion functions in plot module
- new function to get a path's edge attribute values
- gracefully handle subpolygons that are invalid or have zero area
- make truncate_graph_polygon work on projected graphs
- plot_shape accepts a color or a list of colors
- make all requests to Overpass API set custom user-agent and referer
- rewrite algorithms to convert multidigraphs to multigraphs
- fix load_graphml so we can save a graph again after loading it
- fix load_graphml so edge oneway attribute is not always set to True
- buildings module gets buildings stored in OSM as relations as well as ways
- fix figure-ground diagram saving to make perfect square and smooth joints
- add optional graph argument to plot_figure_ground
- suppress jupyter notebook deprecation warnings
- plot entire networks with folium
- plot routes on top of networks with folium
- vectorize all great circle calculations
- new geocode function in utils
- remove geopy dependency
- refactor modules
- simplify before truncating by distance when getting graph by point and network distance
- project geometries, GeoDataFrames, and graphs to a passed-in CRS
- clean up docstrings throughout
- remove network code vestiges from buildings.py
- add route plotting with folium
- add downloading and visualization of building footprints
- updates for compatibility with matplotlib 2.0
- fixes for compatibility with networkx 2.0's new API
- make png default image save format
- figure-ground plots collect street network from a wider area
- add license file to dist package
- refactor modules
- add graph to GDF and GDF to graph functions
- add encoding argument to save_graph_shapefile
- add unit tests and continuous integration
- add street width attribute for ways from OSM
- make simplification error messages explicit
- process land use and area tags from OSM
- make intersection error messages clear
- first pre-release