Re: Jackrabbit and Maven

2006-12-07 Thread Jukka Zitting

Hi,

On 12/7/06, Roy T. Fielding <[EMAIL PROTECTED]> wrote:

Are we going to move the site generation from core to the parent?


Yes. The initial instructions for building the site are:

   $ svn checkout https://svn.apache.org/repos/asf/jackrabbbit/trunk jackrabbit
   $ cd jackrabbit
   $ mvn site

... and then copying the contents of target/site to the checkout of
jackrabbit/site to be committed. I haven't yet configured "mvn
site:deploy" to do automate the copying.

I'll still need to update the jackrabbit-core README, the "Building
Jackrabbit" page and the new committer instructions to match the new
layout.


It would be nice to start documenting those projects that have moved
up out of the contrib section.


Agreed. They all have now at least a proper README, but getting some
documentation also on the web site is important.

BR,

Jukka Zitting


Re: Jackrabbit and Maven

2006-12-06 Thread Roy T. Fielding

Are we going to move the site generation from core to the parent?

[EMAIL PROTECTED] egrep jackrabbit-site jackrabbit-core/*
jackrabbit-core/project.properties:# Site Deploy (into ../jackrabbit- 
site for checkout on jackrabbit.apache.org)
jackrabbit-core/project.xml:../jackrabbit-sitesiteDirectory>


It would be nice to start documenting those projects that have moved
up out of the contrib section.

Roy



Re: Jackrabbit and Maven

2006-12-05 Thread Jan Kuźniak

Hi,

On 12/4/06, Jukka Zitting <[EMAIL PROTECTED]> wrote:

There are still some things (like checkstyle integration) missing, but
overall things work even nicer than I had hoped.


You say checkstyle - you have checkstyle.


Thanks!


Sorry it took me so long but I had to run through whole maven site to make sure 
it works. Resolution is attached as patch to JCR-663.


Right now checkstyle is the only report plugin implemented. Please give me a 
sign when you will decide to plug more reports. I know that it is blocked by 
INFRA-1008 now.


My recommendations are:
maven-surefire-report-plugin
maven-javadoc-plugin
maven-changes-plugin (with jira-report in)
jxr-maven-plugin
taglist-maven-plugin


I don't know the rationale. I generally try to keep lines below 80
chars in any case, so at least I wouldn't mind making the guideline
more strict.


I made checkstyle more strict in this area.

--
Cheers,
 Jan


Re: Jackrabbit and Maven

2006-12-04 Thread Jukka Zitting

Hi,

On 12/4/06, Jan Kuźniak <[EMAIL PROTECTED]> wrote:

 > On 12/4/06, Jukka Zitting <[EMAIL PROTECTED]> wrote:
> There are still some things (like checkstyle integration) missing, but
> overall things work even nicer than I had hoped.

You say checkstyle - you have checkstyle.


Thanks!


But first I have a question about internals of checkstyle.xml. I would love to
establish an eclipse code formatter profile and start cleaning up the code
because it looks awful and inconsistent here and there.


You are right, the current codebase does break a number of syntax
guidelines, even the ones encoded in the checkstyle.xml profile.
There's a meta-issue JCR-97 for improving this, but there hasn't been
much coordinated effort to improve things other than for new code that
gets written.


I don't quite understand why max line length is set to 132 instead of 80? It is
almost half more and makes it harder to read, especially on smaller screens.
Also, when intendation makes it hard to fit in 80 characters at line it is good
reason to extract method or variable instead of relaxating line constraints.


I don't know the rationale. I generally try to keep lines below 80
chars in any case, so at least I wouldn't mind making the guideline
more strict.

BR,

Jukka Zitting


Re: Jackrabbit and Maven

2006-12-04 Thread Jan Kuźniak

> On 12/4/06, Jukka Zitting <[EMAIL PROTECTED]> wrote:

There are still some things (like checkstyle integration) missing, but
overall things work even nicer than I had hoped.


You say checkstyle - you have checkstyle. But first I have a question about 
internals of checkstyle.xml. I would love to establish an eclipse code formatter 
profile and start cleaning up the code because it looks awful and inconsistent 
here and there. I understand that jackrabbit's code style is based upon sun 
coding conventions with a few exceptions.


I don't quite understand why max line length is set to 132 instead of 80? It is 
almost half more and makes it harder to read, especially on smaller screens. 
Also, when intendation makes it hard to fit in 80 characters at line it is good 
reason to extract method or variable instead of relaxating line constraints.


Please give your opinion on it.

And that is a major difference between eclipse built-in formatter and this 
checkstyle. Note that left curly option is set to default value (thus can be 
removed) and most of other options are out of eclipse formatter scope.


--
Regards,
 Jan


Re: Jackrabbit and Maven

2006-12-04 Thread Jukka Zitting

Hi,

On 12/4/06, Jukka Zitting <[EMAIL PROTECTED]> wrote:

There  is some issue with running rmic through the antrun plugin
when a component is a part of a multimodule build, so for now the
jackrabbit-jcr-rmi and jackrabbit-webapp components need to be
individually built.


See JCR-661, where Jan Kuzniak already solved this issue!

Now the sequence to checkout and *all* the Jackrabbit release
components is simply:

   $ svn checkout http://svn.apache.org/repos/asf/jackrabbit/trunk jackrabbit
   $ cd jackrabbit
   $ mvn install

This builds and packages all the components in correct order, installs
them in the local Maven 2 and Maven 1 repositories, and even outputs a
nice summary at the end.

There are still some things (like checkstyle integration) missing, but
overall things work even nicer than I had hoped.

BR,

Jukka Zitting


Re: Jackrabbit and Maven

2006-12-04 Thread Jukka Zitting

Hi,

On 12/4/06, Julian Reschke <[EMAIL PROTECTED]> wrote:

Could you please confirm: with the new layout, Jackrabbit builds with
Maven 2, except for some contrib components?


Yes. The easiest way to do build and package all the components
(excluding contrib) is:

   $ svn checkout https://svn.apache.org/repos/asf/jackrabbit/trunk jackrabbit
   $ cd jackrabbit
   $ mvn install
   $ (cd jackrabbit-jcr-rmi; mvn install)
   $ (cd jackrabbit-webapp; mvn install)

This is achieved by the multimodule settings in the parent POM. There
is some issue with running rmic through the antrun plugin when a
component is a part of a multimodule build, so for now the
jackrabbit-jcr-rmi and jackrabbit-webapp components need to be
individually built.

After the initial build above you have all the SNAPSHOT dependencies
in your local Maven repository and you can use all the Maven 2 build
commands easily also within the individual component projects. I'm
looking at making setting up nightly builds (once INFRA-1008 is
resolved) to have recent snapshots always available in the Apache
snapshot repository. Then it will be possible to easily grab and build
just a single component project.

BR,

Jukka Zitting


Re: Jackrabbit and Maven

2006-12-04 Thread Julian Reschke

Jukka Zitting schrieb:

Hi,

The Jackrabbit restructuring I did yesterday rendered some new
Jackrabbit components (jackrabbit-api, etc.) without Maven 1 builds
and broke the Maven 1 builds of some other components (most notably
jackrabbit-core).

I could fix the broken and add the missing Maven 1 builds, but since
we're upgrading to Maven 2 in any case and since Maven 1 has been
quite troublesome recently (the repository issue I mailed about on
Friday seems to have reappeared, and I'm getting no quick help from
[EMAIL PROTECTED]), I'd like to propose simply dropping Maven 1 and
using Maven 2 for the main builds in trunk.

Note that there are still quite a few contrib projects with just Maven
1 builds. I think we can upgrade them incrementally as time goes by.
To make a mix of Maven 1 and Maven 2 projects work better, I enabled
the install-maven-one-repository goal of the maven-one plugin in the
Jackrabbit parent POM for Maven 2. This will make all artifacts
installed to the local Maven 2 repository to automatically get
installed also in the local Maven 1 repository.


Jukka,

thanks for all the hard work you did over the weekend (and the time to 
prepare for that before).


Could you please confirm: with the new layout, Jackrabbit builds with 
Maven 2, except for some contrib components?


Best regards, Julian