mealie-recipes / mealie

Mealie is a self hosted recipe manager and meal planner with a RestAPI backend and a reactive frontend application built in Vue for a pleasant user experience for the whole family. Easily add recipes into your database by providing the url and mealie will automatically import the relevant data or add a family recipe with the UI editor
https://docs.mealie.io
GNU Affero General Public License v3.0
5.61k stars 611 forks source link

fix: Recipe Keeper Errors and Other Safari Issues #3712

Closed michael-genson closed 3 weeks ago

michael-genson commented 3 weeks ago

What type of PR is this?

(REQUIRED)

What this PR does / why we need it:

(REQUIRED)

Fixes Recipe Keeper migration expecting a Safari-created zip rather than a normal one. Also adds some checks to all zip migrations to avoid this in the future (hopefully).

Which issue(s) this PR fixes:

(REQUIRED)

Fixes https://github.com/mealie-recipes/mealie/issues/3708

Special notes for your reviewer:

(fill-in or delete this section)

Absolutely insane that Safari mangles ZIP files.

Testing

(fill-in or delete this section)

Tested both zips in https://github.com/mealie-recipes/mealie/issues/3708, as well as the (malformed) zip in the test data. Both versions import correctly now.