Dependencies and external libraries: Difference between revisions

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
mNo edit summary
(Add Chinese)
Tag: 2017 source edit
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<!-- BEGIN origin interlang links -->
<!-- You can edit this section but do NOT remove these comments
    Links below will be automatically replicated on translated pages by PolyglotBot -->
[[fr:Librairies_externes_et_dépendances]]
[[es:Librerías_externas_y_dependencias]]
[[zh:依赖项与外部库]]
<!-- END interlang links -->
{{TemplateDocDevEn}}
{{TemplateDocDevEn}}
{{ToTranslate}}


= Librairies embarquées dans le code source (valable pour la version 2.6) =
= Libraries embedded inside source code =


Toutes les librairies embarqués Dolibarr sont situées, soit dans le répertoire '''htdocs/includes''':
All libraries (PHP and Javascript) embedded into Dolibarr distribution are located inside directory '''htdocs/includes''':
* Librairies AdoDb-Date
* Librairies PHP-barcode
* Librairies Fckeditor (http://www.fckeditor.net)
* Librairies de génération de pdf FPDF (http://www.fpdf.org)
* Librairies de génération de pdf FPDI
* Librairies chargement RSS Magpierss
* Librairies Nusoap modifié pour ne pas avoir de conflit avec PHP5
* Librairies PHP_WriteExcel
* Librairies Prototype
* Librairies PWC
* Librairies Scriptaculous
* Librairies VCard


Soit dans le répertoire '''external-libs''':
{{TemplateListOfLibraries}}
* Librairies Artichow pour les graphismes
* Librairies Smarty (non utilisé)


All those external embedded libraries must respect the following rules:
* They must be compatible with Dolibarr license. The file '''COPYRIGHT''' inside Dolibarr root directory list all embedded libraries and their license.
* If a change is made inside original external library code, this change must be notified inside file '''devs/dolibarr_changes.txt'''. In most cases, you should not have to edit external libraries and should use them as they are provided. This is to make upgrade of libraries possible with no need to report code changes after an upgrade.


Toutes ces librairies embarquées doivent respecter les règles suivantes:
= Apache Modules =
* Elles doivent être compatibles avec la licence de Dolibarr. Le fichier '''COPYRIGHT''' dans la racine de Dolibarr liste toutes les librairies embarquée avec leur licence en vigueur.
mod_php
* Si une modification est faite sur le livrable d'une librairie externe, la modification doit être notifiée dans le fichier '''htdocs/includes/dolibarr_changes.txt'''. Normalement, on ne devrait jamais toucher aux librairies externes et les utiliser tel que disponibles. Ceci afin de permettre une mise à jour sans avoir à gérer des reports de modifications.


= Librairies Apache =
= PHP Extensions =
Aucune librairie particulière requise.
Database drivers (only one required, depending on your database):
{{ListOfPHPDatabaseExtensions}}


Image manipulation:
{{ListOfPHPImageExtensions}}


= Librairies PHP =
Encoding/Encryption:
'''Librairie''': php4-imagick (package dev-php/PECL-imagick sou Gentoo)
{{ListOfPHPEncryptionExtensions}}


'''Statut''': Optionnel
For module Webservices:
{{ListOfPHPWSExtensions}}


'''Rôle''': Les onglets "Aperçu" ne sont pas opérationnels si ce module n'est pas présent. Dans ce cas, il est possible de les désactiver depuis le menu Configuration - Affichage.
Other:
{{ListOfOtherPHPExtensions}}

Latest revision as of 01:21, 14 September 2023


Libraries embedded inside source code

All libraries (PHP and Javascript) embedded into Dolibarr distribution are located inside directory htdocs/includes:

A complete and up to date list of Dolibarr dependencies is available on this file: https://github.com/Dolibarr/dolibarr/blob/develop/COPYRIGHT

You can change the tag or branch of version to get the good file for a given Dolibarr version

All those external embedded libraries must respect the following rules:

  • They must be compatible with Dolibarr license. The file COPYRIGHT inside Dolibarr root directory list all embedded libraries and their license.
  • If a change is made inside original external library code, this change must be notified inside file devs/dolibarr_changes.txt. In most cases, you should not have to edit external libraries and should use them as they are provided. This is to make upgrade of libraries possible with no need to report code changes after an upgrade.

Apache Modules

mod_php

PHP Extensions

Database drivers (only one required, depending on your database):

  • MySQL : mysqli
  • PostgreSQL: pgsql
  • MSSQL: mssql (not tested)
  • SqLite: pdo_sqlite (not working yet)

Image manipulation:

  • imagick (option)
  • gd

Encoding/Encryption:

  • mcrypt (option)
  • openssl (option)
  • mbstring (if database is not UTF-8)

For module Webservices:

  • soap (option)

Other:

  • curl
  • intl
  • calendar (for date manipulation)
  • zip (handling of .xlsx, .ods and .gnumeric files)
  • xml
  • for PHPExcel:
    • gd2 (optional, but required for exact column width autocalculation)