widgetset rebuild, eclipse, cvs add, added independently by second party

Hi,

Today I upgraded from 6.4.1 to 6.4.3 to pick up some wonderful improvements to the the date field implementation.

This also required eclipse to trigger a widget rebuild.

My problem was that the state of the files under the WebContent/VAADIN/widgetsets ended up in a state that mean the changes would not cvs-commit. The errors were of the type ‘… added independently by second party’

In then end I discovered that by deleting and child directories and committing the changes individually back down to the “widgetset” directory, before re-triggering the widgetset rebuild enable me to then commit the changes.

While I have not discovered a work-around, I was wondering if other people have experienced similar issues and may have a better method of getting the updated widgetset commited.

Cheers,
Andrew

This happens because the GWT compiler deletes the widgetset directory and recreates it. While for some version control systems this would not be a problem, CVS and SVN store metadata in hidden directories under every project directory under source code control, and get very upset if that metadata is deleted or manipulated by other software.

A general good practice is not to have generated artifacts under version control but to regenerate them, and have actual builds for non-developers separate from the version controlled source project. When doing so, the easiest solution is to “cvs ignore” the widgetsets directory.

If you do want to keep the widgetset under version control in the project, you might have to build it e.g. with an ant script that first builds it in some temporary directory and then updates the contents to the version controlled directory in a CVS-friendly manner.

Thanks for the response.

I can live with the non-committing of the widgetset if I can build them during myh production build process.

Can you please point me in the direction of the commands that are needed so I and include them in a “ant” build process.

Thanks again.

There is a sample ant script for creating and building a widgetset in
http://demo.vaadin.com/docs/example-source/build-widgetset.xml
.

Note that it also includes add-on JAR generation, widgetset GWT module recreation/update, server side code compilation and more, and can probably be simplified/shortened considerably - most likely you won’t need much more than the compile-widgetset target if integrating into your existing build script.

This posting is just to confirm the previous posting enabled me to solve my problem, in case some else also has same issue.

I have thrown away my original build.xml and converted the suggested file(see previous posting) to do everything the project needs including the widgetset rebuild.

The one thing that confused me for a time was how to add the “.cvsignore” entry from eclipse. In the end I did this from my command-line based product build environment (I do not think eclipse currently handles local “.cvsignore” file directory entries perfectly).

Thank you for your the assistance.