Validation errors were behaving too much like real errors: they were
being printed with stack traces, and passed to the options(shiny.error)
function. Also, if a reactive() cached a validation error, on future
calls the error would be re-raised (which is correct) without the
custom class names attached (which is not).
It is dangerous to set this on a per-process basis. If we even
still want the ability to have observer errors not kill the
session (debatable) we should do so by having an option on the
session object that is set when the shiny server function runs.
Not only does this remove support for the option, but now we
will refuse to connect and will abort the session if the option
is set to a non-NULL value. This is to prevent apps from moving
forward with the assumption that their option will work, when
it really won't. (I doubt anyone is using it anyway, it's so
obscure...)
- Need to carefully review ShinySession, think about
each and every public method and whether it should
be passthrough or do something different for a
namespaced session.
- It would be nice if we do the namespace splitting
at the server.R level and actually have numerous
reactivevalues objects for inputs, one for each
namespace. This will make the reactive hooks for
names() and reactiveValuesToList() correct, as
right now they will oversubscribe if you're in a
namespaced session. Also it would prevent outer
sessions from seeing the values of their child
namespaces. (Though is that good or bad...?)
* Reactlog shortcut was broken due to reactlog.js not being included in
the gruntfile
* Reactlog has always shown every reactive event since the beginning of
the process (or at least since options(shiny.reactlog=TRUE)). This
commit makes it so Ctrl+F3 invocation only shows reactives that either
belong to no session (e.g. observers and reactives declared at the top
of server.R), or belong to this session.