Here we will be discussing some of the python packages used in Odoo.
Werkzeug is a WSGI utility library for Python. It started as a collection of various utilities for WSGI applications. It includes a debugger, request and response object, cache control objects, cookie handling, file uploads and a lot of community added add-ons. It is released under BSD license.
psycopg is the most popular PostgreSQL database adapter for Python programming language. Its main features are the complete implementation of the Python DB API 2.0 specifications and thread safety(several threads can share the same connection). It is designed for complicated multi-threaded programs that require a large number of concurrent insertion and updates.
Installation: pip install psycopg2
This module is developed for creating files in xls format using Python 2.6, 2.7, 3.3+.
Installation: pip install xlwt
Dateutil provides a powerful extension to the standard date-time module available in python. Some of its features are:
- Computing relative delta
- Generic parsing of date in almost any string format.
- Internal up to date world time zone.
docutils is a modular system to process documentation into useful formats like HTML, XML, Latex etc.
It is the universal feed parser. It is not a stand-alone parser, it needs to be run as a part of another python program. It is supported by Python 2.4+ and Python 3.
Installation: It can be installed by running setup
python setup.py install
jinja2 is the most used template engine for Python. It is internally based on Unicode and supports Python packages from Python 2.4+ to Python 3. One of its most important features is that it adds sandboxed execution and optional automatic escaping application where security is important.
python-ldap provides an object-oriented API for accessing LDAP directory servers from Python packages.
It is a library to define a transformation from XML files to some other arbitrary format such as XML, HTML, Plain text etc using XSLT stylesheet. Libxslt is a C library which implements XSLT version 1.0
lxml is the most featured and easy to use the library for processing XML and HTML format in Python language. The lxml XML toolkit is a pythonic binding for the C libraries libxml2 and libxslt. The latest release works with Python 2.6+ and most of Python 3+.
mock is a library for a unit test in python. It allows you to replace parts of your system under test with mock objects and maker assertion about how they have been used.
mock is now a standard python library. Available as unittest.mock
simplejson is a simple, fast, complete, correct and extensible JSON encoder and decoder for Python language. It is pure Python code with no dependencies but includes an optional C extension for a serious speed boost. It is supported by Python 2.5+ and Python 3.3+