Florian MOGA wrote:
We have identified the need of having the following types of environments:

- a place where to keep new modules or samples (contrib/)
- a place where to move the new code in order to get built regularly in order to be able to monitor it's state and ensure doesn't get broken by latest trunk/ changes (unreleased/) - a place where to keep released modules and their latest fixes/improvements (trunk/) - a place where to copy code from the main development area in order to experiment things which might break the build (sandbox/<personal folder>)

As a conclusion, code can be moved on the following paths contrib/ -> unreleased/ -> trunk/ and sandbox/ <-> trunk/.

Currently, the unreleased/ folder is under trunk/ and there have been discussions about taking it out of trunk/ at the same level with /contrib and trunk/. The advantages would be that it would make trunk smaller and easier to build without the new modules and their dependencies. The disadvantages would be loosing the ability to check out trunk/ and unreleased/ in one piece and the convenience this brings inside the development environment. Either way Hudson will be set to build the unreleased folder/ but not fail the trunk/ build and snapshot deployment if unreleased/ fails.

There are other advantages of having the unreleased code in trunk and
in the default top-level trunk build.

1. Having it in trunk makes it clear that it's part of trunk and that
   people making changes to trunk need to take account of any impact
   that their changes have on this code.
2. Having it in the default build (not just the Hudson build) makes it
   immediately obvious if something is broken and requires people to
   take positive action to correct or work around the problem.

  Simon

After we agree on the above point, it might be a good thing having written down the purpose of the folders in a README file or in the Developing Tuscany section on the website so that it will be clear and we can start gaining the consistency we want.


Reply via email to