Registry / web-framework / trytond

trytond

JSON →
library8.0.5pypypi✓ verified 88d ago

Tryton is a three-tier high-level general purpose application platform, and trytond is the server component. Version 8.0.1 supports Python >=3.10. Releases follow semantic versioning with annual major versions. The server provides modular business logic, database abstraction, and network protocol handling.

pip install trytond
INSTALL
IMPORT
SIG · TRYTOND
T
trytond
web-frameworkpythonv8.0.5
Install
4.2s avg
Import
383ms
Disk
48MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.9–3.13
musl
3.9–3.13
Install & Compatibility
Where this runs
tested against v8.0.5 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.400s · 47.8MB
glibc
py 3.10–3.95 runs
installs and imports cleanly · install 4.2s · import 0.366s · 48MB
48MB installed
● package 48MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

trytond.pool
✓ from trytond.pool import Pool
Pool is used to get model instances.
trytond.model.Model
✓ from trytond.model import Model
Base class for all models.
trytond.config
✓ from trytond.config import config
Configuration object used to read config file.
trytond.transaction
✓ from trytond.transaction import Transaction
Transaction handling for database operations.

Basic setup to start Tryton server, connect to database, and perform a query. Requires a running PostgreSQL and proper config.

from trytond.config import config config.update_etc(os.environ.get('TRYTOND_CONFIG', '/etc/trytond.conf')) from trytond.pool import Pool from trytond.transaction import Transaction pool = Pool('testdb') pool.start() with Transaction().start(pool.database_name, 1) as transaction: # Work with models User = pool.get('res.user') users = User.search([]) print(users)
trytond --version
Debug
Known issues
breakingMajor version upgrades (e.g., 7.0 -> 8.0) require database migration. Always run `trytond-admin --database=DB --update all` after upgrading.
fix
Run migration commands as documented in release notes.
affects: >=8.0.0
deprecatedPython 3.9 support dropped in 8.0. Only Python >=3.10 is supported.
fix
Upgrade Python to 3.10 or later.
affects: 8.0.0+
gotchaThe config file path must be set before importing trytond modules that read config (e.g., trytond.pool). Missing config leads to obscure errors.
fix
Call `config.update_etc(conf_path)` immediately after import, before any other trytond imports.
affects: all
gotchaTransaction context manager requires a user ID (second argument). Using 0 or None may cause permission errors.
fix
Always pass a valid user ID to `Transaction().start(db_name, user_id)`.
affects: all
Errors
Common errors & fixes
trytond.exceptions.UserError: UserError
Trying to access a model or record without proper permissions.
fix
Ensure the user used in transaction has the required access rights.
ModuleNotFoundError: No module named 'trytond'
trytond package not installed or not in Python path.
fix
Install trytond via pip and ensure the virtual environment is activated.
KeyError: 'database_uri'
Config file not loaded or missing database URI.
fix
Set config.update_etc() with correct config file before any trytond module import.
Upgrade
Version history
8.0.5latest on PyPI · released Jun 18, 2026
Audit
Dependencies
python-sqlrequiredCore dependency for database abstraction layer.
werkzeugrequiredUsed for WSGI server and request handling.
gunicornoptionalRecommended production WSGI server.
psycopg2-binaryoptionalPostgreSQL adapter; often needed for database backend.
Agent activity
25 hits · last 30 days
node
22
OpenAI (training)
1
Resources
trytond — pip install trytond · libregistry