| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | [tool.poetry] | 
					
						
							|  |  |  | authors = ["Hayden <hay-kot@pm.me>"] | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | description = "A Recipe Manager" | 
					
						
							| 
									
										
										
										
											2022-07-31 13:10:20 -08:00
										 |  |  | license = "AGPL" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | name = "mealie" | 
					
						
							| 
									
										
										
										
											2024-12-18 21:29:01 +00:00
										 |  |  | version = "2.4.1" | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | [tool.poetry.scripts] | 
					
						
							|  |  |  | start = "mealie.app:main" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.poetry.dependencies] | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | Jinja2 = "^3.1.2" | 
					
						
							| 
									
										
										
										
											2024-10-15 11:03:06 -05:00
										 |  |  | Pillow = "^11.0.0" | 
					
						
							| 
									
										
										
										
											2023-07-23 12:53:45 -05:00
										 |  |  | PyYAML = "^6.0.1" | 
					
						
							| 
									
										
										
										
											2023-02-06 18:43:12 -09:00
										 |  |  | SQLAlchemy = "^2" | 
					
						
							| 
									
										
										
										
											2024-06-25 21:45:44 +10:00
										 |  |  | aiofiles = "^24.0.0" | 
					
						
							| 
									
										
										
										
											2023-08-20 16:09:13 -08:00
										 |  |  | alembic = "^1.11.3" | 
					
						
							| 
									
										
										
										
											2023-01-01 15:44:19 -09:00
										 |  |  | aniso8601 = "9.0.1" | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | appdirs = "1.4.4" | 
					
						
							| 
									
										
										
										
											2023-08-20 16:09:13 -08:00
										 |  |  | apprise = "^1.4.5" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | bcrypt = "^4.0.1" | 
					
						
							| 
									
										
										
										
											2024-11-10 18:05:38 +00:00
										 |  |  | extruct = "^0.18.0" | 
					
						
							| 
									
										
										
										
											2024-09-17 22:08:19 -05:00
										 |  |  | fastapi = "^0.115.0" | 
					
						
							| 
									
										
										
										
											2024-11-30 06:01:00 +00:00
										 |  |  | httpx = "^0.28.0" | 
					
						
							| 
									
										
										
										
											2024-01-10 16:42:29 -06:00
										 |  |  | lxml = "^5.0.0" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | orjson = "^3.8.0" | 
					
						
							| 
									
										
										
										
											2023-10-07 16:02:15 -05:00
										 |  |  | psycopg2-binary = { version = "^2.9.1", optional = true } | 
					
						
							| 
									
										
										
										
											2024-02-11 10:47:37 -06:00
										 |  |  | pydantic = "^2.6.1" | 
					
						
							| 
									
										
										
										
											2022-03-25 10:56:49 -08:00
										 |  |  | pyhumps = "^3.5.3" | 
					
						
							| 
									
										
										
										
											2024-12-04 22:31:26 -06:00
										 |  |  | python = "^3.12" | 
					
						
							| 
									
										
										
										
											2022-10-22 10:44:32 -08:00
										 |  |  | python-dateutil = "^2.8.2" | 
					
						
							| 
									
										
										
										
											2023-02-26 10:13:10 -09:00
										 |  |  | python-dotenv = "^1.0.0" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | python-ldap = "^3.3.1" | 
					
						
							| 
									
										
										
										
											2024-12-17 20:23:50 +11:00
										 |  |  | python-multipart = "^0.0.20" | 
					
						
							| 
									
										
										
										
											2023-01-28 16:06:27 -09:00
										 |  |  | python-slugify = "^8.0.0" | 
					
						
							| 
									
										
										
										
											2024-07-30 17:48:47 +02:00
										 |  |  | recipe-scrapers = "^15.0.0" | 
					
						
							| 
									
										
										
										
											2023-08-20 16:09:13 -08:00
										 |  |  | requests = "^2.31.0" | 
					
						
							| 
									
										
										
										
											2024-08-06 09:29:34 -05:00
										 |  |  | tzdata = "^2024.1" | 
					
						
							| 
									
										
										
										
											2024-12-18 05:01:29 +00:00
										 |  |  | uvicorn = { extras = ["standard"], version = "^0.34.0" } | 
					
						
							| 
									
										
										
										
											2023-03-12 15:37:24 -05:00
										 |  |  | beautifulsoup4 = "^4.11.2" | 
					
						
							| 
									
										
										
										
											2024-10-11 20:04:22 -05:00
										 |  |  | isodate = "^0.7.0" | 
					
						
							| 
									
										
										
										
											2023-08-20 16:09:13 -08:00
										 |  |  | text-unidecode = "^1.3" | 
					
						
							| 
									
										
										
										
											2023-09-15 12:19:34 -05:00
										 |  |  | rapidfuzz = "^3.2.0" | 
					
						
							| 
									
										
										
										
											2024-03-10 13:51:36 -05:00
										 |  |  | authlib = "^1.3.0" | 
					
						
							| 
									
										
										
										
											2024-02-25 10:21:15 -06:00
										 |  |  | html2text = "^2024.0.0" | 
					
						
							| 
									
										
										
										
											2024-03-05 16:14:37 -06:00
										 |  |  | paho-mqtt = "^1.6.1" | 
					
						
							| 
									
										
										
										
											2024-02-11 10:47:37 -06:00
										 |  |  | pydantic-settings = "^2.1.0" | 
					
						
							| 
									
										
										
										
											2024-11-30 06:46:33 +00:00
										 |  |  | pillow-heif = "^0.21.0" | 
					
						
							| 
									
										
										
										
											2024-04-29 04:49:13 -05:00
										 |  |  | pyjwt = "^2.8.0" | 
					
						
							| 
									
										
										
										
											2024-05-22 04:45:07 -05:00
										 |  |  | openai = "^1.27.0" | 
					
						
							| 
									
										
										
										
											2024-07-08 16:12:20 -05:00
										 |  |  | typing-extensions = "^4.12.2" | 
					
						
							| 
									
										
										
										
											2024-10-05 16:12:11 -05:00
										 |  |  | itsdangerous = "^2.2.0" | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-01-27 12:14:42 -06:00
										 |  |  | [tool.poetry.group.postgres.dependencies] | 
					
						
							|  |  |  | psycopg2-binary = { version = "^2.9.1" } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-29 15:21:48 -08:00
										 |  |  | [tool.poetry.group.dev.dependencies] | 
					
						
							| 
									
										
										
										
											2023-01-01 11:53:51 -09:00
										 |  |  | coverage = "^7.0" | 
					
						
							| 
									
										
										
										
											2022-01-13 13:06:52 -09:00
										 |  |  | coveragepy-lcov = "^0.1.1" | 
					
						
							| 
									
										
										
										
											2023-01-06 21:47:29 -09:00
										 |  |  | mkdocs-material = "^9.0.0" | 
					
						
							| 
									
										
										
										
											2023-08-20 16:09:13 -08:00
										 |  |  | mypy = "^1.5.1" | 
					
						
							| 
									
										
										
										
											2024-10-06 21:03:02 -05:00
										 |  |  | pre-commit = "^4.0.0" | 
					
						
							| 
									
										
										
										
											2024-01-10 18:58:50 +00:00
										 |  |  | pylint = "^3.0.0" | 
					
						
							| 
									
										
										
										
											2024-02-17 11:34:00 -06:00
										 |  |  | pytest = "^8.0.0" | 
					
						
							| 
									
										
										
										
											2024-12-13 09:21:38 -06:00
										 |  |  | pytest-asyncio = "^0.25.0" | 
					
						
							| 
									
										
										
										
											2023-08-20 16:09:13 -08:00
										 |  |  | rich = "^13.5.2" | 
					
						
							| 
									
										
										
										
											2024-11-23 21:56:39 -06:00
										 |  |  | ruff = "^0.8.0" | 
					
						
							| 
									
										
										
										
											2022-03-15 15:01:56 -08:00
										 |  |  | types-PyYAML = "^6.0.4" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | types-python-dateutil = "^2.8.18" | 
					
						
							| 
									
										
										
										
											2023-01-01 11:29:49 -09:00
										 |  |  | types-python-slugify = "^6.0.0" | 
					
						
							| 
									
										
										
										
											2022-03-15 15:01:56 -08:00
										 |  |  | types-requests = "^2.27.12" | 
					
						
							|  |  |  | types-urllib3 = "^1.26.11" | 
					
						
							| 
									
										
										
										
											2024-08-22 10:14:32 -05:00
										 |  |  | pydantic-to-typescript2 = "^1.0.4" | 
					
						
							| 
									
										
										
										
											2024-10-21 10:01:40 -05:00
										 |  |  | freezegun = "^1.5.1" | 
					
						
							| 
									
										
										
										
											2022-07-09 23:57:09 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-01-29 01:43:27 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | [build-system] | 
					
						
							|  |  |  | build-backend = "poetry.core.masonry.api" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | requires = ["poetry-core>=1.0.0"] | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-13 13:06:52 -09:00
										 |  |  | [tool.vulture] | 
					
						
							|  |  |  | exclude = ["**/models/**/*.py", "dir/"] | 
					
						
							| 
									
										
										
										
											2024-02-11 10:47:37 -06:00
										 |  |  | ignore_decorators = ["@*router.*", "@app.on_event", "@field_validator", "@controller"] | 
					
						
							| 
									
										
										
										
											2022-01-13 13:06:52 -09:00
										 |  |  | make_whitelist = true | 
					
						
							|  |  |  | min_confidence = 60 | 
					
						
							|  |  |  | paths = ["mealie"] | 
					
						
							|  |  |  | sort_by_size = true | 
					
						
							| 
									
										
										
										
											2021-08-28 14:27:56 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | [tool.pytest.ini_options] | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | addopts = "-ra -q" | 
					
						
							| 
									
										
										
										
											2024-10-17 10:35:39 -05:00
										 |  |  | asyncio_default_fixture_loop_scope = "function" | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | minversion = "6.0" | 
					
						
							|  |  |  | python_classes = '*Tests' | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | python_files = 'test_*' | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | python_functions = 'test_*' | 
					
						
							| 
									
										
										
										
											2023-10-07 16:02:15 -05:00
										 |  |  | testpaths = ["tests"] | 
					
						
							| 
									
										
										
										
											2021-05-08 18:29:31 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | [tool.coverage.report] | 
					
						
							| 
									
										
										
										
											2021-06-12 07:30:06 +08:00
										 |  |  | skip_empty = true | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.poetry.extras] | 
					
						
							| 
									
										
										
										
											2022-03-15 15:01:56 -08:00
										 |  |  | pgsql = ["psycopg2-binary"] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.mypy] | 
					
						
							|  |  |  | follow_imports = "skip" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | ignore_missing_imports = true | 
					
						
							| 
									
										
										
										
											2022-10-18 14:49:41 -08:00
										 |  |  | plugins = "pydantic.mypy" | 
					
						
							| 
									
										
										
										
											2024-12-04 22:31:26 -06:00
										 |  |  | python_version = "3.12" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | strict_optional = true | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff] | 
					
						
							|  |  |  | line-length = 120 | 
					
						
							| 
									
										
										
										
											2024-03-09 12:40:08 -06:00
										 |  |  | output-format = "concise" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Exclude a variety of commonly ignored directories. | 
					
						
							|  |  |  | exclude = [ | 
					
						
							|  |  |  |   ".bzr", | 
					
						
							|  |  |  |   ".direnv", | 
					
						
							|  |  |  |   ".eggs", | 
					
						
							|  |  |  |   ".git", | 
					
						
							|  |  |  |   ".hg", | 
					
						
							|  |  |  |   ".mypy_cache", | 
					
						
							|  |  |  |   ".nox", | 
					
						
							|  |  |  |   ".pants.d", | 
					
						
							|  |  |  |   ".ruff_cache", | 
					
						
							|  |  |  |   ".svn", | 
					
						
							|  |  |  |   ".tox", | 
					
						
							|  |  |  |   ".venv", | 
					
						
							|  |  |  |   "__pypackages__", | 
					
						
							|  |  |  |   "_build", | 
					
						
							|  |  |  |   "buck-out", | 
					
						
							|  |  |  |   "build", | 
					
						
							|  |  |  |   "dist", | 
					
						
							|  |  |  |   "node_modules", | 
					
						
							|  |  |  |   "venv", | 
					
						
							|  |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-04 22:31:26 -06:00
										 |  |  | # Assume Python 3.12. | 
					
						
							|  |  |  | target-version = "py312" | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-03-09 12:40:08 -06:00
										 |  |  | [tool.ruff.lint] | 
					
						
							|  |  |  | # Enable Pyflakes `E` and `F` codes by default. | 
					
						
							|  |  |  | ignore = ["F403", "TID252", "B008"] | 
					
						
							|  |  |  | select = [ | 
					
						
							| 
									
										
										
										
											2024-08-12 17:09:30 +02:00
										 |  |  |   "B",  # flake8-bugbear | 
					
						
							|  |  |  |   "C4", # McCabe complexity | 
					
						
							|  |  |  |   "C90", # flake8-comprehensions | 
					
						
							|  |  |  |   "DTZ", # flake8-datetimez | 
					
						
							| 
									
										
										
										
											2024-03-09 12:40:08 -06:00
										 |  |  |   "E",  # pycodestyles | 
					
						
							|  |  |  |   "F",  # pyflakes | 
					
						
							|  |  |  |   "I",  # isort | 
					
						
							|  |  |  |   "T",  # flake8-print | 
					
						
							|  |  |  |   "UP", # pyupgrade | 
					
						
							|  |  |  |   # "ANN", # flake8-annotations | 
					
						
							|  |  |  |   # "BLE", # blind-except | 
					
						
							| 
									
										
										
										
											2024-08-12 17:09:30 +02:00
										 |  |  |   # "RUF", # Ruff specific | 
					
						
							| 
									
										
										
										
											2024-03-09 12:40:08 -06:00
										 |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint.per-file-ignores] | 
					
						
							| 
									
										
										
										
											2023-10-07 16:02:15 -05:00
										 |  |  | "__init__.py" = ["E402", "E501"] | 
					
						
							| 
									
										
										
										
											2024-12-05 02:57:57 +10:00
										 |  |  | "mealie/alembic/versions/2022*" = ["E501", "I001"] | 
					
						
							|  |  |  | "mealie/alembic/versions/2023*" = ["E501", "I001"] | 
					
						
							| 
									
										
										
										
											2024-08-12 17:09:30 +02:00
										 |  |  | "dev/scripts/all_recipes_stress_test.py" = ["E501"] | 
					
						
							| 
									
										
										
										
											2024-03-10 13:51:36 -05:00
										 |  |  | "ldap_provider.py" = ["UP032"] | 
					
						
							| 
									
										
										
										
											2024-08-12 17:09:30 +02:00
										 |  |  | "tests/conftest.py" = ["E402"] | 
					
						
							|  |  |  | "tests/utils/routes/__init__.py" = ["F401"] | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-03-09 12:40:08 -06:00
										 |  |  | [tool.ruff.lint.mccabe] | 
					
						
							| 
									
										
										
										
											2022-11-30 20:20:28 -09:00
										 |  |  | # Unlike Flake8, default to a complexity level of 10. | 
					
						
							| 
									
										
										
										
											2024-08-12 17:09:30 +02:00
										 |  |  | max-complexity = 24  # Default is 10. |