Newsletter January 2018

Publicado: 2018-01-05 10:00:00+00:00   |   Прочесть по-русски   |   Lire en français   |   Read in English   |   Llegeix-ho en català   |   Auf Deutsch lesen   |   Beri v slovenščini   |  Más posts sobre newsletter

As new year resolution, we plan to make a monthly post about what happened in the Tryton project.

A lake covered by snow


The annual Tryton Unconference 2017 took place from the 7th to 10th December at Liège. It started with 2 days of talks and finished with 2 days of code sprint. We also celebrated the 10th anniversary of the project with some drinks and cakes. For those who could not attend, the talks have been registered and the video and slides are available here (note: a technical issue prevented to correctly record the sound the first day but it is still watchable). Some pictures of the events have also been published.

Drop GTK+-2

The desktop client is supporting since one year both version of GTK+ 2 and 3. It is now time to have only GTK+-3 and thus be able to use new features of this version. The build environment for Windows and Mac has been updated to produce builds with the new version of the library.

New Release Process

A discussion started at the #TUL2017 to have longer term release for Tryton. A new process has been discussed which has a majority of positive feedback. So the series ending by 0 (like 5.0) will be supported for 5 years and the others for 1 year. We will keep the rate of one release every 6 month. The new schema will start with the series 5.0 which will be released the 1st October 2018.

Python 3

At the #TUL2017, we discussed about when to drop the support for Python 2 for which upstream support ends in 2020. So we must ensure to stop supporting Python 2 for any series that should still be supported in 2020. The result is that 5.0 will be the first release with only Python 3 support for the server side and also for the desktop client.

Order Line Description

The description of order lines (sale, purchase, invoice etc.) are no more filled automatically. This prevent to duplicate the content from the product form to each lines. But also simplify and speedup the creation of a line from the code. Moreover the product supplier information can be stored on the purchase line. This information can be used on the purchase line instead of the product information. It allows to search per supplier references and to display on the report as description for the line, the reference of the product from the supplier.

Promotion Coupon

This new module allows to create coupon that are used to apply a promotion on the sale. The coupon can be configured to be usable only a specific number of times globally or per party.

PYSON Domain Validation

For PYSON domain, the ORM have the simple strategy to validate records to group them per evaluated domain and then make a search per domain. But it is not optimal when evaluated domains are likely to be unique per record because this generate a search per record. A new case has been added to handle this which searches by grouping multiple domains at once and thus reduce the number of queries.

Dialog Size

Until now, dialog were created with a smaller size than the parent window. But it had the disadvantage to create quickly too small dialog windows. So this behaviour has been changed to use always the same size as the parent.

Query for currency rate

The Tryton design for currency rate is a table with the rate and a date from which the rate applies until another row is added for the currency with a later date. A new method has been added Currency.currency_rate_sql which returns a SQL query that produces for each currency the rate, start_date and end_date. This is useful to get a currency rate in a larger SQL query. This method uses the window functions if available on the database back-end to produce optimized query.

Standalone Lines Workflow

Tryton allows to work with standalone lines instead of pre-generated document to follow the grouping method of external sources. But this requires to have enough origin information to select them. So to improve the workflow the supplier stock moves show the purchase order and the invoice lines show their origin.

Reconcile from Statement

Some users have the workflow to reconcile the lines of the statement they just validated. For this we added a button on statement to launch the reconciliation wizard for the generated account move lines.

Bug fixes & Improvements

  • issue5233: The web client format the numeric values with the user locale but also use an input of type 'number' for editing. This allow to have the right virtual keyboard on mobile.
  • issue6875: The autocompletion was not shown when the user changed existing value in an editable list.
  • issue6978: The inventory lines is now read-only until date and location are filled.
  • issue6132: The user is warned if he tries to confirm a purchase order for a different warehouse than the warehouse of the purchase request.
  • issue7009: Catch all exceptions when evaluating value on pyson widget.
  • issue6934: Search and order translated fields using derivative language.
  • issue6915: Show in reconciliation receivable/payable with negative/positive balance
  • issue7005: Remove definition of rules on user. The group should be the only place where access rights are assigned to the user.
  • issue7014: Use a date instead of a boolean for reconciled field on invoice.
  • issue7013: Use canonical JSON form for Dict value.
  • issue7016: Add relate from drop shipment to sale and purchase.
  • issue7031: Fix missing party name on invoice report on series 4.6.

New Service Company

The company m-ds has joined the [list of companies providing services](/services.html) on Tryton.

Ongoing Works

Wesite Redesign

The Foundation has launch the process of redesigning the website as we reached the financial goal. A company has been hired to make this design but we are looking for your inputs.

New Version Notification

The work has started to provide to the desktop client notification for bug-fix releases. It is important because the desktop client is the only part of the Tryton suite for which the update needs to be managed by the user. And we often see users not updating it and reporting issues which have already been fixed.

Support for geographic objects

An external backend with support of geographic fields is under review. It will support only PostGIS in a first time but maybe SpatiaLite will be added in the future. The backend adds all the standard geometry type of columns and supports the operator = and != in the domain. More operations can be added by using python-sql.