Giter Club home page Giter Club logo

Comments (5)

VMRuiz avatar VMRuiz commented on June 26, 2024 1

Spidermon uses scrapy.mail.EmailSender to send emails using SMTP protocol. Such class returns a Deferred object that is never awaited and caused the error logs that you are raising. To fix this we either need to:

  • Block until the deferred object has been processed
  • Implement the SMTP mailing using an alternative library
  • Allow to execute async code on actions and/or return deferreds

cc. @Gallaecio @wRAR @rennerocha

from spidermon.

rennerocha avatar rennerocha commented on June 26, 2024 1

Rebuild spidermon to support async code would be a Spidermon 2.0 change. I don't think we are considering this in short term 😄

Using blocking Python stlib smtplib for that looks fine to me, and not complicated to do.

from spidermon.

VMRuiz avatar VMRuiz commented on June 26, 2024

Seems related to scrapy/scrapy#3478

from spidermon.

wRAR avatar wRAR commented on June 26, 2024

The analysis makes sense. Blocking until the deferred finishes should be fine if the code allows doing it easily.

from spidermon.

VMRuiz avatar VMRuiz commented on June 26, 2024

It doesn't look trivial to block on a deferred or rebuild spidermon to support async code, so we should change the current action to use some other smtp library like https://docs.python.org/3/library/smtplib.html instead.

from spidermon.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.