On 17/10/2011 11:18, Ate Douma wrote:
On 10/17/2011 12:08 PM, Ross Gardler wrote:
On 16 October 2011 21:15, Ate Douma<[email protected]>  wrote:
On 10/16/2011 07:59 PM, Scott Wilson wrote:

On 16 Oct 2011, at 15:13, Ate Douma wrote:

Hi Scott,

I looked at the download you provided and I have several comments and
questions, which is why I opened this separate DISCUSS thread to not pollute
the vote thread itself.

First of all, I assume the target for this artifact is the Maven central
repository, right?

For that purpose, I think we'll then need a 'proper' maven artifact
build, which means includes a maven project pom (dependency resolution, general project and artifact meta-data), and preferably also a -sources.jar
and -javadoc.jar artifact for IDE support etc.

Maven based builds of course can produce such additional artifacts as a
trivial by-product, given a proper maven pom that is, but as Wookie
currently is using ivy (which I don't know nothing about) I don't know how
such things are done the ivy way.

I also noticed the binary jar has the sources embedded, which is kind of
unusual nowadays (I think). Not really wrong, but unexpected.

The LICENSE and NOTICE files are contained within the root of the jar
while these IMO should be provided under the META-INF/ folder.

I really think, as a minimum, a proper maven pom is required to even be able to upload to the Maven repository, and such pom should provide proper dependency resolutions. Can ivy 'generate' such a maven pom automatically? If not, I really think the java connector module should be (also) build by maven itself then, which also will make it much easier to 'stage' the artifact first through repository.apache.org (Nexus) and after release automatically 'publish' it to Maven central. If you need to do this manually
I have no idea how that (nowadays) works.

OK, all this is now generated correctly using the new Ant/Ivy scripts in 0.9.1, but it wasn't in place for 0.9.0, so we'd have to sort out all the
artifacts, pom etc manually.

An alternative is we just get a move on with the 0.9.1 release, including the full server, and both the connector, and parser subprojects. As we only
have a few issues left to resolve it may actually be quicker....

If the 0.9.1 version is almost already, yes it might indeed be quicker...

I haven't been able to review this yet, but is the (ivy) build also/already able to deploy a 0.9.1-SNAPSHOT connector to the Apache snapshot repository?

If so, I'd suggest doing that as it would immediately make it discoverable
by Rave (and for any Maven repository using project). It also makes it
possible to proper test the integration before the release!

Now that is a good idea. Releasing the 0.9.1 connector now will allow
me to proceed with the Rave integration. As far as I am aware there
are no backward incompatible changes in the 0.9.1 connector. If
someone can push a 0.9.1-Snapshot I'm happy to re-prioritise my work
on the Rave integration in order to test this release candidate.

Of course, adding a Wookie connector 0.9.1-SNAPSHOT dependency will make it a 'blocker' on getting Wookie 0.9.1-incubating released and available from
the official Maven Central repository before we can release Rave next
(0.5-incubating) which should be end of this month...

As I note above I think we can release the 0.9.1 connector before the
0.9.1 Wookie, there is no need for them to have the same release
cycles.

I agree it would be good for the connector(s) to have their own release cycle. However, right now the (java) connector is 'embedded' within a single Wookie svn trunk (== release lifecycle scope). To make them independent the connector(s) should be moved into a separate svn base folder with their own trunk/tags/branches first.

Heres a few of  my thoughts...

(1) We already have 0.9.1 snapshots for both the parser and the java connector found in the apache snapshot repo - https://repository.apache.org/content/groups/snapshots/org/apache/wookie/

Is there anything to stop the rave integration work going ahead by using this snapshot (as long as its an up to date version, or does it have to be a RELEASE version) My understanding is that snapshots are periodically uploaded, but dont need to be voted on - unlike a RELEASE version which does need to be voted on.

(note we didnt have maven artifacts for wookie 0.9.0 because we didnt build them at the time and there were no ant/ivy tasks written to build them in the that branch.)

We already have the infrastructure in wookie using ivy/ant to automatically build & deploy the maven artifacts to the snapshot repo. (including the POM file), independently of making a full wookie release. (As of 0.9.1 - unreleased) The only bit that is missing is to finish off the ivy/ant task for doing the RELEASE versions of the maven artifacts, as the script isnt picking up the generated wookie-src.jar & wookie-javadoc.jar files yet.

I can understand the logic of having separate modules not only for the connector, but also the parser sub project. I have recently talked to Scott about perhaps moving away from ant/ivy after this release and going fully over to maven. (either for 0.9.2 or 0.9.3) I think we should probably either raise a vote on this list or at least create a jira issue, after this release.

In any case having separate modules for these makes sense whether we use maven or not.

We are now down to the list few issues do be able to make a RC1-0.9.1 soon.

So, do we want to do refactor out the two subprojects before or after 0.9.1?

Paul


Ate

Ross


Ate


Ate Douma

As an side-note: I noticed the current wookie (main) download page only provides the links to the binary distributions. I was kind of surprised by that, until I found out that the sources download is provided on a separate page. Not sure how this is viewed by others, but the common (ASF) practice
is to promote the source distributions as the primary artifacts and
typically the sources and optionally also the binary downloads are provided
from the main download page.


On 10/15/2011 02:17 PM, Scott Wilson wrote:

In order to integrate Wookie and Rave we need a published non-snapshot
version of the Java Connector framework.

While we do have the 0.9.1 release coming soon, it would be good to
publish the 0.9.0 version of the connector to the repository given the full
0.9.0 release is already available, just so we can get Wookie-Rave
integration into the next Rave release.

The scope of the release is the following artifact:

http://people.apache.org/~scottbw/wookie-connector/

[ ] +1  approve
[ ] +0  no opinion
[ ] -1  disapprove

S










Reply via email to