Modules - Rules for community modules: Difference between revisions

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
Tag: 2017 source edit
Tag: 2017 source edit
Line 25: Line 25:
* Getting sources with a simple "git clone" with no need to create any account must be possible, for exemple using the "git clone" command with the http url of the repository (the source of the Git external repository is defined into the index.yaml file in the root directory of the module).
* Getting sources with a simple "git clone" with no need to create any account must be possible, for exemple using the "git clone" command with the http url of the repository (the source of the Git external repository is defined into the index.yaml file in the root directory of the module).


* Contributing to sources must be as easy as doing a Pull or Merge Request. If the creation of an account is required for this, the creation of the user account should be possible from the forge in few seconds. No personal information should be requested (except a login or an email) for this registration step. Rgistration process should also be fully automatic (so contributor can register any day at any hour and push its Pull Request few seconds after).
* Contributing to sources must be as easy as doing a Pull or Merge Request. If the creation of an account is required for this, the creation of the user account should be possible from the forge in few seconds. No personal information should be requested (except a login or an email) for this registration step. Registration process should also be fully automatic (so contributor can register any day at any hour and push its Pull Request few seconds after).


== Code ==
== Code ==

Revision as of 12:27, 20 March 2026


Art.png Introduction

Here are the rules defined for all modules integrated into the community repository:


Art.png Rules

Compatibility

A modules added into the community repository can have prerequisites that differs from Dolibarr. So minimum and maximum version of PHP is not necessarly the same as the one of the Dolibarr version the module is compatible with.

Price

A module provided into the Dolibarr community repository must be free (as in speech but also as in beer).

It should not be sell on any platform, even on DoliStore (module may be available on any platform, but for free).

Maintenance

The user that publish initialy the module in the community repository agrees to check and approve, on a regular basis, all Pull Requests submited related to its module.

If the module in the community repository is just a link to an external repository, the external link must be a forge based on Git (for example Gitlab, Gitea, Framagit, ...).

  • Getting sources with a simple "git clone" with no need to create any account must be possible, for exemple using the "git clone" command with the http url of the repository (the source of the Git external repository is defined into the index.yaml file in the root directory of the module).
  • Contributing to sources must be as easy as doing a Pull or Merge Request. If the creation of an account is required for this, the creation of the user account should be possible from the forge in few seconds. No personal information should be requested (except a login or an email) for this registration step. Registration process should also be fully automatic (so contributor can register any day at any hour and push its Pull Request few seconds after).

Code

Modules must follow the same quality and coding rules than the Dolibarr project (See Language_and_development_rules), except the minimal and maximal PHP version (See chapter "Compatibility").

Version and validation of these rules

History of all changes on this rules can be found using the tab "See historic" when logged on this wiki (creation of account is free).

Rules need to be confirmed by the Dolibarr foundation ...