Hi,
I'd like to to commit the fix for
http://jira.xwiki.org/jira/browse/
XWIKI-1517
This involves removing 2 of the 4 APIs. Indeed, 2 APIs take an olddoc
parameter of a XWikiDocument type. The only reason for this is
because the notification mechanism requires two documents so that it
can check if the new one has differences over the old one and send
notifications accordingly. However this need should be an
implementation need and should not surface in the API. Hence
XWIKI-1517. BTW this change allows fixing
http://jira.xwiki.org/jira/
browse/XWIKI-1518 and some other potential bugs too.
Note: I'm not changing the *.api.XWiki object (only the one in
*.xwiki.XWiki).
This change will a small impact on people building XWiki applications
on top of the XWiki platform but not on end users. I feel this is
still ok because:
* We need to improve our API if we want to progress in improving XWiki
* The alternative is to create a XWiki 2.0 version but we won't have
enough manpower to 1) continue supporting the 1.x line and 2) to
build XWiki 2.0 from scratch. I think our only reasonable option is
to build on XWiki 1.x and start refactoring the internal APIs slowly,
a bit in each version.
* I'll document this in the release notes
* It's easy to fix for anyone hit by this
* End users are not touched
* It fixes current existing bugs
* It makes the API easier to use. Right now in 99% of the code I had
to change the olddoc was simply a clone of the current doc thus
making the call useless
So here's my +1
Thanks
-Vincent