Le 31 octobre 2022 sortait la version 6.6 de Tryton. Cette version apporte une série de correctifs et d’améliorations et voit l’ajout de dix nouveaux modules dont une consolidation comptable, l’authentification via SAML, le support de contrat cadre pour l’achat et la vente et un système de recommandation de produit basé sur des règle d'association, ainsi que l’ajout de l’ukrainien parmi les langues supportées. Comme d’habitude, la montée de version est prise en charge entièrement (et cette fois-ci sans intervention manuelle).
Tryton est un progiciel de gestion intégré modulaire et multiplateforme. Tryton se concentre sur la stabilité et les modules essentiels de gestion, qui sont très aboutis. Des tierces parties développent des modules spécifiques à certaines activités ou permettant l’intégration à d’autres outils. C’est notamment le cas du projet GNU Health qui s’appuie sur Tryton depuis 2008.
Tryton est utilisable à travers un client desktop, un client web responsive et un client en ligne de commande. Tous ces clients sont légers et multiplateformes (Linux, BSD, Windows et macOS).
Nouveautés principales
Voici une liste non-exhaustive des nouveautés qu’apporte cette version 6.6 (voir l’annonce officielle pour une liste plus complète).
Flatpack
Cette version est la première à publier un client bureau pré-compilé pour Linux via Flatpak.
Messages d’erreur
Les messages d’erreur de validation générique ont été revus pour fournir plus d’informations à l’utilisateur comme le nom de l’enregistrement et la valeur du champ causant le problème. Ceci devrait permettre à l’utilisateur de corriger son erreur plus facilement.
Délégation de dette
Un assistant permet de déléguer une dette à un tiers. Quand cette dette vient d’une facture, le nouveau bénéficiaire est enregistré sur celle-ci. Il est même possible de le remplir avant de valider la facture pour déléguer directement.
Pays, organisations et régions
Le module country
vient maintenant avec deux nouveaux concepts : les organisations et les régions.
Par défaut Tryton crée les organisations les plus fréquemment utilisées comme l’Europe, le Benelux, NAFTA, Mercosur, etc.
Notez l’affichage des drapeaux de chaque pays qui est aussi une nouvelle fonctionnalité.
Les régions sont basées sur l'UN M49 qui regroupe les pays par régions géographiques, principalement pour faire du reporting. Les rapports sur les ventes l’utilisent entre autres.
Index
Tryton utilise maintenant une nouvelle syntaxe pour déclarer les besoins d’index. Le mécanisme de mise à jour de la base de données s’assure de créer, mettre à jour ou supprimer les index. En déclarant le besoin uniquement, Tryton peut choisir le meilleur type d’index à créer en fonction des possibilités de la base de données. Il est prévu dans une future version d’avoir en plus une détection d’index redondant.
L’ORM définit par défaut les index dont il a besoin sans intervention du développeur.
Voici l’exemple de la vente qui définit le besoin :
- un index pour rechercher « Full-Text » sur le champ
reference
- un autre sur
party
(qui contient une clé étrangère) pour les jointures - un index partiel sur
state
uniquement pour certains états (utilisé pour afficher le nombre de ventes en cours) - etc.
@classmethod
def __setup__(cls):
cls.number.search_unaccented = False
cls.reference.search_unaccented = False
super(Sale, cls).__setup__()
t = cls.__table__()
cls._sql_indexes.update({
Index(t, (t.reference, Index.Similarity())),
Index(t, (t.party, Index.Equality())),
Index(
t,
(t.state, Index.Equality()),
where=t.state.in_([
'draft', 'quotation', 'confirmed', 'processing'])),
Index(
t,
(t.invoice_state, Index.Equality()),
where=t.state.in_(['none', 'waiting', 'exception'])),
Index(
t,
(t.shipment_state, Index.Equality()),
where=t.state.in_(['none', 'waiting', 'exception'])),
})
Migration sur Heptapod (GitLab)
Un autre point marquant de cette fin d’année pour le projet est sa migration sur la plateforme Heptapod (une version de GitLab adaptée pour Mercurial).
- Le code source réparti dans plusieurs dépôts a été fusionné dans un mono-dépôt (sans réécriture).
- Les issues de l'ancien bug tracker ont été migrées sur Heptapod en gardant le même identifiant.
- L'intégration continue a été déplacée de drone vers GitLab CI/CD et elle est maintenant exécutée aussi sur les merge requests.
Fondation
La fondation Tryton a pour but d’aider le développement et de supporter les activités autour du projet. Elle maintient aussi les infrastructures nécessaires au projet (site web, forum, chat, etc.). Elle est gérée par un conseil d’administration dont les membres sont cooptés depuis la communauté. Celui-ci a été renouvelé cette année après les cinq ans maximums de service du précédent conseil.
Aller plus loin
- Annonce de sortie (189 clics)
- Demo (261 clics)
- Forum (143 clics)
- Documentation (155 clics)
- Dépêche sur la sortie de Tryton 6.4 (155 clics)
- Annonce de la migration vers Heptapod (148 clics)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.