This version of Mealie contains a whole bunch of new features and bug fixes, including first-time contributions from 9 users (and a new bot)! Check out the highlights below 👇
🎉 Highlights
When importing a recipe, you can now import the original URL's categories (similar to how you can import tags) (#6523)
You can now use custom OpenAI prompts to overwrite the ones included with Mealie. Check out the docs for more info on how to do this (#6588)
We've migrated our OpenAI implementation to use structured outputs. This means much better support for modern models, which previously didn't support the legacy JSON mode (#6964)
You can now add a full range of dates from the meal planner to your shopping list, instead of adding one day at a time (#6981):
🚨 Breaking changes
There is a minor breaking change in #6781: GET requests to /api/households/invitations are now locked to admins only. This doesn't change the invitation flow for users, as requests using a particular invitation are unaffected. Check out the PR for more details.
fix: disable invitations when password login is disabled @p0lycarpio (#6781)
✨ New features
feat: Use toggle button for switching any/all mode for search filters @lehnerpat (#6833)
feat: add discard confirmation dialog for recipe editor @hay-kot (#6941)
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [ghcr.io/mealie-recipes/mealie](https://github.com/mealie-recipes/mealie) | minor | `v3.9.2` → `v3.10.1` |
---
### Release Notes
<details>
<summary>mealie-recipes/mealie (ghcr.io/mealie-recipes/mealie)</summary>
### [`v3.10.1`](https://github.com/mealie-recipes/mealie/releases/tag/v3.10.1)
[Compare Source](https://github.com/mealie-recipes/mealie/compare/v3.10.0...v3.10.1)
### 🍴🍴🍴🍴🍴🍴
Small release to patch a UI bug in some languages.
#### 🐛 Bug fixes
- fix: Button overflow on main page filters [@​michael-genson](https://github.com/michael-genson) ([#​6992](https://github.com/mealie-recipes/mealie/issues/6992))
#### 🧰 Maintenance
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6994](https://github.com/mealie-recipes/mealie/issues/6994))
#### 📚 Documentation
- docs: Typo [@​michael-genson](https://github.com/michael-genson) ([#​6993](https://github.com/mealie-recipes/mealie/issues/6993))
### 🍴🍴🍴🍴🍴🍴
### [`v3.10.0`](https://github.com/mealie-recipes/mealie/releases/tag/v3.10.0)
[Compare Source](https://github.com/mealie-recipes/mealie/compare/v3.9.2...v3.10.0)
### 🍴🍴🍴🍴🍴🍴
This version of Mealie contains a whole bunch of new features and bug fixes, including first-time contributions from 9 users (and a new bot)! Check out the highlights below 👇
#### 🎉 Highlights
- When importing a recipe, you can now import the original URL's categories (similar to how you can import tags) ([#​6523](https://github.com/mealie-recipes/mealie/issues/6523))
- You can now use custom OpenAI prompts to overwrite the ones included with Mealie. [Check out the docs](https://docs.mealie.io/documentation/getting-started/installation/backend-config/#openai) for more info on how to do this ([#​6588](https://github.com/mealie-recipes/mealie/issues/6588))
- We've migrated our OpenAI implementation to use [structured outputs](https://platform.openai.com/docs/guides/structured-outputs). This means much better support for modern models, which previously didn't support the legacy JSON mode ([#​6964](https://github.com/mealie-recipes/mealie/issues/6964))
- You can now add a full range of dates from the meal planner to your shopping list, instead of adding one day at a time ([#​6981](https://github.com/mealie-recipes/mealie/issues/6981)):
<img width="905" height="118" alt="image" src="https://github.com/user-attachments/assets/fe27fcd9-75c7-41ff-a082-bee048b6a397" />
#### 🚨 Breaking changes
There is a minor breaking change in [#​6781](https://github.com/mealie-recipes/mealie/issues/6781): `GET` requests to `/api/households/invitations` are now locked to admins only. This doesn't change the invitation flow for users, as requests using a particular invitation are unaffected. Check out the PR for more details.
- fix: disable invitations when password login is disabled [@​p0lycarpio](https://github.com/p0lycarpio) ([#​6781](https://github.com/mealie-recipes/mealie/issues/6781))
#### ✨ New features
- feat: Use toggle button for switching any/all mode for search filters [@​lehnerpat](https://github.com/lehnerpat) ([#​6833](https://github.com/mealie-recipes/mealie/issues/6833))
- feat: add discard confirmation dialog for recipe editor [@​hay-kot](https://github.com/hay-kot) ([#​6941](https://github.com/mealie-recipes/mealie/issues/6941))
- feat: Add "sprig" as a unit. [@​Fjodor42](https://github.com/Fjodor42) ([#​6934](https://github.com/mealie-recipes/mealie/issues/6934))
- feat: Added Option to Import Recipe Category During Recipe Import [@​Gtt1229](https://github.com/Gtt1229) ([#​6523](https://github.com/mealie-recipes/mealie/issues/6523))
- feat: Customizable OpenAI prompts ([#​5146](https://github.com/mealie-recipes/mealie/issues/5146)) [@​ImanuelBertrand](https://github.com/ImanuelBertrand) ([#​6588](https://github.com/mealie-recipes/mealie/issues/6588))
- feat: Improve recipe assets preview [@​p0lycarpio](https://github.com/p0lycarpio) ([#​6602](https://github.com/mealie-recipes/mealie/issues/6602))
- feat: Migrate OpenAI implementation to use structured outputs [@​michael-genson](https://github.com/michael-genson) ([#​6964](https://github.com/mealie-recipes/mealie/issues/6964))
- feat: Add range of dates to shopping list from meal planner [@​michael-genson](https://github.com/michael-genson) ([#​6981](https://github.com/mealie-recipes/mealie/issues/6981))
- feat: Query relative dates [@​michael-genson](https://github.com/michael-genson) ([#​6984](https://github.com/mealie-recipes/mealie/issues/6984))
#### 🐛 Bug fixes
- fix: Tags can't be renamed [@​lehnerpat](https://github.com/lehnerpat) ([#​6835](https://github.com/mealie-recipes/mealie/issues/6835))
- fix: Coerce null servings into 0 servings [@​michael-genson](https://github.com/michael-genson) ([#​6839](https://github.com/mealie-recipes/mealie/issues/6839))
- fix: prevent XSS via javascript: URIs in recipe actions [@​hay-kot](https://github.com/hay-kot) ([#​6885](https://github.com/mealie-recipes/mealie/issues/6885))
- fix: Make 'auto-search' toggle change color to indicate state [@​lehnerpat](https://github.com/lehnerpat) ([#​6809](https://github.com/mealie-recipes/mealie/issues/6809))
- fix: correct global scroll strategy to prevent menu fixation [@​jeromer-dev](https://github.com/jeromer-dev) ([#​6577](https://github.com/mealie-recipes/mealie/issues/6577))
- fix: use GITHUB\_TOKEN for auto-merge to respect CI checks [@​hay-kot](https://github.com/hay-kot) ([#​6953](https://github.com/mealie-recipes/mealie/issues/6953))
- fix: Keep ingredient headers in cook mode [@​codefaux](https://github.com/codefaux) ([#​6946](https://github.com/mealie-recipes/mealie/issues/6946))
- fix: dispose AlchemyExporter engine after restore completes [@​hay-kot](https://github.com/hay-kot) ([#​6942](https://github.com/mealie-recipes/mealie/issues/6942))
- fix: Seed data - en-US only - correct \[some] plural names and add \[some] accented characters [@​stvhwrd](https://github.com/stvhwrd) ([#​6405](https://github.com/mealie-recipes/mealie/issues/6405))
- fix: sub-recipes in multi group setup ([#​6652](https://github.com/mealie-recipes/mealie/issues/6652)) [@​ImanuelBertrand](https://github.com/ImanuelBertrand) ([#​6663](https://github.com/mealie-recipes/mealie/issues/6663))
- fix: disable invitations when password login is disabled [@​p0lycarpio](https://github.com/p0lycarpio) ([#​6781](https://github.com/mealie-recipes/mealie/issues/6781))
- fix: recipe context menu [@​p0lycarpio](https://github.com/p0lycarpio) ([#​6782](https://github.com/mealie-recipes/mealie/issues/6782))
- fix: Disable context hover [@​michael-genson](https://github.com/michael-genson) ([#​6962](https://github.com/mealie-recipes/mealie/issues/6962))
- fix: Remove deprecated warning from shopping list editor [@​michael-genson](https://github.com/michael-genson) ([#​6963](https://github.com/mealie-recipes/mealie/issues/6963))
- fix: service-worker precache manifest entries not generated correctly [@​morgan-dgk](https://github.com/morgan-dgk) ([#​6815](https://github.com/mealie-recipes/mealie/issues/6815))
- fix: Re-enable some style tags [@​michael-genson](https://github.com/michael-genson) ([#​6982](https://github.com/mealie-recipes/mealie/issues/6982))
- fix: Flaky $NOW tests [@​michael-genson](https://github.com/michael-genson) ([#​6990](https://github.com/mealie-recipes/mealie/issues/6990))
#### 🧰 Maintenance
<details>
<summary>40 changes</summary>
- chore(l10n): Crowdin locale sync [@​github-actions](https://github.com/github-actions) ([#​6825](https://github.com/mealie-recipes/mealie/issues/6825))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6806](https://github.com/mealie-recipes/mealie/issues/6806))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6827](https://github.com/mealie-recipes/mealie/issues/6827))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6832](https://github.com/mealie-recipes/mealie/issues/6832))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6840](https://github.com/mealie-recipes/mealie/issues/6840))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6843](https://github.com/mealie-recipes/mealie/issues/6843))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6861](https://github.com/mealie-recipes/mealie/issues/6861))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6863](https://github.com/mealie-recipes/mealie/issues/6863))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6864](https://github.com/mealie-recipes/mealie/issues/6864))
- chore(l10n): Crowdin locale sync [@​github-actions](https://github.com/github-actions) ([#​6862](https://github.com/mealie-recipes/mealie/issues/6862))
- chore(auto): Update pre-commit hooks [@​github-actions](https://github.com/github-actions) ([#​6866](https://github.com/mealie-recipes/mealie/issues/6866))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6867](https://github.com/mealie-recipes/mealie/issues/6867))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6870](https://github.com/mealie-recipes/mealie/issues/6870))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6886](https://github.com/mealie-recipes/mealie/issues/6886))
- chore(auto): Update pre-commit hooks [@​github-actions](https://github.com/github-actions) ([#​6895](https://github.com/mealie-recipes/mealie/issues/6895))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6888](https://github.com/mealie-recipes/mealie/issues/6888))
- chore(l10n): Crowdin locale sync [@​github-actions](https://github.com/github-actions) ([#​6891](https://github.com/mealie-recipes/mealie/issues/6891))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6905](https://github.com/mealie-recipes/mealie/issues/6905))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6908](https://github.com/mealie-recipes/mealie/issues/6908))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6911](https://github.com/mealie-recipes/mealie/issues/6911))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6912](https://github.com/mealie-recipes/mealie/issues/6912))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6922](https://github.com/mealie-recipes/mealie/issues/6922))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6925](https://github.com/mealie-recipes/mealie/issues/6925))
- chore(l10n): Crowdin locale sync [@​github-actions](https://github.com/github-actions) ([#​6924](https://github.com/mealie-recipes/mealie/issues/6924))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6929](https://github.com/mealie-recipes/mealie/issues/6929))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6933](https://github.com/mealie-recipes/mealie/issues/6933))
- chore(auto): Update pre-commit hooks [@​github-actions](https://github.com/github-actions) ([#​6932](https://github.com/mealie-recipes/mealie/issues/6932))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6935](https://github.com/mealie-recipes/mealie/issues/6935))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6936](https://github.com/mealie-recipes/mealie/issues/6936))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6938](https://github.com/mealie-recipes/mealie/issues/6938))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6944](https://github.com/mealie-recipes/mealie/issues/6944))
- chore: add workflow to auto-merge l10n PRs [@​hay-kot](https://github.com/hay-kot) ([#​6948](https://github.com/mealie-recipes/mealie/issues/6948))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6949](https://github.com/mealie-recipes/mealie/issues/6949))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6954](https://github.com/mealie-recipes/mealie/issues/6954))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6959](https://github.com/mealie-recipes/mealie/issues/6959))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6960](https://github.com/mealie-recipes/mealie/issues/6960))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6967](https://github.com/mealie-recipes/mealie/issues/6967))
- chore(l10n): Crowdin locale sync [@​mealie-actions](https://github.com/mealie-actions) ([#​6977](https://github.com/mealie-recipes/mealie/issues/6977))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6979](https://github.com/mealie-recipes/mealie/issues/6979))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6983](https://github.com/mealie-recipes/mealie/issues/6983))
- chore(l10n): New Crowdin updates [@​hay-kot](https://github.com/hay-kot) ([#​6987](https://github.com/mealie-recipes/mealie/issues/6987))
</details>
#### 📚 Documentation
- docs: Fix typo and remove unused tip [@​michael-genson](https://github.com/michael-genson) ([#​6849](https://github.com/mealie-recipes/mealie/issues/6849))
- docs: fix authentik oidc link [@​Darwiner](https://github.com/Darwiner) ([#​6851](https://github.com/mealie-recipes/mealie/issues/6851))
- docs: Add an info callout about client-side cookies. [@​alexandreeberhardt](https://github.com/alexandreeberhardt) ([#​6830](https://github.com/mealie-recipes/mealie/issues/6830))
- docs: Misc. cleanup [@​michael-genson](https://github.com/michael-genson) ([#​6988](https://github.com/mealie-recipes/mealie/issues/6988))
#### 🔨 Internal development
- dev: Enable CI on merge queues [@​michael-genson](https://github.com/michael-genson) ([#​6955](https://github.com/mealie-recipes/mealie/issues/6955))
- dev: Bunch of GH workflow fixes [@​michael-genson](https://github.com/michael-genson) ([#​6956](https://github.com/mealie-recipes/mealie/issues/6956))
- dev: Skip Trivy on merge queue [@​michael-genson](https://github.com/michael-genson) ([#​6957](https://github.com/mealie-recipes/mealie/issues/6957))
- dev: Add tasks for e2e tests [@​lehnerpat](https://github.com/lehnerpat) ([#​6797](https://github.com/mealie-recipes/mealie/issues/6797))
- dev: Improve caching in taskfile [@​lehnerpat](https://github.com/lehnerpat) ([#​6798](https://github.com/mealie-recipes/mealie/issues/6798))
- dev: Switch to bot token for locale sync [@​michael-genson](https://github.com/michael-genson) ([#​6969](https://github.com/mealie-recipes/mealie/issues/6969))
- dev: Fix token vars [@​michael-genson](https://github.com/michael-genson) ([#​6970](https://github.com/mealie-recipes/mealie/issues/6970))
- dev: Increase locale merge limit to 300 and allow PRs from Mealie bot [@​michael-genson](https://github.com/michael-genson) ([#​6972](https://github.com/mealie-recipes/mealie/issues/6972))
- dev: Allow locale sync path in auto merge [@​michael-genson](https://github.com/michael-genson) ([#​6974](https://github.com/mealie-recipes/mealie/issues/6974))
- dev: Switch approver for automated i18n merges [@​michael-genson](https://github.com/michael-genson) ([#​6976](https://github.com/mealie-recipes/mealie/issues/6976))
- dev: Switch to Mealie bot for auto-merging [@​michael-genson](https://github.com/michael-genson) ([#​6978](https://github.com/mealie-recipes/mealie/issues/6978))
#### ⬆️ Dependency updates
<details>
<summary>27 changes</summary>
- fix(deps): update dependency pillow to v12.1.0 [@​renovate](https://github.com/renovate) ([#​6816](https://github.com/mealie-recipes/mealie/issues/6816))
- chore(deps): update dependency types-requests to v2.32.4.20260107 [@​renovate](https://github.com/renovate) ([#​6846](https://github.com/mealie-recipes/mealie/issues/6846))
- chore(deps): update dependency ruff to v0.14.11 [@​renovate](https://github.com/renovate) ([#​6852](https://github.com/mealie-recipes/mealie/issues/6852))
- fix(deps): update dependency alembic to v1.18.0 [@​renovate](https://github.com/renovate) ([#​6858](https://github.com/mealie-recipes/mealie/issues/6858))
- fix(deps): update dependency openai to v2.15.0 [@​renovate](https://github.com/renovate) ([#​6859](https://github.com/mealie-recipes/mealie/issues/6859))
- chore(deps): update node.js to [`0ab63ca`](https://github.com/mealie-recipes/mealie/commit/0ab63ca) [@​renovate](https://github.com/renovate) ([#​6872](https://github.com/mealie-recipes/mealie/issues/6872))
- chore(deps): update dependency ruff to v0.14.13 [@​renovate](https://github.com/renovate) ([#​6881](https://github.com/mealie-recipes/mealie/issues/6881))
- fix(deps): update dependency alembic to v1.18.1 [@​renovate](https://github.com/renovate) ([#​6878](https://github.com/mealie-recipes/mealie/issues/6878))
- fix(deps): update dependency apprise to v1.9.7 [@​renovate](https://github.com/renovate) ([#​6898](https://github.com/mealie-recipes/mealie/issues/6898))
- chore(deps): update node.js to [`b2b2184`](https://github.com/mealie-recipes/mealie/commit/b2b2184) [@​renovate](https://github.com/renovate) ([#​6879](https://github.com/mealie-recipes/mealie/issues/6879))
- chore(deps): update dependency setuptools to v80.10.1 [@​renovate](https://github.com/renovate) ([#​6901](https://github.com/mealie-recipes/mealie/issues/6901))
- fix(deps): update dependency sqlalchemy to v2.0.46 [@​renovate](https://github.com/renovate) ([#​6903](https://github.com/mealie-recipes/mealie/issues/6903))
- chore(deps): update dependency ruff to v0.14.14 [@​renovate](https://github.com/renovate) ([#​6909](https://github.com/mealie-recipes/mealie/issues/6909))
- fix(deps): update dependency pillow-heif to v1.2.0 [@​renovate](https://github.com/renovate) ([#​6910](https://github.com/mealie-recipes/mealie/issues/6910))
- chore(deps): update dependency types-python-dateutil to v2.9.0.20260124 [@​renovate](https://github.com/renovate) ([#​6913](https://github.com/mealie-recipes/mealie/issues/6913))
- chore(deps): update dependency rich to v14.3.0 [@​renovate](https://github.com/renovate) ([#​6919](https://github.com/mealie-recipes/mealie/issues/6919))
- chore(deps): update dependency rich to v14.3.1 [@​renovate](https://github.com/renovate) ([#​6923](https://github.com/mealie-recipes/mealie/issues/6923))
- fix(deps): update dependency python-multipart to v0.0.22 [@​renovate](https://github.com/renovate) ([#​6926](https://github.com/mealie-recipes/mealie/issues/6926))
- fix(deps): update dependency openai to v2.16.0 [@​renovate](https://github.com/renovate) ([#​6937](https://github.com/mealie-recipes/mealie/issues/6937))
- chore(deps): update dependency coverage to v7.13.2 [@​renovate](https://github.com/renovate) ([#​6927](https://github.com/mealie-recipes/mealie/issues/6927))
- fix(deps): update dependency orjson to v3.11.6 [@​renovate](https://github.com/renovate) ([#​6952](https://github.com/mealie-recipes/mealie/issues/6952))
- chore(deps): update dependency setuptools to v80.10.2 [@​renovate](https://github.com/renovate) ([#​6930](https://github.com/mealie-recipes/mealie/issues/6930))
- fix(deps): update dependency alembic to v1.18.3 [@​renovate](https://github.com/renovate) ([#​6945](https://github.com/mealie-recipes/mealie/issues/6945))
- fix(deps): update dependency pyjwt to v2.11.0 [@​renovate](https://github.com/renovate) ([#​6958](https://github.com/mealie-recipes/mealie/issues/6958))
- fix(deps): update dependency ingredient-parser-nlp to v2.5.0 [@​renovate](https://github.com/renovate) ([#​6961](https://github.com/mealie-recipes/mealie/issues/6961))
- chore(deps): update dependency rich to v14.3.2 [@​renovate](https://github.com/renovate) ([#​6980](https://github.com/mealie-recipes/mealie/issues/6980))
- fix(deps): update dependency orjson to v3.11.7 [@​renovate](https://github.com/renovate) ([#​6989](https://github.com/mealie-recipes/mealie/issues/6989))
- chore(deps): pin dependency freezegun to ==1.5.5 ([#​6991](https://github.com/mealie-recipes/mealie/issues/6991))
</details>
#### 🙏 New Contributors
- [@​Darwiner](https://github.com/Darwiner) made their first contribution in [#​6851](https://github.com/mealie-recipes/mealie/pull/6851)
- [@​alexandreeberhardt](https://github.com/alexandreeberhardt) made their first contribution in [#​6830](https://github.com/mealie-recipes/mealie/pull/6830)
- [@​jeromer-dev](https://github.com/jeromer-dev) made their first contribution in [#​6577](https://github.com/mealie-recipes/mealie/pull/6577)
- [@​codefaux](https://github.com/codefaux) made their first contribution in [#​6946](https://github.com/mealie-recipes/mealie/pull/6946)
- [@​Fjodor42](https://github.com/Fjodor42) made their first contribution in [#​6934](https://github.com/mealie-recipes/mealie/pull/6934)
- [@​stvhwrd](https://github.com/stvhwrd) made their first contribution in [#​6405](https://github.com/mealie-recipes/mealie/pull/6405)
- [@​Gtt1229](https://github.com/Gtt1229) made their first contribution in [#​6523](https://github.com/mealie-recipes/mealie/pull/6523)
- [@​ImanuelBertrand](https://github.com/ImanuelBertrand) made their first contribution in [#​6588](https://github.com/mealie-recipes/mealie/pull/6588)
- [@​morgan-dgk](https://github.com/morgan-dgk) made their first contribution in [#​6815](https://github.com/mealie-recipes/mealie/pull/6815)
- [@​mealie-actions](https://github.com/mealie-actions)\[bot] made their first contribution in [#​6977](https://github.com/mealie-recipes/mealie/pull/6977)
### 🍴🍴🍴🍴🍴🍴
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yLjEiLCJ1cGRhdGVkSW5WZXIiOiI0My4yLjEiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOltdfQ==-->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
v3.9.2→v3.10.1Release Notes
mealie-recipes/mealie (ghcr.io/mealie-recipes/mealie)
v3.10.1Compare Source
🍴🍴🍴🍴🍴🍴
Small release to patch a UI bug in some languages.
🐛 Bug fixes
🧰 Maintenance
📚 Documentation
🍴🍴🍴🍴🍴🍴
v3.10.0Compare Source
🍴🍴🍴🍴🍴🍴
This version of Mealie contains a whole bunch of new features and bug fixes, including first-time contributions from 9 users (and a new bot)! Check out the highlights below 👇
🎉 Highlights
When importing a recipe, you can now import the original URL's categories (similar to how you can import tags) (#6523)
You can now use custom OpenAI prompts to overwrite the ones included with Mealie. Check out the docs for more info on how to do this (#6588)
We've migrated our OpenAI implementation to use structured outputs. This means much better support for modern models, which previously didn't support the legacy JSON mode (#6964)
You can now add a full range of dates from the meal planner to your shopping list, instead of adding one day at a time (#6981):

🚨 Breaking changes
There is a minor breaking change in #6781:
GETrequests to/api/households/invitationsare now locked to admins only. This doesn't change the invitation flow for users, as requests using a particular invitation are unaffected. Check out the PR for more details.✨ New features
🐛 Bug fixes
🧰 Maintenance
40 changes
📚 Documentation
🔨 Internal development
⬆️ Dependency updates
27 changes
0ab63ca@renovate (#6872)b2b2184@renovate (#6879)🙏 New Contributors
🍴🍴🍴🍴🍴🍴
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.