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
6.76k stars 697 forks source link

fix(deps): update dependency recipe-scrapers to v14.57.0 #3804

Closed renovate[bot] closed 3 months ago

renovate[bot] commented 3 months ago

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
recipe-scrapers 14.56.0 -> 14.57.0 age adoption passing confidence

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.

michael-genson commented 3 months ago

Okay this is a weird one. TL;DR tests pass, just merge this :)

Tests were failing because of this PR: https://github.com/hhursev/recipe-scrapers/pull/1065, but it's our fault, not the package's fault.

We (probably unknowingly) depend on recipe scraper's SchemaOrg Fill plugin, which is enabled by default; this plugin basically says "if a particular method isn't defined on the scraper class, fall back to the raw schema.org data". This makes sense, it saves implementors from repeating something like this:

def ingredients(self):
    return self.schema.ingredients()

over and over and over again, for every single schema field. In our production app, there's no issue, we (probably unknowingly) use this plugin. However, our tests override the AbstractScraper init, which breaks loading plugins. This used to work fine, because almost every scraper class in the library implemented the above (redundant) methods. However with https://github.com/hhursev/recipe-scrapers/pull/1065, which is included in this release, the redundant methods are gone, exposing our test bug.

This PR just adds the missing plugin back to the init.

michael-genson commented 3 months ago

Whelp it worked locally anyway. Lol

michael-genson commented 3 months ago

A test for a different issue I was working on accidentally snuck its way in there. I removed it and force pushed

renovate[bot] commented 3 months ago

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

michael-genson commented 3 months ago

For some reason we keep trying to send network requests (have we always been doing this??) but our dummy google URL is returning a 301. I overrode the async request handler to not send network requests

michael-genson commented 3 months ago

I don't know what fresh hell I stumbled upon here but removing the HTML from that test and using different HTML for the tags test seems to work without compromising test coverage

michael-genson commented 3 months ago

GH needs a sobbing emoji