Cityseer's underlying internals have been reimplemented in rust, therefore removing the reliance on `Numba`.
This offers several improvements:
- Better performance
- Unlike `Numba` there is no need for the underlying code to compile on first run
- Fewer issues related to `Numba` release cycles, which tended to lag official Python releases and sometimes introduced unexpected behaviour.
- `Numba` forced some difficult design patterns due to not being able to use `Numba` classes for parallelised code, and otherwise a reliance on numpy arrays which had to be passed around from function to function. The rust version offers more elegant approaches to handling and sharing data structures.
The higher level API is similar, though in has been simplified in several situations. Please see the API docs for more information.