Avoid problems arising from things like #39, systematically, by:
running mypy on each commit
running unit tests on each commit
adding unit tests to catch the specific error that was happening
some experimental usage of hypothesis (not sure that it was useful here, but I did want to have some documented uses of it, and I couldn't find any in our existing repos), and
random geolocation testing: tests ~60 randomly chosen locations in Massachusetts to ensure that at least one court is available
Not a ton of specific errors caught, but a few improvements made:
standardized the types that we return from our functions, sometimes it was sets, sometimes strings. I made each function consistent, although there are some functions (like that for appeals or the land court) that just return MACourt | None instead of a set.
don't load the geojson wards (which takes 300ms on my machine) if we don't use them
Avoid problems arising from things like #39, systematically, by:
Not a ton of specific errors caught, but a few improvements made:
MACourt | None
instead of a set.