On 01/30/2011 07:38 AM, Mark D. Anderson wrote:
Hi -
I see that XWiki Enterprise 3.0 Milestone 1 was just released a week ago.
I also found the roadmap at
http://enterprise.xwiki.org/xwiki/bin/view/Main/Roadmap
I can't tell from the announcement however what the intended use is...
Is this something that is likely to blow up ("alpha" quality)?
All our releases are as stable as possible. It is very unlikely that
something will "blow up", as we're using Continuous Integration to
assure that at almost any point XWiki is stable
(
https://secure.wikimedia.org/wikipedia/en/wiki/Continuous_Integration)
The main difference between a milestone and a final release is that
during milestones new features introduced are not yet tested in many
different environments, so they might look badly in certain versions of
IE, or there might be problems on a different database, but this usually
only affects new features introduced in that milestone. Something that
was working in the previous stable version should still work in the new
milestone.
Between a milestone release and the final release, most of the
development efforts go into testing and polishing the new features, so
that the "stable" 3.0 version is as stable as possible.
The "bugfix" releases, like 3.0.1 or 2.6.2, rarely solve critical bugs
in their equivalent major release, but usually backport bugs solved
during the future release. These bugs aren't blockers, just things that
need to be ironed out, so instead of waiting for the 2.7.5 release,
better try the 3.0 release, since it is almost as stable, but with even
more bugs fixed and some new features.
At what point in the roadmap does it make
sense for a new install to try a 3.0.x release instead of 2.x release?
If by "try" you mean installing it in production, then 3.0. If you need
really fast something that is only present in the latest milestone, then
it should be fairly safe to use a milestone in production, but you
should upgrade as soon as the stable version is released.
If by "try" you mean start preparing for a production deployment, the
answer is, in my opinion, the first release candidate (3.0-rc-1). It's
what will be in the final 3.0 release, and it gives you time to prepare
the environment and test the wiki before the stable release is out.
If by "try" you mean start exploring for an eventual deployment, then
you can already start that, although the best point will be the last
milestone (in this case it looks like 3.0-milestone-2), since it will
have most of the features planned for the final 3.0 release.
If by "try" you mean testing it and trying to help the community, then
you can take any snapshot (from
http://maven.xwiki.org/snapshots/org/xwiki/enterprise/ ) and test it,
test the new features introduced, report any bugs encountered, or even
things you don't like (usability, interface), things you'd like to be
better (better functionality of the features), etc.
In addition to stability of the software, what
about stability of any
APIs - are those frozen in M1?
If I adopt M1, will M2 automatically upgrade from M1, or are automatic
upgrades only assured for migration from a stable 2.x release?
Scriptable APIs are stable, so most of the Velocity code that you write
should work in future versions. The APIs that are broken (as listed on
http://www.xwiki.org/xwiki/bin/ReleaseNotes/ReleaseNotesXWikiEnterprise30M1…
for example) are usually internal APIs (SPIs), that you should be
concerned about only if you're writing custom Java components.
3.0 is an exceptional case, since we're actually removing deprecated
public APIs, but those APIs have been deprecated for a long time, and
it's highly unlikely that they are still used.
Platform upgrades should work pretty well between any two versions,
provided you do the upgrade correctly. The closer the two versions, the
safer the upgrade. Again, what could break is custom components that
rely on internal SPIs.
When 3.0 final is out, will work on 2.7 basically
stop?
No, the rule is that we maintain two old branches in parallel to the
trunk. When 3.0 will be out, the trunk will already be on 3.1-SNAPSHOT,
and the previously maintained branches will become 3.0 and 2.7. At that
moment in theory the 2.6 branch will be dropped.
We sometimes make exceptions from this rule, for example right now we're
maintaining 3 older branches (starting with 2.5, see
https://svn.xwiki.org/svnroot/xwiki/platform/core/branches/ ).
Will the current release of XWord work with XE
3.0M1?
If it works with 2.7, it should work with 3.0 as well, since there have
been no changes in the REST or XmlRpc systems.
Regarding extensions, the listing at
http://extensions.xwiki.org/xwiki/bin/view/Main/
says nothing about version compatibility. I'm guessing that because of the velocity
upgrade,
trying any extension with heavy velocity usage would be a gamble with XE 3.0M1 ?
Or is there an automatic "smoke test" report somewhere of what extensions are
certain to not work?
Some extensions list their minimal required version (for example
http://extensions.xwiki.org/xwiki/bin/view/Extension/Multipage+Export+Appli…
). There's no maximum version, since we can't predict when will
extensions stop working.
Most of the extensions there are not officially maintained by the XWiki
committers, so we're not testing them for compatibility with each new
release. If there's an extension that doesn't work, leave a comment on
its page, or send a mail to the users list, or you can try to fix it
yourself and upload a new version (it's an open wiki).
Sorry for all the questions, but I seem to have
hit xwiki at a cusp in its lifecycle
so I'm in a quandary about which version to start with.
--
Sergiu Dumitriu
http://purl.org/net/sergiu/