* made migration more fault tolerant
* added edgecase for recipes with no ings/instructions
* keep log for debugging
---------
Co-authored-by: Kuchenpirat <24235032+Kuchenpirat@users.noreply.github.com>
* implemented copymethat migration
* added migration tree
* added translation support
* genericized example jpgs
* added test data
* fixed test archive
* switched recipe create to service
added test for timeline event creation
* linting
* lxml go brrr
* upgrade sqlalchemy to 2.0
* rewrite all db models to sqla 2.0 mapping api
* fix some importing and typing weirdness
* fix types of a lot of nullable columns
* remove get_ref methods
* fix issues found by tests
* rewrite all queries in repository_recipe to 2.0 style
* rewrite all repository queries to 2.0 api
* rewrite all remaining queries to 2.0 api
* remove now-unneeded __allow_unmapped__ flag
* remove and fix some unneeded cases of "# type: ignore"
* fix formatting
* bump black version
* run black
* can this please be the last one. okay. just. okay.
* fix repository errors
* remove return
* drop open API validator
---------
Co-authored-by: Sören Busch <fleshgolem@gmx.net>
* update naming
* refactor tests to use shared structure
* shorten names
* add tools test case
* refactor to support multi-tenant
* set group_id on creation
* initial refactor for multitenant tags/cats
* spelling
* additional test case for same valued resources
* fix recipe update tests
* apply indexes to foreign keys
* fix performance regressions
* handle unknown exception
* utility decorator for function debugging
* migrate recipe_id to UUID
* GUID for recipes
* remove unused import
* move image functions into package
* move utilities to packages dir
* update import
* linter
* image image and asset routes
* update assets and images to use UUIDs
* fix migration base
* image asset test coverage
* use ids for categories and tag crud functions
* refactor recipe organizer test suite to reduce duplication
* add uuid serlization utility
* organizer base router
* slug routes testing and fixes
* fix postgres error
* adopt UUIDs
* move tags, categories, and tools under "organizers" umbrella
* update composite label
* generate ts types
* fix import error
* update frontend types
* fix type errors
* fix postgres errors
* fix#978
* add null check for title validation
* add note in docs on multi-tenancy
* add default assets for user profile
* add recipe avatar
* change user_id to UUID
* add profile image upload
* setup image cache keys
* cleanup tests and add image tests
* purge user data on delete
* new user repository tests
* add user_id validator for int -> UUID conversion
* delete depreciated route
* force set content type
* refactor tests to use temp directory
* validate parent exists before createing
* set user_id to correct type
* update instruction id
* reset primary key on migration
* refactor(backend): ♻️ cleanup duplicate code in http services
* refactor(backend): ♻️ refactor database away from singleton design
removed the database single and instead injected the session into a new Database class that is created during each request life-cycle. Now sessions no longer need to be passed into each method on the database
All tests pass, but there are likely some hidden breaking changes that were not discovered.
* fix venv
* disable venv cache
* fix install script
* bump poetry version
* postgres fixes
* revert install
* fix db initialization for postgres
* add postgres to docker
* refactor(backend): ♻️ cleanup unused and duplicate code in http services
* refactor(backend): remove sessions from arguments
* refactor(backend): ♻️ convert units and ingredients to use http service class
* test(backend): ✅ add unit and food tests
* lint
* update tags
* re-enable cache
* fix missing fraction in db
* fix lint
Co-authored-by: hay-kot <hay-kot@pm.me>
* format with black
* black format
* flake8
* remove bar exceptions
* remove test for depreciated route
* recipe settings editr
* add sqlite
Co-authored-by: hay-kot <hay-kot@pm.me>
* formatting
* snake case all recipes entries
* set foreign key to int
* run scheduler at startup and not import
* set SQLite file path before imports
Co-authored-by: hay-kot <hay-kot@pm.me>