From c65456c6464de7f8e6f28c895b46ee3130bdbbd8 Mon Sep 17 00:00:00 2001 From: Hayden <64056131+hay-kot@users.noreply.github.com> Date: Sat, 19 Jul 2025 08:58:43 -0500 Subject: [PATCH 01/23] chore(l10n): New Crowdin updates (#5750) --- .../seed/resources/foods/locales/de-DE.json | 418 +++++++++--------- .../seed/resources/foods/locales/fr-FR.json | 16 +- .../seed/resources/foods/locales/he-IL.json | 202 ++++----- .../seed/resources/foods/locales/nl-NL.json | 100 ++--- 4 files changed, 368 insertions(+), 368 deletions(-) diff --git a/mealie/repos/seed/resources/foods/locales/de-DE.json b/mealie/repos/seed/resources/foods/locales/de-DE.json index 9369db146..a521d269c 100644 --- a/mealie/repos/seed/resources/foods/locales/de-DE.json +++ b/mealie/repos/seed/resources/foods/locales/de-DE.json @@ -3639,8 +3639,8 @@ "cricket flour": { "aliases": [], "description": "", - "name": "cricket flour", - "plural_name": "cricket flours" + "name": "Grillenmehl", + "plural_name": "Grillenmehle" }, "macadamia butter": { "aliases": [], @@ -3657,8 +3657,8 @@ "egg tofu": { "aliases": [], "description": "", - "name": "egg tofu", - "plural_name": "egg tofus" + "name": "Eiertofu", + "plural_name": "Eiertofu" }, "protein drink": { "aliases": [], @@ -3723,7 +3723,7 @@ "latik": { "aliases": [], "description": "", - "name": "latik", + "name": "Latik", "plural_name": "latiks" }, "rice cream": { @@ -3877,8 +3877,8 @@ "beef sirloin": { "aliases": [], "description": "", - "name": "beef sirloin", - "plural_name": "beef sirloins" + "name": "Sirloin-Steak", + "plural_name": "Sirloin-Steaks" }, "salami": { "aliases": [], @@ -3973,8 +3973,8 @@ "pork spare rib": { "aliases": [], "description": "", - "name": "pork spare rib", - "plural_name": "pork spare ribs" + "name": "Schweinerippchen", + "plural_name": "Schweinerippchen" }, "lamb shoulder": { "aliases": [], @@ -4003,8 +4003,8 @@ "bone-in ham": { "aliases": [], "description": "", - "name": "bone-in ham", - "plural_name": "bone-in hams" + "name": "Knochenschinken", + "plural_name": "Knochenschinken" }, "pork butt": { "aliases": [], @@ -4045,7 +4045,7 @@ "venison": { "aliases": [], "description": "", - "name": "venison", + "name": "Wild", "plural_name": "Wildbret" }, "bratwurst": { @@ -4183,7 +4183,7 @@ "cocktail sausage": { "aliases": [], "description": "", - "name": "cocktail sausage", + "name": "Cocktail-Wurst", "plural_name": "Cocktail-Würste" }, "hard salami": { @@ -4225,8 +4225,8 @@ "lap cheong": { "aliases": [], "description": "", - "name": "lap cheong", - "plural_name": "lap cheongs" + "name": "Lap Cheong", + "plural_name": "Lap Cheongs" }, "blood sausage": { "aliases": [], @@ -4285,8 +4285,8 @@ "bologna": { "aliases": [], "description": "", - "name": "bologna", - "plural_name": "bolognas" + "name": "Lyoner", + "plural_name": "Lyoner" }, "burger patty": { "aliases": [], @@ -4458,7 +4458,7 @@ "aliases": [], "description": "", "name": "Hühnerleber", - "plural_name": "chicken livers" + "plural_name": "Hühnerlebern" }, "cornish hen": { "aliases": [], @@ -4685,8 +4685,8 @@ "pigeon": { "aliases": [], "description": "", - "name": "pigeon", - "plural_name": "pigeons" + "name": "Taube", + "plural_name": "Tauben" }, "wild game bird": { "aliases": [], @@ -4697,8 +4697,8 @@ "turkey liver": { "aliases": [], "description": "", - "name": "turkey liver", - "plural_name": "turkey livers" + "name": "Putenleber", + "plural_name": "Putenlebern" }, "chicken neck": { "aliases": [], @@ -4793,8 +4793,8 @@ "capon": { "aliases": [], "description": "", - "name": "capon", - "plural_name": "capons" + "name": "Kapaun", + "plural_name": "Kapaune" }, "smoked turkey bacon": { "aliases": [], @@ -4883,8 +4883,8 @@ "chicken milanesa": { "aliases": [], "description": "", - "name": "chicken milanesa", - "plural_name": "chicken milanesas" + "name": "Milanesa de Pollo", + "plural_name": "Milanesa de Pollo" } } }, @@ -4924,7 +4924,7 @@ "aliases": [], "description": "", "name": "Weißfisch", - "plural_name": "whitefish" + "plural_name": "Renken" }, "halibut": { "aliases": [], @@ -5067,14 +5067,14 @@ "sea bream": { "aliases": [], "description": "", - "name": "sea bream", - "plural_name": "sea bream" + "name": "Seebrasse", + "plural_name": "Seebrassen" }, "rainbow trout": { "aliases": [], "description": "", "name": "Regenbogenforelle", - "plural_name": "rainbow trout" + "plural_name": "Regenbogenforelle" }, "carp": { "aliases": [], @@ -5109,8 +5109,8 @@ "steelhead trout": { "aliases": [], "description": "", - "name": "steelhead trout", - "plural_name": "steelhead trout" + "name": "Steelhead-Forelle", + "plural_name": "Steelhead-Forellen" }, "roe": { "aliases": [], @@ -5127,14 +5127,14 @@ "black cod": { "aliases": [], "description": "", - "name": "black cod", - "plural_name": "black cod" + "name": "Black Cod", + "plural_name": "Black Cod" }, "kingfish": { "aliases": [], "description": "", - "name": "kingfish", - "plural_name": "kingfish" + "name": "Gelbschwanzmakrele", + "plural_name": "Gelbschwanzmakrelen" }, "orange roughy": { "aliases": [], @@ -5199,20 +5199,20 @@ "lemon sole": { "aliases": [], "description": "", - "name": "lemon sole", - "plural_name": "lemon soles" + "name": "Rotzunge", + "plural_name": "Rotzungen" }, "yellowtail": { "aliases": [], "description": "", - "name": "yellowtail", - "plural_name": "yellowtails" + "name": "Gelbschwanzmakrele", + "plural_name": "Gelbschwanzmakrelen" }, "battered fish": { "aliases": [], "description": "", - "name": "battered fish", - "plural_name": "battered fish" + "name": "Fisch in Backteig", + "plural_name": "Fische in Backteig" }, "pike": { "aliases": [], @@ -5229,26 +5229,26 @@ "john dory": { "aliases": [], "description": "", - "name": "john dory", - "plural_name": "john dories" + "name": "Petersfisch", + "plural_name": "Petersfische" }, "swai fish": { "aliases": [], "description": "", - "name": "swai fish", - "plural_name": "swai fish" + "name": "Pangasius", + "plural_name": "Pangasien" }, "walleye": { "aliases": [], "description": "", - "name": "walleye", - "plural_name": "walleyes" + "name": "Glasaugenbarsch", + "plural_name": "Glasaugenbarsche" }, "fresh mackerel": { "aliases": [], "description": "", - "name": "fresh mackerel", - "plural_name": "fresh mackerel" + "name": "frische Makrele", + "plural_name": "frische Makrelen" }, "salmon trout": { "aliases": [], @@ -5259,8 +5259,8 @@ "basa fish": { "aliases": [], "description": "", - "name": "basa fish", - "plural_name": "basa fish" + "name": "Basa", + "plural_name": "Basa" }, "smoked eel": { "aliases": [], @@ -5283,188 +5283,188 @@ "bluefish": { "aliases": [], "description": "", - "name": "bluefish", - "plural_name": "bluefish" + "name": "Blaufisch", + "plural_name": "Blaufische" }, "red mullet": { "aliases": [], "description": "", - "name": "red mullet", - "plural_name": "red mullets" + "name": "Rotbarbe", + "plural_name": "Rotbarben" }, "gurnard": { "aliases": [], "description": "", - "name": "gurnard", - "plural_name": "gurnards" + "name": "Knurrhahn", + "plural_name": "Knurrhähne" }, "plaice": { "aliases": [], "description": "", - "name": "plaice", - "plural_name": "plaices" + "name": "Scholle", + "plural_name": "Schollen" }, "pompano": { "aliases": [], "description": "", - "name": "pompano", - "plural_name": "pompanoes" + "name": "Gabelmakrele", + "plural_name": "Gabelmakrelen" }, "smoked fish": { "aliases": [], "description": "", - "name": "smoked fish", - "plural_name": "smoked fish" + "name": "Räucherfisch", + "plural_name": "Räucherfische" }, "fish head": { "aliases": [], "description": "", - "name": "fish head", - "plural_name": "fish heads" + "name": "Fischkopf", + "plural_name": "Fischköpfe" }, "rohu fish": { "aliases": [], "description": "", - "name": "rohu fish", - "plural_name": "rohu fish" + "name": "Rohu-Karpfen", + "plural_name": "Rohu-Karpfen" }, "dried fish": { "aliases": [], "description": "", - "name": "dried fish", - "plural_name": "dried fish" + "name": "Trockenfisch", + "plural_name": "Trockenfische" }, "flathead": { "aliases": [], "description": "", - "name": "flathead", - "plural_name": "flatheads" + "name": "Plattkopf", + "plural_name": "Plattköpfe" }, "fish cake": { "aliases": [], "description": "", - "name": "fish cake", - "plural_name": "fish cakes" + "name": "Fischkuchen", + "plural_name": "Fischkuchen" }, "salt fish": { "aliases": [], "description": "", - "name": "salt fish", - "plural_name": "salt fish" + "name": "Salzfisch", + "plural_name": "Salzfische" }, "smoked herring": { "aliases": [], "description": "", - "name": "smoked herring", - "plural_name": "smoked herrings" + "name": "Bückling", + "plural_name": "Bücklinge" }, "whiting": { "aliases": [], "description": "", - "name": "whiting", - "plural_name": "whiting" + "name": "Wittling", + "plural_name": "Wittlinge" }, "salmon burger meat": { "aliases": [], "description": "", - "name": "salmon burger meat", - "plural_name": "salmon burger meats" + "name": "Lachsburger", + "plural_name": "Lachsburger" }, "shark meat": { "aliases": [], "description": "", - "name": "shark meat", - "plural_name": "shark meats" + "name": "Haifleisch", + "plural_name": "Haifleisch" }, "garoupa": { "aliases": [], "description": "", - "name": "garoupa", - "plural_name": "garoupas" + "name": "Zackenbarsch", + "plural_name": "Zackenbarsche" }, "gilt-head bream": { "aliases": [], "description": "", - "name": "gilt-head bream", - "plural_name": "gilt-head bream" + "name": "Dorade", + "plural_name": "Doraden" }, "pangasiu": { "aliases": [], "description": "", - "name": "pangasiu", - "plural_name": "pangasius" + "name": "Pangasius", + "plural_name": "Pangasien" }, "salt herring": { "aliases": [], "description": "", - "name": "salt herring", - "plural_name": "salt herrings" + "name": "Salzhering", + "plural_name": "Salzheringe" }, "soused herring": { "aliases": [], "description": "", - "name": "soused herring", - "plural_name": "soused herrings" + "name": "Matjes", + "plural_name": "Matjes" }, "tinapa": { "aliases": [], "description": "", - "name": "tinapa", - "plural_name": "tinapas" + "name": "Tinapa", + "plural_name": "Tinapas" }, "zander": { "aliases": [], "description": "", - "name": "zander", - "plural_name": "zanders" + "name": "Zander", + "plural_name": "Zander" }, "amberjack": { "aliases": [], "description": "", - "name": "amberjack", - "plural_name": "amberjacks" + "name": "Amberjack", + "plural_name": "Amberjacks" }, "korean fish cake": { "aliases": [], "description": "", - "name": "korean fish cake", - "plural_name": "korean fish cakes" + "name": "koreanischer Fischkuchen", + "plural_name": "koreanische Fischkuchen" }, "mullet": { "aliases": [], "description": "", - "name": "mullet", - "plural_name": "mullets" + "name": "Meeräsche", + "plural_name": "Meeräschen" }, "skipjack tuna": { "aliases": [], "description": "", - "name": "skipjack tuna", - "plural_name": "skipjack tuna" + "name": "Echter Bonito", + "plural_name": "Echte Bonito" }, "bottarga": { "aliases": [], "description": "", - "name": "bottarga", - "plural_name": "bottargas" + "name": "Bottarga", + "plural_name": "Bottarga" }, "dried baby sardine": { "aliases": [], "description": "", - "name": "dried baby sardine", - "plural_name": "dried baby sardines" + "name": "getrocknete Sardellen", + "plural_name": "getrocknete Sardellen" }, "marlin": { "aliases": [], "description": "", - "name": "marlin", - "plural_name": "marlins" + "name": "Marlin", + "plural_name": "Marline" }, "threadfin": { "aliases": [], "description": "", - "name": "threadfin", - "plural_name": "threadfins" + "name": "Fingerfisch", + "plural_name": "Fingerfische" }, "tiny fish": { "aliases": [], @@ -5475,20 +5475,20 @@ "tuna belly": { "aliases": [], "description": "", - "name": "tuna belly", - "plural_name": "tuna bellies" + "name": "Thunfischbauch", + "plural_name": "Thunfischbäuche" }, "beluga caviar": { "aliases": [], "description": "", - "name": "beluga caviar", - "plural_name": "beluga caviars" + "name": "Beluga-Kaviar", + "plural_name": "Beluga-Kaviar" }, "bombay duck": { "aliases": [], "description": "", - "name": "bombay duck", - "plural_name": "bombay ducks" + "name": "Bummalo", + "plural_name": "Bummalos" } } }, @@ -5497,20 +5497,20 @@ "shrimp": { "aliases": [], "description": "", - "name": "shrimp", - "plural_name": "shrimps" + "name": "Shrimp", + "plural_name": "Shrimps" }, "octopuse": { "aliases": [], "description": "", - "name": "octopuse", - "plural_name": "octopi" + "name": "Tintenfische", + "plural_name": "Tintenfische" }, "prawn": { "aliases": [], "description": "", - "name": "prawn", - "plural_name": "prawns" + "name": "Garnele", + "plural_name": "Garnelen" }, "crab": { "aliases": [], @@ -5527,14 +5527,14 @@ "mussel": { "aliases": [], "description": "", - "name": "mussel", - "plural_name": "mussels" + "name": "Muschel", + "plural_name": "Muscheln" }, "clam": { "aliases": [], "description": "", - "name": "clam", - "plural_name": "clams" + "name": "Clam", + "plural_name": "Clams" }, "squid": { "aliases": [], @@ -5545,8 +5545,8 @@ "nori": { "aliases": [], "description": "", - "name": "nori", - "plural_name": "noris" + "name": "Nori", + "plural_name": "Nori" }, "lobster": { "aliases": [], @@ -5569,8 +5569,8 @@ "crawfish": { "aliases": [], "description": "", - "name": "crawfish", - "plural_name": "crawfish" + "name": "Flusskrebs", + "plural_name": "Flusskrebse" }, "octopu": { "aliases": [], @@ -5581,8 +5581,8 @@ "kombu": { "aliases": [], "description": "", - "name": "kombu", - "plural_name": "kombus" + "name": "Kombu", + "plural_name": "Kombu" }, "dried shrimp": { "aliases": [], @@ -5701,8 +5701,8 @@ "arame": { "aliases": [], "description": "", - "name": "arame", - "plural_name": "arames" + "name": "Arame", + "plural_name": "Arame" }, "calamari steak": { "aliases": [], @@ -5713,8 +5713,8 @@ "mud crab": { "aliases": [], "description": "", - "name": "mud crab", - "plural_name": "mud crabs" + "name": "Mangrovenkrabbe", + "plural_name": "Mangrovenkrabben" }, "sea urchin": { "aliases": [], @@ -5725,26 +5725,26 @@ "abalone": { "aliases": [], "description": "", - "name": "abalone", - "plural_name": "abalones" + "name": "Meerohr", + "plural_name": "Meerohren" }, "seaweed salad": { "aliases": [], "description": "", - "name": "seaweed salad", - "plural_name": "seaweed salads" + "name": "Seetangsalat", + "plural_name": "Seetangsalate" }, "dulse": { "aliases": [], "description": "", - "name": "dulse", - "plural_name": "dulses" + "name": "Lappentang", + "plural_name": "Lappentang" }, "smoked mussel": { "aliases": [], "description": "", - "name": "smoked mussel", - "plural_name": "smoked mussels" + "name": "geräucherte Muschel", + "plural_name": "geräucherte Muscheln" }, "sea snail": { "aliases": [], @@ -5755,8 +5755,8 @@ "aonori": { "aliases": [], "description": "", - "name": "aonori", - "plural_name": "aonoris" + "name": "Aonori", + "plural_name": "Aonori" }, "prepared crab cake": { "aliases": [], @@ -5791,20 +5791,20 @@ "haddock": { "aliases": [], "description": "", - "name": "haddock", - "plural_name": "haddocks" + "name": "Schellfisch", + "plural_name": "Schellfische" }, "sea mos": { "aliases": [], "description": "", - "name": "sea mos", - "plural_name": "sea moss" + "name": "Knorpeltang", + "plural_name": "Knorpeltang" }, "langoustine": { "aliases": [], "description": "", - "name": "langoustine", - "plural_name": "langoustines" + "name": "Scampi", + "plural_name": "Scampi" } } }, @@ -5867,8 +5867,8 @@ "nutmeg": { "aliases": [], "description": "", - "name": "nutmeg", - "plural_name": "nutmegs" + "name": "Muskatnuss", + "plural_name": "Muskatnuss" }, "chili flake": { "aliases": [], @@ -6029,8 +6029,8 @@ "fennel seed": { "aliases": [], "description": "", - "name": "fennel seed", - "plural_name": "fennel seeds" + "name": "Fenchelsamen", + "plural_name": "Fenchelsamen" }, "tarragon": { "aliases": [], @@ -6101,8 +6101,8 @@ "fenugreek": { "aliases": [], "description": "", - "name": "fenugreek", - "plural_name": "fenugreeks" + "name": "Bockshornklee", + "plural_name": "Bockshornklee" }, "onion flake": { "aliases": [], @@ -6125,8 +6125,8 @@ "sumac": { "aliases": [], "description": "", - "name": "sumac", - "plural_name": "sumacs" + "name": "Sumach", + "plural_name": "Sumach" }, "dried parsley flake": { "aliases": [], @@ -6137,8 +6137,8 @@ "fenugreek seed": { "aliases": [], "description": "", - "name": "fenugreek seed", - "plural_name": "fenugreek seeds" + "name": "Bockshornkleesamen", + "plural_name": "Bockshornkleesamen" }, "kashmiri red chilli": { "aliases": [], @@ -6149,8 +6149,8 @@ "thai basil": { "aliases": [], "description": "", - "name": "thai basil", - "plural_name": "thai basils" + "name": "Thai-Basilikum", + "plural_name": "Thai-Basilikums" }, "edible flower": { "aliases": [], @@ -6413,8 +6413,8 @@ "fennel pollen": { "aliases": [], "description": "", - "name": "fennel pollen", - "plural_name": "fennel pollens" + "name": "Fenchelpollen", + "plural_name": "Fenchelpollen" } } }, @@ -6424,7 +6424,7 @@ "aliases": [], "description": "", "name": "Zucker", - "plural_name": "sugars" + "plural_name": "Zucker" }, "brown sugar": { "aliases": [ @@ -7178,8 +7178,8 @@ "fleur de sel": { "aliases": [], "description": "", - "name": "fleur de sel", - "plural_name": "fleur de sel" + "name": "Fleur de Sel", + "plural_name": "Fleur de Sel" }, "thai red curry paste": { "aliases": [], @@ -7677,8 +7677,8 @@ "cornstarch": { "aliases": [], "description": "", - "name": "cornstarch", - "plural_name": "cornstarches" + "name": "Maisstärke", + "plural_name": "Maisstärke" }, "yeast": { "aliases": [], @@ -7809,7 +7809,7 @@ "gluten-free flour": { "aliases": [], "description": "", - "name": "gluten-free flour", + "name": "glutenfreies Mehl", "plural_name": "gluten-free flours" }, "rice flour": { @@ -7908,8 +7908,8 @@ "potato starch": { "aliases": [], "description": "", - "name": "potato starch", - "plural_name": "potato starches" + "name": "Kartoffelstärke", + "plural_name": "Kartoffelstärke" }, "jello": { "aliases": [], @@ -7950,8 +7950,8 @@ "pectin": { "aliases": [], "description": "", - "name": "pectin", - "plural_name": "pectins" + "name": "Pektin", + "plural_name": "Pektine" }, "rye flour": { "aliases": [], @@ -8404,8 +8404,8 @@ "fresh pasta dough": { "aliases": [], "description": "", - "name": "fresh pasta dough", - "plural_name": "fresh pasta doughs" + "name": "frischer Nudelteig", + "plural_name": "frische Nudelteige" }, "idli batter": { "aliases": [], @@ -8540,8 +8540,8 @@ "rice": { "aliases": [], "description": "", - "name": "rice", - "plural_name": "rices" + "name": "Reis", + "plural_name": "Reis" }, "Rice Krispie Cereal": { "aliases": [ @@ -8554,14 +8554,14 @@ "quinoa": { "aliases": [], "description": "", - "name": "quinoa", - "plural_name": "quinoas" + "name": "Quinoa", + "plural_name": "Quinoa" }, "basmati rice": { "aliases": [], "description": "", - "name": "basmati rice", - "plural_name": "basmati rices" + "name": "Basmati-Reis", + "plural_name": "Basmati-Reis" }, "brown rice": { "aliases": [], @@ -8621,7 +8621,7 @@ "aliases": [], "description": "", "name": "Polenta", - "plural_name": "polentas" + "plural_name": "Polenta" }, "granola cereal": { "aliases": [], @@ -8650,8 +8650,8 @@ "barley": { "aliases": [], "description": "", - "name": "barley", - "plural_name": "barleys" + "name": "Gerste", + "plural_name": "Gerste" }, "wheat germ": { "aliases": [], @@ -8842,8 +8842,8 @@ "brown jasmine rice": { "aliases": [], "description": "", - "name": "brown jasmine rice", - "plural_name": "brown jasmine rices" + "name": "brauner Jasminreis", + "plural_name": "brauner Jasminreis" }, "cream of wheat": { "aliases": [], @@ -8866,8 +8866,8 @@ "weetabix": { "aliases": [], "description": "", - "name": "weetabix", - "plural_name": "weetabixes" + "name": "Weetabix", + "plural_name": "Weetabixe" }, "jambalaya rice mix": { "aliases": [], @@ -9836,8 +9836,8 @@ "paccheri": { "aliases": [], "description": "", - "name": "paccheri", - "plural_name": "paccheris" + "name": "Paccheri", + "plural_name": "Paccheri" }, "kluski noodle": { "aliases": [], @@ -9926,14 +9926,14 @@ "lobster ravioli": { "aliases": [], "description": "", - "name": "lobster ravioli", - "plural_name": "lobster raviolis" + "name": "Hummer-Ravioli", + "plural_name": "Hummer-Ravioli" }, "mafalde": { "aliases": [], "description": "", - "name": "mafalde", - "plural_name": "mafaldes" + "name": "Mafalde", + "plural_name": "Mafalde" }, "misua": { "aliases": [], @@ -9974,8 +9974,8 @@ "casarecce": { "aliases": [], "description": "", - "name": "casarecce", - "plural_name": "casarecces" + "name": "Casarecce", + "plural_name": "Casarecce" }, "quinoa pasta": { "aliases": [], @@ -10042,8 +10042,8 @@ "panko": { "aliases": [], "description": "", - "name": "panko", - "plural_name": "pankoes" + "name": "Panko", + "plural_name": "Panko" }, "flour tortilla": { "aliases": [], @@ -10132,8 +10132,8 @@ "brioche": { "aliases": [], "description": "", - "name": "brioche", - "plural_name": "brioches" + "name": "Brioche", + "plural_name": "Brioches" }, "italian bread crumb": { "aliases": [], @@ -10150,8 +10150,8 @@ "flatbread": { "aliases": [], "description": "", - "name": "flatbread", - "plural_name": "flatbreads" + "name": "Flatbread", + "plural_name": "Flatbreads" }, "dry-roasted peanut": { "aliases": [], diff --git a/mealie/repos/seed/resources/foods/locales/fr-FR.json b/mealie/repos/seed/resources/foods/locales/fr-FR.json index a77274a54..85afb0e84 100644 --- a/mealie/repos/seed/resources/foods/locales/fr-FR.json +++ b/mealie/repos/seed/resources/foods/locales/fr-FR.json @@ -511,14 +511,14 @@ "baby corn": { "aliases": [], "description": "", - "name": "baby corn", - "plural_name": "baby corns" + "name": "bébé maïs", + "plural_name": "bébés maïs" }, "broccoli rabe": { "aliases": [], "description": "", - "name": "broccoli rabe", - "plural_name": "broccoli rabes" + "name": "brocoli-rave", + "plural_name": "brocoli-raves" }, "rutabaga": { "aliases": [], @@ -577,8 +577,8 @@ "frisee": { "aliases": [], "description": "", - "name": "frisee", - "plural_name": "frisees" + "name": "frisée", + "plural_name": "frisées" }, "anaheim pepper": { "aliases": [], @@ -1257,8 +1257,8 @@ "wild mushroom": { "aliases": [], "description": "", - "name": "wild mushroom", - "plural_name": "wild mushrooms" + "name": "champignon sauvage", + "plural_name": "champignons sauvages" }, "porcini": { "aliases": [], diff --git a/mealie/repos/seed/resources/foods/locales/he-IL.json b/mealie/repos/seed/resources/foods/locales/he-IL.json index dd5236681..906b58e6d 100644 --- a/mealie/repos/seed/resources/foods/locales/he-IL.json +++ b/mealie/repos/seed/resources/foods/locales/he-IL.json @@ -105,7 +105,7 @@ }, "chile pepper": { "aliases": [ - "capsicum" + "a" ], "description": "", "name": "פלפל צ'ילי", @@ -1175,8 +1175,8 @@ "freeze-dried pineapple": { "aliases": [], "description": "", - "name": "אננס מיובש בהקפאה", - "plural_name": "אננסים מיובשים בהקפאה" + "name": "אננס מיובש מוקפא", + "plural_name": "אננסים מיובשים מוקפא" }, "pluot": { "aliases": [], @@ -1477,8 +1477,8 @@ "cherry": { "aliases": [], "description": "", - "name": "cherry", - "plural_name": "cherries" + "name": "דובדבן", + "plural_name": "דובדבנים" }, "blackberry": { "aliases": [], @@ -1501,8 +1501,8 @@ "dried cherry": { "aliases": [], "description": "", - "name": "dried cherry", - "plural_name": "dried cherries" + "name": "דובדבן מיובש", + "plural_name": "דובדבנים מיובשים" }, "juniper berry": { "aliases": [], @@ -1871,8 +1871,8 @@ "melon seed": { "aliases": [], "description": "", - "name": "melon seed", - "plural_name": "melon seeds" + "name": "גרעין מלון", + "plural_name": "גרעיני מלונים" }, "lotus seed": { "aliases": [], @@ -1907,8 +1907,8 @@ "peanut brittle": { "aliases": [], "description": "", - "name": "peanut brittle", - "plural_name": "peanut brittles" + "name": "שבר בוטן", + "plural_name": "שברי בוטנים" }, "jackfruit seed": { "aliases": [], @@ -1991,8 +1991,8 @@ "indian almond": { "aliases": [], "description": "", - "name": "indian almond", - "plural_name": "indian almonds" + "name": "שקד הודי", + "plural_name": "שקדים הודים" } } }, @@ -3225,8 +3225,8 @@ "cashew butter": { "aliases": [], "description": "", - "name": "cashew butter", - "plural_name": "cashew butter" + "name": "חמאת קשיו", + "plural_name": "חמאת קשיו" }, "tempeh": { "aliases": [], @@ -3261,32 +3261,32 @@ "cashew milk": { "aliases": [], "description": "", - "name": "cashew milk", - "plural_name": "cashew milks" + "name": "חלב קשיו", + "plural_name": "חלב קשיו" }, "oat milk": { "aliases": [], "description": "", - "name": "oat milk", - "plural_name": "oat milks" + "name": "חלב שיבולת שועל", + "plural_name": "חלב שיבולת שועל" }, "nut butter": { "aliases": [], "description": "", - "name": "nut butter", - "plural_name": "nut butter" + "name": "חמאת אגוזים", + "plural_name": "חמאת אגוזים" }, "rice milk": { "aliases": [], "description": "", - "name": "rice milk", - "plural_name": "rice milks" + "name": "חלב אורז", + "plural_name": "חלב אורז" }, "vegan sour cream": { "aliases": [], "description": "", - "name": "vegan sour cream", - "plural_name": "vegan sour creams" + "name": "שמנת חמוצה טבעונית", + "plural_name": "שמנת חמוצה טבעונית" }, "textured vegetable protein": { "aliases": [], @@ -3303,14 +3303,14 @@ "soy yogurt": { "aliases": [], "description": "", - "name": "soy yogurt", - "plural_name": "soy yogurts" + "name": "יוגורט סויה", + "plural_name": "יוגורט סויה" }, "vegan mozzarella": { "aliases": [], "description": "", - "name": "vegan mozzarella", - "plural_name": "vegan mozzarellas" + "name": "מוצרלה טבעונית", + "plural_name": "מוצרלה טבעונית" }, "non-dairy creamer": { "aliases": [], @@ -3333,8 +3333,8 @@ "smoked tofu": { "aliases": [], "description": "", - "name": "smoked tofu", - "plural_name": "smoked tofus" + "name": "טופו מעושן", + "plural_name": "טופו מעושן" }, "coconut powder": { "aliases": [], @@ -3579,8 +3579,8 @@ "cashew cheese sauce": { "aliases": [], "description": "", - "name": "cashew cheese sauce", - "plural_name": "cashew cheese sauces" + "name": "רוטב גבינת קשיו", + "plural_name": "רוטב גבינת קשיו" }, "coconut fat": { "aliases": [], @@ -3633,8 +3633,8 @@ "cashew cream cheese": { "aliases": [], "description": "", - "name": "cashew cream cheese", - "plural_name": "cashew cream cheeses" + "name": "גבינת קרם קשיו", + "plural_name": "גבינת קרם קשיו" }, "cricket flour": { "aliases": [], @@ -7700,11 +7700,11 @@ }, "whole-wheat flour": { "aliases": [ - "whole wheat flour" + "קמח חיטה מלא" ], "description": "", - "name": "whole-wheat flour", - "plural_name": "whole-wheat flours" + "name": "קמח חיטה מלא", + "plural_name": "קמח חיטה מלא" }, "almond flour": { "aliases": [], @@ -7715,8 +7715,8 @@ "self-raising flour": { "aliases": [], "description": "", - "name": "self-raising flour", - "plural_name": "self-raising flours" + "name": "קמח תופח", + "plural_name": "קמח תופח" }, "shredded coconut": { "aliases": [], @@ -7878,8 +7878,8 @@ "spelt": { "aliases": [], "description": "", - "name": "spelt", - "plural_name": "spelts" + "name": "כוסמין", + "plural_name": "כוסמין" }, "brownie mix": { "aliases": [], @@ -7944,8 +7944,8 @@ "brown rice flour": { "aliases": [], "description": "", - "name": "brown rice flour", - "plural_name": "brown rice flours" + "name": "קמח אורז מלא", + "plural_name": "קמח אורז מלא" }, "pectin": { "aliases": [], @@ -8142,8 +8142,8 @@ "quinoa flour": { "aliases": [], "description": "", - "name": "quinoa flour", - "plural_name": "quinoa flours" + "name": "קמח קינואה", + "plural_name": "קמח קינואה" }, "finger millet flour": { "aliases": [], @@ -8190,8 +8190,8 @@ "gluten-free baking flour": { "aliases": [], "description": "", - "name": "gluten-free baking flour", - "plural_name": "gluten-free baking flours" + "name": "קמח אפייה ללא גלוטן", + "plural_name": "קמח אפייה ללא גלוטן" }, "einkorn flour": { "aliases": [], @@ -8208,14 +8208,14 @@ "gluten-free self-raising flour": { "aliases": [], "description": "", - "name": "gluten-free self-raising flour", - "plural_name": "gluten-free self-raising flours" + "name": "קמח תופח ללא גלוטן", + "plural_name": "קמח תופח ללא גלוטן" }, "peanut flour": { "aliases": [], "description": "", - "name": "peanut flour", - "plural_name": "peanut flours" + "name": "קמח בוטנים", + "plural_name": "קמח בוטנים" }, "sweet bean paste": { "aliases": [], @@ -8950,8 +8950,8 @@ "spelt flake": { "aliases": [], "description": "", - "name": "spelt flake", - "plural_name": "spelt flakes" + "name": "פתיתי כוסמין", + "plural_name": "פתיתי כוסמין" }, "kodo millet": { "aliases": [], @@ -9504,14 +9504,14 @@ "macaroni": { "aliases": [], "description": "", - "name": "macaroni", - "plural_name": "macaronis" + "name": "מקרוני", + "plural_name": "מקרוני" }, "egg noodle": { "aliases": [], "description": "", - "name": "egg noodle", - "plural_name": "egg noodles" + "name": "איטריית ביצים", + "plural_name": "איטריות ביצים" }, "spiral pasta": { "aliases": [], @@ -9521,7 +9521,7 @@ }, "lasagna noodle": { "aliases": [ - "lasagnas" + "לזניה" ], "description": "", "name": "lasagna noodle", @@ -9536,8 +9536,8 @@ "fettuccine": { "aliases": [], "description": "", - "name": "fettuccine", - "plural_name": "fettuccines" + "name": "פטוציני", + "plural_name": "פטוציני" }, "orzo": { "aliases": [], @@ -9560,26 +9560,26 @@ "noodle": { "aliases": [], "description": "", - "name": "noodle", - "plural_name": "noodles" + "name": "איטרייה", + "plural_name": "איטריות" }, "tortellini": { "aliases": [], "description": "", - "name": "tortellini", - "plural_name": "tortellinis" + "name": "טורטליני", + "plural_name": "טורטליני" }, "cheese tortellini": { "aliases": [], "description": "", - "name": "cheese tortellini", - "plural_name": "cheese tortellinis" + "name": "טורטליני גבינה", + "plural_name": "טורטליני גבינה" }, "rice noodle": { "aliases": [], "description": "", - "name": "rice noodle", - "plural_name": "rice noodles" + "name": "איטריית אורז", + "plural_name": "איטריות אורז" }, "rigatoni": { "aliases": [], @@ -9602,8 +9602,8 @@ "ramen noodle": { "aliases": [], "description": "", - "name": "ramen noodle", - "plural_name": "ramen noodles" + "name": "איטריית ראמן", + "plural_name": "איטריות ראמן" }, "vermicelli": { "aliases": [], @@ -9626,8 +9626,8 @@ "ravioli": { "aliases": [], "description": "", - "name": "ravioli", - "plural_name": "raviolis" + "name": "רביולי", + "plural_name": "רביולי" }, "ziti": { "aliases": [], @@ -9656,8 +9656,8 @@ "udon noodle": { "aliases": [], "description": "", - "name": "udon noodle", - "plural_name": "udon noodles" + "name": "איטריית אודון", + "plural_name": "איטריות אודון" }, "ditalini": { "aliases": [], @@ -10634,14 +10634,14 @@ "olive oil": { "aliases": [], "description": "", - "name": "olive oil", - "plural_name": "olive oils" + "name": "שמן זית", + "plural_name": "שמן זית" }, "vegetable oil": { "aliases": [], "description": "", - "name": "vegetable oil", - "plural_name": "vegetable oils" + "name": "שמן צמחי", + "plural_name": "שמן צמחי" }, "extra virgin olive oil": { "aliases": [], @@ -10652,14 +10652,14 @@ "canola oil": { "aliases": [], "description": "", - "name": "canola oil", - "plural_name": "canola oils" + "name": "שמן קנולה", + "plural_name": "שמן קנולה" }, "coconut oil": { "aliases": [], "description": "", - "name": "coconut oil", - "plural_name": "coconut oils" + "name": "שמן קוקוס", + "plural_name": "שמן קוקוס" }, "cooking spray": { "aliases": [], @@ -10670,8 +10670,8 @@ "sesame oil": { "aliases": [], "description": "", - "name": "sesame oil", - "plural_name": "sesame oils" + "name": "שמן שומשום", + "plural_name": "שמן שומשום" }, "frying oil": { "aliases": [], @@ -10682,14 +10682,14 @@ "sunflower oil": { "aliases": [], "description": "", - "name": "sunflower oil", - "plural_name": "sunflower oils" + "name": "שמן חמניות", + "plural_name": "שמן חמניות" }, "avocado oil": { "aliases": [], "description": "", - "name": "avocado oil", - "plural_name": "avocado oils" + "name": "שמן אבוקדו", + "plural_name": "שמן אבוקדו" }, "toasted sesame oil": { "aliases": [], @@ -10700,8 +10700,8 @@ "peanut oil": { "aliases": [], "description": "", - "name": "peanut oil", - "plural_name": "peanut oils" + "name": "שמן בוטנים", + "plural_name": "שמן בוטנים" }, "grapeseed oil": { "aliases": [ @@ -10774,8 +10774,8 @@ "cacao butter": { "aliases": [], "description": "", - "name": "cacao butter", - "plural_name": "cacao butter" + "name": "חמאת קקאו", + "plural_name": "חמאת קקאו" }, "salad oil": { "aliases": [], @@ -13054,8 +13054,8 @@ "pineapple salsa": { "aliases": [], "description": "", - "name": "pineapple salsa", - "plural_name": "pineapple salsas" + "name": "סלסת אננס", + "plural_name": "סלסת אננס" }, "artichoke dip": { "aliases": [], @@ -14337,8 +14337,8 @@ "pineapple jam": { "aliases": [], "description": "", - "name": "pineapple jam", - "plural_name": "pineapple jams" + "name": "ריבת אננס", + "plural_name": "ריבת אננס" }, "licorice": { "aliases": [], @@ -15125,8 +15125,8 @@ "pineapple juice": { "aliases": [], "description": "", - "name": "pineapple juice", - "plural_name": "pineapple juices" + "name": "מיץ אננס", + "plural_name": "מיץ אננס" }, "apple juice": { "aliases": [], @@ -15179,8 +15179,8 @@ "coke": { "aliases": [], "description": "", - "name": "coke", - "plural_name": "cokes" + "name": "קולה", + "plural_name": "קולה" }, "eggnog": { "aliases": [], diff --git a/mealie/repos/seed/resources/foods/locales/nl-NL.json b/mealie/repos/seed/resources/foods/locales/nl-NL.json index f12dd7472..e9a6f3de4 100644 --- a/mealie/repos/seed/resources/foods/locales/nl-NL.json +++ b/mealie/repos/seed/resources/foods/locales/nl-NL.json @@ -1420,7 +1420,7 @@ "aliases": [], "description": "", "name": "bovist", - "plural_name": "puffballs" + "plural_name": "bovisten" }, "honey fungu": { "aliases": [], @@ -1443,8 +1443,8 @@ "lion’s mane mushroom": { "aliases": [], "description": "", - "name": "lion’s mane mushroom", - "plural_name": "lion’s mane mushrooms" + "name": "pruikzwam", + "plural_name": "pruikzwammen" } } }, @@ -1483,8 +1483,8 @@ "blackberry": { "aliases": [], "description": "", - "name": "braam", - "plural_name": "bramen" + "name": "braambes", + "plural_name": "braambessen" }, "berry mix": { "aliases": [], @@ -1555,20 +1555,20 @@ "canned sour cherry": { "aliases": [], "description": "", - "name": "canned sour cherry", - "plural_name": "canned sour cherries" + "name": "zure kers in blik", + "plural_name": "zure kersen in blik" }, "mulberry": { "aliases": [], "description": "", - "name": "mulberry", - "plural_name": "mulberries" + "name": "moerbei", + "plural_name": "moerbeien" }, "acai berry": { "aliases": [], "description": "", - "name": "acai berry", - "plural_name": "acai berries" + "name": "açai", + "plural_name": "açai" }, "canned cherry": { "aliases": [], @@ -1609,8 +1609,8 @@ "barberry": { "aliases": [], "description": "", - "name": "barberry", - "plural_name": "barberries" + "name": "zuurbes", + "plural_name": "zuurbessen" }, "dried berry": { "aliases": [], @@ -1621,8 +1621,8 @@ "sea buckthorn": { "aliases": [], "description": "", - "name": "sea buckthorn", - "plural_name": "sea buckthorns" + "name": "duindoorn", + "plural_name": "duindoorns" }, "saskatoon berry": { "aliases": [], @@ -1639,7 +1639,7 @@ "hawthorn": { "aliases": [], "description": "", - "name": "hawthorn", + "name": "meidoorn", "plural_name": "meidoorns" }, "boysenberry": { @@ -1663,50 +1663,50 @@ "aronia berry": { "aliases": [], "description": "", - "name": "aronia berry", - "plural_name": "aronia berries" + "name": "appelbes", + "plural_name": "appelbessen" }, "chokeberry": { "aliases": [], "description": "", - "name": "chokeberry", - "plural_name": "chokeberries" + "name": "appelbes", + "plural_name": "appelbessen" }, "loganberry": { "aliases": [], "description": "", - "name": "loganberry", - "plural_name": "loganberries" + "name": "loganbes", + "plural_name": "loganbessen" }, "blackcurrant leaf": { "aliases": [], "description": "", - "name": "blackcurrant leaf", - "plural_name": "blackcurrant leaves" + "name": "zwarte bes blad", + "plural_name": "zwarte bes bladeren" }, "haskap berry": { "aliases": [], "description": "", - "name": "haskap berry", - "plural_name": "haskap berries" + "name": "honingbes", + "plural_name": "honingbessen" }, "dewberry": { "aliases": [], "description": "", - "name": "dewberry", - "plural_name": "dewberries" + "name": "dauwbraam", + "plural_name": "dauwbramen" }, "sloe berry": { "aliases": [], "description": "", - "name": "sloe berry", - "plural_name": "sloe berries" + "name": "sleedoorn", + "plural_name": "sleedoorns" }, "oregon grape": { "aliases": [], "description": "", - "name": "oregon grape", - "plural_name": "oregon grapes" + "name": "mahoniebes", + "plural_name": "mahoniebessen" } } }, @@ -1805,8 +1805,8 @@ "macadamia": { "aliases": [], "description": "", - "name": "macadamia", - "plural_name": "macadamias" + "name": "macadamianoot", + "plural_name": "macadamianoten" }, "roasted peanut": { "aliases": [], @@ -1817,8 +1817,8 @@ "chopped nut": { "aliases": [], "description": "", - "name": "chopped nut", - "plural_name": "chopped nuts" + "name": "gehakte noot", + "plural_name": "gehakte noten" }, "hemp heart": { "aliases": [], @@ -1841,8 +1841,8 @@ "brazil nut": { "aliases": [], "description": "", - "name": "brazil nut", - "plural_name": "brazil nuts" + "name": "paranoot", + "plural_name": "paranoten" }, "mixed seed": { "aliases": [], @@ -1895,8 +1895,8 @@ "basil seed": { "aliases": [], "description": "", - "name": "basil seed", - "plural_name": "basil seeds" + "name": "basilicumzaad", + "plural_name": "basilicum zaden" }, "candlenut": { "aliases": [], @@ -1961,8 +1961,8 @@ "palm seed": { "aliases": [], "description": "", - "name": "palm seed", - "plural_name": "palm seeds" + "name": "palmzaad", + "plural_name": "palmzaden" }, "ginkgo nut": { "aliases": [], @@ -2001,16 +2001,16 @@ "parmesan": { "aliases": [], "description": "", - "name": "parmesan", - "plural_name": "parmesans" + "name": "parmezaan", + "plural_name": "parmezaan" }, "cheddar cheese": { "aliases": [ "cheddars" ], "description": "", - "name": "cheddar kaas", - "plural_name": "cheddar kazen" + "name": "cheddar", + "plural_name": "cheddars" }, "cream cheese": { "aliases": [], @@ -2063,8 +2063,8 @@ "blue cheese": { "aliases": [], "description": "", - "name": "blue cheese", - "plural_name": "blue cheeses" + "name": "blauwe kaas", + "plural_name": "blauwe kazen" }, "goat cheese": { "aliases": [], @@ -2159,8 +2159,8 @@ "quark": { "aliases": [], "description": "", - "name": "quark", - "plural_name": "quarks" + "name": "kwark", + "plural_name": "kwarken" }, "gouda": { "aliases": [], From 754878eb6319c5ba7c245cb00645548b37378dcb Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 19 Jul 2025 11:26:37 -0500 Subject: [PATCH 02/23] chore(deps): update dependency coverage to v7.9.2 (#5622) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- poetry.lock | 136 ++++++++++++++++++++++++++-------------------------- 1 file changed, 68 insertions(+), 68 deletions(-) diff --git a/poetry.lock b/poetry.lock index 283370735..6db310fc6 100644 --- a/poetry.lock +++ b/poetry.lock @@ -478,79 +478,79 @@ markers = {main = "platform_system == \"Windows\" or sys_platform == \"win32\""} [[package]] name = "coverage" -version = "7.9.1" +version = "7.9.2" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "coverage-7.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:cc94d7c5e8423920787c33d811c0be67b7be83c705f001f7180c7b186dcf10ca"}, - {file = "coverage-7.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:16aa0830d0c08a2c40c264cef801db8bc4fc0e1892782e45bcacbd5889270509"}, - {file = "coverage-7.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf95981b126f23db63e9dbe4cf65bd71f9a6305696fa5e2262693bc4e2183f5b"}, - {file = "coverage-7.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f05031cf21699785cd47cb7485f67df619e7bcdae38e0fde40d23d3d0210d3c3"}, - {file = "coverage-7.9.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb4fbcab8764dc072cb651a4bcda4d11fb5658a1d8d68842a862a6610bd8cfa3"}, - {file = "coverage-7.9.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:0f16649a7330ec307942ed27d06ee7e7a38417144620bb3d6e9a18ded8a2d3e5"}, - {file = "coverage-7.9.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:cea0a27a89e6432705fffc178064503508e3c0184b4f061700e771a09de58187"}, - {file = "coverage-7.9.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:e980b53a959fa53b6f05343afbd1e6f44a23ed6c23c4b4c56c6662bbb40c82ce"}, - {file = "coverage-7.9.1-cp310-cp310-win32.whl", hash = "sha256:70760b4c5560be6ca70d11f8988ee6542b003f982b32f83d5ac0b72476607b70"}, - {file = "coverage-7.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:a66e8f628b71f78c0e0342003d53b53101ba4e00ea8dabb799d9dba0abbbcebe"}, - {file = "coverage-7.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:95c765060e65c692da2d2f51a9499c5e9f5cf5453aeaf1420e3fc847cc060582"}, - {file = "coverage-7.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ba383dc6afd5ec5b7a0d0c23d38895db0e15bcba7fb0fa8901f245267ac30d86"}, - {file = "coverage-7.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:37ae0383f13cbdcf1e5e7014489b0d71cc0106458878ccde52e8a12ced4298ed"}, - {file = "coverage-7.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:69aa417a030bf11ec46149636314c24c8d60fadb12fc0ee8f10fda0d918c879d"}, - {file = "coverage-7.9.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a4be2a28656afe279b34d4f91c3e26eccf2f85500d4a4ff0b1f8b54bf807338"}, - {file = "coverage-7.9.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:382e7ddd5289f140259b610e5f5c58f713d025cb2f66d0eb17e68d0a94278875"}, - {file = "coverage-7.9.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e5532482344186c543c37bfad0ee6069e8ae4fc38d073b8bc836fc8f03c9e250"}, - {file = "coverage-7.9.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a39d18b3f50cc121d0ce3838d32d58bd1d15dab89c910358ebefc3665712256c"}, - {file = "coverage-7.9.1-cp311-cp311-win32.whl", hash = "sha256:dd24bd8d77c98557880def750782df77ab2b6885a18483dc8588792247174b32"}, - {file = "coverage-7.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:6b55ad10a35a21b8015eabddc9ba31eb590f54adc9cd39bcf09ff5349fd52125"}, - {file = "coverage-7.9.1-cp311-cp311-win_arm64.whl", hash = "sha256:6ad935f0016be24c0e97fc8c40c465f9c4b85cbbe6eac48934c0dc4d2568321e"}, - {file = "coverage-7.9.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a8de12b4b87c20de895f10567639c0797b621b22897b0af3ce4b4e204a743626"}, - {file = "coverage-7.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5add197315a054e92cee1b5f686a2bcba60c4c3e66ee3de77ace6c867bdee7cb"}, - {file = "coverage-7.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:600a1d4106fe66f41e5d0136dfbc68fe7200a5cbe85610ddf094f8f22e1b0300"}, - {file = "coverage-7.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a876e4c3e5a2a1715a6608906aa5a2e0475b9c0f68343c2ada98110512ab1d8"}, - {file = "coverage-7.9.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81f34346dd63010453922c8e628a52ea2d2ccd73cb2487f7700ac531b247c8a5"}, - {file = "coverage-7.9.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:888f8eee13f2377ce86d44f338968eedec3291876b0b8a7289247ba52cb984cd"}, - {file = "coverage-7.9.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:9969ef1e69b8c8e1e70d591f91bbc37fc9a3621e447525d1602801a24ceda898"}, - {file = "coverage-7.9.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:60c458224331ee3f1a5b472773e4a085cc27a86a0b48205409d364272d67140d"}, - {file = "coverage-7.9.1-cp312-cp312-win32.whl", hash = "sha256:5f646a99a8c2b3ff4c6a6e081f78fad0dde275cd59f8f49dc4eab2e394332e74"}, - {file = "coverage-7.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:30f445f85c353090b83e552dcbbdad3ec84c7967e108c3ae54556ca69955563e"}, - {file = "coverage-7.9.1-cp312-cp312-win_arm64.whl", hash = "sha256:af41da5dca398d3474129c58cb2b106a5d93bbb196be0d307ac82311ca234342"}, - {file = "coverage-7.9.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:31324f18d5969feef7344a932c32428a2d1a3e50b15a6404e97cba1cc9b2c631"}, - {file = "coverage-7.9.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0c804506d624e8a20fb3108764c52e0eef664e29d21692afa375e0dd98dc384f"}, - {file = "coverage-7.9.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ef64c27bc40189f36fcc50c3fb8f16ccda73b6a0b80d9bd6e6ce4cffcd810bbd"}, - {file = "coverage-7.9.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d4fe2348cc6ec372e25adec0219ee2334a68d2f5222e0cba9c0d613394e12d86"}, - {file = "coverage-7.9.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:34ed2186fe52fcc24d4561041979a0dec69adae7bce2ae8d1c49eace13e55c43"}, - {file = "coverage-7.9.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:25308bd3d00d5eedd5ae7d4357161f4df743e3c0240fa773ee1b0f75e6c7c0f1"}, - {file = "coverage-7.9.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:73e9439310f65d55a5a1e0564b48e34f5369bee943d72c88378f2d576f5a5751"}, - {file = "coverage-7.9.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:37ab6be0859141b53aa89412a82454b482c81cf750de4f29223d52268a86de67"}, - {file = "coverage-7.9.1-cp313-cp313-win32.whl", hash = "sha256:64bdd969456e2d02a8b08aa047a92d269c7ac1f47e0c977675d550c9a0863643"}, - {file = "coverage-7.9.1-cp313-cp313-win_amd64.whl", hash = "sha256:be9e3f68ca9edb897c2184ad0eee815c635565dbe7a0e7e814dc1f7cbab92c0a"}, - {file = "coverage-7.9.1-cp313-cp313-win_arm64.whl", hash = "sha256:1c503289ffef1d5105d91bbb4d62cbe4b14bec4d13ca225f9c73cde9bb46207d"}, - {file = "coverage-7.9.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:0b3496922cb5f4215bf5caaef4cf12364a26b0be82e9ed6d050f3352cf2d7ef0"}, - {file = "coverage-7.9.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9565c3ab1c93310569ec0d86b017f128f027cab0b622b7af288696d7ed43a16d"}, - {file = "coverage-7.9.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2241ad5dbf79ae1d9c08fe52b36d03ca122fb9ac6bca0f34439e99f8327ac89f"}, - {file = "coverage-7.9.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3bb5838701ca68b10ebc0937dbd0eb81974bac54447c55cd58dea5bca8451029"}, - {file = "coverage-7.9.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b30a25f814591a8c0c5372c11ac8967f669b97444c47fd794926e175c4047ece"}, - {file = "coverage-7.9.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:2d04b16a6062516df97969f1ae7efd0de9c31eb6ebdceaa0d213b21c0ca1a683"}, - {file = "coverage-7.9.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:7931b9e249edefb07cd6ae10c702788546341d5fe44db5b6108a25da4dca513f"}, - {file = "coverage-7.9.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:52e92b01041151bf607ee858e5a56c62d4b70f4dac85b8c8cb7fb8a351ab2c10"}, - {file = "coverage-7.9.1-cp313-cp313t-win32.whl", hash = "sha256:684e2110ed84fd1ca5f40e89aa44adf1729dc85444004111aa01866507adf363"}, - {file = "coverage-7.9.1-cp313-cp313t-win_amd64.whl", hash = "sha256:437c576979e4db840539674e68c84b3cda82bc824dd138d56bead1435f1cb5d7"}, - {file = "coverage-7.9.1-cp313-cp313t-win_arm64.whl", hash = "sha256:18a0912944d70aaf5f399e350445738a1a20b50fbea788f640751c2ed9208b6c"}, - {file = "coverage-7.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6f424507f57878e424d9a95dc4ead3fbdd72fd201e404e861e465f28ea469951"}, - {file = "coverage-7.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:535fde4001b2783ac80865d90e7cc7798b6b126f4cd8a8c54acfe76804e54e58"}, - {file = "coverage-7.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:02532fd3290bb8fa6bec876520842428e2a6ed6c27014eca81b031c2d30e3f71"}, - {file = "coverage-7.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:56f5eb308b17bca3bbff810f55ee26d51926d9f89ba92707ee41d3c061257e55"}, - {file = "coverage-7.9.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfa447506c1a52271f1b0de3f42ea0fa14676052549095e378d5bff1c505ff7b"}, - {file = "coverage-7.9.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:9ca8e220006966b4a7b68e8984a6aee645a0384b0769e829ba60281fe61ec4f7"}, - {file = "coverage-7.9.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:49f1d0788ba5b7ba65933f3a18864117c6506619f5ca80326b478f72acf3f385"}, - {file = "coverage-7.9.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:68cd53aec6f45b8e4724c0950ce86eacb775c6be01ce6e3669fe4f3a21e768ed"}, - {file = "coverage-7.9.1-cp39-cp39-win32.whl", hash = "sha256:95335095b6c7b1cc14c3f3f17d5452ce677e8490d101698562b2ffcacc304c8d"}, - {file = "coverage-7.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:e1b5191d1648acc439b24721caab2fd0c86679d8549ed2c84d5a7ec1bedcc244"}, - {file = "coverage-7.9.1-pp39.pp310.pp311-none-any.whl", hash = "sha256:db0f04118d1db74db6c9e1cb1898532c7dcc220f1d2718f058601f7c3f499514"}, - {file = "coverage-7.9.1-py3-none-any.whl", hash = "sha256:66b974b145aa189516b6bf2d8423e888b742517d37872f6ee4c5be0073bd9a3c"}, - {file = "coverage-7.9.1.tar.gz", hash = "sha256:6cf43c78c4282708a28e466316935ec7489a9c487518a77fa68f716c67909cec"}, + {file = "coverage-7.9.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:66283a192a14a3854b2e7f3418d7db05cdf411012ab7ff5db98ff3b181e1f912"}, + {file = "coverage-7.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4e01d138540ef34fcf35c1aa24d06c3de2a4cffa349e29a10056544f35cca15f"}, + {file = "coverage-7.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f22627c1fe2745ee98d3ab87679ca73a97e75ca75eb5faee48660d060875465f"}, + {file = "coverage-7.9.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b1c2d8363247b46bd51f393f86c94096e64a1cf6906803fa8d5a9d03784bdbf"}, + {file = "coverage-7.9.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c10c882b114faf82dbd33e876d0cbd5e1d1ebc0d2a74ceef642c6152f3f4d547"}, + {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:de3c0378bdf7066c3988d66cd5232d161e933b87103b014ab1b0b4676098fa45"}, + {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:1e2f097eae0e5991e7623958a24ced3282676c93c013dde41399ff63e230fcf2"}, + {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:28dc1f67e83a14e7079b6cea4d314bc8b24d1aed42d3582ff89c0295f09b181e"}, + {file = "coverage-7.9.2-cp310-cp310-win32.whl", hash = "sha256:bf7d773da6af9e10dbddacbf4e5cab13d06d0ed93561d44dae0188a42c65be7e"}, + {file = "coverage-7.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:0c0378ba787681ab1897f7c89b415bd56b0b2d9a47e5a3d8dc0ea55aac118d6c"}, + {file = "coverage-7.9.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a7a56a2964a9687b6aba5b5ced6971af308ef6f79a91043c05dd4ee3ebc3e9ba"}, + {file = "coverage-7.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:123d589f32c11d9be7fe2e66d823a236fe759b0096f5db3fb1b75b2fa414a4fa"}, + {file = "coverage-7.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:333b2e0ca576a7dbd66e85ab402e35c03b0b22f525eed82681c4b866e2e2653a"}, + {file = "coverage-7.9.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:326802760da234baf9f2f85a39e4a4b5861b94f6c8d95251f699e4f73b1835dc"}, + {file = "coverage-7.9.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19e7be4cfec248df38ce40968c95d3952fbffd57b400d4b9bb580f28179556d2"}, + {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0b4a4cb73b9f2b891c1788711408ef9707666501ba23684387277ededab1097c"}, + {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:2c8937fa16c8c9fbbd9f118588756e7bcdc7e16a470766a9aef912dd3f117dbd"}, + {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:42da2280c4d30c57a9b578bafd1d4494fa6c056d4c419d9689e66d775539be74"}, + {file = "coverage-7.9.2-cp311-cp311-win32.whl", hash = "sha256:14fa8d3da147f5fdf9d298cacc18791818f3f1a9f542c8958b80c228320e90c6"}, + {file = "coverage-7.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:549cab4892fc82004f9739963163fd3aac7a7b0df430669b75b86d293d2df2a7"}, + {file = "coverage-7.9.2-cp311-cp311-win_arm64.whl", hash = "sha256:c2667a2b913e307f06aa4e5677f01a9746cd08e4b35e14ebcde6420a9ebb4c62"}, + {file = "coverage-7.9.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:ae9eb07f1cfacd9cfe8eaee6f4ff4b8a289a668c39c165cd0c8548484920ffc0"}, + {file = "coverage-7.9.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9ce85551f9a1119f02adc46d3014b5ee3f765deac166acf20dbb851ceb79b6f3"}, + {file = "coverage-7.9.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8f6389ac977c5fb322e0e38885fbbf901743f79d47f50db706e7644dcdcb6e1"}, + {file = "coverage-7.9.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ff0d9eae8cdfcd58fe7893b88993723583a6ce4dfbfd9f29e001922544f95615"}, + {file = "coverage-7.9.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fae939811e14e53ed8a9818dad51d434a41ee09df9305663735f2e2d2d7d959b"}, + {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:31991156251ec202c798501e0a42bbdf2169dcb0f137b1f5c0f4267f3fc68ef9"}, + {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:d0d67963f9cbfc7c7f96d4ac74ed60ecbebd2ea6eeb51887af0f8dce205e545f"}, + {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:49b752a2858b10580969ec6af6f090a9a440a64a301ac1528d7ca5f7ed497f4d"}, + {file = "coverage-7.9.2-cp312-cp312-win32.whl", hash = "sha256:88d7598b8ee130f32f8a43198ee02edd16d7f77692fa056cb779616bbea1b355"}, + {file = "coverage-7.9.2-cp312-cp312-win_amd64.whl", hash = "sha256:9dfb070f830739ee49d7c83e4941cc767e503e4394fdecb3b54bfdac1d7662c0"}, + {file = "coverage-7.9.2-cp312-cp312-win_arm64.whl", hash = "sha256:4e2c058aef613e79df00e86b6d42a641c877211384ce5bd07585ed7ba71ab31b"}, + {file = "coverage-7.9.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:985abe7f242e0d7bba228ab01070fde1d6c8fa12f142e43debe9ed1dde686038"}, + {file = "coverage-7.9.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82c3939264a76d44fde7f213924021ed31f55ef28111a19649fec90c0f109e6d"}, + {file = "coverage-7.9.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae5d563e970dbe04382f736ec214ef48103d1b875967c89d83c6e3f21706d5b3"}, + {file = "coverage-7.9.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bdd612e59baed2a93c8843c9a7cb902260f181370f1d772f4842987535071d14"}, + {file = "coverage-7.9.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:256ea87cb2a1ed992bcdfc349d8042dcea1b80436f4ddf6e246d6bee4b5d73b6"}, + {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f44ae036b63c8ea432f610534a2668b0c3aee810e7037ab9d8ff6883de480f5b"}, + {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:82d76ad87c932935417a19b10cfe7abb15fd3f923cfe47dbdaa74ef4e503752d"}, + {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:619317bb86de4193debc712b9e59d5cffd91dc1d178627ab2a77b9870deb2868"}, + {file = "coverage-7.9.2-cp313-cp313-win32.whl", hash = "sha256:0a07757de9feb1dfafd16ab651e0f628fd7ce551604d1bf23e47e1ddca93f08a"}, + {file = "coverage-7.9.2-cp313-cp313-win_amd64.whl", hash = "sha256:115db3d1f4d3f35f5bb021e270edd85011934ff97c8797216b62f461dd69374b"}, + {file = "coverage-7.9.2-cp313-cp313-win_arm64.whl", hash = "sha256:48f82f889c80af8b2a7bb6e158d95a3fbec6a3453a1004d04e4f3b5945a02694"}, + {file = "coverage-7.9.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:55a28954545f9d2f96870b40f6c3386a59ba8ed50caf2d949676dac3ecab99f5"}, + {file = "coverage-7.9.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:cdef6504637731a63c133bb2e6f0f0214e2748495ec15fe42d1e219d1b133f0b"}, + {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bcd5ebe66c7a97273d5d2ddd4ad0ed2e706b39630ed4b53e713d360626c3dbb3"}, + {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9303aed20872d7a3c9cb39c5d2b9bdbe44e3a9a1aecb52920f7e7495410dfab8"}, + {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc18ea9e417a04d1920a9a76fe9ebd2f43ca505b81994598482f938d5c315f46"}, + {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6406cff19880aaaadc932152242523e892faff224da29e241ce2fca329866584"}, + {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2d0d4f6ecdf37fcc19c88fec3e2277d5dee740fb51ffdd69b9579b8c31e4232e"}, + {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c33624f50cf8de418ab2b4d6ca9eda96dc45b2c4231336bac91454520e8d1fac"}, + {file = "coverage-7.9.2-cp313-cp313t-win32.whl", hash = "sha256:1df6b76e737c6a92210eebcb2390af59a141f9e9430210595251fbaf02d46926"}, + {file = "coverage-7.9.2-cp313-cp313t-win_amd64.whl", hash = "sha256:f5fd54310b92741ebe00d9c0d1d7b2b27463952c022da6d47c175d246a98d1bd"}, + {file = "coverage-7.9.2-cp313-cp313t-win_arm64.whl", hash = "sha256:c48c2375287108c887ee87d13b4070a381c6537d30e8487b24ec721bf2a781cb"}, + {file = "coverage-7.9.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ddc39510ac922a5c4c27849b739f875d3e1d9e590d1e7b64c98dadf037a16cce"}, + {file = "coverage-7.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a535c0c7364acd55229749c2b3e5eebf141865de3a8f697076a3291985f02d30"}, + {file = "coverage-7.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df0f9ef28e0f20c767ccdccfc5ae5f83a6f4a2fbdfbcbcc8487a8a78771168c8"}, + {file = "coverage-7.9.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2f3da12e0ccbcb348969221d29441ac714bbddc4d74e13923d3d5a7a0bebef7a"}, + {file = "coverage-7.9.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a17eaf46f56ae0f870f14a3cbc2e4632fe3771eab7f687eda1ee59b73d09fe4"}, + {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:669135a9d25df55d1ed56a11bf555f37c922cf08d80799d4f65d77d7d6123fcf"}, + {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:9d3a700304d01a627df9db4322dc082a0ce1e8fc74ac238e2af39ced4c083193"}, + {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:71ae8b53855644a0b1579d4041304ddc9995c7b21c8a1f16753c4d8903b4dfed"}, + {file = "coverage-7.9.2-cp39-cp39-win32.whl", hash = "sha256:dd7a57b33b5cf27acb491e890720af45db05589a80c1ffc798462a765be6d4d7"}, + {file = "coverage-7.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:f65bb452e579d5540c8b37ec105dd54d8b9307b07bcaa186818c104ffda22441"}, + {file = "coverage-7.9.2-pp39.pp310.pp311-none-any.whl", hash = "sha256:8a1166db2fb62473285bcb092f586e081e92656c7dfa8e9f62b4d39d7e6b5050"}, + {file = "coverage-7.9.2-py3-none-any.whl", hash = "sha256:e425cd5b00f6fc0ed7cdbd766c70be8baab4b7839e4d4fe5fac48581dd968ea4"}, + {file = "coverage-7.9.2.tar.gz", hash = "sha256:997024fa51e3290264ffd7492ec97d0690293ccd2b45a6cd7d82d945a4a80c8b"}, ] [package.extras] From 6eab88d44c2c88e991b418306dd82beefb382b91 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 19 Jul 2025 16:42:18 +0000 Subject: [PATCH 03/23] fix(deps): update dependency fastapi to ^0.116.0 (#5654) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- poetry.lock | 15 ++++++++------- pyproject.toml | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/poetry.lock b/poetry.lock index 6db310fc6..e0c88f94a 100644 --- a/poetry.lock +++ b/poetry.lock @@ -684,24 +684,25 @@ cli = ["requests"] [[package]] name = "fastapi" -version = "0.115.14" +version = "0.116.1" description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" optional = false python-versions = ">=3.8" groups = ["main"] files = [ - {file = "fastapi-0.115.14-py3-none-any.whl", hash = "sha256:6c0c8bf9420bd58f565e585036d971872472b4f7d3f6c73b698e10cffdefb3ca"}, - {file = "fastapi-0.115.14.tar.gz", hash = "sha256:b1de15cdc1c499a4da47914db35d0e4ef8f1ce62b624e94e0e5824421df99739"}, + {file = "fastapi-0.116.1-py3-none-any.whl", hash = "sha256:c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565"}, + {file = "fastapi-0.116.1.tar.gz", hash = "sha256:ed52cbf946abfd70c5a0dccb24673f0670deeb517a88b3544d03c2a6bf283143"}, ] [package.dependencies] pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<2.1.0 || >2.1.0,<3.0.0" -starlette = ">=0.40.0,<0.47.0" +starlette = ">=0.40.0,<0.48.0" typing-extensions = ">=4.8.0" [package.extras] -all = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=3.1.5)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.18)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] -standard = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "jinja2 (>=3.1.5)", "python-multipart (>=0.0.18)", "uvicorn[standard] (>=0.12.0)"] +all = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.8)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=3.1.5)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.18)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] +standard = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.8)", "httpx (>=0.23.0)", "jinja2 (>=3.1.5)", "python-multipart (>=0.0.18)", "uvicorn[standard] (>=0.12.0)"] +standard-no-fastapi-cloud-cli = ["email-validator (>=2.0.0)", "fastapi-cli[standard-no-fastapi-cloud-cli] (>=0.0.8)", "httpx (>=0.23.0)", "jinja2 (>=3.1.5)", "python-multipart (>=0.0.18)", "uvicorn[standard] (>=0.12.0)"] [[package]] name = "filelock" @@ -3871,4 +3872,4 @@ pgsql = ["psycopg2-binary"] [metadata] lock-version = "2.1" python-versions = ">=3.12,<3.13" -content-hash = "df16815f799254568f5e7083c49bb302e77003bcafbd34dfa92ad65d0335efb3" +content-hash = "8c337ab9231ded0f66d8e8d14a6d465bb8009f0f9377e5c480ed5baa4b928ed1" diff --git a/pyproject.toml b/pyproject.toml index 4d1146790..d75db69a7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -24,7 +24,7 @@ appdirs = "1.4.4" apprise = "^1.4.5" bcrypt = "^4.0.1" extruct = "^0.18.0" -fastapi = "^0.115.0" +fastapi = "^0.116.0" httpx = "^0.28.0" lxml = "^6.0.0" orjson = "^3.8.0" From 9413e403b4a62a3b0885ff5f1e2087f845e6a1b3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 19 Jul 2025 16:54:04 +0000 Subject: [PATCH 04/23] fix(deps): update dependency alembic to v1.16.4 (#5661) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- poetry.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index e0c88f94a..eacae1bd4 100644 --- a/poetry.lock +++ b/poetry.lock @@ -14,14 +14,14 @@ files = [ [[package]] name = "alembic" -version = "1.16.2" +version = "1.16.4" description = "A database migration tool for SQLAlchemy." optional = false python-versions = ">=3.9" groups = ["main"] files = [ - {file = "alembic-1.16.2-py3-none-any.whl", hash = "sha256:5f42e9bd0afdbd1d5e3ad856c01754530367debdebf21ed6894e34af52b3bb03"}, - {file = "alembic-1.16.2.tar.gz", hash = "sha256:e53c38ff88dadb92eb22f8b150708367db731d58ad7e9d417c9168ab516cbed8"}, + {file = "alembic-1.16.4-py3-none-any.whl", hash = "sha256:b05e51e8e82efc1abd14ba2af6392897e145930c3e0a2faf2b0da2f7f7fd660d"}, + {file = "alembic-1.16.4.tar.gz", hash = "sha256:efab6ada0dd0fae2c92060800e0bf5c1dc26af15a10e02fb4babff164b4725e2"}, ] [package.dependencies] From e07df8fc4379cdf2e7090b2399a4768aaae25a96 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 19 Jul 2025 17:05:44 +0000 Subject: [PATCH 05/23] chore(deps): update dependency mypy to v1.17.0 (#5718) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- poetry.lock | 66 ++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/poetry.lock b/poetry.lock index eacae1bd4..709630edd 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1628,44 +1628,44 @@ files = [ [[package]] name = "mypy" -version = "1.16.1" +version = "1.17.0" description = "Optional static typing for Python" optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "mypy-1.16.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b4f0fed1022a63c6fec38f28b7fc77fca47fd490445c69d0a66266c59dd0b88a"}, - {file = "mypy-1.16.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:86042bbf9f5a05ea000d3203cf87aa9d0ccf9a01f73f71c58979eb9249f46d72"}, - {file = "mypy-1.16.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ea7469ee5902c95542bea7ee545f7006508c65c8c54b06dc2c92676ce526f3ea"}, - {file = "mypy-1.16.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:352025753ef6a83cb9e7f2427319bb7875d1fdda8439d1e23de12ab164179574"}, - {file = "mypy-1.16.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ff9fa5b16e4c1364eb89a4d16bcda9987f05d39604e1e6c35378a2987c1aac2d"}, - {file = "mypy-1.16.1-cp310-cp310-win_amd64.whl", hash = "sha256:1256688e284632382f8f3b9e2123df7d279f603c561f099758e66dd6ed4e8bd6"}, - {file = "mypy-1.16.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:472e4e4c100062488ec643f6162dd0d5208e33e2f34544e1fc931372e806c0cc"}, - {file = "mypy-1.16.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ea16e2a7d2714277e349e24d19a782a663a34ed60864006e8585db08f8ad1782"}, - {file = "mypy-1.16.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:08e850ea22adc4d8a4014651575567b0318ede51e8e9fe7a68f25391af699507"}, - {file = "mypy-1.16.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:22d76a63a42619bfb90122889b903519149879ddbf2ba4251834727944c8baca"}, - {file = "mypy-1.16.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:2c7ce0662b6b9dc8f4ed86eb7a5d505ee3298c04b40ec13b30e572c0e5ae17c4"}, - {file = "mypy-1.16.1-cp311-cp311-win_amd64.whl", hash = "sha256:211287e98e05352a2e1d4e8759c5490925a7c784ddc84207f4714822f8cf99b6"}, - {file = "mypy-1.16.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:af4792433f09575d9eeca5c63d7d90ca4aeceda9d8355e136f80f8967639183d"}, - {file = "mypy-1.16.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:66df38405fd8466ce3517eda1f6640611a0b8e70895e2a9462d1d4323c5eb4b9"}, - {file = "mypy-1.16.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:44e7acddb3c48bd2713994d098729494117803616e116032af192871aed80b79"}, - {file = "mypy-1.16.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0ab5eca37b50188163fa7c1b73c685ac66c4e9bdee4a85c9adac0e91d8895e15"}, - {file = "mypy-1.16.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dedb6229b2c9086247e21a83c309754b9058b438704ad2f6807f0d8227f6ebdd"}, - {file = "mypy-1.16.1-cp312-cp312-win_amd64.whl", hash = "sha256:1f0435cf920e287ff68af3d10a118a73f212deb2ce087619eb4e648116d1fe9b"}, - {file = "mypy-1.16.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ddc91eb318c8751c69ddb200a5937f1232ee8efb4e64e9f4bc475a33719de438"}, - {file = "mypy-1.16.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:87ff2c13d58bdc4bbe7dc0dedfe622c0f04e2cb2a492269f3b418df2de05c536"}, - {file = "mypy-1.16.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a7cfb0fe29fe5a9841b7c8ee6dffb52382c45acdf68f032145b75620acfbd6f"}, - {file = "mypy-1.16.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:051e1677689c9d9578b9c7f4d206d763f9bbd95723cd1416fad50db49d52f359"}, - {file = "mypy-1.16.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d5d2309511cc56c021b4b4e462907c2b12f669b2dbeb68300110ec27723971be"}, - {file = "mypy-1.16.1-cp313-cp313-win_amd64.whl", hash = "sha256:4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee"}, - {file = "mypy-1.16.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7fc688329af6a287567f45cc1cefb9db662defeb14625213a5b7da6e692e2069"}, - {file = "mypy-1.16.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5e198ab3f55924c03ead626ff424cad1732d0d391478dfbf7bb97b34602395da"}, - {file = "mypy-1.16.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:09aa4f91ada245f0a45dbc47e548fd94e0dd5a8433e0114917dc3b526912a30c"}, - {file = "mypy-1.16.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:13c7cd5b1cb2909aa318a90fd1b7e31f17c50b242953e7dd58345b2a814f6383"}, - {file = "mypy-1.16.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:58e07fb958bc5d752a280da0e890c538f1515b79a65757bbdc54252ba82e0b40"}, - {file = "mypy-1.16.1-cp39-cp39-win_amd64.whl", hash = "sha256:f895078594d918f93337a505f8add9bd654d1a24962b4c6ed9390e12531eb31b"}, - {file = "mypy-1.16.1-py3-none-any.whl", hash = "sha256:5fc2ac4027d0ef28d6ba69a0343737a23c4d1b83672bf38d1fe237bdc0643b37"}, - {file = "mypy-1.16.1.tar.gz", hash = "sha256:6bd00a0a2094841c5e47e7374bb42b83d64c527a502e3334e1173a0c24437bab"}, + {file = "mypy-1.17.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f8e08de6138043108b3b18f09d3f817a4783912e48828ab397ecf183135d84d6"}, + {file = "mypy-1.17.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce4a17920ec144647d448fc43725b5873548b1aae6c603225626747ededf582d"}, + {file = "mypy-1.17.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6ff25d151cc057fdddb1cb1881ef36e9c41fa2a5e78d8dd71bee6e4dcd2bc05b"}, + {file = "mypy-1.17.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:93468cf29aa9a132bceb103bd8475f78cacde2b1b9a94fd978d50d4bdf616c9a"}, + {file = "mypy-1.17.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:98189382b310f16343151f65dd7e6867386d3e35f7878c45cfa11383d175d91f"}, + {file = "mypy-1.17.0-cp310-cp310-win_amd64.whl", hash = "sha256:c004135a300ab06a045c1c0d8e3f10215e71d7b4f5bb9a42ab80236364429937"}, + {file = "mypy-1.17.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9d4fe5c72fd262d9c2c91c1117d16aac555e05f5beb2bae6a755274c6eec42be"}, + {file = "mypy-1.17.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d96b196e5c16f41b4f7736840e8455958e832871990c7ba26bf58175e357ed61"}, + {file = "mypy-1.17.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:73a0ff2dd10337ceb521c080d4147755ee302dcde6e1a913babd59473904615f"}, + {file = "mypy-1.17.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:24cfcc1179c4447854e9e406d3af0f77736d631ec87d31c6281ecd5025df625d"}, + {file = "mypy-1.17.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3c56f180ff6430e6373db7a1d569317675b0a451caf5fef6ce4ab365f5f2f6c3"}, + {file = "mypy-1.17.0-cp311-cp311-win_amd64.whl", hash = "sha256:eafaf8b9252734400f9b77df98b4eee3d2eecab16104680d51341c75702cad70"}, + {file = "mypy-1.17.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f986f1cab8dbec39ba6e0eaa42d4d3ac6686516a5d3dccd64be095db05ebc6bb"}, + {file = "mypy-1.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:51e455a54d199dd6e931cd7ea987d061c2afbaf0960f7f66deef47c90d1b304d"}, + {file = "mypy-1.17.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3204d773bab5ff4ebbd1f8efa11b498027cd57017c003ae970f310e5b96be8d8"}, + {file = "mypy-1.17.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1051df7ec0886fa246a530ae917c473491e9a0ba6938cfd0ec2abc1076495c3e"}, + {file = "mypy-1.17.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f773c6d14dcc108a5b141b4456b0871df638eb411a89cd1c0c001fc4a9d08fc8"}, + {file = "mypy-1.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:1619a485fd0e9c959b943c7b519ed26b712de3002d7de43154a489a2d0fd817d"}, + {file = "mypy-1.17.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2c41aa59211e49d717d92b3bb1238c06d387c9325d3122085113c79118bebb06"}, + {file = "mypy-1.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0e69db1fb65b3114f98c753e3930a00514f5b68794ba80590eb02090d54a5d4a"}, + {file = "mypy-1.17.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:03ba330b76710f83d6ac500053f7727270b6b8553b0423348ffb3af6f2f7b889"}, + {file = "mypy-1.17.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:037bc0f0b124ce46bfde955c647f3e395c6174476a968c0f22c95a8d2f589bba"}, + {file = "mypy-1.17.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c38876106cb6132259683632b287238858bd58de267d80defb6f418e9ee50658"}, + {file = "mypy-1.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:d30ba01c0f151998f367506fab31c2ac4527e6a7b2690107c7a7f9e3cb419a9c"}, + {file = "mypy-1.17.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:63e751f1b5ab51d6f3d219fe3a2fe4523eaa387d854ad06906c63883fde5b1ab"}, + {file = "mypy-1.17.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f7fb09d05e0f1c329a36dcd30e27564a3555717cde87301fae4fb542402ddfad"}, + {file = "mypy-1.17.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b72c34ce05ac3a1361ae2ebb50757fb6e3624032d91488d93544e9f82db0ed6c"}, + {file = "mypy-1.17.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:434ad499ad8dde8b2f6391ddfa982f41cb07ccda8e3c67781b1bfd4e5f9450a8"}, + {file = "mypy-1.17.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f105f61a5eff52e137fd73bee32958b2add9d9f0a856f17314018646af838e97"}, + {file = "mypy-1.17.0-cp39-cp39-win_amd64.whl", hash = "sha256:ba06254a5a22729853209550d80f94e28690d5530c661f9416a68ac097b13fc4"}, + {file = "mypy-1.17.0-py3-none-any.whl", hash = "sha256:15d9d0018237ab058e5de3d8fce61b6fa72cc59cc78fd91f1b474bce12abf496"}, + {file = "mypy-1.17.0.tar.gz", hash = "sha256:e5d7ccc08ba089c06e2f5629c660388ef1fee708444f1dee0b9203fa031dee03"}, ] [package.dependencies] From b4aff0d8e9ac2216015611306df2a59e7e24fee9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 19 Jul 2025 17:17:48 +0000 Subject: [PATCH 06/23] fix(deps): update dependency openai to v1.97.0 (#5726) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- poetry.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index 709630edd..de7b12add 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1817,14 +1817,14 @@ signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"] [[package]] name = "openai" -version = "1.95.1" +version = "1.97.0" description = "The official Python library for the openai API" optional = false python-versions = ">=3.8" groups = ["main"] files = [ - {file = "openai-1.95.1-py3-none-any.whl", hash = "sha256:8bbdfeceef231b1ddfabbc232b179d79f8b849aab5a7da131178f8d10e0f162f"}, - {file = "openai-1.95.1.tar.gz", hash = "sha256:f089b605282e2a2b6776090b4b46563ac1da77f56402a222597d591e2dcc1086"}, + {file = "openai-1.97.0-py3-none-any.whl", hash = "sha256:a1c24d96f4609f3f7f51c9e1c2606d97cc6e334833438659cfd687e9c972c610"}, + {file = "openai-1.97.0.tar.gz", hash = "sha256:0be349569ccaa4fb54f97bb808423fd29ccaeb1246ee1be762e0c81a47bae0aa"}, ] [package.dependencies] From a1e8e1aa20f61b8be45d23ef9fef47a5e5ad189b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 19 Jul 2025 12:34:22 -0500 Subject: [PATCH 07/23] chore(deps): update dependency pytest-asyncio to v1.1.0 (#5730) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- poetry.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index de7b12add..e33194811 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2685,14 +2685,14 @@ dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "requests [[package]] name = "pytest-asyncio" -version = "1.0.0" +version = "1.1.0" description = "Pytest support for asyncio" optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "pytest_asyncio-1.0.0-py3-none-any.whl", hash = "sha256:4f024da9f1ef945e680dc68610b52550e36590a67fd31bb3b4943979a1f90ef3"}, - {file = "pytest_asyncio-1.0.0.tar.gz", hash = "sha256:d15463d13f4456e1ead2594520216b225a16f781e144f8fdf6c5bb4667c48b3f"}, + {file = "pytest_asyncio-1.1.0-py3-none-any.whl", hash = "sha256:5fe2d69607b0bd75c656d1211f969cadba035030156745ee09e7d71740e58ecf"}, + {file = "pytest_asyncio-1.1.0.tar.gz", hash = "sha256:796aa822981e01b68c12e4827b8697108f7205020f24b5793b3c41555dab68ea"}, ] [package.dependencies] From 6274a3dd397a7cabb1179465e55899c63b7e4d39 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 19 Jul 2025 15:04:20 -0500 Subject: [PATCH 08/23] fix(deps): update dependency orjson to v3.11.0 (#5727) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- poetry.lock | 146 ++++++++++++++++++++++++++-------------------------- 1 file changed, 73 insertions(+), 73 deletions(-) diff --git a/poetry.lock b/poetry.lock index e33194811..0bd6f128a 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1845,84 +1845,84 @@ voice-helpers = ["numpy (>=2.0.2)", "sounddevice (>=0.5.1)"] [[package]] name = "orjson" -version = "3.10.18" +version = "3.11.0" description = "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy" optional = false python-versions = ">=3.9" groups = ["main"] files = [ - {file = "orjson-3.10.18-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:a45e5d68066b408e4bc383b6e4ef05e717c65219a9e1390abc6155a520cac402"}, - {file = "orjson-3.10.18-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:be3b9b143e8b9db05368b13b04c84d37544ec85bb97237b3a923f076265ec89c"}, - {file = "orjson-3.10.18-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9b0aa09745e2c9b3bf779b096fa71d1cc2d801a604ef6dd79c8b1bfef52b2f92"}, - {file = "orjson-3.10.18-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:53a245c104d2792e65c8d225158f2b8262749ffe64bc7755b00024757d957a13"}, - {file = "orjson-3.10.18-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f9495ab2611b7f8a0a8a505bcb0f0cbdb5469caafe17b0e404c3c746f9900469"}, - {file = "orjson-3.10.18-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:73be1cbcebadeabdbc468f82b087df435843c809cd079a565fb16f0f3b23238f"}, - {file = "orjson-3.10.18-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe8936ee2679e38903df158037a2f1c108129dee218975122e37847fb1d4ac68"}, - {file = "orjson-3.10.18-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:7115fcbc8525c74e4c2b608129bef740198e9a120ae46184dac7683191042056"}, - {file = "orjson-3.10.18-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:771474ad34c66bc4d1c01f645f150048030694ea5b2709b87d3bda273ffe505d"}, - {file = "orjson-3.10.18-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:7c14047dbbea52886dd87169f21939af5d55143dad22d10db6a7514f058156a8"}, - {file = "orjson-3.10.18-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:641481b73baec8db14fdf58f8967e52dc8bda1f2aba3aa5f5c1b07ed6df50b7f"}, - {file = "orjson-3.10.18-cp310-cp310-win32.whl", hash = "sha256:607eb3ae0909d47280c1fc657c4284c34b785bae371d007595633f4b1a2bbe06"}, - {file = "orjson-3.10.18-cp310-cp310-win_amd64.whl", hash = "sha256:8770432524ce0eca50b7efc2a9a5f486ee0113a5fbb4231526d414e6254eba92"}, - {file = "orjson-3.10.18-cp311-cp311-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:e0a183ac3b8e40471e8d843105da6fbe7c070faab023be3b08188ee3f85719b8"}, - {file = "orjson-3.10.18-cp311-cp311-macosx_15_0_arm64.whl", hash = "sha256:5ef7c164d9174362f85238d0cd4afdeeb89d9e523e4651add6a5d458d6f7d42d"}, - {file = "orjson-3.10.18-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afd14c5d99cdc7bf93f22b12ec3b294931518aa019e2a147e8aa2f31fd3240f7"}, - {file = "orjson-3.10.18-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7b672502323b6cd133c4af6b79e3bea36bad2d16bca6c1f645903fce83909a7a"}, - {file = "orjson-3.10.18-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:51f8c63be6e070ec894c629186b1c0fe798662b8687f3d9fdfa5e401c6bd7679"}, - {file = "orjson-3.10.18-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3f9478ade5313d724e0495d167083c6f3be0dd2f1c9c8a38db9a9e912cdaf947"}, - {file = "orjson-3.10.18-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:187aefa562300a9d382b4b4eb9694806e5848b0cedf52037bb5c228c61bb66d4"}, - {file = "orjson-3.10.18-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9da552683bc9da222379c7a01779bddd0ad39dd699dd6300abaf43eadee38334"}, - {file = "orjson-3.10.18-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:e450885f7b47a0231979d9c49b567ed1c4e9f69240804621be87c40bc9d3cf17"}, - {file = "orjson-3.10.18-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:5e3c9cc2ba324187cd06287ca24f65528f16dfc80add48dc99fa6c836bb3137e"}, - {file = "orjson-3.10.18-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:50ce016233ac4bfd843ac5471e232b865271d7d9d44cf9d33773bcd883ce442b"}, - {file = "orjson-3.10.18-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b3ceff74a8f7ffde0b2785ca749fc4e80e4315c0fd887561144059fb1c138aa7"}, - {file = "orjson-3.10.18-cp311-cp311-win32.whl", hash = "sha256:fdba703c722bd868c04702cac4cb8c6b8ff137af2623bc0ddb3b3e6a2c8996c1"}, - {file = "orjson-3.10.18-cp311-cp311-win_amd64.whl", hash = "sha256:c28082933c71ff4bc6ccc82a454a2bffcef6e1d7379756ca567c772e4fb3278a"}, - {file = "orjson-3.10.18-cp311-cp311-win_arm64.whl", hash = "sha256:a6c7c391beaedd3fa63206e5c2b7b554196f14debf1ec9deb54b5d279b1b46f5"}, - {file = "orjson-3.10.18-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:50c15557afb7f6d63bc6d6348e0337a880a04eaa9cd7c9d569bcb4e760a24753"}, - {file = "orjson-3.10.18-cp312-cp312-macosx_15_0_arm64.whl", hash = "sha256:356b076f1662c9813d5fa56db7d63ccceef4c271b1fb3dd522aca291375fcf17"}, - {file = "orjson-3.10.18-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:559eb40a70a7494cd5beab2d73657262a74a2c59aff2068fdba8f0424ec5b39d"}, - {file = "orjson-3.10.18-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f3c29eb9a81e2fbc6fd7ddcfba3e101ba92eaff455b8d602bf7511088bbc0eae"}, - {file = "orjson-3.10.18-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6612787e5b0756a171c7d81ba245ef63a3533a637c335aa7fcb8e665f4a0966f"}, - {file = "orjson-3.10.18-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ac6bd7be0dcab5b702c9d43d25e70eb456dfd2e119d512447468f6405b4a69c"}, - {file = "orjson-3.10.18-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9f72f100cee8dde70100406d5c1abba515a7df926d4ed81e20a9730c062fe9ad"}, - {file = "orjson-3.10.18-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9dca85398d6d093dd41dc0983cbf54ab8e6afd1c547b6b8a311643917fbf4e0c"}, - {file = "orjson-3.10.18-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:22748de2a07fcc8781a70edb887abf801bb6142e6236123ff93d12d92db3d406"}, - {file = "orjson-3.10.18-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:3a83c9954a4107b9acd10291b7f12a6b29e35e8d43a414799906ea10e75438e6"}, - {file = "orjson-3.10.18-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:303565c67a6c7b1f194c94632a4a39918e067bd6176a48bec697393865ce4f06"}, - {file = "orjson-3.10.18-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:86314fdb5053a2f5a5d881f03fca0219bfdf832912aa88d18676a5175c6916b5"}, - {file = "orjson-3.10.18-cp312-cp312-win32.whl", hash = "sha256:187ec33bbec58c76dbd4066340067d9ece6e10067bb0cc074a21ae3300caa84e"}, - {file = "orjson-3.10.18-cp312-cp312-win_amd64.whl", hash = "sha256:f9f94cf6d3f9cd720d641f8399e390e7411487e493962213390d1ae45c7814fc"}, - {file = "orjson-3.10.18-cp312-cp312-win_arm64.whl", hash = "sha256:3d600be83fe4514944500fa8c2a0a77099025ec6482e8087d7659e891f23058a"}, - {file = "orjson-3.10.18-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:69c34b9441b863175cc6a01f2935de994025e773f814412030f269da4f7be147"}, - {file = "orjson-3.10.18-cp313-cp313-macosx_15_0_arm64.whl", hash = "sha256:1ebeda919725f9dbdb269f59bc94f861afbe2a27dce5608cdba2d92772364d1c"}, - {file = "orjson-3.10.18-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5adf5f4eed520a4959d29ea80192fa626ab9a20b2ea13f8f6dc58644f6927103"}, - {file = "orjson-3.10.18-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7592bb48a214e18cd670974f289520f12b7aed1fa0b2e2616b8ed9e069e08595"}, - {file = "orjson-3.10.18-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f872bef9f042734110642b7a11937440797ace8c87527de25e0c53558b579ccc"}, - {file = "orjson-3.10.18-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0315317601149c244cb3ecef246ef5861a64824ccbcb8018d32c66a60a84ffbc"}, - {file = "orjson-3.10.18-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0da26957e77e9e55a6c2ce2e7182a36a6f6b180ab7189315cb0995ec362e049"}, - {file = "orjson-3.10.18-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb70d489bc79b7519e5803e2cc4c72343c9dc1154258adf2f8925d0b60da7c58"}, - {file = "orjson-3.10.18-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e9e86a6af31b92299b00736c89caf63816f70a4001e750bda179e15564d7a034"}, - {file = "orjson-3.10.18-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:c382a5c0b5931a5fc5405053d36c1ce3fd561694738626c77ae0b1dfc0242ca1"}, - {file = "orjson-3.10.18-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:8e4b2ae732431127171b875cb2668f883e1234711d3c147ffd69fe5be51a8012"}, - {file = "orjson-3.10.18-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2d808e34ddb24fc29a4d4041dcfafbae13e129c93509b847b14432717d94b44f"}, - {file = "orjson-3.10.18-cp313-cp313-win32.whl", hash = "sha256:ad8eacbb5d904d5591f27dee4031e2c1db43d559edb8f91778efd642d70e6bea"}, - {file = "orjson-3.10.18-cp313-cp313-win_amd64.whl", hash = "sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52"}, - {file = "orjson-3.10.18-cp313-cp313-win_arm64.whl", hash = "sha256:f54c1385a0e6aba2f15a40d703b858bedad36ded0491e55d35d905b2c34a4cc3"}, - {file = "orjson-3.10.18-cp39-cp39-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:c95fae14225edfd699454e84f61c3dd938df6629a00c6ce15e704f57b58433bb"}, - {file = "orjson-3.10.18-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5232d85f177f98e0cefabb48b5e7f60cff6f3f0365f9c60631fecd73849b2a82"}, - {file = "orjson-3.10.18-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2783e121cafedf0d85c148c248a20470018b4ffd34494a68e125e7d5857655d1"}, - {file = "orjson-3.10.18-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e54ee3722caf3db09c91f442441e78f916046aa58d16b93af8a91500b7bbf273"}, - {file = "orjson-3.10.18-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2daf7e5379b61380808c24f6fc182b7719301739e4271c3ec88f2984a2d61f89"}, - {file = "orjson-3.10.18-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7f39b371af3add20b25338f4b29a8d6e79a8c7ed0e9dd49e008228a065d07781"}, - {file = "orjson-3.10.18-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2b819ed34c01d88c6bec290e6842966f8e9ff84b7694632e88341363440d4cc0"}, - {file = "orjson-3.10.18-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:2f6c57debaef0b1aa13092822cbd3698a1fb0209a9ea013a969f4efa36bdea57"}, - {file = "orjson-3.10.18-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:755b6d61ffdb1ffa1e768330190132e21343757c9aa2308c67257cc81a1a6f5a"}, - {file = "orjson-3.10.18-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:ce8d0a875a85b4c8579eab5ac535fb4b2a50937267482be402627ca7e7570ee3"}, - {file = "orjson-3.10.18-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:57b5d0673cbd26781bebc2bf86f99dd19bd5a9cb55f71cc4f66419f6b50f3d77"}, - {file = "orjson-3.10.18-cp39-cp39-win32.whl", hash = "sha256:951775d8b49d1d16ca8818b1f20c4965cae9157e7b562a2ae34d3967b8f21c8e"}, - {file = "orjson-3.10.18-cp39-cp39-win_amd64.whl", hash = "sha256:fdd9d68f83f0bc4406610b1ac68bdcded8c5ee58605cc69e643a06f4d075f429"}, - {file = "orjson-3.10.18.tar.gz", hash = "sha256:e8da3947d92123eda795b68228cafe2724815621fe35e8e320a9e9593a4bcd53"}, + {file = "orjson-3.11.0-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:b8913baba9751f7400f8fa4ec18a8b618ff01177490842e39e47b66c1b04bc79"}, + {file = "orjson-3.11.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d4d86910554de5c9c87bc560b3bdd315cc3988adbdc2acf5dda3797079407ed"}, + {file = "orjson-3.11.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:84ae3d329360cf18fb61b67c505c00dedb61b0ee23abfd50f377a58e7d7bed06"}, + {file = "orjson-3.11.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:47a54e660414baacd71ebf41a69bb17ea25abb3c5b69ce9e13e43be7ac20e342"}, + {file = "orjson-3.11.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2560b740604751854be146169c1de7e7ee1e6120b00c1788ec3f3a012c6a243f"}, + {file = "orjson-3.11.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dd7f9cd995da9e46fbac0a371f0ff6e89a21d8ecb7a8a113c0acb147b0a32f73"}, + {file = "orjson-3.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cf728cb3a013bdf9f4132575404bf885aa773d8bb4205656575e1890fc91990"}, + {file = "orjson-3.11.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c27de273320294121200440cd5002b6aeb922d3cb9dab3357087c69f04ca6934"}, + {file = "orjson-3.11.0-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:4430ec6ff1a1f4595dd7e0fad991bdb2fed65401ed294984c490ffa025926325"}, + {file = "orjson-3.11.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:325be41a8d7c227d460a9795a181511ba0e731cf3fee088c63eb47e706ea7559"}, + {file = "orjson-3.11.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:d9760217b84d1aee393b4436fbe9c639e963ec7bc0f2c074581ce5fb3777e466"}, + {file = "orjson-3.11.0-cp310-cp310-win32.whl", hash = "sha256:fe36e5012f886ff91c68b87a499c227fa220e9668cea96335219874c8be5fab5"}, + {file = "orjson-3.11.0-cp310-cp310-win_amd64.whl", hash = "sha256:ebeecd5d5511b3ca9dc4e7db0ab95266afd41baf424cc2fad8c2d3a3cdae650a"}, + {file = "orjson-3.11.0-cp311-cp311-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:1785df7ada75c18411ff7e20ac822af904a40161ea9dfe8c55b3f6b66939add6"}, + {file = "orjson-3.11.0-cp311-cp311-macosx_15_0_arm64.whl", hash = "sha256:a57899bebbcea146616a2426d20b51b3562b4bc9f8039a3bd14fae361c23053d"}, + {file = "orjson-3.11.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b6fbc2fc825aff1456dd358c11a0ad7912a4cb4537d3db92e5334af7463a967"}, + {file = "orjson-3.11.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4305a638f4cf9bed3746ca3b7c242f14e05177d5baec2527026e0f9ee6c24fb7"}, + {file = "orjson-3.11.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1235fe7bbc37164f69302199d46f29cfb874018738714dccc5a5a44042c79c77"}, + {file = "orjson-3.11.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a640e3954e7b4fcb160097551e54cafbde9966be3991932155b71071077881aa"}, + {file = "orjson-3.11.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6d750b97d22d5566955e50b02c622f3a1d32744d7a578c878b29a873190ccb7a"}, + {file = "orjson-3.11.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4bfcfe498484161e011f8190a400591c52b026de96b3b3cbd3f21e8999b9dc0e"}, + {file = "orjson-3.11.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:feaed3ed43a1d2df75c039798eb5ec92c350c7d86be53369bafc4f3700ce7df2"}, + {file = "orjson-3.11.0-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:aa1120607ec8fc98acf8c54aac6fb0b7b003ba883401fa2d261833111e2fa071"}, + {file = "orjson-3.11.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:c4b48d9775b0cf1f0aca734f4c6b272cbfacfac38e6a455e6520662f9434afb7"}, + {file = "orjson-3.11.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f018ed1986d79434ac712ff19f951cd00b4dfcb767444410fbb834ebec160abf"}, + {file = "orjson-3.11.0-cp311-cp311-win32.whl", hash = "sha256:08e191f8a55ac2c00be48e98a5d10dca004cbe8abe73392c55951bfda60fc123"}, + {file = "orjson-3.11.0-cp311-cp311-win_amd64.whl", hash = "sha256:b5a4214ea59c8a3b56f8d484b28114af74e9fba0956f9be5c3ce388ae143bf1f"}, + {file = "orjson-3.11.0-cp311-cp311-win_arm64.whl", hash = "sha256:57e8e7198a679ab21241ab3f355a7990c7447559e35940595e628c107ef23736"}, + {file = "orjson-3.11.0-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:b4089f940c638bb1947d54e46c1cd58f4259072fcc97bc833ea9c78903150ac9"}, + {file = "orjson-3.11.0-cp312-cp312-macosx_15_0_arm64.whl", hash = "sha256:8335a0ba1c26359fb5c82d643b4c1abbee2bc62875e0f2b5bde6c8e9e25eb68c"}, + {file = "orjson-3.11.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63c1c9772dafc811d16d6a7efa3369a739da15d1720d6e58ebe7562f54d6f4a2"}, + {file = "orjson-3.11.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9457ccbd8b241fb4ba516417a4c5b95ba0059df4ac801309bcb4ec3870f45ad9"}, + {file = "orjson-3.11.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0846e13abe79daece94a00b92574f294acad1d362be766c04245b9b4dd0e47e1"}, + {file = "orjson-3.11.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5587c85ae02f608a3f377b6af9eb04829606f518257cbffa8f5081c1aacf2e2f"}, + {file = "orjson-3.11.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c7a1964a71c1567b4570c932a0084ac24ad52c8cf6253d1881400936565ed438"}, + {file = "orjson-3.11.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b5a8243e73690cc6e9151c9e1dd046a8f21778d775f7d478fa1eb4daa4897c61"}, + {file = "orjson-3.11.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:51646f6d995df37b6e1b628f092f41c0feccf1d47e3452c6e95e2474b547d842"}, + {file = "orjson-3.11.0-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:2fb8ca8f0b4e31b8aaec674c7540649b64ef02809410506a44dc68d31bd5647b"}, + {file = "orjson-3.11.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:64a6a3e94a44856c3f6557e6aa56a6686544fed9816ae0afa8df9077f5759791"}, + {file = "orjson-3.11.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:d69f95d484938d8fab5963e09131bcf9fbbb81fa4ec132e316eb2fb9adb8ce78"}, + {file = "orjson-3.11.0-cp312-cp312-win32.whl", hash = "sha256:8514f9f9c667ce7d7ef709ab1a73e7fcab78c297270e90b1963df7126d2b0e23"}, + {file = "orjson-3.11.0-cp312-cp312-win_amd64.whl", hash = "sha256:41b38a894520b8cb5344a35ffafdf6ae8042f56d16771b2c5eb107798cee85ee"}, + {file = "orjson-3.11.0-cp312-cp312-win_arm64.whl", hash = "sha256:5579acd235dd134467340b2f8a670c1c36023b5a69c6a3174c4792af7502bd92"}, + {file = "orjson-3.11.0-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:4a8ba9698655e16746fdf5266939427da0f9553305152aeb1a1cc14974a19cfb"}, + {file = "orjson-3.11.0-cp313-cp313-macosx_15_0_arm64.whl", hash = "sha256:67133847f9a35a5ef5acfa3325d4a2f7fe05c11f1505c4117bb086fc06f2a58f"}, + {file = "orjson-3.11.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f797d57814975b78f5f5423acb003db6f9be5186b72d48bd97a1000e89d331d"}, + {file = "orjson-3.11.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:28acd19822987c5163b9e03a6e60853a52acfee384af2b394d11cb413b889246"}, + {file = "orjson-3.11.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e8d38d9e1e2cf9729658e35956cf01e13e89148beb4cb9e794c9c10c5cb252f8"}, + {file = "orjson-3.11.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:05f094edd2b782650b0761fd78858d9254de1c1286f5af43145b3d08cdacfd51"}, + {file = "orjson-3.11.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6d09176a4a9e04a5394a4a0edd758f645d53d903b306d02f2691b97d5c736a9e"}, + {file = "orjson-3.11.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2a585042104e90a61eda2564d11317b6a304eb4e71cd33e839f5af6be56c34d3"}, + {file = "orjson-3.11.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d2218629dbfdeeb5c9e0573d59f809d42f9d49ae6464d2f479e667aee14c3ef4"}, + {file = "orjson-3.11.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:613e54a2b10b51b656305c11235a9c4a5c5491ef5c283f86483d4e9e123ed5e4"}, + {file = "orjson-3.11.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:9dac7fbf3b8b05965986c5cfae051eb9a30fced7f15f1d13a5adc608436eb486"}, + {file = "orjson-3.11.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:93b64b254414e2be55ac5257124b5602c5f0b4d06b80bd27d1165efe8f36e836"}, + {file = "orjson-3.11.0-cp313-cp313-win32.whl", hash = "sha256:359cbe11bc940c64cb3848cf22000d2aef36aff7bfd09ca2c0b9cb309c387132"}, + {file = "orjson-3.11.0-cp313-cp313-win_amd64.whl", hash = "sha256:0759b36428067dc777b202dd286fbdd33d7f261c6455c4238ea4e8474358b1e6"}, + {file = "orjson-3.11.0-cp313-cp313-win_arm64.whl", hash = "sha256:51cdca2f36e923126d0734efaf72ddbb5d6da01dbd20eab898bdc50de80d7b5a"}, + {file = "orjson-3.11.0-cp39-cp39-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:d79c180cfb3ae68f13245d0ff551dca03d96258aa560830bf8a223bd68d8272c"}, + {file = "orjson-3.11.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:105bca887532dc71ce4b05a5de95dea447a310409d7a8cf0cb1c4a120469e9ad"}, + {file = "orjson-3.11.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:acf5a63ae9cdb88274126af85913ceae554d8fd71122effa24a53227abbeee16"}, + {file = "orjson-3.11.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:894635df36c0be32f1c8c8607e853b8865edb58e7618e57892e85d06418723eb"}, + {file = "orjson-3.11.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:02dd4f0a1a2be943a104ce5f3ec092631ee3e9f0b4bb9eeee3400430bd94ddef"}, + {file = "orjson-3.11.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:720b4bb5e1b971960a62c2fa254c2d2a14e7eb791e350d05df8583025aa59d15"}, + {file = "orjson-3.11.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8bf058105a8aed144e0d1cfe7ac4174748c3fc7203f225abaeac7f4121abccb0"}, + {file = "orjson-3.11.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:a2788f741e5a0e885e5eaf1d91d0c9106e03cb9575b0c55ba36fd3d48b0b1e9b"}, + {file = "orjson-3.11.0-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:c60c99fe1e15894367b0340b2ff16c7c69f9c3f3a54aa3961a58c102b292ad94"}, + {file = "orjson-3.11.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:99d17aab984f4d029b8f3c307e6be3c63d9ee5ef55e30d761caf05e883009949"}, + {file = "orjson-3.11.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:e98f02e23611763c9e5dfcb83bd33219231091589f0d1691e721aea9c52bf329"}, + {file = "orjson-3.11.0-cp39-cp39-win32.whl", hash = "sha256:923301f33ea866b18f8836cf41d9c6d33e3b5cab8577d20fed34ec29f0e13a0d"}, + {file = "orjson-3.11.0-cp39-cp39-win_amd64.whl", hash = "sha256:475491bb78af2a0170f49e90013f1a0f1286527f3617491f8940d7e5da862da7"}, + {file = "orjson-3.11.0.tar.gz", hash = "sha256:2e4c129da624f291bcc607016a99e7f04a353f6874f3bd8d9b47b88597d5f700"}, ] [[package]] From 7d1c5ad14b90b8c709a5f56537aa98e5da4bbfdd Mon Sep 17 00:00:00 2001 From: Michael Genson <71845777+michael-genson@users.noreply.github.com> Date: Sat, 19 Jul 2025 20:45:33 -0500 Subject: [PATCH 09/23] fix: Patch XSS Vulnerability (#5754) --- mealie/routes/spa/__init__.py | 49 ++++++++++++++++++++--------- tests/integration_tests/test_spa.py | 28 ++++++++++++++++- 2 files changed, 61 insertions(+), 16 deletions(-) diff --git a/mealie/routes/spa/__init__.py b/mealie/routes/spa/__init__.py index 824764b6e..6e4e24180 100644 --- a/mealie/routes/spa/__init__.py +++ b/mealie/routes/spa/__init__.py @@ -1,6 +1,8 @@ +import html import json import pathlib from dataclasses import dataclass +from typing import Any from bs4 import BeautifulSoup from fastapi import Depends, FastAPI, Response @@ -24,6 +26,9 @@ class MetaTag: property_name: str content: str + def __post_init__(self): + self.content = escape(self.content) # escape HTML to prevent XSS attacks + class SPAStaticFiles(StaticFiles): async def get_response(self, path: str, scope): @@ -42,6 +47,17 @@ __app_settings = get_app_settings() __contents = "" +def escape(content: Any) -> Any: + if isinstance(content, str): + return html.escape(content) + elif isinstance(content, list | tuple | set): + return [escape(item) for item in content] + elif isinstance(content, dict): + return {escape(k): escape(v) for k, v in content.items()} + else: + return content + + def inject_meta(contents: str, tags: list[MetaTag]) -> str: soup = BeautifulSoup(contents, "lxml") scraped_meta_tags = soup.find_all("meta") @@ -80,15 +96,13 @@ def content_with_meta(group_slug: str, recipe: Recipe) -> str: # Inject meta tags recipe_url = f"{__app_settings.BASE_URL}/g/{group_slug}/r/{recipe.slug}" if recipe.image: - image_url = ( - f"{__app_settings.BASE_URL}/api/media/recipes/{recipe.id}/images/original.webp?version={recipe.image}" - ) + image_url = f"{__app_settings.BASE_URL}/api/media/recipes/{recipe.id}/images/original.webp?version={escape(recipe.image)}" else: image_url = "https://raw.githubusercontent.com/mealie-recipes/mealie/9571816ac4eed5beacfc0abf6c03eff1427fd0eb/frontend/static/icons/android-chrome-512x512.png" ingredients: list[str] = [] if recipe.settings.disable_amount: # type: ignore - ingredients = [i.note for i in recipe.recipe_ingredient if i.note] + ingredients = [escape(i.note) for i in recipe.recipe_ingredient if i.note] else: for ing in recipe.recipe_ingredient: @@ -102,25 +116,30 @@ def content_with_meta(group_slug: str, recipe: Recipe) -> str: if ing.note: s += f"{ing.note}" - ingredients.append(s) + ingredients.append(escape(s)) nutrition: dict[str, str | None] = recipe.nutrition.model_dump(by_alias=True) if recipe.nutrition else {} + for k, v in nutrition.items(): + if v: + nutrition[k] = escape(v) - as_schema_org = { + as_schema_org: dict[str, Any] = { "@context": "https://schema.org", "@type": "Recipe", - "name": recipe.name, - "description": recipe.description, + "name": escape(recipe.name), + "description": escape(recipe.description), "image": [image_url], "datePublished": recipe.created_at, - "prepTime": recipe.prep_time, - "cookTime": recipe.cook_time, - "totalTime": recipe.total_time, - "recipeYield": recipe.recipe_yield_display, + "prepTime": escape(recipe.prep_time), + "cookTime": escape(recipe.cook_time), + "totalTime": escape(recipe.total_time), + "recipeYield": escape(recipe.recipe_yield_display), "recipeIngredient": ingredients, - "recipeInstructions": [i.text for i in recipe.recipe_instructions] if recipe.recipe_instructions else [], - "recipeCategory": [c.name for c in recipe.recipe_category] if recipe.recipe_category else [], - "keywords": [t.name for t in recipe.tags] if recipe.tags else [], + "recipeInstructions": [escape(i.text) for i in recipe.recipe_instructions] + if recipe.recipe_instructions + else [], + "recipeCategory": [escape(c.name) for c in recipe.recipe_category] if recipe.recipe_category else [], + "keywords": [escape(t.name) for t in recipe.tags] if recipe.tags else [], "nutrition": nutrition, } diff --git a/tests/integration_tests/test_spa.py b/tests/integration_tests/test_spa.py index 68373f79a..9238d4200 100644 --- a/tests/integration_tests/test_spa.py +++ b/tests/integration_tests/test_spa.py @@ -2,7 +2,8 @@ import pytest from bs4 import BeautifulSoup from mealie.routes import spa -from mealie.schema.recipe.recipe import Recipe +from mealie.schema.recipe.recipe import Recipe, RecipeSettings +from mealie.schema.recipe.recipe_notes import RecipeNote from mealie.schema.recipe.recipe_share_token import RecipeShareTokenSave from tests import data as test_data from tests.utils.factories import random_string @@ -189,3 +190,28 @@ async def test_spa_service_shared_recipe_with_meta_invalid_data(unique_user: Tes response = await spa.serve_shared_recipe_with_meta(group.slug, random_string(), session=unique_user.repos.session) assert response.status_code == 404 + + +@pytest.mark.parametrize( + "malicious_content, malicious_strings", + [ + ("", ["