Dustin Carlino
bd340a1970
Switch from std::fs to fs_err. When files aren't found, the error message actually includes the path!
2022-01-17 17:30:51 +00:00
Dustin Carlino
ec9ed9c64c
Import a small slice of Kennington with a very representative set of London-specific map model issues. Add it to the screenshot tests, replacing Great Kneighton as the GB test. And trim out lakeslice from the test; we don't need quite so much redundancy for Seattle.
2021-12-09 14:31:20 +00:00
Dustin Carlino
bb15d3a368
Convert updater to structopt. #745
2021-11-01 12:46:57 -07:00
Dustin Carlino
a85915f647
Refine high_stress_for_bikes to take direction into account. Northbound bike lanes on Roosevelt don't really matter when going southbound.
...
Regenerate all maps, since this maybe affects edge weights.
And try some ideas for understanding why files change.
2021-10-18 13:41:31 -07:00
Dustin Carlino
a12ceac38b
Cutover from the S3 bucket in one region to the Cloudfront CDN
2021-09-14 10:55:33 -07:00
Dustin Carlino
66be29d752
Import a new city using Overpass, instead of Geofabrik + clipping. #523
...
The returned XML seems to be missing lots of stuff, but it's much faster
and wasn't hard to wire up. I'll look into fixing the query...
2021-07-12 14:06:54 -07:00
Dustin Carlino
f37e71236f
Some fixups to the regenerated data from the past two commits:
...
- handle when the equiv_pos of a driveway gets too close to the edge of
another lane
- make the updater workflow handle files from S3 that're a bit older
- remove pathfinding_avoiding_roads
- strip out old vehicle capping from map edit JSON, then fix up
proposals
- delete old capping API example
- temporarily give up on phinney; it starts gridlocking
- add broadmoor proposal link in-game
2021-07-05 17:51:40 -07:00
Dustin Carlino
f57278e9cd
Enable the new walking turn algorithm for consolidated intersections
...
only. It has much simpler logic and produces correct results for these
intersections, but it has degradations in some cases -- so limit where
we use it.
But in the meantime, this makes realistic crosswalks over Aurora,
fixing crazy walking detours there.
Not regenerating yet.
2021-06-24 12:41:38 -07:00
Rémi Lauzier
1a4b997818
Fix some clippy warnings
2021-06-16 16:21:35 -07:00
Dustin Carlino
5aa00955f9
Clean up the timer.parallelize API, getting rid of the weird enum to
...
toggle how many CPUs to thrash. We always use all of them, except for
one case, where a separately named method is more clear. Also make that
variation use all but 1 CPU, instead of just half.
2021-05-27 17:47:22 -07:00
Dustin Carlino
5fca901e4c
Give up on Docker and AWS Batch to bulk import cities. Switch to static
...
sharding with GCE instead. #326
2021-05-18 09:50:28 -07:00
Dustin Carlino
56b16f8dae
Enforce that the updater is run from the root dir; it assumes data/ exists.
2021-05-15 11:49:42 -07:00
Vinzent Steinberg
fd3b0e2a14
Fix compilation failures and most clippy warnings ( #642 )
...
* abstutil: Fix compilation failure
* map_gui: Fix compilation
* traffic_signal_data: Fix compilation failure
* map_model: Fix compilation failure
* abstutil: Fix doctests
* abstio: Fix most clippy warnings
* abstutil: Fix most clippy warnings
* collisions: Fix clippy warning
* convert_osm: Fix clippy warnings
* sim: Fix most clippy warnings
* geom: Fix clippy warnings
* kml: Fix clippy warnings
* map_model: Fix most clippy warnings
* fifteen_min: Fix clippy warnings
* game: Fix many clippy warnings
* Disable some noisy clippy warnings
* headless: Fix clippy warnings
* importer: Fix clippy warnings
* map_editor: Fix clippy warnings
* map_gui: Fix clippy warnings
* osm_viewer: Fix clippy warnings
* parking_mapper: Fix most clippy warnings
* popdat: Fix clippy warnings
* santa: Fix clippy warnings
* sumo: Fix clippy warnings
* traffic_seitan: Fix clippy warning
* updater: Fix clippy warnings
* widgetry: Fix clippy warnings
* tests: Fix some clippy warnings
* Fix compilation on stable Rust
* Simplify unwrapping
* Make use of `Entry` more readable
* Fix formatting
* Fix code that was broken in the refactoring
* Apply cargo +stable fmt
* Fix code that was broken in the refactoring, second try
* Remove `Default` impls that are equivalent to `new`
* Remove obsolete clippy wrapper
* Avoid turbofish
* Prefer `unwrap_or_else` over allowing `clippy::or_fun_call`
* Remove redundant `into_iter`
* Fix typo
* Prefer `&& false` over commenting code out
* Fix some clippy warnings
Co-authored-by: Dustin Carlino <dabreegster@gmail.com>
2021-05-14 08:32:56 -07:00
Dustin Carlino
e02a1c17f2
Don't compute md5sums as much in the updater. #326
2021-05-11 11:39:54 -07:00
Dustin Carlino
66fa5c9862
Trim down the number of shared input files downloaded; only Seattle and GB need some of the big ones. #326
2021-05-06 17:35:58 -07:00
Dustin Carlino
6d4545eacb
Let the updater upload just a few changed/added files. This'll be useful temporarily while my main machine is still hosed, and I think it could be used with AWS Batch to upload results from importing in the cloud. #326
...
Finally we can push an updated map of Hiroshima for #636 .
2021-05-06 12:01:53 -07:00
Dustin Carlino
6c7c63e39f
Add an updater flag to just download updates without removing extra files
2021-05-06 10:56:52 -07:00
Dustin Carlino
4212b200d1
Download city.bin if needed
2021-04-20 16:18:21 -07:00
Dustin Carlino
7004cd7af2
Trim down the .zip build to only include Montlake -- that's it. [rebuild]
2021-04-20 16:10:17 -07:00
Dustin Carlino
faaa4162fa
Async map downloader for native, using the existing FutureLoader. Can
...
only print progress to the console, not the loading screen.
2021-04-19 17:55:42 -07:00
Dustin Carlino
da80aa5a71
Refactor abstio download helpers to plumb progress somewhere
2021-04-19 17:55:42 -07:00
Dustin Carlino
f51471f3ce
Speed up updater by not md5summing the few huge files we manage; just compare file size for them.
2021-04-19 10:56:10 -07:00
Dustin Carlino
ce473928fa
Use u64 to describe number of bytes in the Manifest, now that we have a massive GeoTIFF in there that breaks wasm's 2^32 usize limit. #586
2021-03-24 21:23:38 -07:00
Dustin Carlino
2eeee65653
Start to integrate Eldan's elevation_lookups tool. #82
...
So far, just call it for Seattle maps. Store the data sources in S3.
Note this'll only run on my machine right now, unless you also build the
Docker image locally. Failures in elevation should be skipped for now.
2021-03-18 11:18:05 -07:00
Dustin Carlino
a0c82088b9
Use our native download function instead of external curl command from the importer. #523
...
This forces the main importer to include tokio and propagate async a
bit. That seems worth it.
Also removed the quiet param from the download helpers; we always want
progress.
2021-03-17 10:29:28 -07:00
Dustin Carlino
77709a24d6
Refactor a method to asynchronously download a file on native, with a simple progress bar. #523
...
Use it in the updater and all the importer tools. Only place it's not
used yet is parking_mapper and the in-game updater. [rebuild]
Also make the RunCommand state understand the control code for erasing
the current line. It... sort of works.
2021-03-15 19:51:45 -07:00
Dustin Carlino
f0b522f89a
Figure out which files are in the us/huge_seattle DataPack more consistently. This'll now work from the proposals screen.
2021-03-10 12:40:55 -08:00
Dustin Carlino
006ae01216
Move 4 Seattle maps into the us/huge_seattle category to reduce the size
...
of the binary releases. [rebuild]
Handle this special case in the city picker UI, prompting the player to
do the extra download. NOT yet handling the same for the community
proposal screen -- player will just see a missing file error.
2021-03-03 18:03:15 -08:00
Dustin Carlino
4468240564
Parallelize file compression in the updater tool. Untested, but about to stress it...
2021-02-26 15:55:41 -08:00
Dustin Carlino
357ba15afe
Add back the zcool font so the Taipei map renders names. But this time, asynchronously load the font instead of bundling it in system assets and increasing the .wasm size. #535
...
Temporarily take on some technical debt with the new RawFileLoader...
2021-02-25 15:25:47 -08:00
Dustin Carlino
92e0c5c0af
Clean up empty directories in the updater. Especially for people
...
updating past things like the country code split, this prevents the game
from later crashing when it finds unexpected old directories.
2021-02-25 13:02:26 -08:00
Dustin Carlino
39f5d50fcd
The grand country split. #326
...
City names are now disambiguated by a two-letter country code. This
commit handles almost everything needed to make this transition. Main
next steps are fixing up map edits automatically and making the city
picker UI understand the extra level of hierarchy.
A little bit of fallout: lakeslice gridlocks again; this regression is
actually from the recent traffic signal changes, but I'm just now
regenerating everything. Will fix soon.
2021-02-13 15:45:59 -08:00
Dustin Carlino
1e635d682d
Generate an updater config file to opt into everything. When I import new places, I need to personally run this, or I'll erase my own imports later.
2021-02-11 15:45:42 -08:00
Dustin Carlino
802a647a81
Import Providence for a student project.
2021-01-27 15:34:54 -08:00
Dustin Carlino
9ddf658e96
Dedupe must_run_cmd. I think I did this before updater took a dependency on abstutil.
2021-01-19 14:41:56 -08:00
Dustin Carlino
30dc328f06
Compute md5sums in the updater in parallel. From 26s down to 6s!
2021-01-19 14:20:40 -08:00
Dustin Carlino
2837808206
Let the updater diff a single file to see if it's changed. Easier than md5sum and grepping data/MANIFEST.
2021-01-16 09:05:19 -08:00
Dustin Carlino
a7f3e998b7
Start to generate two simple scenario from actdev desire lines. https://github.com/cyipt/actdev/issues/32
2021-01-14 10:31:21 -08:00
Dustin Carlino
e99def9124
Switch all error handling to anyhow. Nothing consumes our code as a
...
library yet, so this is a step forward from string errors. Manually
tested how errors show up (including the nice with_context bit).
2021-01-05 11:35:03 -08:00
Dustin Carlino
5c04923dff
Split abstio crate out from abstutil. #253
...
widgetry, geom, and abstutil may wind up on crates.io in some form to
let other projects use widgetry. abstio has A/B Street-specific tricks
for reading data on native/web. Note widgetry still depends on abstio,
will figure out how to clean that up next.
2021-01-02 10:28:00 -08:00
Dustin Carlino
d7afe4d318
Add a fastpath to the updater to 'download' from a local copy, to undo local temporary work more easily.
2020-12-31 12:44:31 -08:00
Dustin Carlino
001aa836d2
Organize assets that're baked into widgetry. They don't belong in the
...
data/ directory, because they're statically bundled; they're not
actually read from the filesystem. #253
Two SVGs get duplicated between widgetry and abst assets -- dont_walk
and arrow_drop_down.
2020-12-28 10:40:55 -08:00
Dustin Carlino
14f692fc39
Turn more code in the importer into config. Ideally we just have code
...
for all the custom extra import data. #326
Verified there are no changes when importing the affected cities (except
for renaming the original OSM input file for Leeds to match the
geofabrik source)
Woops, and fix updater uploading with the compressed_size_bytes change.
2020-12-22 13:38:29 -08:00
Dustin Carlino
0fc0b8db65
Distinguish uncompressed/gzipped size in the updater tool. #377
2020-12-21 15:32:09 -08:00
Dustin Carlino
be3d1dc83b
Refactor github workflow, since most steps are OS-independent. Build all of the separate binaries. [rebuild] [release]
2020-11-29 16:01:18 -08:00
Dustin Carlino
e589f89922
Add a simple progress bar for updater downloads. #410
2020-11-26 16:12:16 -08:00
Dustin Carlino
1338a92dac
Let the updater pin to a release, for packaging releases for other platforms. #195
2020-11-09 11:36:12 -08:00
Dustin Carlino
1b4e25e12f
Get the downloader UI to actually fetch stuff. #326
2020-11-07 18:39:15 -08:00
Dustin Carlino
54ced5b5b4
Stub out a native-only UI to download extra cities. Move the config
...
about what cities somebody has opted into downloading to JSON and a more
common place. #326
Note this is a breaking change for this config file, but I don't think
many people have started using this yet.
2020-11-07 16:20:27 -08:00
Dustin Carlino
e0a8d82b61
Reorganize polygon files to importer/config, instead of data/input.
...
Nothing in data/input should be under version control; all of it is
managed by the updater. #326
2020-11-06 10:10:03 -08:00