Hi Damon, hi everyone
There is a new commit coming along that could clash with the init.tcl.in
you have rewritten, so please do an svn update before you commit.
I've fixed the issues with the broken tests, mostly caused by an
interaction between the [try] construct in ::Rivet::request_handling and
the ::rivet::catch and ::rivet::try commands.
Another bug surfaced in [::rivet::inspect script] and has been fixed
(even though it's not returning anything when called from outside an
HTTP request processing, but that's the value returned also in 2.3 IIRC)
The last test to be fixed is in broken.tcl which constrains an error
message to have a specific form. The new error message generated by
::Rivet::error_handler and ::Rivet::handle_error looks to have quite a
similar structure but it's not the same when compared character by
character (-exact matching in the test). That's because we have a
different frames stack when a command fails which is built in
::Rivet::request_handling. This test would fail also if the programmer
overrides one of those error handlers or if the old mod_rivet core is
built. I'm thus considering to switch to a looser regexp matching on
that test
-- Massimo
On 11/12/2016 07:23 PM, Damon Courtney wrote:
The first thing I see is that we need to set some of the defaults. We
have some duplicating going on that can be cleaned up.
Examples:
ErrorScript should default to ::Rivet::handle_error
AfterEveryScript should default to ::Rivet::cleanup_request
Rather than looking for those scripts and then using the ::Rivet
defaults when we don’t find out, we should just default those values
in the module, and then we don’t have to do any of that dance.
The only breaking change is that ::Rivet::cleanup_request is
currently called on every request even if AfterEverScript has been
specified. This would call for only one, which breaks backward
compatibility, but I don’t think in a really significant way. Most
everyone should be using AfterEveryScript instead of the older way of
redefining procs anyway.
It looks like we’re going to call this Rivet 3.0, so now is the time
to reevaluate some old decisions and make changes. I don’t think this
is a big one or that controversial. I could be shouted down if
someone cared enough though. :)
D
On Nov 12, 2016, at 11:52 AM, Massimo Manghi <man...@biol.unipr.it>
wrote:
now the code its ready. You need to recreate an init.tcl script by
running ./configure with the appropriate arguments. The key switch
is
./configure ... --with-rivet-core=mod_rivet_ng
the Tcl stuff in init.tcl.in pertaining only mod_rivet_ng is
comprised between the lines
######## mod_rivet_ng specific ++++++++
.....
######## mod_rivet_ng specific --------
everything else is untouched therefore it should be compatible also
with the traditional default core module
I'm looking forward to read you comments
cheers
-- Massimo
On 11/12/2016 06:34 PM, Damon Courtney wrote:
Sure thing.
--
--
Dipartimento di Neuroscienze
Unità Biofisica e Fisica Sanitaria
via Volturno 39
43125 Parma
---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscr...@tcl.apache.org
For additional commands, e-mail: rivet-dev-h...@tcl.apache.org