question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

How does it relate to the "notifiers" Python library?

See original GitHub issue

Hi.

That’s a very nice library that you made here, congrats! 👍

I don’t know if you are aware of the notifiers library which seems very similar to apprise as it provides a convenient API to send notifications to several providers.

I was wondering: is there any fundamental difference between these two libraries?

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:12 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
Delgancommented, Oct 19, 2019

@caronc Actually, because apprise uses standard logging, there is less risk of deadlock. I implemented loguru without relying on the built-in mechanisms, so both logging systems will live alongside without interfering with each others by default.

Problem may occur if user decides to interconnect the two logging systems by adding a specific InterceptHandler() for example. In such case, logs emitted from standard logging will be emitted to loguru handlers too. If additionally the user added a handler making use on the apprise notifier without filtering out logs coming from your library, then deadlock or recursion limit exhaustion will likely happen.

This is a complicated edge case I’m not sure can be properly fixed.

I think it’s indeed better to keep the two libraries separate from each other. Although I first thought of integrating a notification system directly into loguru, this is not along the lines of the Unix philosophy of “doing one thing and doing it well”. I prefer to leave this decision to the user. apprise and loguru are able to be interfaced together, this is not perfect for reasons you described, but I’m fine with that.

Again, thanks for the kind words, much appreciated! You made a fantastic job too with all the notification backends supported so far, and I see you are still adding new ones. That’s insane. 😄

1reaction
caronccommented, Feb 1, 2019

I appreciate you sharing your opinion. I’ll add a conversion to MIT the TODO list. 🙂

Read more comments on GitHub >

github_iconTop Results From Across the Web

notifiers - PyPI
A unified interface means that you already support any new providers that will be added, no more work needed! Thorough testing means protection...
Read more >
Knockknock — Probably The Best Python Library For ...
knockknock is a notification open-source library from hugging face. It aims to send notifications to the users, informing them of the status of...
Read more >
Python Desktop Notifier using Plyer module - GeeksforGeeks
This article demonstrates how to create a simple Desktop Notifier application using Python. A desktop notifier is a simple application which ...
Read more >
Create Desktop Notifier using Python | by Ayushi Rawat
In this Blog article, we will learn how to send Desktop notifications . We will see the implementation in Python.
Read more >
Desktop Notifier in Python - Javatpoint
For this Python project, we are required to install two necessary packages. The first package is 'requests', which will help us fetch data...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found