- 31 Aug, 2014 1 commit
-
-
Jonathan Michalon authored
Since we never reclaim finished tasks, exceptions raised during thread run are never seen. Add a runner call in between to display them.
-
- 29 Aug, 2014 1 commit
-
-
Jonathan Michalon authored
-
- 25 Aug, 2014 2 commits
-
-
Colomban Wendling authored
-
Jonathan Michalon authored
-
- 24 Aug, 2014 9 commits
-
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Colomban Wendling authored
-
Colomban Wendling authored
As the user configuration is now loaded after the mails module, there is a race in the mail thread that fetches configuration options, which may or may not already have the user's value. So, remove caching of those value, which leads for them to be read much later after everything has properly been initialized. The timeout setting might still have the default value on the first loop run, but this doesn't matter as the server isn't started at this point anyway.
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
Now the 'every' check parameter can have a default value set globally and the former global 'error_every' parameter can be overridden on a per-check basis, so that the two parameters' configuration is now homogenous and much more flexible.
-
- 23 Aug, 2014 7 commits
-
-
Colomban Wendling authored
Don't account for a task in the `finally` handler as we actually got a task only if we didn't receive an exception. This cleans up the code and possibly fixes it if we ever get any other exception than a timeout.
-
Colomban Wendling authored
Don't explicitly handle KeyboardInterrupt in the mail thread as it doesn't seem it ever was of of any use, and could actually lead to a deadlock as it would terminate the in-thread loop without emptying the queue, leading to `queue.join()` in `quit()` to wait forever for the queue to empty.
-
Colomban Wendling authored
A stupid typo lead for the mail thread not to be a daemon thread, thus preventing Python from quitting before that thread quits by itself. So properly make it a daemon thread, and as it would now actually get interrupted abruptly, register an atexit handler to cleanly quit it.
-
Colomban Wendling authored
This fixes ThreadedSMTP.quit() when the connection to the server is down as Queue.join() will wait for all tasks to be popped and accounted for, but we wouldn't account for the fake (empty) task because the connection to the server would not be open. So, properly differentiate a closed connection from a queue timeout.
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
- 20 Jul, 2014 11 commits
-
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
Don't attempt to write a report after an arbitrary init time but after a regular report interval.
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
-
Jonathan Michalon authored
AttrTree failed to create correct sub-attributes of itself because the sub-attributes were not transmitted to the child. In fact, str.split()'s 2nd argument is the number of split, not the number of parts so '2' will split in 3 parts.
-
- 19 Jul, 2014 1 commit
-
-
Colomban Wendling authored
-
- 07 Jul, 2014 1 commit
-
-
Colomban Wendling authored
This allows mail clients to know to what message the followup is for, making it easy for an user to see what relates to what when there are several checks.
-
- 14 Jun, 2014 1 commit
-
-
Colomban Wendling authored
Some emails client don't know the date if this field is not present, and although some MTAs add it it can't be relied upon.
-
- 10 Jun, 2014 2 commits
-
-
Colomban Wendling authored
This fixes crashing the mail thread when there the queue is empty after config.emails.smtp_keepalive_timeout seconds.
-
Jonathan Michalon authored
-
- 09 Jun, 2014 1 commit
-
-
Colomban Wendling authored
Use a single SMTP connection and send all emails through it from a thread to avoid spamming the SMTP server with connections.
-
- 24 May, 2014 3 commits
-
-
Colomban Wendling authored
Fix all PEP8 errors but E221 (multiple spaces before operator).
-
Colomban Wendling authored
-
Colomban Wendling authored
Instead of depending on config.py defining several magic variables, move the default configuration in the config instance at the root of the lib module, and make config.py override them as needed.
-