Development and releases

From gvSIG CE Wiki

Revision as of 08:57, 23 August 2011 by Benducke (Talk | contribs)
Jump to: navigation, search

As an open source project, gvSIG CE depends on contributions from its community to prosper. This section provides information for everyone who wants to get actively involved in developing, growing and improving our software. This includes developers with Java programming skills, but also advanced users who want to report bugs, help improve our web pages or simply learn how to make better use of our Internet resources.

This is a complex development project and it is hard work to keep all documentation accurate and up-to-date. If you find any of the information here lacking or erroneous, please report your suggestions to the developers mailing list. Or better yet: get an account for this wiki and work in your improvements directly!


Contents

Terms and philosophy of development

The gvSIG CE project is open source and developed under the terms of the GNU General Public License (GPL).

As a community-driven project, we aim to follow a development model that is:

Open
Everyone is welcome to join and contribute. Both short (e.g. inclusion of small patches) and long term (e.g. design of new features) issues are discussed openly and all interested parties will have a voice in the decision making process.
Inclusive
New developers are always welcome, regardless of their skill level. We consider this project a learning experience for all involved.
Agile
Contributions will be included without much fuzz. Peer review is done by the entire community. We all value thorough and well-documented work -- but we value useful and working software even more!
Enjoyable
Zero bureaucracy, frequent releases, learning-by-doing.

Some important things to keep in mind: As an open source project that produces completely free software, nobody on this project owes anything to anybody else. Unless a developer is hired to work under specific contract terms, there is no obligation to produce anything, fix any bugs or stick to any time table. As a developer working in this project, you are expected to keep this in mind and to be willing to make an effort of your own first, before you ask others to solve technical problems. This includes using all available project resources and the willingness to go through the same time-consuming self-teaching process that all open source developers have to go through.

Please see our Guidelines for good software for some general advice on designing new features or improving existing ones.

Resources for developers/contributors

This project, including its source code and all web pages, is generously hosted by Sourceforge.net (SF.net). In order to get started with gvSIG CE development, you will first need to know some basic facts about the SF.net services we use. The information below is also valuable to other contributors, such as advanced users who wish to report bugs or content contributors to the web sites.

Some pointers to get you on your way:

Additional information (for web administrators):

The gvSIG CE project site on SF.net is here.

If there are any problems with the SF.net services (downtime, slow web sites, etc.), then chances are the reasons will be reported on the Site Status page.

We also have continuously updated Javadoc API pages.

Compiling and running gvSIG CE

As a developer or interested advanced user, you will probably want to know how to compile the source code (and run the resulting binaries on your system). Most of gvSIG consists of Java (1.6) code. But the support libraries for raster data (GDAL/OGR), as well as the GRASS and SAGA GIS modules (to be used with SEXTANTE) are written in C/C++. Thus, the entire compilation procedure is lengthy and can be hard to set up. We have tried our best to document all of its aspects on these pages.

Please work through the following from top to bottom, as listed on this page, so that you can build up on previously completed work in the most efficient way.

If you also want to produce your own set of native binaries (raster drivers, GRASS and SAGA), for 32 or 64 bit systems, then you must additionally work through all of the below.

And last not least, some tips for fine-tuning a gvSIG installation

Compilation issues

This section lists a number of tricky issues that may need attention when updating the gvSIG sources or compiling them for specific targets/operating systems.

Release planning