Conversation
Add explicit type casting, .copy() calls, and updated API usage to resolve deprecation warnings and SettingWithCopyWarning issues across roadway, transit, and utility modules.
- Set pd.options.future.infer_string = False to use object dtype for strings, maintaining compatibility with pandera - Fix geopandas to_json() pyarrow compatibility with reset_index - Update geopandas minimum version to 1.1.2 for pandas 3.0 support Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix reset_index() behavior with named RangeIndex in pandas 3.0 - Remove explicit None assignment for in_crs (let pandera use default) - Update tests for pandas 3.0 stricter type coercion - Update dependency versions: Python >=3.10, geopandas >=1.1.2, pandera >=0.29.0 - Remove geopandas extra from pandera (installed separately) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Test matrix now includes: - Python: 3.10, 3.11, 3.12, 3.13 - Pandas: 2 (>=2.2.3,<3.0) and 3 (>=3.0.0) Pandas version is specified during dependency installation to ensure all packages are resolved with the correct pandas version constraint. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Fix ruff B905 linting errors by adding explicit strict=True parameter to all zip() calls. This ensures iterables have matching lengths. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
pandas 3.0 requires Python 3.11+, so exclude that combination. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Contributor
📊 Benchmark ComparisonComparing PR branch to base branch No previous benchmark found in base branch. This will serve as the baseline. |
Update post-coverage action to download the correct artifact name `coverage-py3.13-pandas3` after the CI matrix was updated to include pandas version testing. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Contributor
Contributor
📊 Benchmark ComparisonComparing PR branch to base branch No previous benchmark found in base branch. This will serve as the baseline. |
Contributor
📊 Benchmark ComparisonComparing PR branch to base branch No previous benchmark found in base branch. This will serve as the baseline. |
lmz
approved these changes
Mar 26, 2026
Collaborator
lmz
left a comment
There was a problem hiding this comment.
Looks fine to me - thank you!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds full compatibility with pandas 3.0 while maintaining backwards compatibility with pandas 2.x.
Closes #437 and #441
Code Changes
__init__.py: Setpd.options.future.infer_string = Falseto use object dtype for strings (maintains pandera compatibility)io_table.py: Fix geopandasto_json()pyarrow compatibility withreset_index(drop=True)data.py: Fixreset_index()column naming for named RangeIndex (pandas 3.0 behavior change)edit_property.py: Don't setin_crsto None explicitly (let pandera use default value)Dependency Updates
Test Updates
test_transit_prop_changes.py: Handle pandas 3.0 stricter type coercion by converting columns to object dtype before assigning string valuesCI Updates
🤖 Generated with Claude Code