mirror of
				https://github.com/mealie-recipes/mealie.git
				synced 2025-10-31 02:03:35 -04:00 
			
		
		
		
	style(backend): 🎨 add isort to lint and CI/CD
This commit is contained in:
		| @@ -8,10 +8,11 @@ from typing import Optional | ||||
| from fastapi import FastAPI | ||||
| from humps import camelize | ||||
| from jinja2 import Template | ||||
| from mealie.app import app | ||||
| from pydantic import BaseModel, Field | ||||
| from slugify import slugify | ||||
|  | ||||
| from mealie.app import app | ||||
|  | ||||
| CWD = Path(__file__).parent | ||||
| OUT_DIR = CWD / "output" | ||||
| TEMPLATES_DIR = CWD / "templates" | ||||
|   | ||||
							
								
								
									
										11
									
								
								makefile
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								makefile
									
									
									
									
									
								
							| @@ -44,14 +44,19 @@ clean-test: ## 🧹 Remove test and coverage artifacts | ||||
| 	rm -fr htmlcov/ | ||||
| 	rm -fr .pytest_cache | ||||
|  | ||||
| test-all: lint test ## 🧪 Check Lint Format and Testing | ||||
| test-all: lint-test test ## 🧪 Check Lint Format and Testing | ||||
|  | ||||
| test: ## 🧪 Run tests quickly with the default Python | ||||
| 	poetry run pytest | ||||
|  | ||||
| lint: ## 🧺 Format, Check and Flake8  | ||||
| 	poetry run black . | ||||
| lint-test: | ||||
| 	poetry run black . --check | ||||
| 	poetry run isort . --check-only | ||||
| 	poetry run flake8 mealie tests | ||||
|  | ||||
| lint: ## 🧺 Format, Check and Flake8  | ||||
| 	poetry run isort . | ||||
| 	poetry run black . | ||||
| 	poetry run flake8 mealie tests | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -2,10 +2,11 @@ from datetime import datetime, timedelta | ||||
| from pathlib import Path | ||||
|  | ||||
| from jose import jwt | ||||
| from passlib.context import CryptContext | ||||
|  | ||||
| from mealie.core.config import settings | ||||
| from mealie.db.database import db | ||||
| from mealie.schema.user import UserInDB | ||||
| from passlib.context import CryptContext | ||||
|  | ||||
| pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto") | ||||
| ALGORITHM = "HS256" | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| from typing import Callable, Generic, TypeVar, Union | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
| from sqlalchemy import func | ||||
| from sqlalchemy.orm import load_only | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
|  | ||||
| logger = get_logger() | ||||
|  | ||||
| T = TypeVar("T") | ||||
|   | ||||
| @@ -1,5 +1,7 @@ | ||||
| from logging import getLogger | ||||
|  | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.data_access_layer.group_access_model import GroupDataAccessModel | ||||
| from mealie.db.models.event import Event, EventNotification | ||||
| from mealie.db.models.group import Group | ||||
| @@ -26,7 +28,6 @@ from mealie.schema.recipe import ( | ||||
|     RecipeTagResponse, | ||||
| ) | ||||
| from mealie.schema.user import GroupInDB, LongLiveTokenInDB, SignUpOut, UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from ._base_access_model import BaseAccessModel | ||||
| from .recipe_access_model import RecipeDataAccessModel | ||||
|   | ||||
| @@ -1,7 +1,8 @@ | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.models.group import Group | ||||
| from mealie.schema.meal_plan.meal import MealPlanOut | ||||
| from mealie.schema.user.user import GroupInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from ._base_access_model import BaseAccessModel | ||||
|  | ||||
|   | ||||
| @@ -1,9 +1,10 @@ | ||||
| from random import randint | ||||
|  | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
| from mealie.db.models.recipe.settings import RecipeSettings | ||||
| from mealie.schema.recipe import Recipe | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from ._base_access_model import BaseAccessModel | ||||
|  | ||||
|   | ||||
| @@ -1,8 +1,9 @@ | ||||
| import sqlalchemy as sa | ||||
| from mealie.core.config import settings | ||||
| from sqlalchemy.orm import sessionmaker | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import settings | ||||
|  | ||||
|  | ||||
| def sql_global_init(db_url: str): | ||||
|     connect_args = {} | ||||
|   | ||||
| @@ -1,3 +1,5 @@ | ||||
| from sqlalchemy.orm import Session | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.core.config import settings | ||||
| from mealie.core.security import get_password_hash | ||||
| @@ -7,7 +9,6 @@ from mealie.db.db_setup import create_session, engine | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
| from mealie.schema.admin import SiteSettings | ||||
| from mealie.services.events import create_general_event | ||||
| from sqlalchemy.orm import Session | ||||
|  | ||||
| logger = root_logger.get_logger("init_db") | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from sqlalchemy import Boolean, Column, DateTime, Integer, String | ||||
|  | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
|  | ||||
|  | ||||
| class EventNotification(SqlAlchemyBase, BaseMixins): | ||||
|     __tablename__ = "event_notifications" | ||||
|   | ||||
| @@ -1,9 +1,10 @@ | ||||
| import sqlalchemy as sa | ||||
| import sqlalchemy.orm as orm | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import settings | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from mealie.db.models.recipe.category import Category, group2categories | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
|  | ||||
| class WebhookURLModel(SqlAlchemyBase): | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| import sqlalchemy.orm as orm | ||||
| from sqlalchemy import Column, Date, ForeignKey, Integer, String | ||||
| from sqlalchemy.ext.orderinglist import ordering_list | ||||
|  | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from mealie.db.models.group import Group | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
| from mealie.db.models.shopping_list import ShoppingList | ||||
| from sqlalchemy import Column, Date, ForeignKey, Integer, String | ||||
| from sqlalchemy.ext.orderinglist import ordering_list | ||||
|  | ||||
|  | ||||
| class Meal(SqlAlchemyBase): | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| import sqlalchemy as sa | ||||
|  | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| import sqlalchemy as sa | ||||
|  | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| import sqlalchemy as sa | ||||
| import sqlalchemy.orm as orm | ||||
| from mealie.core import root_logger | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from slugify import slugify | ||||
| from sqlalchemy.orm import validates | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
|  | ||||
| logger = root_logger.get_logger() | ||||
|  | ||||
| site_settings2categories = sa.Table( | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| from datetime import datetime | ||||
| from uuid import uuid4 | ||||
|  | ||||
| from sqlalchemy import Column, DateTime, ForeignKey, Integer, String, orm | ||||
|  | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
| from mealie.db.models.users import User | ||||
| from sqlalchemy import Column, DateTime, ForeignKey, Integer, String, orm | ||||
|  | ||||
|  | ||||
| def generate_uuid(): | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from sqlalchemy import Column, ForeignKey, Integer, String, orm | ||||
|  | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
|  | ||||
| from .._model_utils import auto_init | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
| from sqlalchemy import Column, ForeignKey, Integer, String | ||||
|  | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
|  | ||||
|  | ||||
| class RecipeInstruction(SqlAlchemyBase): | ||||
|     __tablename__ = "recipe_instructions" | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| import sqlalchemy as sa | ||||
|  | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| import sqlalchemy as sa | ||||
|  | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| import sqlalchemy as sa | ||||
|  | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| import sqlalchemy as sa | ||||
| import sqlalchemy.orm as orm | ||||
| from mealie.core import root_logger | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from slugify import slugify | ||||
| from sqlalchemy.orm import validates | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
|  | ||||
| logger = root_logger.get_logger() | ||||
|  | ||||
| recipes2tags = sa.Table( | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| import sqlalchemy as sa | ||||
|  | ||||
| from mealie.db.models._model_base import SqlAlchemyBase | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,8 +1,9 @@ | ||||
| import sqlalchemy as sa | ||||
| import sqlalchemy.orm as orm | ||||
| from sqlalchemy.orm import Session | ||||
|  | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from mealie.db.models.recipe.category import Category, custom_pages2categories, site_settings2categories | ||||
| from sqlalchemy.orm import Session | ||||
|  | ||||
|  | ||||
| class SiteSettings(SqlAlchemyBase, BaseMixins): | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| import sqlalchemy.orm as orm | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from mealie.db.models.group import Group | ||||
| from requests import Session | ||||
| from sqlalchemy import Boolean, Column, ForeignKey, Integer, String | ||||
| from sqlalchemy.ext.orderinglist import ordering_list | ||||
|  | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from mealie.db.models.group import Group | ||||
|  | ||||
|  | ||||
| class ShoppingListItem(SqlAlchemyBase, BaseMixins): | ||||
|     __tablename__ = "shopping_list_items" | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from sqlalchemy import Boolean, Column, Integer, String | ||||
|  | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
|  | ||||
|  | ||||
| class SignUp(SqlAlchemyBase, BaseMixins): | ||||
|     __tablename__ = "sign_ups" | ||||
|   | ||||
| @@ -1,8 +1,9 @@ | ||||
| from sqlalchemy import Boolean, Column, ForeignKey, Integer, String, orm | ||||
|  | ||||
| from mealie.core.config import settings | ||||
| from mealie.db.models._model_base import BaseMixins, SqlAlchemyBase | ||||
| from mealie.db.models.group import Group | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
| from sqlalchemy import Boolean, Column, ForeignKey, Integer, String, orm | ||||
|  | ||||
|  | ||||
| class LongLiveToken(SqlAlchemyBase, BaseMixins): | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| from fastapi import APIRouter | ||||
|  | ||||
| from mealie.schema.recipe import RecipeSettings | ||||
|  | ||||
| router = APIRouter(prefix="/recipes") | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| from fastapi import Depends | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.routers import AdminAPIRouter | ||||
| from mealie.schema.events import EventsOut | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = AdminAPIRouter(prefix="/events") | ||||
|  | ||||
|   | ||||
| @@ -1,13 +1,14 @@ | ||||
| from http.client import HTTPException | ||||
|  | ||||
| from fastapi import Depends, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.routers import AdminAPIRouter | ||||
| from mealie.schema.events import EventNotificationIn, EventNotificationOut, TestEvent | ||||
| from mealie.services.events import test_notification | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = AdminAPIRouter() | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,8 @@ | ||||
| from fastapi import APIRouter, BackgroundTasks, Depends, Request, status | ||||
| from fastapi.exceptions import HTTPException | ||||
| from fastapi.security import OAuth2PasswordRequestForm | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core import security | ||||
| from mealie.core.security import authenticate_user | ||||
| from mealie.db.db_setup import generate_session | ||||
| @@ -8,7 +10,6 @@ from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.schema.user import UserInDB | ||||
| from mealie.services.events import create_user_event | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| public_router = APIRouter(tags=["Users: Authentication"]) | ||||
| user_router = UserAPIRouter(tags=["Users: Authentication"]) | ||||
|   | ||||
| @@ -4,6 +4,8 @@ from pathlib import Path | ||||
| from pprint import pprint | ||||
|  | ||||
| from fastapi import BackgroundTasks, Depends, File, HTTPException, UploadFile, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.core.root_logger import get_logger | ||||
| from mealie.core.security import create_file_token | ||||
| @@ -13,7 +15,6 @@ from mealie.schema.admin import BackupJob, ImportJob, Imports, LocalBackup | ||||
| from mealie.services.backups import imports | ||||
| from mealie.services.backups.exports import backup_all | ||||
| from mealie.services.events import create_backup_event | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = AdminAPIRouter(prefix="/api/backups", tags=["Backups"]) | ||||
| logger = get_logger() | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| from fastapi import APIRouter, Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import is_logged_in | ||||
| from mealie.routes.routers import AdminAPIRouter, UserAPIRouter | ||||
| from mealie.schema.recipe import CategoryIn, RecipeCategoryResponse | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| public_router = APIRouter() | ||||
| user_router = UserAPIRouter() | ||||
|   | ||||
| @@ -1,5 +1,7 @@ | ||||
| from fastapi import Depends | ||||
| from fastapi.routing import APIRouter | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import APP_VERSION, settings | ||||
| from mealie.core.root_logger import LOGGER_FILE | ||||
| from mealie.core.security import create_file_token | ||||
| @@ -7,7 +9,6 @@ from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.routers import AdminAPIRouter | ||||
| from mealie.schema.admin import AppInfo, AppStatistics, DebugInfo | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| admin_router = AdminAPIRouter(prefix="/api/debug", tags=["Debug"]) | ||||
| public_router = APIRouter(prefix="/api/debug", tags=["Debug"]) | ||||
|   | ||||
| @@ -4,11 +4,12 @@ from typing import Optional | ||||
| from fastapi import Depends, HTTPException, status | ||||
| from fastapi.security import OAuth2PasswordBearer | ||||
| from jose import JWTError, jwt | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import app_dirs, settings | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.schema.user import LongLiveTokenInDB, TokenData, UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/api/auth/token") | ||||
| oauth2_scheme_soft_fail = OAuth2PasswordBearer(tokenUrl="/api/auth/token", auto_error=False) | ||||
|   | ||||
| @@ -1,11 +1,12 @@ | ||||
| from fastapi import BackgroundTasks, Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import AdminAPIRouter, UserAPIRouter | ||||
| from mealie.schema.user import GroupBase, GroupInDB, UpdateGroup, UserInDB | ||||
| from mealie.services.events import create_group_event | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| admin_router = AdminAPIRouter(prefix="/groups", tags=["Groups: CRUD"]) | ||||
| user_router = UserAPIRouter(prefix="/groups", tags=["Groups: CRUD"]) | ||||
|   | ||||
| @@ -1,4 +1,7 @@ | ||||
| from fastapi import APIRouter, BackgroundTasks, Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
| from starlette.responses import FileResponse | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user | ||||
| @@ -8,8 +11,6 @@ from mealie.schema.user import GroupInDB, UserInDB | ||||
| from mealie.services.events import create_group_event | ||||
| from mealie.services.image import image | ||||
| from mealie.services.meal_services import get_todays_meal, set_mealplan_dates | ||||
| from sqlalchemy.orm.session import Session | ||||
| from starlette.responses import FileResponse | ||||
|  | ||||
| router = UserAPIRouter(prefix="/api/meal-plans", tags=["Meal Plan"]) | ||||
| public_router = APIRouter(prefix="/api/meal-plans", tags=["Meal Plan"]) | ||||
|   | ||||
| @@ -1,4 +1,6 @@ | ||||
| from fastapi import Depends | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| @@ -7,7 +9,6 @@ from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.schema.meal_plan import ListItem, MealPlanOut, ShoppingListIn, ShoppingListOut | ||||
| from mealie.schema.recipe import Recipe | ||||
| from mealie.schema.user import UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| logger = get_logger() | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| from fastapi import APIRouter | ||||
|  | ||||
| from mealie.routes.mealplans import crud, helpers | ||||
|  | ||||
| router = APIRouter() | ||||
|   | ||||
| @@ -1,9 +1,10 @@ | ||||
| from enum import Enum | ||||
|  | ||||
| from fastapi import APIRouter, HTTPException, status | ||||
| from mealie.schema.recipe import Recipe | ||||
| from starlette.responses import FileResponse | ||||
|  | ||||
| from mealie.schema.recipe import Recipe | ||||
|  | ||||
| """ | ||||
| These routes are for development only! These assets are served by Caddy when not | ||||
| in development mode. If you make changes, be sure to test the production container. | ||||
|   | ||||
| @@ -3,12 +3,13 @@ import shutil | ||||
| from typing import List | ||||
|  | ||||
| from fastapi import Depends, File, HTTPException, UploadFile, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.routers import AdminAPIRouter | ||||
| from mealie.schema.admin import MigrationFile, Migrations | ||||
| from mealie.services.migrations import migration | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = AdminAPIRouter(prefix="/api/migrations", tags=["Migration"]) | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| from fastapi import APIRouter | ||||
|  | ||||
| from mealie.routes.recipe import all_recipe_routes, comments, image_and_assets, ingredient_parser, recipe_crud_routes | ||||
|  | ||||
| prefix = "/recipes" | ||||
|   | ||||
| @@ -1,9 +1,10 @@ | ||||
| from fastapi import APIRouter, Depends | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.schema.recipe import RecipeSummary | ||||
| from mealie.services.recipe.all_recipes import AllRecipesService | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = APIRouter() | ||||
|  | ||||
|   | ||||
| @@ -1,13 +1,14 @@ | ||||
| from http.client import HTTPException | ||||
|  | ||||
| from fastapi import Depends, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.schema.recipe import CommentOut, CreateComment, SaveComment | ||||
| from mealie.schema.user import UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = UserAPIRouter() | ||||
|  | ||||
|   | ||||
| @@ -2,13 +2,14 @@ from shutil import copyfileobj | ||||
|  | ||||
| from fastapi import Depends, File, Form, HTTPException, status | ||||
| from fastapi.datastructures import UploadFile | ||||
| from slugify import slugify | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.schema.recipe import CreateRecipeByURL, Recipe, RecipeAsset | ||||
| from mealie.services.image.image import scrape_image, write_image | ||||
| from slugify import slugify | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| user_router = UserAPIRouter() | ||||
|  | ||||
|   | ||||
| @@ -1,9 +1,10 @@ | ||||
| from fastapi import APIRouter | ||||
| from pydantic import BaseModel | ||||
|  | ||||
| from mealie.services.scraper.ingredient_nlp.processor import ( | ||||
|     convert_crf_models_to_ingredients, | ||||
|     convert_list_to_crf_model, | ||||
| ) | ||||
| from pydantic import BaseModel | ||||
|  | ||||
| public_router = APIRouter() | ||||
|  | ||||
|   | ||||
| @@ -4,6 +4,10 @@ from zipfile import ZipFile | ||||
|  | ||||
| from fastapi import APIRouter, BackgroundTasks, Depends, File | ||||
| from fastapi.datastructures import UploadFile | ||||
| from scrape_schema_recipe import scrape_url | ||||
| from sqlalchemy.orm.session import Session | ||||
| from starlette.responses import FileResponse | ||||
|  | ||||
| from mealie.core.config import settings | ||||
| from mealie.core.root_logger import get_logger | ||||
| from mealie.db.database import db | ||||
| @@ -18,9 +22,6 @@ from mealie.services.image.image import write_image | ||||
| from mealie.services.recipe.media import check_assets | ||||
| from mealie.services.recipe.recipe_service import RecipeService | ||||
| from mealie.services.scraper.scraper import create_from_url | ||||
| from scrape_schema_recipe import scrape_url | ||||
| from sqlalchemy.orm.session import Session | ||||
| from starlette.responses import FileResponse | ||||
|  | ||||
| user_router = UserAPIRouter() | ||||
| public_router = APIRouter() | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| from typing import List, Optional | ||||
|  | ||||
| from fastapi import APIRouter, Depends | ||||
|  | ||||
| from mealie.routes.deps import get_admin_user, get_current_user | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,11 +1,12 @@ | ||||
| from fastapi import Depends | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.schema.meal_plan import ShoppingListIn, ShoppingListOut | ||||
| from mealie.schema.user import UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = UserAPIRouter(prefix="/shopping-lists", tags=["Shopping Lists: CRUD"]) | ||||
|  | ||||
|   | ||||
| @@ -1,11 +1,12 @@ | ||||
| from typing import Union | ||||
|  | ||||
| from fastapi import APIRouter, Depends | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.routers import AdminAPIRouter | ||||
| from mealie.schema.admin import CustomPageBase, CustomPageOut | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| public_router = APIRouter(prefix="/api/site-settings/custom-pages", tags=["Settings"]) | ||||
| admin_router = AdminAPIRouter(prefix="/api/site-settings/custom-pages", tags=["Settings"]) | ||||
|   | ||||
| @@ -1,4 +1,6 @@ | ||||
| from fastapi import APIRouter, Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user | ||||
| @@ -6,7 +8,6 @@ from mealie.routes.routers import AdminAPIRouter | ||||
| from mealie.schema.admin import SiteSettings | ||||
| from mealie.schema.user import GroupInDB, UserInDB | ||||
| from mealie.utils.post_webhooks import post_webhooks | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| public_router = APIRouter(prefix="/api/site-settings", tags=["Settings"]) | ||||
| admin_router = AdminAPIRouter(prefix="/api/site-settings", tags=["Settings"]) | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| from fastapi import APIRouter, Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import is_logged_in | ||||
| from mealie.routes.routers import AdminAPIRouter, UserAPIRouter | ||||
| from mealie.schema.recipe import RecipeTagResponse, TagIn | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| public_router = APIRouter() | ||||
| user_router = UserAPIRouter() | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| from fastapi import Depends, status | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import Session, generate_session | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| from fastapi import Depends, status | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import Session, generate_session | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| from fastapi import HTTPException, status | ||||
|  | ||||
| from mealie.schema.user.user import UserInDB | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -2,13 +2,14 @@ from datetime import timedelta | ||||
|  | ||||
| from fastapi import HTTPException, status | ||||
| from fastapi.param_functions import Depends | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.security import create_access_token | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.schema.user import CreateToken, LoingLiveTokenIn, LongLiveTokenInDB, UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| router = UserAPIRouter() | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,6 @@ | ||||
| from fastapi import BackgroundTasks, Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core import security | ||||
| from mealie.core.security import get_password_hash | ||||
| from mealie.db.database import db | ||||
| @@ -8,7 +10,6 @@ from mealie.routes.routers import AdminAPIRouter, UserAPIRouter | ||||
| from mealie.routes.users._helpers import assert_user_change_allowed | ||||
| from mealie.schema.user import UserBase, UserIn, UserInDB, UserOut | ||||
| from mealie.services.events import create_user_event | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| user_router = UserAPIRouter(prefix="") | ||||
| admin_router = AdminAPIRouter(prefix="") | ||||
|   | ||||
| @@ -1,11 +1,12 @@ | ||||
| from fastapi import Depends | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.routes.users._helpers import assert_user_change_allowed | ||||
| from mealie.schema.user import UserFavorites, UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| user_router = UserAPIRouter() | ||||
|  | ||||
|   | ||||
| @@ -3,6 +3,7 @@ import shutil | ||||
| from fastapi import Depends, File, HTTPException, UploadFile, status | ||||
| from fastapi.responses import FileResponse | ||||
| from fastapi.routing import APIRouter | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
|   | ||||
| @@ -1,4 +1,6 @@ | ||||
| from fastapi import Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import settings | ||||
| from mealie.core.security import get_password_hash, verify_password | ||||
| from mealie.db.database import db | ||||
| @@ -7,7 +9,6 @@ from mealie.routes.deps import get_current_user | ||||
| from mealie.routes.routers import UserAPIRouter | ||||
| from mealie.routes.users._helpers import assert_user_change_allowed | ||||
| from mealie.schema.user import ChangePassword, UserInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| user_router = UserAPIRouter(prefix="") | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,8 @@ | ||||
| import uuid | ||||
|  | ||||
| from fastapi import APIRouter, BackgroundTasks, Depends, HTTPException, status | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.security import get_password_hash | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import generate_session | ||||
| @@ -8,7 +10,6 @@ from mealie.routes.deps import get_admin_user | ||||
| from mealie.routes.routers import AdminAPIRouter | ||||
| from mealie.schema.user import SignUpIn, SignUpOut, SignUpToken, UserIn, UserInDB | ||||
| from mealie.services.events import create_user_event | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| public_router = APIRouter(prefix="/sign-ups") | ||||
| admin_router = AdminAPIRouter(prefix="/sign-ups") | ||||
|   | ||||
| @@ -2,9 +2,10 @@ from pathlib import Path | ||||
| from typing import Optional | ||||
|  | ||||
| from fastapi import APIRouter, Depends, HTTPException, status | ||||
| from mealie.routes.deps import validate_file_token | ||||
| from starlette.responses import FileResponse | ||||
|  | ||||
| from mealie.routes.deps import validate_file_token | ||||
|  | ||||
| router = APIRouter(prefix="/api/utils", tags=["Utils"], include_in_schema=True) | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -2,10 +2,11 @@ from datetime import date | ||||
| from typing import Optional | ||||
|  | ||||
| from fastapi_camelcase import CamelModel | ||||
| from mealie.db.models.mealplan import MealPlan | ||||
| from pydantic import validator | ||||
| from pydantic.utils import GetterDict | ||||
|  | ||||
| from mealie.db.models.mealplan import MealPlan | ||||
|  | ||||
|  | ||||
| class MealIn(CamelModel): | ||||
|     slug: Optional[str] | ||||
|   | ||||
| @@ -1,9 +1,10 @@ | ||||
| from typing import Optional | ||||
|  | ||||
| from fastapi_camelcase import CamelModel | ||||
| from mealie.db.models.shopping_list import ShoppingList | ||||
| from pydantic.utils import GetterDict | ||||
|  | ||||
| from mealie.db.models.shopping_list import ShoppingList | ||||
|  | ||||
|  | ||||
| class ListItem(CamelModel): | ||||
|     title: Optional[str] | ||||
|   | ||||
| @@ -3,12 +3,13 @@ from pathlib import Path | ||||
| from typing import Any, Optional | ||||
|  | ||||
| from fastapi_camelcase import CamelModel | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
| from pydantic import BaseModel, Field, validator | ||||
| from pydantic.utils import GetterDict | ||||
| from slugify import slugify | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
|  | ||||
| from .recipe_asset import RecipeAsset | ||||
| from .recipe_comments import CommentOut | ||||
| from .recipe_ingredient import RecipeIngredient | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| from fastapi_camelcase import CamelModel | ||||
|  | ||||
| from mealie.core.config import settings | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -4,12 +4,13 @@ from pathlib import Path | ||||
| from typing import Any, Optional | ||||
|  | ||||
| from fastapi_camelcase import CamelModel | ||||
| from mealie.core.config import app_dirs, settings | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
| from pydantic import BaseModel, Field, validator | ||||
| from pydantic.utils import GetterDict | ||||
| from slugify import slugify | ||||
|  | ||||
| from mealie.core.config import app_dirs, settings | ||||
| from mealie.db.models.recipe.recipe import RecipeModel | ||||
|  | ||||
| from .comments import CommentOut | ||||
| from .units_and_foods import IngredientFood, IngredientUnit | ||||
|  | ||||
|   | ||||
| @@ -1,12 +1,13 @@ | ||||
| from typing import Optional | ||||
|  | ||||
| from fastapi_camelcase import CamelModel | ||||
| from pydantic.types import constr | ||||
| from pydantic.utils import GetterDict | ||||
|  | ||||
| from mealie.core.config import settings | ||||
| from mealie.db.models.group import Group | ||||
| from mealie.db.models.users import User | ||||
| from mealie.schema.recipe import RecipeSummary | ||||
| from pydantic.types import constr | ||||
| from pydantic.utils import GetterDict | ||||
|  | ||||
| from ..meal_plan import MealPlanOut, ShoppingListOut | ||||
| from ..recipe import CategoryBase | ||||
|   | ||||
| @@ -5,13 +5,14 @@ from pathlib import Path | ||||
| from typing import Union | ||||
|  | ||||
| from jinja2 import Template | ||||
| from pathvalidate import sanitize_filename | ||||
| from pydantic.main import BaseModel | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import create_session | ||||
| from mealie.services.events import create_backup_event | ||||
| from pathvalidate import sanitize_filename | ||||
| from pydantic.main import BaseModel | ||||
|  | ||||
| logger = root_logger.get_logger() | ||||
|  | ||||
|   | ||||
| @@ -4,6 +4,9 @@ import zipfile | ||||
| from pathlib import Path | ||||
| from typing import Callable | ||||
|  | ||||
| from pydantic.main import BaseModel | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.db.database import db | ||||
| from mealie.schema.admin import ( | ||||
| @@ -21,8 +24,6 @@ from mealie.schema.events import EventNotificationIn | ||||
| from mealie.schema.recipe import CommentOut, Recipe | ||||
| from mealie.schema.user import UpdateGroup, UserInDB | ||||
| from mealie.services.image import minify | ||||
| from pydantic.main import BaseModel | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
|  | ||||
| class ImportDatabase: | ||||
|   | ||||
| @@ -1,8 +1,9 @@ | ||||
| import apprise | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import create_session | ||||
| from mealie.schema.events import Event, EventCategory | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
|  | ||||
| def test_notification(notification_url, event=None) -> bool: | ||||
|   | ||||
| @@ -3,6 +3,7 @@ from dataclasses import dataclass | ||||
| from pathlib import Path | ||||
|  | ||||
| import requests | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.schema.recipe import Recipe | ||||
| from mealie.services.image import minify | ||||
|   | ||||
| @@ -2,10 +2,11 @@ import shutil | ||||
| from dataclasses import dataclass | ||||
| from pathlib import Path | ||||
|  | ||||
| from PIL import Image | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.schema.recipe import Recipe | ||||
| from PIL import Image | ||||
|  | ||||
| logger = root_logger.get_logger() | ||||
|  | ||||
|   | ||||
| @@ -1,12 +1,13 @@ | ||||
| from datetime import date, timedelta | ||||
| from typing import Union | ||||
|  | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import create_session | ||||
| from mealie.schema.meal_plan import MealDayIn, MealPlanIn | ||||
| from mealie.schema.recipe import Recipe | ||||
| from mealie.schema.user import GroupInDB | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
|  | ||||
| def set_mealplan_dates(meal_plan_base: MealPlanIn) -> MealPlanIn: | ||||
|   | ||||
| @@ -4,6 +4,8 @@ from tempfile import TemporaryDirectory | ||||
| from typing import Any, Callable, Optional | ||||
|  | ||||
| import yaml | ||||
| from pydantic import BaseModel | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.db.database import db | ||||
| from mealie.schema.admin import MigrationImport | ||||
| @@ -11,7 +13,6 @@ from mealie.schema.recipe import Recipe | ||||
| from mealie.services.image import image | ||||
| from mealie.services.scraper import cleaner | ||||
| from mealie.utils.unzip import unpack_zip | ||||
| from pydantic import BaseModel | ||||
|  | ||||
| logger = root_logger.get_logger() | ||||
|  | ||||
|   | ||||
| @@ -1,11 +1,12 @@ | ||||
| from pathlib import Path | ||||
| from typing import Optional | ||||
|  | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.schema.admin import MigrationImport | ||||
| from mealie.services.migrations import helpers | ||||
| from mealie.services.migrations._migration_base import MigrationAlias, MigrationBase | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
|  | ||||
| class ChowdownMigration(MigrationBase): | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| from enum import Enum | ||||
| from pathlib import Path | ||||
|  | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.schema.admin import MigrationImport | ||||
| from mealie.services.migrations import chowdown, nextcloud | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| logger = root_logger.get_logger() | ||||
|  | ||||
|   | ||||
| @@ -2,11 +2,12 @@ from dataclasses import dataclass | ||||
| from pathlib import Path | ||||
| from typing import Optional | ||||
|  | ||||
| from slugify import slugify | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.schema.admin import MigrationImport | ||||
| from mealie.services.migrations import helpers | ||||
| from mealie.services.migrations._migration_base import MigrationAlias, MigrationBase | ||||
| from slugify import slugify | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
|  | ||||
| @dataclass | ||||
|   | ||||
| @@ -3,12 +3,13 @@ from functools import lru_cache | ||||
|  | ||||
| from fastapi import Depends, Response | ||||
| from fastapi.encoders import jsonable_encoder | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import SessionLocal, generate_session | ||||
| from mealie.routes.deps import is_logged_in | ||||
| from mealie.schema.recipe import RecipeSummary | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| logger = get_logger() | ||||
|  | ||||
|   | ||||
| @@ -1,11 +1,12 @@ | ||||
| from typing import Any | ||||
|  | ||||
| from fastapi import BackgroundTasks, Depends | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user, is_logged_in | ||||
| from pydantic import BaseModel | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.db_setup import generate_session | ||||
| from mealie.routes.deps import get_current_user, is_logged_in | ||||
|  | ||||
|  | ||||
| class CommonDeps(BaseModel): | ||||
|     session: Session | ||||
|   | ||||
| @@ -1,4 +1,7 @@ | ||||
| from fastapi import BackgroundTasks, Depends, HTTPException, status | ||||
| from sqlalchemy.exc import IntegrityError | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.core.config import get_settings | ||||
| from mealie.db.database import get_database | ||||
| from mealie.db.db_setup import SessionLocal | ||||
| @@ -6,8 +9,6 @@ from mealie.schema.recipe.recipe import CreateRecipe, Recipe | ||||
| from mealie.schema.user.user import UserInDB | ||||
| from mealie.services.events import create_recipe_event | ||||
| from mealie.services.recipe.media import delete_assets | ||||
| from sqlalchemy.exc import IntegrityError | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from .common_deps import CommonDeps, _read_deps, _write_deps | ||||
|  | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore | ||||
| from apscheduler.schedulers.background import BackgroundScheduler | ||||
|  | ||||
| from mealie.core.config import app_dirs, settings | ||||
|  | ||||
| app_dirs.DATA_DIR.joinpath("scheduler.db").unlink(missing_ok=True) | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| import datetime | ||||
|  | ||||
| from apscheduler.schedulers.background import BackgroundScheduler | ||||
|  | ||||
| from mealie.core import root_logger | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import create_session | ||||
|   | ||||
| @@ -4,9 +4,10 @@ import re | ||||
| from datetime import datetime, timedelta | ||||
| from typing import List | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
| from slugify import slugify | ||||
|  | ||||
| from mealie.core.root_logger import get_logger | ||||
|  | ||||
| logger = get_logger() | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -5,10 +5,11 @@ from fractions import Fraction | ||||
| from pathlib import Path | ||||
| from typing import Optional | ||||
|  | ||||
| from pydantic import BaseModel | ||||
|  | ||||
| from mealie.core.config import settings | ||||
| from mealie.schema.recipe import RecipeIngredient | ||||
| from mealie.schema.recipe.recipe_ingredient import CreateIngredientFood, CreateIngredientUnit | ||||
| from pydantic import BaseModel | ||||
|  | ||||
| from . import utils | ||||
|  | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| from typing import Tuple | ||||
|  | ||||
| import extruct | ||||
| from mealie.core.config import app_dirs | ||||
| from slugify import slugify | ||||
| from w3lib.html import get_base_url | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
|  | ||||
| LAST_JSON = app_dirs.DEBUG_DIR.joinpath("last_recipe.json") | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -5,13 +5,14 @@ from uuid import uuid4 | ||||
|  | ||||
| import requests | ||||
| from fastapi import HTTPException, status | ||||
| from recipe_scrapers import NoSchemaFoundInWildMode, SchemaScraperFactory, WebsiteNotImplementedError, scrape_me | ||||
| from slugify import slugify | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from mealie.core.root_logger import get_logger | ||||
| from mealie.schema.recipe import Recipe, RecipeStep | ||||
| from mealie.services.image.image import scrape_image | ||||
| from mealie.services.scraper import cleaner, open_graph | ||||
| from recipe_scrapers import NoSchemaFoundInWildMode, SchemaScraperFactory, WebsiteNotImplementedError, scrape_me | ||||
| from slugify import slugify | ||||
|  | ||||
| LAST_JSON = app_dirs.DEBUG_DIR.joinpath("last_recipe.json") | ||||
|  | ||||
|   | ||||
| @@ -1,12 +1,13 @@ | ||||
| import json | ||||
|  | ||||
| import requests | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
| from mealie.db.database import db | ||||
| from mealie.db.db_setup import create_session | ||||
| from mealie.schema.user import GroupInDB | ||||
| from mealie.services.events import create_scheduled_event | ||||
| from mealie.services.meal_services import get_todays_meal | ||||
| from sqlalchemy.orm.session import Session | ||||
|  | ||||
|  | ||||
| def post_webhooks(group: int, session: Session = None, force=True): | ||||
|   | ||||
							
								
								
									
										2
									
								
								poetry.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								poetry.lock
									
									
									
										generated
									
									
									
								
							| @@ -1321,7 +1321,7 @@ pgsql = ["psycopg2-binary"] | ||||
| [metadata] | ||||
| lock-version = "1.1" | ||||
| python-versions = "^3.9" | ||||
| content-hash = "4aaa78bc2bbe0e21ad78acd6fa35339eea5cdc88e7055337a0b0244021d7cec6" | ||||
| content-hash = "03d6e9fea568f4167c5cc6865d417c57575305f7ad6813dd503c6f40e85090d7" | ||||
|  | ||||
| [metadata.files] | ||||
| aiofiles = [ | ||||
|   | ||||
| @@ -47,6 +47,7 @@ flake8 = "^3.9.0" | ||||
| coverage = "^5.5" | ||||
| pydantic-to-typescript = "^1.0.7" | ||||
| rich = "^10.7.0" | ||||
| isort = "^5.9.3" | ||||
|  | ||||
| [build-system] | ||||
| requires = ["poetry-core>=1.0.0"] | ||||
| @@ -55,6 +56,11 @@ build-backend = "poetry.core.masonry.api" | ||||
| [tool.black] | ||||
| line-length = 120 | ||||
|  | ||||
| [tool.isort] | ||||
| profile = "black" | ||||
| line_length = 120 | ||||
| multi_line_output = 3 | ||||
|   | ||||
| [tool.pytest.ini_options] | ||||
| minversion = "6.0" | ||||
| addopts = "-ra -q --cov=mealie" | ||||
|   | ||||
| @@ -4,11 +4,11 @@ import json | ||||
|  | ||||
| import requests | ||||
| from fastapi.testclient import TestClient | ||||
| from pytest import fixture | ||||
|  | ||||
| from mealie.app import app | ||||
| from mealie.db.db_setup import SessionLocal, generate_session | ||||
| from mealie.db.init_db import main | ||||
| from pytest import fixture | ||||
|  | ||||
| from tests.app_routes import AppRoutes | ||||
| from tests.test_config import TEST_DATA | ||||
| from tests.utils.recipe_data import get_raw_no_image, get_raw_recipe, get_recipe_test_cases | ||||
|   | ||||
| @@ -3,6 +3,7 @@ import json | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
| from slugify import slugify | ||||
|  | ||||
| from tests.app_routes import AppRoutes | ||||
| from tests.utils.recipe_data import RecipeSiteTestCase, get_recipe_test_cases | ||||
|  | ||||
|   | ||||
| @@ -2,6 +2,7 @@ import json | ||||
|  | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
|  | ||||
| from tests.app_routes import AppRoutes | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -2,6 +2,7 @@ import json | ||||
|  | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
|  | ||||
| from tests.app_routes import AppRoutes | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -2,6 +2,7 @@ import json | ||||
|  | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
|  | ||||
| from tests.app_routes import AppRoutes | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -2,6 +2,7 @@ import json | ||||
|  | ||||
| from fastapi.testclient import TestClient | ||||
| from pytest import fixture | ||||
|  | ||||
| from tests.app_routes import AppRoutes | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -2,6 +2,7 @@ import json | ||||
|  | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
|  | ||||
| from tests.app_routes import AppRoutes | ||||
| from tests.utils.recipe_data import RecipeSiteTestCase | ||||
|  | ||||
|   | ||||
| @@ -4,6 +4,7 @@ from pathlib import Path | ||||
|  | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
|  | ||||
| from mealie.core.config import app_dirs | ||||
| from tests.app_routes import AppRoutes | ||||
| from tests.test_config import TEST_CHOWDOWN_DIR, TEST_NEXTCLOUD_DIR | ||||
|   | ||||
| @@ -2,6 +2,7 @@ import json | ||||
|  | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
|  | ||||
| from mealie.schema.admin import SiteSettings | ||||
| from tests.app_routes import AppRoutes | ||||
|  | ||||
|   | ||||
| @@ -2,6 +2,7 @@ import json | ||||
|  | ||||
| import pytest | ||||
| from fastapi.testclient import TestClient | ||||
|  | ||||
| from mealie.schema.user import SignUpToken | ||||
| from tests.app_routes import AppRoutes | ||||
|  | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user