This makes the logs understandable and should fix the issue where the
last line of one_step_import's output is sometimes a warning instead of
the map name.
- Echo process output to the main UI's stdout, for easier debugging
- Remove the timing breakdown from elevation import, since it breaks
when the function bails out early
Originally this check was useful for people to discover missing
dependencies before spending time trying to import. But the importing
process has changed considerably since then -- much of the time, it gets
called by one_step_import through the UI. It has no need for those 3
commands in that case. If somebody winds up needing any of these
external commands, they'll still get a good error eventually.
The v1 path that all callers need is available by transforming PathV2 to
v1. The plan is to now gradually change callers to natively use PathV2
instead.
This lets us clean up some of the old pathfinding v1 code, removing some
duplicate code!
Also improve that debugger to show a different cost for each side of the
road. The cost to turn around and reach a building on the other side of
the road may be high, so this really makes the debugger more
understandable.
No behavioral change here; this is a trivial transformation. If a
directed road has any walkable lane, then there's exactly 1 of them. I
verified by manually checking paths and also seeing prebaked results
having zero diff.
The lakeslice regressions were actually introduced over the last few
weeks as I scrambled to get elevation data working; it's not really
related to pathfinding v2. It's hard to blame individual changes for
making things here worse; the lakeslice map in particular has always
been super brittle. Emergent behavior means when things in one part of
the map slighly change, the ripple effects elsewhere can be harsh.
Originally #439 was motivated by a crash (in Ballard, I think), but
getting lakeslice to work so much better is worth reintroducing this.
When we find the bug again, we can solve it another way and do a better
job of watching for regressions in gridlock.
signals using uber turn groups. #555
This was an old half-baked experiment for handling a cluster of traffic
signals. Since then, merging intersections (by manually tagging them in
OSM for now, maybe automatically in the future) has proven better.
Removing this old code in preparation for pathfinding v2.