NetBeans Update Centers content management process

Table of content

Synopsis
Auto Update General Information
    Update center (UC)
    NetBeans Plugins
    Autoupdate module in NetBeans IDE
    NetBeans Module Catalogue
    Module providers
    Aumasters team
How to add module to Auto Update
    Process
    Criteria
    Steps
How to remove module from Auto Update
    Process
    Steps

Synopsis

This document contains a description of the NetBeans Auto Update content management process, including guidelines for module providers interacting with NetBeans Auto Update centers. This is intended to help to prevent inconsistent NetBeans Auto Update center structures and module categorization problems. It should also prevent the posting of unreliable and duplicate modules on Auto Update centers. To achieve that, we need a clearly defined process, module criteria, and steps necessary to add or remove modules on Auto Update. This process is driven by a small team established for these purposes ( ).

Auto Update General Information

Before we start to describe the steps necessary to add or remove modules on Auto Update center, it's necessary to understand all of the entities involved in the Auto Update content management process. This document section should setup such context.

Autoupdate center (UC)

UC consists of a set of NetBeans module (*.nbm) files (in a defined directory structure) and autoupdate catalogue file in XML format. All of these files are made available for http download.

UC types

For each release there are are several AUC's (e.g.: Stable, Third party, HotFixes, Beta and Daily )

NetBeans Plugins

NetBeans Plugins (NBM files) are basically plug-in modules that extend or upgrade NetBeans functionality. (See: NBM package technology for more information.) These modules are mainly used for distribution from an UC. Note: NetBeans modules can be installed locally as well.

NetBeans module types

NetBeans modules can be classified based on the following categories of distribution license type:

  • NetBeans (NetBeans CVS hosted modules - open source license)
  • Third Party (Modules whose sources are not hosted in NetBeans CVS)
    • Third Party open source (open source license)
    • Third Party free (no usage restrictions - freeware type of license)
    • Third Party evaluation (evaluation version of commercial module - evaluation license )
    • Third Party commercial (commercial modules, which need to be purchased - i.e. N/A for AU, but for the NetBeans module catalogue )

Note: NetBeans modules can be classified based on other criteria as well (e.g. quality, functionality, L10N,...) 

NetBeans module hosting options

There are several options for hosting and distributing of NetBeans modules:

  • NetBeans UC (NBM file is at NetBeans.org site)
  • Module provider (NBM file is at a third-party module provider web site)
    • NBM module is made available directly (without click-through web form). Such a module can be linked from relevant NetBeans Third party AUC.
    • NBM module is made available indirectly (with click-through web form). Such a module can not be used for AU distribution, but can be listed in the NetBeans module catalogue  

Autoupdate module in NetBeans IDE

Autoupdate is a NetBeans plugin module that enables you to install NetBeans modules from an UC or a local directory.

Branding

There are predefined UC URL's in each release. They are defined in bundles packaged separately from module code, so it's easy to "brand/localize" them.

There are following UC references predefined: [x]Stable, [x]Third party, []Beta and []HotFixes.

NetBeans Module Catalogue

The NetBeans Module Catalogue is a set of web pages that contains a references to NetBeans add-on modules, including third party commercial modules, and other modules that are not directly available from the NetBeans site.

Module providers

Module providers are developers of NetBeans modules. They can be classified in the following categories:

  • NetBeans development teams (teams of people developing the NetBeans platform and IDE)
  • Third party open source dev. projects (usually people developing open source NetBeans plugins or products built on NetBeans)
  • Third party companies (commercial NetBeans plugin tool-vendors or companies building commercial products on top of NetBeans)

Role - Module providers deliver modules that may be made available on the NetBeans AUC or Modules Catalogue. To add or remove a NetBeans module from an AUC, module providers has to follow the corresponding process (Add module to AUC, Remove module from AUC)
Note: To add a module to the NetBeans Module Catalogue, see the Listing your Module in the Catalogue document.

Aumasters team

Membership - This team is designed to be a small working group consisting of build masters, QA, evangelism and web-team representatives. It should be also open to anybody who is able to take on any Auto Update content management responsibility. 

Role - In general, the Aumasters team is responsible for Auto Update content. This team activities differs dependent on AUC type.

  • Release AUC's
    • Stable AUC definition (modules list, AUC folders and modules categorization)
    • Beta and Third party module vendors invitation for inclusion
    • Review of requests to add/remove module
    • Monitor AU modules criteria (quality)
  • Development AUC
    • Review requests to add/remove module
    • Monitor AU modules criteria (quality)

