* Never call update_build from a BuildEnvironment
* Fix broken celery test
This is really a design decision thing. Either projects should be marked
as having valid clones even if record is off, or they shouldn't.
Personally, I believe the former behavior is better, since we will have
actually cloned the repo at that point (in the setup_env), but this does
mean that record will record *some* data in the database, which might
not be desirable.
* Catch all exceptions when exiting BuildEnvironment
This removes the special handling of BuildEnvironmentError, and
logs and catches all exceptions which aren't subclasses of
BuildEnvironmentWarning.
This simplifies exception handling for users of BuildEnvironments,
but may have some unexpected effects if, for instance,
SystemExit, StopIteration or KeyboardInterrupt is raised while
inside a BuildEnvironment.
* Don't surface the exception message to the end user
* Raise BuildEnvironmentError on error parsing YAML
This reverts commit 95bc81d2fa.
This commit introduced a bug with our builders, as the builders do not have
access to our database. The methods used in this commit rely on the database,
and must be added to the api return instead.
* Alter usage of message extends
Instead of using the messages.add method directly, add message for the message
notification backend using the storage adapter directly. This also removes the
limitation on the storage backend that requires a request.user is authenticated,
as we are likely going to be mostly adding messages through celery or other
request-less mechanisms.
* Fix tests
* Make sure we can't add messages for anonymous users and fix tests
The submodule was only relevant for a short time and its continued
existance is a distraction for new contributors.
See: https://github.com/snide/sphinx_rtd_theme/pull/342
Using git-blame, I was able to pinpoint which commite introduced the
submodule, but I wanted to be certain that it was no loger in use. So, I
manually inspected parts of the source code, ran `git grep ...`,
reviewed open and closed issues, and PRs, but found nothing conclusive
about its existance. Ultimately, git-log is what gave me the most
confidence that it is no longer necessary. As you can see, it was
introduced in October of 2013 and then made obsolete a month later.
From git-log:
bash$ git log -G '_themes/sphinx_rtd_theme'
commit 50619d1bc5
Author: Eric Holscher <eric@ericholscher.com>
Date: Fri Nov 8 18:55:06 2013 -0800
Rejigger theme stuff in our own conf
commit d9829a2d81
Author: Eric Holscher <eric@ericholscher.com>
Date: Thu Oct 17 13:26:19 2013 -0700
Add new theme
In a previous commit, an __init__ method was added to HtmlBuilder and to
HtmlDirBuilder, however the SingleHtmlBuilder was unmodified. Since
SingleHtmlBuilder inherits from HtmlBuilder, HtmlBuilder.init is
executed which sets the instance variable "sphinx_builder" to either
"readthedocs" or "readthedocs-comments".
This instance variable from HtmlBuilder makes it impossible to get the
correct value from SingleHtmlBuilder's class variable "shpinx_builder"
"readthedocssinglehtml".
The fix is to implement the __init__ method for SingleHtmlBuilder and
set self.sphinx_builder accurately.