FeaturesPluginsDocs & SupportCommunityPartners

Visual Library 2.0 - Change Integration Process

Index

Abstract

Since NetBeans 6.0 the library become stable. Therefore integration of new features or changes that may affect functionality, behaviour or API has to be described and approved be API review committee. This document described a process of a change integration.

Change Integration Process

Let assume that you have a feature or a change that may affect functionality, behaviour or API. Then you have to follow next steps before the source code may be integrated to the CVS.

  1. Enter an issue for the change and describe it together with your solution.
  2. Create a patch for the change. The patch has to include:
    1. The changed code including all new files.
    2. Proper javadoc. Use the "since" tag in javadoc for each new/changed method/class.
    3. Change has to be documented in graph/lib/src/org/netbeans/api/visual/widget/doc-files/documentation.html file.
    4. Have an automated test in graph/lib/test/unit/src directory. Use framework.VisualTestCase class for visual tests.
    5. Have an example in graph/examples/src directory. The example should show how to use the feature or how it is working. The example has to be referenced in graph/examples/src/org/netbeans/modules/visual/examples/RunDialog.java class (enable the example in examples RunDialog). The example has to be documented in graph/www/documentation.html file.
    6. Increased specification-version in graph/lib/manifest.mf file. Increase it only once a day when you are doing a patch/commit of an API or a behavior.
    7. Described the change in graph/lib/api-changes.xml file.
  3. Attach the patch to the issue, add "API_REVIEW" or "API_REVIEW_FAST" keyword to the issue and reassigned the issue to the apireviews@netbeans.org.
  4. Wait for 2 days. During that time they may change the status from "API_REVIEW_FAST" to "API_REVIEW".
  5. Wait for 7 days. During that time people can have comments or requests. Discuss and implement them and attach a new patch.
  6. Reassign the issue back to the module owner.
  7. Take the patch and apply it to your clean version of graph module from CVS.
  8. Check whether the spec. version in manifest.mf is correct (i.e. correctly increated).
  9. Update date, spec.version in api-changes.xml file.
  10. Update all newly added "since" tags in javadocs.
  11. Check whether all files (including new ones) are included/add into the CVS.
  12. Compile the NetBeans IDE and run ant test in graph/lib module to start automated tests.
  13. Commit the patch and set the issue as Resolved Fixed (still keep the "keyword" filled).

Yes, the process is so big and exhausting but it is necessary since the library is considered stable and therefore has to be 100% backward compatible.

Related Links


If you have any comments, suggestions, or missing feature or documentation, please, send an email to users@graph.netbeans.org.
Companion
Projects:
MySQL Database Server   Open JDK: an Open SourceJDK   GlassFish Community: an Open Source Application Server    Mobile & Embedded Community    Open Solaris   java.net - The Source for Java Technology Collaboration   Virtual Box - full virtualizer  Open ESB - The Open Enterprise Service Bus Powered by