How to help make this project better!
Cloning will download the entire project including all the large files we have messed around with in the past. There are some options to exclude the history to save on space and time to clone.
- run 'git clone --depth 1 firstname.lastname@example.org:ArcBees/GWTP.git' - exclude history
- run 'git clone --depth 30 email@example.com:ArcBees/GWTP.git' - include last 30 commits history
- run 'git clone firstname.lastname@example.org:ArcBees/GWTP.git' - include all history
We are using maven to setup the project for both eclipse and IntelliJ.
After IDE Setup
- run 'mvn generate-sources' - this will get the checkstyle working
- Be sure to have EGit
- Clone project using egit
- On working directory import existing maven projects
- Install CheckStyle - http://eclipse-cs.sourceforge.net/downloads.html
- Use CheckStyle by following these directions - http://eclipse-cs.sourceforge.net/basic_setup_project.html
- Activate checkstyle on the projects your working on by right clicking on project then properties then CheckStyle. Or right click then CheckStyle then activate CheckStyle
- Don't run mvn eclipse:eclipse
- If you do run mvn eclipse:eclipse, run eclipse:clean, and then close projects and import them as maven projects.
When you build new features please add build unit tests for it. If you have a problem with building unit tests reach out to one of the other contributors for help in the forum.
Be sure to test the project before pulling your code on github.
- run 'mvn clean integration-test' - will test all the gwt client side tests
- run 'mvn clean test' - will test all the junit tests
- TeamCity Build Server - Snapshots and releases building here
These steps build GWTP for Github downloads and release a snapshot
- run 'mvn clean integration-test'
- run 'mvn clean test'
- run 'mvn clean deploy -Prelease'
- run 'sh ./release-zip.sh /root/.m2/repository/com/gwtplatform'
To officially release the library to sonatype.org.
- run 'mvn clean deploy'
- run 'mvn release:clean'
- run 'mvn release:prepare -Dgpg.passphrase=yourpassphrase'
- Answer all the questions. Following that, Maven will automatically modify the POM and commit, tag and push the code a couple of times. If things go wrong at that point, you should hg revert --all --no-backup or even hg strip any automatic commits by Maven (if they have not yet been pushed), you may have to clean up any remaining .orig or .backup files. Then start back at release:clean.
- run 'mvn release:perform -Dgpg.passphrase=yourpassphrase'
- Test the staged library before releasing
- goto sonatype.org select gwtp stage and click close. (See directions for howto.)
- If something goes wrong and you can't Close the release, you will have to backout any change pushed by maven to the repository, including tags. To do this, update to the version before the automatic maven commit, and update with the tip indicating that you want to ignore all the changes for the branch with which you're merging.
- Next, the artifacts should be downloaded and tested.
- When everything works, click the Release button.
To see the release, go to Sonatype's Nexus at http://oss.sonatype.org/ and navigate to Repositories > Releases > com > gwtplatform.
- Important to close eclipse before releasing
- run 'mvn -Prelease -DaltDeploymentRepository=release::default::file://$DISTRIBUTION/release clean deploy'
- run 'sh ./release-zip.sh'