Hi,
I'd like to release XEclipse 1.0M1.
Release notes:
** New Feature
* [XECLIPSE-1] - Navigate the Documents tree and viewing XWiki
pages.
* [XECLIPSE-2] - Delete existing pages/spaces
* [XECLIPSE-3] - Login to xwiki from Eclipse and import spaces
selectively
* [XECLIPSE-9] - Edit and Save pages
* [XECLIPSE-10] - Add new pages/spaces
** Task
* [XECLIPSE-11] - Clean up source code and apply XWiki
development practices
* [XECLIPSE-12] - Create Maven2 build for the Eclipse integration
* [XECLIPSE-20] - Write a quick installation and using page for
XEclipse
* [XECLIPSE-25] - Move XEclipse to xwiki-extensions/ and out of
the Sandbox
Here's my +1
The list being down I'll take the risk of releasing it without more
votes... I think we have already all agreed we wanted that release to
happen ASAP.
In addition, I've pinged on IRC and I got 3 +1:
- Sergiu
- Catalin
- Stephane
Thanks
-Vincent
Hi,
This is more a matter of opinions. Should a comment increase the
version of a document? I'd say yes, but the view of simple users is
that a comment should not affect the document, as it is something
describing the document, not belonging to the document. So we should
have a parameter that configures this.
WDYT?
Sergiu
--
http://purl.org/net/sergiu
Hi Catalin,
A new healthy fight! :)
See below.
On Aug 27, 2007, at 10:32 PM, Catalin Hritcu wrote:
[snip]
>> Pros:
>> * A single way for all xwiki clients to connect to XWiki servers
>> * Less maintenance, less documentation, less work in general since
>> someone
>> else is developing swizzle :). This point only is huge.
>>
> I would not stress this. Actually I already worked quite a lot on
> improving swizzle so far and I think there are many other ways we will
> have to improve swizzle. What is nice about it was having a visible
> working project to start from, rather than implementing it from
> scratch. Having David to "guard" the source is just the cherry on top
> of the cake.
You didn't spend even 1% of the time it took to create Swizzle as it
is today and if you think about how swizzle will evolve in the future
that percentage drops down to 0.01%. This is why I thought this
should be stressed out :)
[snip]
>> * If swizzle goes away or is abandonned then it'll be bad for
>> xwiki and we'd
>> need to support it/reintegrate it.
>>
> First, swizzle is open source so can't "go away", we can always
> continue to maintain it.
That's harder than you think. Radeox went away and are we maintaining
it? Nope. Of course we can always say that it's because its
architecture was too limited, etc but had it been maintained its
architecture could have evolved too. The same would happen with
swizzle if it goes away IMO. But it's not only an issue of Swizzle
going away because it's abandoned. Imagine a competitor project
appears and it's better than swizzle for XWiki. How do we tell all
our users that they have to redo all their client code. We won't and
thus we probably won't move to this better project because we have
standardized on Swizzle.
It's about having a stable client-side interface.
I much prefer the approach where we define our model objects (we need
them anyway on the server so it may even be possible to share some of
them on the client - Not sure about this but it's a thought) and our
interfaces and we keep the implementation separate. I'm 100% for
implementing those interfaces with Swizzle.
In addition we need to offer a XWiki-specific API so instead of
offering several remoting APIs I propose we offer only one. Then it's
up to the implementations to implement them. The confluence
implementation (using Swizzle) could throw NotImplementedException
for stuff it doesn't implement so that client code using it will be
100% confluence-compatible if that's the user's desire. And we would
be able to have a single unified API that has all the XWiki-specific
stuff.
> And if it ever goes abandoned how would this
> be any worse than what we have now? Now we have two "little-swizzle"
> implementations one of them was _already_ abandoned, and the other is
> very likely to grow into a full fledged "swizzle". Even if we have to
> maintain one swizzle it's a big gain over having to maintain many.
See above.
>
>> Actually this is a point that is
>> bothering me Catalin. I think we'd need our own object model and
>> expose that
>> as a component and then provide a default implementation using
>> swizzle
>> behind the hood. Same as what we're doing for everything. This
>> will also
>> make the API seamless WRT extra APIs we have for xwiki (like getting
>> objects, etc).
>>
> It is true that swizzle provides an implementation but not an
> interface. However, why can't we provide interfaces as part of the
> swizzle project ? Why can't we make swizzle more component-friendly by
> just changing it? Why would we need another XWiki-specific wrapper
> layer?
Swizzle is not our project. We could become committers to it of
course but I assure you it's still going to be 100 times more
difficult to evolve Swizzle than to evolve XWiki code. For 2 reasons:
* We "own" XWiki. All committers on XWiki are interested by XWiki only.
* Swizzle has to stay generic and making a generic change is always
more difficult than making a specific change. The same applies to the
fact that Swizzle if confluence-specific.
Regarding the confluence-specific, it bothers me that the only
remoting interface we're providing is confluence-specific and has
confluence written all over. I think we should offer a XWiki-specific
API and let the user choose the implementation he wants transparently
(confluence or not).
> One advantage I see of improving swizzle rather than hiding it away is
> that this way we are guaranteed(!) to stay compatible with confluence
> on the common features. While if you start to develop wrappers on top
> of swizzle that may or may not be the case.
We wouldn't loose this feature by using Swizzle as an implementation
of our API.
>> So IMO:
>> * We shouldn't use swizzle directly
>> * We should develop our own client side Java Objects and API
>> *interface* for
>> people interacting with XWiki remotely.
>>
> Why can't interfaces be done inside the swizzle project ? Why should
> we try to hide swizzle away ?
See above.
>> - That API should be independent of the protocol used.
>>
> Swizzle is actually already independent of the protocol used. It could
> work with SOAP as well as XML-RPC if somebody went into the trouble to
> reimplement everything for SOAP. The interface would be the same and a
> client would not be able to tell any difference.
Then all the best. We can benefit from that.
>> - A default implementation should be done using swizzle. It'll
>> be mostly
>> empty and only call out swizzle objects/swizzle APIs
>> * XEClipse should be refactored to use this API
>> * This API should be developed using components and using the new
>> org.xwiki
>> namespace.
>>
> Why can't this be done in an interoperable fashion part of the swizzle
> project ? Why can't the namespace be org.codehaus.swizzle :) ? Isn't
> this "not-made-here" attitude?
Yep and that's important IMO (see above). The strategy I'd like to
have for XWiki from now on is to develop components and provide XWiki
interface classes. The implementations can be done using whatever
external frameworks.
>> WDYT?
>>
> I think that we have no good reason to hide swizzle away under more
> wrapper layers since _swizzle_is_a_wrapper_itself_, and I think that
> we can solve any modularity/componentization problems inside the
> swizzle project.
See above again.
Let's see what others say.
Thanks
-Vincent
I am working on XWiki MySQL database backup. I want to take the database backup and export it to other system so that the other system will have all the data .
Can you please help me whether I shall take a database backup in XWiki, or I have to create one new page for it? If yes, then what code I have to write for the same.
Please Reply.
Thanks,
Anuj
Hello,
Until now I have refrained from making API breaking changes in XML-RPC
in order to keep compatibility with XEclipse. However, these changes
are necessary and cannot be delayed forever, so after the release of
XEclipse 1.0M1 (scheduled for today) XEclipse 1.0-SNAPSHOT will need
to be moved to swizzle-confluence. I volunteer to make this change
happen in the XEclipse trunk once XEclipse 1.0M1 is released.
To sum things up:
- XEclipse 1.0M1 will only work for xwiki-core-1.1M4 (and all the
remaining releases on the 1.1 branch)
- XEclipse 1.0M2 will only work for xwiki-core-1.2M1 or later
WDYT ?
Catalin
Hi,
We're delighted to release this first version of the XWiki Eclipse
plugin.
Announcement: http://www.xwiki.org/xwiki/bin/view/Blog/
XWikiEclipse10M1Released
See the Eclipse plugin page for installation instructions and user
guide:
http://www.xwiki.org/xwiki/bin/view/Code/XEclipseExtension
It's the result of one project from the Google Summer of Code 2007
and was done by Tharindu Jayasuriya and Asiri Rathnayake.
Well done to both of you! We're happy to have you as XWiki committers
for this XWiki Eclipse plugin. Let's now continue the good work
you've started and keep improving this beastie.
Release notes:
* [XECLIPSE-1] - Navigate the Documents tree and viewing XWiki
pages.
* [XECLIPSE-2] - Delete existing pages/spaces
* [XECLIPSE-3] - Login to xwiki from Eclipse and import spaces
selectively
* [XECLIPSE-9] - Edit and Save pages
* [XECLIPSE-10] - Add new pages/spaces
Enjoy!
-The XWiki Dev Team
Hi,
I'd like to commit the eclipse integration source code in a xwiki-
extensions/xwiki-eclipse directory. Of course Tharindu/Asiri shoud
clean up their code and align it with XWiki's coding conventions
first and I won't commit anything until they do so.
I'd also like to give them commit access to that section of our SVN
(and NOT as general committers).
Here's my +1 to both topics.
Please cast your votes.
Thanks
-Vincent
Hi,
I've had a request to create a svn external for curriki since they
want to use the 1.1 branches from now on.
I'm going to create it in [root]/externals/curriki-devs
Would be nice to move our trunks-users and trunks-devs there too but
I fear this may cause issues so I'll leave them where they are for
now unless someone has a better idea.
Thanks
-Vincent
Hi,
Just wanted to explain my current strategy for FAQs on xwiki.org.
Whenever I review FAQ pages I do the following:
1) Check if there's a page in the wiki that discusses the question
mentioned in the FAQ page
2) If there is, remove the FAQ content and instead link to that page.
If there were more information in the FAQ entry, move that
information to the page proper
3) if there isn't, then create a new page, in the user guide, dev
guide or admin guide and then go to step 2.
IMO this is the best strategy for the best of both world:
1) Have a comprehensive documentation
2) Prevent duplication
3) Still keep the FAQ entries so that people can find them easily
using google or the wiki search and then get directed to the relevant
documentation page.
All help is welcome!
Thanks
-Vincent
Hello,
We have a problem with "mvn install -Pjettyrun". Trying to open any
produces a "The requested document could not be found" and the console
displays the error given below. It seems it's not able to find the
version.properties file.
I was able to reproduce this on more than one machine. Can somebody
please look into this?
Regards,
Catalin
catalin:~/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard
hritcu$ mvn install -Pjettyrun
[INFO] Scanning for projects...
[INFO] ----------------------------------------------------------------------------
[INFO] Building XWiki Platform - Web - Standard
[INFO] task-segment: [install]
[INFO] ----------------------------------------------------------------------------
Downloading: http://maven.xwiki.org/externals/groovy/groovy-all-1.0-jsr/06/groovy-all-1.…
Downloading: http://maven.xwiki.org/releases/groovy/groovy-all-1.0-jsr/06/groovy-all-1.0…
Downloading: http://repo1.maven.org/maven2/groovy/groovy-all-1.0-jsr/06/groovy-all-1.0-j…
[INFO] Setting property: classpath.resource.loader.class =>
'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] Setting property: velocimacro.messages.on => 'false'.
[INFO] Setting property: resource.loader => 'classpath'.
[INFO] Setting property: resource.manager.logwhenfound => 'false'.
[INFO] [remote-resources:process]
[WARNING] Attempting to build MavenProject instance for Artifact of
type: jar; constructing POM artifact instead.
[WARNING] Attempting to build MavenProject instance for Artifact of
type: jar; constructing POM artifact instead.
[WARNING] Attempting to build MavenProject instance for Artifact of
type: jar; constructing POM artifact instead.
[WARNING] Attempting to build MavenProject instance for Artifact of
type: jar; constructing POM artifact instead.
[INFO] [site:attach-descriptor]
[INFO] [assembly:single]
[INFO] Reading assembly descriptor:
/Users/hritcu/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard/src/assemble/jetty.xml
[INFO] Initializing assembly filters...
[INFO] Copying 3 files to
/Users/hritcu/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard/target/xwiki-web-standard-1.2-SNAPSHOT-hsqldb.dir
[INFO] [jetty:run]
[INFO] Configuring Jetty for project: XWiki Platform - Web - Standard
[INFO] Webapp source directory =
/Users/hritcu/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard/src/main/webapp
[INFO] web.xml file =
/Users/hritcu/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard/src/main/webapp/WEB-INF/web.xml
[INFO] Classes =
/Users/hritcu/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard/target/xwiki-web-standard-1.2-SNAPSHOT-hsqldb.dir/WEB-INF
2007-08-26 19:19:47.172::INFO: Logging to STDERR via org.mortbay.log.StdErrLog
[INFO] Context path = /xwiki
[INFO] Tmp directory =
/Users/hritcu/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard/target/work
[INFO] Web defaults = jetty default
[INFO] Web overrides = none
[INFO] Webapp directory =
/Users/hritcu/JavaApps/xwiki-trunks-devs/xwiki-platform-web/standard/src/main/webapp
[INFO] Starting jetty 6.1.5 ...
2007-08-26 19:19:48.294::INFO: jetty-6.1.5
2007-08-26 19:19:48.594::INFO: No Transaction manager found - if your
webapp requires one, please configure one.
2007-08-26 19:19:50.153::INFO: Started SelectChannelConnector@0.0.0.0:8080
[INFO] Started Jetty Server
19:20:02,814 WARN btpool0-1
http://localhost:8080/xwiki/bin/view/Main/WebHome XWiki:getVersion:727
- Failed to retrieve XWiki's version from
[/WEB-INF/version.properties], using the [version] property.
java.lang.NullPointerException
at java.util.Properties$LineReader.readLine(Properties.java:365)
at java.util.Properties.load(Properties.java:293)
at com.xpn.xwiki.XWikiConfig.loadConfig(XWikiConfig.java:58)
at com.xpn.xwiki.XWikiConfig.<init>(XWikiConfig.java:53)
at com.xpn.xwiki.XWiki.getVersion(XWiki.java:723)
at com.xpn.xwiki.api.XWiki.getVersion(XWiki.java:84)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.velocity.runtime.parser.node.PropertyExecutor.execute(PropertyExecutor.java:137)
at org.apache.velocity.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:350)
at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:180)
at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:88)
at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:240)
at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:143)
at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1268)
at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1229)
at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:545)
at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:194)
at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:170)
at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:240)
at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:143)
at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1268)
at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1229)
at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:545)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:194)
at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:170)
at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:240)
at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:143)
at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1268)
at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1229)
at com.xpn.xwiki.web.Utils.parseTemplate(Utils.java:94)
at com.xpn.xwiki.web.Utils.parseTemplate(Utils.java:48)
at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:155)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:117)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)