All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Use camelcase in
Responseattributes, e.g.errMsginstead oferr_msg
- Body fat endpoints accept generic inputs now, and process atomically. One error does not cause the others to fail, or return empty.
- Using
Sanicinstead ofFlask, andasynccontroller functions - Local
PostgreSQLconfiguration for Linux/macOS (support startup service) - Use
Sanicinstead ofFlaskfor server - Support for
nginxand ssl - Refactored controllers & services to more closely align with
MVCdesign pattern - No more
messageparameter onresponse, it has moved toresponse.dataand usually only as anerr_msgvalue, e.g.response.data.error - Response
classis now a functiondef, which acceptskwargsinstead of only arequestandresponse_typeparameter - Access members through module reference, rather than importing all individually
- Graceless crashes when
postgresserver was unreachable; now we operate in cowardly mode - Configuration issues with systemctl service and
envvars on the deployment server - Better error handling inside the Postgres module, and
exc_req()method
- Unit tests, with special
requirements-test.txtfile - BMR & other calculations for female users
- One rep maxes, and algebra to calculate also:
{1, 2, 3, 5, 8, 10, 12, 15, 20} - Links to all
GETrequests on home page - Better comments,
TODOnotes, and organized files generally - Information about CLI on main route
/(server landing page) - Systematic logging (logging module)
- Nginx config
- Coverage and other configs in
setup.cfg - A
deploy-devGitHub workflow, on self-hosted runner
- Shop functions (controller for orders/products,
cachelayer, Postman collection) - Specific
/bmr/<name_of_equation>endpoints, in favor of a general/bmrone - Slack message integrations (not the most production worthy mechanism)
- Packages
usps,py3dbp(and other references toFlask..gunicorn,Werkzeug)
- Initial release
- Support for most endpoints
Postgresdatabase driver and bindings- Add
@authannotation