allpawcare-accounts/CHANGELOG.md

173 lines
5.5 KiB
Markdown

# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.0.7] - 2024-05-05
### Added
1. Models subpackage:
- User class:
* get_dogs() method
* __str__() method that returns name attribute
* status attribute
- Dog class:
* get_age() method to calculate age of dog from birth_date attribute
* __str__() method that returns name attribute
- Visit class:
* __str__() method that returns date_time attribute
* __repr__() method that returns to_dict() method
2. App factory now in app_factory.py
3. Development and testing now have different configurations.
- development_config.py
- tests/testing_config.py
4. Makefile:
- Default help target
5. Views submodule:
- users.py:
* user_dogs_panel() view for users dashboard to config dogs
6. Jinja templates:
- Users my dogs panel for users dashboard
7. Tests:
- test_dog_model.py to test Dog model
### Changed
1. Models subpackage:
- User class:
* get_bookings() method renamed to get_visits()
* get_bookings_history() method renamed to get_visit_history()
- Dog class:
* age attribute renamed to birth_date
* status attribute now linked to User status
* __repr__() method now return to_dict() method
- Dog Submodule:
* BreedSize values are now specific
- Visit Submodule:
* VisitType values are now specific
2. Tests package:
- conftest.py:
* Updated to use new app_factory.py
* client() fixture renamed to http_client()
- test_user_model.py:
* Updated to use new app_factory.py
* Variables updated to reflect methods in User model
* test number of dogs user owns
3. Views submodel:
- Users dashboard route:
* Update User model object usage to reflect renamed methods
* Renamed variable user_dogs to user_pets
* user_pets template variable renamed to user_dogs
- User API endpoints:
* user_pets() view renamed to user_dogs()
* user_dogs() endpoint renamed to /users/<username>/dogs
4. Makefile:
- Target commands are no longer echoed when run.
5. Jinja templates:
- Login and Registration:
* Initial form work
- Users Dashboard:
* Page title now includes "Account Dashboard"
* pets_overview.html renamed to dogs_overview.html
* dogs_overview.html started using Bootstrap for styling
* visits_overview.html started using Bootstrap for styling
### Removed
1. Models subpackage:
- User class:
* removed redundent import from get_visit_history() method
2. Nix shell:
- Exported environment variables
3. Tests:
- test_user_model.py:
* Unused imports
### Fixed
1. Fixed typo in CHANGELOG.md
2. Makefile:
- Comments used by help target now use correct symbol (##)
3. Models subpackage:
- Dog class:
* to_dict() method should now return dict representation of Dog object
- User class:
* get_visit_history() method renamed to get_visit_overview()
* to_dict() method should now return dict representation of User object
- Visit class:
* to_dict() method should now return dict representation of Visit object
4. Jinja templates:
- Users Dashboard:
* Page header changed to "Account Dashboard"
* Update dog overview include
5. App factory:
- DB dog test data updated to use birth_date attribute
- DB test data for the dog Rufus changed to reflect actual breed_size
## [0.0.6] - 2024-04-28
### Added
1. This changelog file. Hooray!
2. Nix shell:
- Retext now available to easily view markdown files
3. Makefile targets:
- view-readme now available for convenient README.md viewing.
- view-changelog now available for convenient CHANGELOG.md viewing.
4. Models subpackage:
- Status class
- Dog subpackage:
* BreedSize class
* Dog class:
+ age column
+ breed_size column
+ created_at column
+ status column
+ updated_at column
- User class:
* created_at column
* name column
* updated_at column
- Visit subpackage:
* VisitType class
* Visit class:
+ created_at column
+ updated_at column
+ visit_type column
+ get_date method
+ get_time method
5. Tests:
- Test for User db model class (test_user_model.py)
- testing_app.py:
* added additional user (Real Person)
6. Jinja templates:
- User dashboard:
* Pets overview table [subtemplate](/accounts/templates/users/dashboard/pets_overview.html)
### Changed
1. Models subpackage:
- back_populates replaced backref parameter to explicitly define table relationships
- Dog class moved to its own [subpackage](/accounts/models/dog/__init__py) of models
- Visit class moved to its own [subpackage](/accounts/models/visit/__init__.py)) of models
2. Tests:
- testing_app.py:
* updated models to use new columns in database seeding function
* seeded db data changed to be more unique
3. Jinja templates:
- User dashboard:
* User visit overview [renamed](/accounts/templates/users/dashboard/visits_overview.html)
### Removed
1. Nix development shell:
- Inlyne markdown viewer (replaced by Retext)
2. Jinja templates:
- User Dashboard:
* User details no longer displayed