- Increased minimum Python version to 3.9 and refreshed dependencies.
- Adopted
importlib.resources
in place ofpkg_resources
. - Removed deprecated
to_socrata
method and associated resources. - Performed miscellaneous internal cleanup tasks.
- Adopted pyogrio for faster shapefile reads.
- Improved handling of decade-based shapefiles (urban areas, ZCTAs).
- Implemented a fix for a bug wherein certain annotation values for
EA
/MA
variables triggered an error. - Refreshed dependencies.
- Improved documentation on shapefile caching.
- Pruned documentation on deprecated
to_socrata
method. - Refreshed dependencies.
- Fixed a bug affecting certain queries with
in_geo=['state:*']
. - Added
to_socrata
deprecation warning. - Consolidated dev tooling under Ruff and refreshed dependencies.
- Increased minimum Python version to 3.8 and refreshed dependencies.
- Fixed a bug affecting environments where an expected system cache directory does not exist.
- Updated deprecated
MultiPolygon
iteration logic to quiet Shapely warnings.
- Refreshed dependencies and removed unnecessary NumPy import.
- Added optional
wait_for_finish
parameter toQuery.to_socrata
. - Expanded test coverage and made various internal tweaks/fixes.
- Added support for multiple Cartographic Boundary Shapefile resolutions (
500k
,5m
,20m
) via the optionalQuery
parameterresolution
. - Consolidated package constants and types in the
constants
module.
- Adopted Census Gazetteer files as source for point geometry.
- Adopted HTTPX in place of aiohttp for async HTTP requests.
- Relocated logic to reproject geometry from NAD 83 to WGS 84 so that it is only executed when publishing a dataframe to Socrata.
- Changed
Query
's geospatial parameter from the Booleanjoin_geography
to the (optional) stringgeometry
, which supports joining either points or polygons. - Replaced the three default geometry columns
centroid
,internal_point
, andgeometry
(produced byjoin_geography=True
) with the single columngeometry
, which may contain point or polygon data. - Removed support for
Query
parametersjoin_geography
andverify_ssl
, as well as the long-obsoletetable
. - Removed the
difference
andpercent_change
columns from output. - Removed custom logic to clean up and title-case variable label and concept strings from the Census API.
- Streamlined logging for
Query
output and warnings. - Refreshed minimum versions for all dependencies.
- Fixed a bug that occurred when serializing geometry to WKT under certain conditions.
- Refreshed dev dependencies and loosened some version restrictions.
- Fixed a bug affecting environments where an expected system cache directory does not exist.
- Refreshed dependencies and loosened some version restrictions.
- Added logic to drop duplicate rows when finalizing
Query
output.
- Added support for pandas 1.x.
- Added support for socrata-py 1.x.
- Added logic to programmatically specify column types in Socrata dataset schema, fixing a rare issue wherein all columns would be left as plain text.
- Changed logic for CRS assignment to silence annoying GeoPandas warnings.
- Fixed a bug wherein extra rows were produced for certain geography hierarchies.
- Added logic to warn and skip missing or corrupted shapefiles.
- Added logic to insert NAs in place of annotated values.
- Fixed a bug caused by attempting to drop nonexistent columns when pulling in variable metadata.
- Added
Geo
class to parse specified geographies. - Fixed a bug wherein extraneous rows were produced for certain geographic hierarchies.
- Removed
topics
module.
- Added improved error handling and warnings throughout.
- Improved error reporting upon failed retry of a request to the Census API.
- Fixed a bug afflicting shapefile downloads.
- Adopted Poetry as dependency manager for project.
- Fixed a stubborn race condition bug caused by order of geospatial package imports.
- Adopted nest-asyncio to enable easier use in Jupyter Notebooks.
- First major release.