There's definitely more than just this list (I'll keep expanding it) but here's a starting point for the things we need to do before we tag a 1.0 release:
[x] rename output columns to match the tex document
[x] add the sections from the latex to the sphinx docs (things like the input param description, output description, high level model overview, etc)
[x] param file
[x] output columns
[x] model description
[x] make sure readable_col_names exactly matches the tex table
[ ] finish up the function level docs
[x] replace all print() with logging (there's only a few left)
[x] cleanup logging output (e.g. viz.plot defaults to INFO, there's a warning when falling back to numpy in postprocess that should be info, etc)
[x] add some descriptions to the (many) tqdm bars so the user knows what's being progressed
[x] I renamed the columns in the csse historical file to 'cumulative_reported_cases' and 'cumulative_deaths' (from 'Confirmed' and 'Deaths'. I think I cleaned up everywhere that matters but we need to test that this didn't break anything downstream.
[ ] add something like scripts/ and include all the run scripts?
[x] move some of the hardcoded params around things like doubling time and case reporting estimation to param file
[ ] we moved the "main" ones but things related to the mpert distributions still need to be moved over
[ ] lint everything and setup github actions and commit hooks
[x] isort
[x] black
[x] flake8
[ ] pylint (this might be too much...)
[x] add support for storing Aij as a sparse matrix for when you can't spare the mem
There's definitely more than just this list (I'll keep expanding it) but here's a starting point for the things we need to do before we tag a 1.0 release: