Hi Ludovic,
On Sep 5, 2007, at 1:44 AM, Ludovic Dubost wrote:
Hi,
I'd like to propose to vote to add this new feature in 1.1RC2
http://jira.xwiki.org/jira/browse/XWIKI-1671
I know we should not add features, but this one would allow to
run groovy script requiring libs not included in the xwiki release.
For example this could allow to package the Google Docs Summer of
Code project as a pure extension without configuration and even
restart.
It's implementatin is very safe, as nothing changes unless you
add a param or a value in the context.
<http://fisheye2.cenqua.com/browse/xwiki/xwiki-platform/xwiki-
applications/branches>
I told you on chat that I was ok with this. However I'm having
second doubts... Sorry :)
I'd like to know more why we need to do this now. Why not commit
it on trunk? It'll be in 1.2M1 in 2/3 weeks. Radu's plugin will
not be integrated/cleaned up/etc before that time anyway and even
then it would still work with 1.1 users, it's only a matter of
installation.
I don't think we should rush this. It's not so much a question of
taking risks or not that doing a precedent. If we do this now,
then we're breaking our RC rule and it'll happen again in the
future (I think we could potentially remove betas and RCs in the
future when we have 70% or more covered by automated tests but
we're not there yet.
So, unless there's a good reason I haven't seen, I'd rather not
commit this right now on the 1.1 branch.
WDYT?
The actual modification to xwiki core code is 2 lines just to allow
to add a class loader (without specifying a class loader the
behavior is the same).
Then there are a class loader (new class) and a new API to run the
groovy script under that class loader. They do not impact existing
API.
The same code written in script is much harder (code written
currently in xwiki code needs to be duplicated in groovy).
Having this simple additional API in the code will allow 1.1
installations (which are going to be our stable version for a
while), to be more extensible by scripting, thus allowing us to
demonstrate new features (like GDocs integration for example).
If we postpone that non risky change to 1.2 then we will have this
feature in many many installations (our farm, our clients, in
chrono, in nearbee) no earlier then beginning 2008.. since client
would need to upgrade to 1.2..