My plugins that manipulate data in the
beforeSaveHandler
don't work anymore. Apparently, meta data is duplicated in
$text
and
$meta
parameters. However, a Plugin that manipulates the meta data contained in
$text
does not function anymore. It looks like the changed meta data in
$text
gets discarded.
Now, I can use some conditional code to work around this issue, but this is yet another spec change that makes upgrading TWiki harder than in should.
See also discussions in
TWiki:Codev.HandlingCairoDakarPluginDifferences
--
PTh
I verified that in effect the semantic was changed.
It's easy to fix, if the new semantic is: "Changes to META information embedded in the text will override changes to the META object passed to the plugin."
Are we ok with this change?
--
RA
I think that is fine. But you would need to compare the embedded meta data before and after the handler to determine what changed.
--
PTh
This was due to my forgetting to complete that piece of code; sorry. I couldn't find any plugins that manipulated meta-data in-line that way, nobody reported the problem, and there were no tests, so it slipped under the radar.
The approach I had planned to take was that if any mods were made in the $meta object, the embedded meta-data in the text would be ignored, otherwise it would be used.
SVN 8802
I don't understand these new merge fields in this form, but I'm assuming I need to tick the "merge to 4.0.2" field.
CC
merged to twiki4 SVN 9066
CC
A single line in
lib/TWiki/Meta.pm
wasn't merged - on purpose? (Part of 8802)
--- lib/TWiki/Meta.pm (.../TWikiRelease04x00) (revision 9315)
+++ lib/TWiki/Meta.pm (.../DEVELOP) (revision 9315)
@@ -499,11 +499,18 @@
my $s = '';
$types ||= qr/^[A-Z]+$/;
- foreach my $type ( grep { /$types/ } keys %$this ) {
+ foreach my $type ( grep { /$types/ } sort keys %$this ) {
--
SP
On purpose. It's a debugging feature, not a bug.
CC
Closed with the release of 4.0.2
KJL