Commit Graph

366 Commits

Author SHA1 Message Date
Hayden
f644ee1879 fix: sort recipe names accent-folded for locale-aware ordering (#6853)
Recipe name sorting applied lower() to the raw name, so accented and
umlaut characters sorted by raw code point and landed after "Z"
(e.g. "Über" after "Zebra"). Sort by the existing unidecode-normalized
name column instead, so accented characters sort next to their base
letter. Works identically on SQLite and Postgres since the sort key is
a pre-computed ASCII column rather than a DB collation.
2026-05-24 11:43:49 -05:00
Michael Genson
642c826f2b fix: Protect sensitive data in query filter API (GHSA-8m57-7cv5-rjp8) (#7629)
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2026-05-21 21:08:41 +00:00
d 🔹
3d6ff52358 fix: return HTTP 400 for duplicate tag and label creation (#7638)
Co-authored-by: voidborne-d <voidborne-d@users.noreply.github.com>
2026-05-17 15:50:32 +00:00
Hayden
742b498c1d fix: enforce ownership check on recipe deletion (GHSA-x5v9-9jvh-7c7q) (#7625) 2026-05-14 17:04:04 +00:00
Hayden
eddb0c30e0 fix: block scriptable asset extensions and force Content-Disposition: attachment (GHSA-gfwc-pjx4-mg9p) (#7626) 2026-05-14 16:08:16 +00:00
Hayden
1cebfd56ab fix: use locale for Recipe Created timeline event (#4497) (#7623) 2026-05-14 14:07:15 +00:00
Michael Genson
d340fdd9df fix: Update backend normalization to match search normalization logic (#7603)
Co-authored-by: Copilot <copilot@github.com>
2026-05-10 21:23:57 -05:00
Michael Genson
d2b0681dbb feat: Announcements (#7431)
Co-authored-by: Kuchenpirat <24235032+Kuchenpirat@users.noreply.github.com>
2026-04-11 08:26:14 -05:00
harshitlarl
c029a639fb fix: preserve stored recipe slugs during hydration (#7294)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
Co-authored-by: Michael Genson <genson.michael@gmail.com>
2026-03-27 10:08:48 -05:00
Michael Genson
7c5913b012 fix: HTML/JSON import failing (#7330) 2026-03-26 23:12:25 -05:00
Sebastian
449e3baa07 fix: restore recipe notes during JSON import (#7017)
Co-authored-by: Michael Genson <genson.michael@gmail.com>
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2026-03-26 15:04:59 -05:00
francisferrell
e52a887e30 fix: publish all mealplan create, update, and delete events (#7015)
Co-authored-by: Michael Genson <genson.michael@gmail.com>
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2026-03-26 14:52:55 -05:00
Rohan Shah
93d51a2fdb fix: Removing a recipe ingredient doesn't remove its links to steps (#6896)
Co-authored-by: Michael Genson <genson.michael@gmail.com>
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2026-03-26 14:25:34 -05:00
Sim
26924ab054 fix: #6802 prevent 500 internal server error when patching recipe tags (#6803)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
Co-authored-by: Michael Genson <genson.michael@gmail.com>
2026-03-18 13:45:51 -05:00
Michael Genson
c4fdab4e05 feat: Recipe import progress (#7252) 2026-03-15 16:44:19 -05:00
Dean Malan
6a3b38a31e fix: Don't continue parsing recipes with errored HTTP status codes (#7230) 2026-03-12 13:58:40 +00:00
Aurelien
1344f1674d feat: Add social media video import (YouTube, TikTok, Instagram) (#6764)
Co-authored-by: Maxime Louward <61564950+mlouward@users.noreply.github.com>
Co-authored-by: Michael Genson <genson.michael@gmail.com>
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2026-03-09 15:44:27 -05:00
Michael Genson
b5c089f58c feat: Unit standardization / conversion (#7121) 2026-03-09 17:13:41 +00:00
Michael Genson
77081d0482 feat: include extra ingredients + amounts in NLP parser output (#7191) 2026-03-05 16:28:14 -06:00
Michael Genson
b182b50faa fix(deps): update dependency fastapi to v0.133.1 (#7146) 2026-02-25 15:56:01 -06:00
Michael Genson
3ae455539c fix: Ensure recipe ingredients have a valid reference_id (#7139) 2026-02-24 19:50:49 -06:00
Michael Genson
216ae8571c fix: Include unmade recipes when filtering by last made (#7130) 2026-02-23 18:34:16 -06:00
Michael Genson
29c6176d89 docs: Remove redoc API generation (#7109) 2026-02-20 20:49:43 +00:00
Michael Genson
23c7bd7e3d feat: Customize Ingredient Plural Handling (#7057) 2026-02-12 19:07:23 -06:00
Michael Genson
b64f14aaae feat: Dynamic Placeholders UI (#7034) 2026-02-11 05:43:17 +00:00
Joey
f2cc8dc922 fix: handle numeric recipeCategory from LLM/site to prevent import failure (#7026) 2026-02-07 19:47:44 +00:00
whattheschnell
f82f387146 fix: use BASE_URL config for redirect_url if available (#6995)
Co-authored-by: Michael Genson <genson.michael@gmail.com>
2026-02-03 16:31:20 -06:00
Michael Genson
fb8e318739 fix: Flaky $NOW tests (#6990) 2026-02-02 11:24:13 -06:00
Michael Genson
987c7209fc feat: Query relative dates (#6984) 2026-02-01 21:36:46 -06:00
Michael Genson
570d6f1433 feat: Migrate OpenAI implementation to use structured outputs (#6964) 2026-01-31 11:57:05 -06:00
Patrick Lehner (he/him)
e9fe71c1b7 dev: Add tasks for e2e tests (#6797)
Co-authored-by: Michael Genson <genson.michael@gmail.com>
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2026-01-30 14:51:40 -06:00
Arsène Reymond
c7be4a452a fix: disable invitations when password login is disabled (#6781) 2026-01-30 20:05:40 +00:00
Imanuel
731ee8ae3d fix: sub-recipes in multi group setup (#6652) (#6663) 2026-01-30 18:50:08 +00:00
Imanuel
c7ae67e7cd feat: Customizable OpenAI prompts (#5146) (#6588)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
Co-authored-by: Michael Genson <genson.michael@gmail.com>
2026-01-30 12:00:03 -06:00
Fjodor42
cb44ecf394 feat: Add "sprig" as a unit. (#6934)
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2026-01-30 16:03:41 +00:00
Hayden
3e306638d0 fix: prevent XSS via javascript: URIs in recipe actions (#6885) 2026-01-16 12:19:27 -06:00
Michael Genson
706d4ee0b5 fix: Coerce null servings into 0 servings (#6839) 2026-01-05 17:49:34 -06:00
Michael Genson
d02023e12c fix: Only fetch recipes with a household id (#6773) 2025-12-23 16:48:27 -06:00
Michael Genson
64d8786d8f fix: Improve recipe bulk deletion (#6772) 2025-12-23 12:31:53 -06:00
onemustpersist
8b4111d68f fix: Imported API keys not working on a new server #6477 (#6496)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
Co-authored-by: Michael Genson <genson.michael@gmail.com>
2025-12-22 12:08:44 -06:00
Aurelien
7b32508201 fix: the add_pagination_to_query now always returns the correct count (#6505)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2025-12-22 10:39:35 -06:00
Michael Genson
6f03010f6c fix: Security Patches (#6743) 2025-12-18 22:54:16 +00:00
Michael Genson
bdbef1ab9e fix: More lenient postgres override parsing (#6712) 2025-12-13 14:21:54 -06:00
Michael Genson
07ecd88685 feat: Remove backend cookie and use frontend for auth (#6601) 2025-11-28 19:29:16 -06:00
gpotter@gmail.com
8f1ce1a1c3 fix: recipe recursion false positive (#6591)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
Co-authored-by: Michael Genson <genson.michael@gmail.com>
2025-11-28 11:28:18 -06:00
gpotter@gmail.com
60d9294861 feat: Add recipe as ingredient (#4800)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2025-11-03 23:57:57 -06:00
Michael Genson
ff42964537 fix: Brute parser fails if unit or food is empty (#6500) 2025-11-03 23:44:13 -06:00
Christian Hollinger
bb67d993a0 feat: Add DELETE /{slug}/image (#6259)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2025-11-03 19:41:54 -06:00
Michael Genson
0371874670 fix: Refactor Recipe Zip File Flow (#6170) 2025-11-03 14:43:22 -06:00
Fernando Muñoz Paredes
107dfc34de fix: dash slug names (#5709)
Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
2025-10-24 16:01:55 -05:00