All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.7.7 - 2024-09-25
- Bumped minimal QuackOSM version to
0.11.0
0.7.6 - 2024-08-29
- Changed a typo in the
BASE_OSM_GROUPS_FILTER
(implemented by @starsep).
- Added methods for saving and loading fittable
GeoVexEmbedder
(implemented by @sabman and @mhassanch). #457
0.7.5 - 2024-06-04
- Changed H3 regionalization logic from
IntersectsBoundary
toCovers
to properly assign H3 regions to geometries smaller than an H3 cell
0.7.4 - 2024-05-05
- Support for Python 3.12 after upgrading QuackOSM to
0.7.0
and DuckDB to0.10.2
- Refactored
ContextualCountEmbedder
by adding multiprocessing for faster transformations
0.7.3 - 2024-04-21
- Make geofabrik the default download source for OSMPbfLoader
0.7.2 - 2024-04-20
- Update tooling
- Remove Black in favour of Ruff format
- Conform to PEP 561
0.7.1 - 2024-04-17
- Issue caused by the change in the
h3-py
library 4.0.0b3 #431
0.7.0 - 2024-02-02
- Support for
BBBike
download service. - Option to merge a list of OSM tags filters into a single one.
- Refactored
PbfFileHandler
to useQuackOSM
library instead ofosmium
andGDAL
#405 - Changed the default pbf download source from
protomaps
download service toany
.
PbfFileLoader
and moved its logic toQuackOSM
library.- Support for
protomaps
download service. PbfFileClipper
(unnecessary after geospatial filtering has been incorporated into refactoredPbfFileHandler
) #405.PbfFileHandler
(unnecessary after moving away fromosmium
implementation).
- Bugs in GTFS Loader: missing index name and NaN handling (implemented by @zackAemmer).
0.6.2 - 2023-12-28
- CI release via GitHub Actions
- Set up docs style for having code examples from docstrings.
- Automatic warnings filtering inside
VoronoiRegionalizer
.
- Added option to parse
MultiPolygon
geometries insrai.geometry.remove_interiors
function.
0.6.1 - 2023-11-12
- Start writing examples in docstrings.
- Change documentation rendering style.
- Expose functions in
h3
module.
0.6.0 - 2023-11-02
- Update code to use Python 3.9 syntax.
- Support for Python 3.8.
0.5.2 - 2023-10-29
- Geofabrik and OSM Fr index caching and reading from cache to avoid reloading.
- Tests for Windows OS.
PbfFileClipper
temporary files operations moved to working directory.
0.5.1 - 2023-10-27
- Option for
CountEmbedder
and every other descendant embedder to useOsmTagsFilter
andGroupedOsmTagsFilter
as input toexpected_output_features
parameter.
- Modified
GEOFABRIK_LAYERS
definition to make more precisebuilding
tag values list by applying all accepted and popular tag values fromtagsinfo
.
0.5.0 - 2023-10-26
GeoVex
model as aGeoVexEmbedder
implemented by @mschrader15, proposed by @ddonghi & @annemorvan- Buffer geometries using
H3
cells by @mschrader15 - Option for
OSMLoaders
to parse any Shapely geometry, not onlyGeoDataFrames
.
0.4.1 - 2023-10-23
- Added more verbosity to the
AdministrativeBoundaryRegionalizer
.
- Added automatic features count clearing in
PbfFileHandler
after operation. - Added directory creation before saving OSM extracts index file.
0.4.0 - 2023-10-21
PbfFileClipper
for cutting biggerosm.pbf
files into smaller sizes for faster operations. Included clipping insidePbfFileDownloader
for new bigger extracts sources. #369
- Bumped
h3ronpy
library to0.18.0
with added support for MacOS. Removed override with check for H3 operations if system isdarwin
. Changed internal API to useContainmentMode
. - Refactored
OSMLoader
'sGroupedOsmTagsFilter
features grouping to be faster by refactoring pandas operations #354 - Sped up
VoronoiRegionalizer
by removing redundant intersection operations and vectorizing ecdf2geodetic calculations #351 - Sped up
ContextualCountEmbedder
by removing iteration over dataframe rows and vectorizing operations to work at a wholenumpy
array at once #359 - Added Geofabrik and OpenStreetMap.fr PBF extracts download services. Added automatic switch from default
protomaps
download service togeofabrik
on error. #158 #366
0.3.3 - 2023-08-13
- Modified
OSMPbfLoader
intersection logic. - Changed default tiles style for
plotting.plot_numeric_data
function.
0.3.2 - 2023-08-12
- Migrated the repository ownership from
srai-lab
tokraina-ai
. - Improved speed of
OSMPbfLoader
by moving intersection step to the end. - Changed API and improved
plotting.plot_numeric_data
function. - Changed
AdministrativeBoundaryRegionalizer
loading speed.
- Added checks for
osmnx
1.5.0
version with deprecatedgeometry
module.
0.3.1 - 2023-08-09
- Repaired bug with
VoronoiRegionalizer
and wrong polygon orientation.
0.3.0 - 2023-08-08
include_center
parameter to Neighbourhoods #288__version__
entry to library API. #305srai.h3
module with functions for translating list of h3 cells into shapely polygons and calculating local ij coordinates.
- Refactored H3Regionalizer to be faster using h3ronpy library #311
- BREAKING! Renamed NetworkType to OSMNetworkType and made it importable directly from
srai.loaders
#227 - BREAKING! Renamed osm_filter_type and grouped_osm_filter_type into OsmTagsFilter and GroupedOsmTagsFilter #261
- Removed osmnx dependency version cap #303
- BREAKING! Removed
utils
module #128srai.utils._optional
moved tosrai._optional
srai.utils._pytorch_stubs
moved tosrai.embedders._pytorch_stubs
srai.utils.download
moved tosrai.loaders.download
(and can be imported withfrom srai.loaders import download_file
)srai.utils.geocode
moved tosrai.regionalizers.geocode
(and can be imported withfrom srai.regionalizers import geocode_to_region_gdf
)srai.utils.geometry
andsrai.utils.merge
moved tosrai.geometry
srai.utils.typing
moved tosrai._typing
- Improved simplification and buffering of polygons for Protomaps extracts #309
- Eliminated some occasional errors in large scale executions of VoronoiRegionalizer #313
0.2.0 - 2023-07-05
- Loading and saving fittable embedders
- BREAKING: renamed Regionizer to Regionalizer #282
- Freeze osmnx version to <=1.4.0, as 1.5.0 is not compatible with our code #303
0.1.1 - 2023-04-27
- SlippyMapRegionizer
- OSMTileLoader
- GTFS Loader from gtfs2vec paper
- GTFS2Vec Model from gtfs2vec paper
- GTFS2Vec Embedder using gtfs2vec model
- Hex2Vec Model from hex2vec paper
- Hex2Vec Embedder using hex2vec model
- Highway2Vec Model from highway2vec paper
- Highway2Vec Embedder using highway2vec model
- OSMOnlineLoader
- OSMPbfLoader
- OSMWayLoader
- Neighbourhood
- H3Neighbourhood
- AdjacencyNeighbourhood
- CountEmbedder
- ContextualCountEmbedder
- (CI) Changelog Enforcer
- Utility plotting module based on Folium and Plotly
- Project README
- Documentation for srai library
- Citation information
- Change embedders and joiners interface to have
.transform
method - Change linter to Ruff and removed flake8, isort, pydocstyle
- Change default value inside
transform
function of IntersectionJoiner to not return geometry. - Make torch and pytorch-lightning as optional dependencies (#210)
- IntersectionJoiner incorrectly returned feature columns when
return_geom=False
(#208) - Tests for pandas >=2
0.0.1 - 2022-11-23
- PDM as a dependency management tool
- black, flake8, isort, mypy, pytest-cov
- pre-commit configuration
- Apache 2.0 license
- mkdocs for documentation
- GitHub pages to host documentation
- initial requirements
- H3 Regionizer
- Voronoi Regionizer
- Administrative Boundary Regionizer
- Intersection Joiner
- Geoparquet Loader