Note: If the Aumasters team realizes that a module doesn't comply with the AU publishing criteria, the module owner will be asked to fix it immediately. Otherwise, the module will be removed. If the problem is fixed, the module can be posted on the AU again.

How to add module to Auto Update

Process

The process to add module to Auto Update consist of the following activities:

  1. Submit request - Module provider submits NBM module with request to add module in specific AUC (See submission request steps for more details).
  2. Aumasters review - Aumasters ask the module provider to demonstrate that all relevant criteria are met. Note: The module owner/vendor has still full responsibility for it.
    If the module meets all corresponding criteria, Aumasters approve the module to be added to AUC. Else the module provider will be asked to fix the problem. 
  3. Module addition - Aumasters approved module is posted on AUC.
  4. Announcement - New module addition is announced to the module provider and community ( and ).

Criteria

NetBeans module has to meet following criteria corresponding to the module type:

  •  General (for both NetBeans and third party modules)
    • The NBM file has to be manually installable.
      (Place the NBM file in some local directory on your machine, and follow the Auto Update Center wizard instructions for manually installing modules. Do this using the release version of the IDE that your module should work with; if it should work with more than one version, please repeat for each to verify all is working. No exceptions or unexpected messages should appear during the NBM file installation.)
    • Module AUC folder has to be consistent with the target release AUC structure.
    • Module category  has to be consistent with the target release modules categorization.
    • Module has a proper description text (provided in the module's "OpenIDE-Module-Long-Description" attribute)
    • Module has a link to a web page containing more info about the module/module update, e.g. in the form of Release Notes
    • If the module is an update of module, which is already published, module specification version number has to increase accordingly. 
  •  NetBeans module
  •  Third party module
    • Privacy rules - The module can ask for user data (such as name, e-mail, etc.) as long as this is optional for the module usage, and this fact is clearly described in the user interface.
      The user interface should also contain a link to the company privacy policy. 
    • Quality - The module has to pass module provider release quality criteria with the target NetBeans release.
    • Promotion - The module can contain promotion for commercial versions of the functionality as long as they are done in an unobtrusive way.
      Examples of allowed promotion: Pricing/Product info in Help | About box, one time message that appears on the module functionality first usage, help content.
      Examples of disallowed promotion: Repetitive reminders to purchase. Message appearing on the IDE startup. Requirements to register to use the product.
    • Catalogue - The module will only appear in the Update Center after it was available in the Module Catalogue for at least 1 (one) month. 
    • Licensing - If the module will be hosted on module provider site (preferred option), such module URL will be referenced from autoupdate catalogue XML file only, and no special license review will be necessary. If this is not possible, the module can be hosted on NetBeans site. In this case however, the module needs to go through more detailed legal review.
      There are additional criteria dependent on the license type.  
      • Third party free and open source
        Such a module needs to have a license that permits the module user free usage (including commercial) for unlimited time. A typical example would be "stripped down" version of a commercial module. 
      • Third party evaluation
        Such a module can contain commercial (e.g. "try & buy") type of license.
        Note: In case of "try & buy" type of license, the NetBeans has still run smoothly after the license expires (just the evaluation module stop work).

Steps

To submit module on NetBeans Auto Update you need to go through following steps:

  1. Check all criteria relevant to the module you want to post on AUC.
  2. Fill the AU request form according AU request form template.
  3. Submit the NBM file with filled-in request form to . Somebody from Aumasters should respond within two days.
    Note: If your module is more than say a few hundred kilobytes, please try to make it available somewhere online (e.g. on your personal homepage). If you have no access to webspace, please contact webmaster.
  4. Wait for Aumasters feedback and/or module addition announcement. 

How to remove module from AU

Process

The process to remove module from Auto Update consist from following activities:

  1. Submit request - Module provider requests to remove the module from AUC
  2. Aumasters review - Aumasters review the removal impact (dependencies,...) and confirm the module with all dependent modules removal.
  3. Module removal - Module reference in corresponding autoupdate catalogue XML file removal and eventually (if hosted on NetBeans.org site) the NBM file removal.
  4. Announcement - Module removal will be announced to the module provider and community ( , and ).

Steps

  1. Send the removal request from module provider to .
    Note: make sure that the request contains module name and AUC from which the module should be removed.
  2. Wait for feedback/module removal announcement

Note: there are no explicitly defined criteria to remove module (except module provider identity verification).

Don't hesitate to contact in case you have any question or problem in this area.

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2013, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo