Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR integrates upstream changes to routee-compass to enable disjoint edge list modeling in preparation for GTFS-based routing in bambam. The changes update dependencies, modify the main application structure to use the newer routee-compass API, and introduce new setup scripts for test data management.
- Update routee-compass dependencies to use git branches instead of crates.io releases
- Refactor main application to use CompassApp API directly rather than command line runner
- Replace test setup scripts with new Python-based approach using osmnx and compass libraries
Reviewed Changes
Copilot reviewed 15 out of 16 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| script/setup_test_bambam_osm.sh | New script to download OSM test dataset |
| script/setup_test_bambam.sh | Updated to use Python script for Denver scenario setup |
| script/setup_test_bambam.py | New Python script using osmnx to generate compass dataset |
| rust/bambam/src/main.rs | Major refactor to use CompassApp API directly with new test |
| rust/bambam/Cargo.toml | Convert dependency versions to workspace references |
| rust/bambam-osm/src/model/osm/graph/compass_writer.rs | Update to use EdgeConfig instead of Edge |
| rust/bambam-osm/src/main.rs | Update test to use new OSM file name |
| rust/Cargo.toml | Update routee-compass dependencies to git branches and add missing workspace deps |
| configuration/denver_test.toml | New configuration file for Denver test scenario |
| .github/workflows/test.yaml | Update workflow to use new setup scripts |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| proportion_groups.into_iter(), | ||
| total = vertices.len(), | ||
| desc = "opportunities areal proportioning" |
There was a problem hiding this comment.
The total parameter was removed from the tqdm macro call, but the iterator proportion_groups doesn't have a known length. This will result in a progress bar without total progress indication, which may be confusing to users.
.github/workflows/rust-release.yaml
Outdated
| - name: Install test assets | ||
| run: | | ||
| ./setup.sh | ||
| ./setup_bambam_osm_test.sh |
There was a problem hiding this comment.
The script name setup_bambam_osm_test.sh doesn't match any of the actual script files created in this PR. It should be ./script/setup_test_bambam_osm.sh to match the new file structure.
.github/workflows/rust-publish.yaml
Outdated
|
|
||
| - name: Install test assets | ||
| run: | | ||
| ./setup_bambam_osm_test.sh |
There was a problem hiding this comment.
The script name setup_bambam_osm_test.sh doesn't match any of the actual script files created in this PR. It should be ./script/setup_test_bambam_osm.sh to match the new file structure.
There was a problem hiding this comment.
I agree with these changes. I tried to run the setup_test_bambam.sh script and failed in what seems to be a network error with a lot of numpy version warnings. I have seen those numpy warnings a lot in my laptop so I think it may be a me thing. The network error not sure. I'll dump the logs here:
Details
downloading denver_co scenario
importing osmnx, compass
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
Traceback (most recent call last): File "/Users/yessus/projects/bambam/script/setup_test_bambam.py", line 2, in <module>
import osmnx as ox
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/__init__.py", line 18, in <module>
from . import bearing as bearing
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/bearing.py", line 12, in <module>
from . import projection
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/projection.py", line 9, in <module>
import geopandas as gpd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/__init__.py", line 3, in <module>
from geopandas.geoseries import GeoSeries
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/geoseries.py", line 8, in <module>
import pandas as pd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/__init__.py", line 26, in <module>
from pandas.compat import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/compat/__init__.py", line 27, in <module>
from pandas.compat.pyarrow import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/compat/pyarrow.py", line 8, in <module>
import pyarrow as pa
File "/Users/yessus/anaconda3/lib/python3.12/site-packages/pyarrow/__init__.py", line 65, in <module>
import pyarrow.lib as _lib
Traceback (most recent call last):
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/numpy/core/_multiarray_umath.py", line 44, in __getattr__
raise ImportError(msg)
ImportError:
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
Traceback (most recent call last): File "/Users/yessus/projects/bambam/script/setup_test_bambam.py", line 2, in <module>
import osmnx as ox
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/__init__.py", line 18, in <module>
from . import bearing as bearing
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/bearing.py", line 12, in <module>
from . import projection
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/projection.py", line 9, in <module>
import geopandas as gpd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/__init__.py", line 3, in <module>
from geopandas.geoseries import GeoSeries
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/geoseries.py", line 8, in <module>
import pandas as pd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/__init__.py", line 49, in <module>
from pandas.core.api import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/api.py", line 9, in <module>
from pandas.core.dtypes.dtypes import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/dtypes/dtypes.py", line 24, in <module>
from pandas._libs import (
File "/Users/yessus/anaconda3/lib/python3.12/site-packages/pyarrow/__init__.py", line 65, in <module>
import pyarrow.lib as _lib
Traceback (most recent call last):
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/numpy/core/_multiarray_umath.py", line 44, in __getattr__
raise ImportError(msg)
ImportError:
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
Traceback (most recent call last): File "/Users/yessus/projects/bambam/script/setup_test_bambam.py", line 2, in <module>
import osmnx as ox
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/__init__.py", line 18, in <module>
from . import bearing as bearing
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/bearing.py", line 12, in <module>
from . import projection
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/projection.py", line 9, in <module>
import geopandas as gpd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/__init__.py", line 3, in <module>
from geopandas.geoseries import GeoSeries
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/geoseries.py", line 8, in <module>
import pandas as pd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/__init__.py", line 49, in <module>
from pandas.core.api import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/api.py", line 28, in <module>
from pandas.core.arrays import Categorical
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/arrays/__init__.py", line 1, in <module>
from pandas.core.arrays.arrow import ArrowExtensionArray
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/arrays/arrow/__init__.py", line 5, in <module>
from pandas.core.arrays.arrow.array import ArrowExtensionArray
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/arrays/arrow/array.py", line 52, in <module>
from pandas.core import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/ops/__init__.py", line 8, in <module>
from pandas.core.ops.array_ops import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/ops/array_ops.py", line 56, in <module>
from pandas.core.computation import expressions
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/computation/expressions.py", line 21, in <module>
from pandas.core.computation.check import NUMEXPR_INSTALLED
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/computation/check.py", line 5, in <module>
ne = import_optional_dependency("numexpr", errors="warn")
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/compat/_optional.py", line 135, in import_optional_dependency
module = importlib.import_module(name)
File "/Users/yessus/anaconda3/lib/python3.12/importlib/__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/Users/yessus/anaconda3/lib/python3.12/site-packages/numexpr/__init__.py", line 24, in <module>
from numexpr.interpreter import MAX_THREADS, use_vml, __BLOCK_SIZE1__
AttributeError: _ARRAY_API not found
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
Traceback (most recent call last): File "/Users/yessus/projects/bambam/script/setup_test_bambam.py", line 2, in <module>
import osmnx as ox
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/__init__.py", line 18, in <module>
from . import bearing as bearing
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/bearing.py", line 12, in <module>
from . import projection
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/projection.py", line 9, in <module>
import geopandas as gpd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/__init__.py", line 3, in <module>
from geopandas.geoseries import GeoSeries
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/geopandas/geoseries.py", line 8, in <module>
import pandas as pd
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/__init__.py", line 49, in <module>
from pandas.core.api import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/api.py", line 28, in <module>
from pandas.core.arrays import Categorical
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/arrays/__init__.py", line 1, in <module>
from pandas.core.arrays.arrow import ArrowExtensionArray
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/arrays/arrow/__init__.py", line 5, in <module>
from pandas.core.arrays.arrow.array import ArrowExtensionArray
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/arrays/arrow/array.py", line 66, in <module>
from pandas.core.arrays.masked import BaseMaskedArray
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/arrays/masked.py", line 61, in <module>
from pandas.core import (
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/core/nanops.py", line 52, in <module>
bn = import_optional_dependency("bottleneck", errors="warn")
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/pandas/compat/_optional.py", line 135, in import_optional_dependency
module = importlib.import_module(name)
File "/Users/yessus/anaconda3/lib/python3.12/importlib/__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/Users/yessus/anaconda3/lib/python3.12/site-packages/bottleneck/__init__.py", line 7, in <module>
from .move import (move_argmax, move_argmin, move_max, move_mean, move_median,
Traceback (most recent call last):
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/numpy/core/_multiarray_umath.py", line 44, in __getattr__
raise ImportError(msg)
ImportError:
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
Traceback (most recent call last): File "/Users/yessus/projects/bambam/script/setup_test_bambam.py", line 2, in <module>
import osmnx as ox
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/__init__.py", line 20, in <module>
from . import distance as distance
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/distance.py", line 28, in <module>
from sklearn.neighbors import BallTree
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/__init__.py", line 73, in <module>
from .base import clone # noqa: E402
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/base.py", line 19, in <module>
from .utils._metadata_requests import _MetadataRequester, _routing_enabled
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/utils/__init__.py", line 9, in <module>
from ._chunking import gen_batches, gen_even_slices
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/utils/_chunking.py", line 11, in <module>
from ._param_validation import Interval, validate_params
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/utils/_param_validation.py", line 17, in <module>
from .validation import _is_arraylike_not_scalar
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/utils/validation.py", line 21, in <module>
from ..utils._array_api import _asarray_with_order, _is_numpy_namespace, get_namespace
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/utils/_array_api.py", line 20, in <module>
from .fixes import parse_version
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/sklearn/utils/fixes.py", line 421, in <module>
import pyarrow
File "/Users/yessus/anaconda3/lib/python3.12/site-packages/pyarrow/__init__.py", line 65, in <module>
import pyarrow.lib as _lib
Traceback (most recent call last):
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/numpy/core/_multiarray_umath.py", line 44, in __getattr__
raise ImportError(msg)
ImportError:
A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.2.6 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.
downloading graph
Traceback (most recent call last):
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/connectionpool.py", line 464, in _make_request
self._validate_conn(conn)
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/connectionpool.py", line 1093, in _validate_conn
conn.connect()
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/connection.py", line 790, in connect
sock_and_verified = _ssl_wrap_socket_and_match_hostname(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/connection.py", line 969, in _ssl_wrap_socket_and_match_hostname
ssl_sock = ssl_wrap_socket(
^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/util/ssl_.py", line 480, in ssl_wrap_socket
ssl_sock = _ssl_wrap_socket_impl(sock, context, tls_in_tls, server_hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/util/ssl_.py", line 524, in _ssl_wrap_socket_impl
return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/anaconda3/lib/python3.12/ssl.py", line 455, in wrap_socket
return self.sslsocket_class._create(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/anaconda3/lib/python3.12/ssl.py", line 1042, in _create
self.do_handshake()
File "/Users/yessus/anaconda3/lib/python3.12/ssl.py", line 1320, in do_handshake
self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/connectionpool.py", line 787, in urlopen
response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/connectionpool.py", line 488, in _make_request
raise new_e
urllib3.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/requests/adapters.py", line 644, in send
resp = conn.urlopen(
^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/connectionpool.py", line 841, in urlopen
retries = retries.increment(
^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='overpass-api.de', port=443): Max retries exceeded with url: /api/interpreter (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)')))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/yessus/projects/bambam/script/setup_test_bambam.py", line 8, in <module>
g = ox.graph_from_place("Denver, Colorado, USA", network_type="drive")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/graph.py", line 395, in graph_from_place
G = graph_from_polygon(
^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/graph.py", line 495, in graph_from_polygon
G_buff = _create_graph(response_jsons, bidirectional)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/graph.py", line 624, in _create_graph
for response_json in response_jsons:
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/_overpass.py", line 402, in _download_overpass_network
yield _overpass_request(OrderedDict(data=query_str))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/osmnx/_overpass.py", line 469, in _overpass_request
response = requests.post(
^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/requests/api.py", line 115, in post
return request("post", url, data=data, json=json, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/requests/api.py", line 59, in request
return session.request(method=method, url=url, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/yessus/.cache/uv/archive-v0/QCd6U_Cuei8f2aZV7rGHe/lib/python3.12/site-packages/requests/adapters.py", line 675, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='overpass-api.de', port=443): Max retries exceeded with url: /api/interpreter (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)')))
I'm pretty sure the numpy warnings are a red herring here and the problem is ssl-related. Could you make sure you run it with your NREL VPN off as a quick sanity check? |
|
Aah yes, with the VPN off it run perfectly! |
this PR integrates upstream changes to routee-compass to allow for disjoint edge list modeling, in support of upcoming GTFS-based routing in bambam.
remaining work:
change Cargo.toml paths for routee-compass to point to crates.io release instead of git revisionmainas a stopgap to avoid possibly publishing broken code with edge lists refactor in compasssetup.shthat runs the denver example import