# Newsletter October 2021

**URL:** <https://discuss.tryton.org/t/newsletter-october-2021/4659>\
**Category:** News\
**Created:** [October 1, 2021, 9:00am UTC](https://discuss.tryton.org/t/newsletter-october-2021/4659 "2021-10-01T09:00:44Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)\
**Post date:** [October 1, 2021, 9:00am UTC](https://discuss.tryton.org/t/newsletter-october-2021/4659/1 "2021-10-01T09:00:44Z")

</div>

![Red Leaf Trees Near the Road](https://discuss-cdn.tryton.org/uploads/default/original/2X/a/ad8e64a73e9b9f81ed5daf31d344808f796b3e8d.jpeg)

Here are the latest improvements in preparation for the upcoming 6.2 release.

## Changes for the User

The sale module currently provides reporting that displays relevant data grouped by products, categories etc. We now also have a [general report that is not grouped](https://bugs.tryton.org/issue10663) but just displays totals.

We now [support products without a list price](https://bugs.tryton.org/issue10244).

The user will be [warned if they try to post an invoice with a date in the future](https://bugs.tryton.org/issue10088).

The web client now has [a button to fold/unfold the selected records](https://bugs.tryton.org/issue10367) of a tree.

The [dunning records now store their own age](https://bugs.tryton.org/issue10722).

## New Modules

The [_Product Image Attribute Module_](https://docs.tryton.org/projects/modules-product-image-attribute/en/latest/) adds attributes to product images.

## Changes for the System Administrator

The [errors that are raised during non-interactive operations](https://bugs.tryton.org/issue10667) (like scheduled tasks or queued jobs) are now listed in the administration entry. These error can be processed by a user, and once solved the task or the job is submitted again.

The `trytond-stat` command [displays the node name](https://bugs.tryton.org/issue10706) on which the process is running. This is useful when the directory that contains the stat socket is shared between multiple machines.

On first login the [configuration wizard now has a step that makes it easy to activate modules on the system](https://bugs.tryton.org/issue10754).

## Changes for the Developer

The [MPTT](https://en.wikipedia.org/wiki/Nested_set_model) behavior has been improved to [avoid a full rebuild when creating nested records](https://bugs.tryton.org/issue10670). It now does a classic update for each level.

The `ModelStorage` class now has a [`count()` method that returns an estimate of the number of records stored](https://bugs.tryton.org/issue10623). It uses caching and random invalidation to minimize the cost.

We now [use `str` instead of `repr` when constructing the warning keys](https://bugs.tryton.org/issue10672). This allows the same key to be constructed using proteus.

The method [`remove_forbidden_chars` has been added to the tools](https://bugs.tryton.org/issue10684) as it is used by many modules.

The [`ModelSQL.search` method optimizes some queries by using a `UNION`](https://bugs.tryton.org/issue10658) of sub-queries when clauses contain straight columns of the table and columns of a joined table. In these cases the database can use indexes.

The context can normally only be modified with the `Transaction.set_context` context manager. In order to enforce this behavior, the [context is now an `ImmutableDict`](https://bugs.tryton.org/issue10691).

The [title of emails generated from a report no longer contain the name of the record](https://bugs.tryton.org/issue10724) from which the report is generated.

The value of the `Dict` field is an `ImmutableDict` but the values must also be immutable. So we now [use a tuple instead of list](https://bugs.tryton.org/issue10715).

The server now [uses the `bigdecimal` type from `XML-RPC`](https://bugs.tryton.org/issue10734).

For performance reasons we use ` __slots__ ` for the classes registered in the `Pool`. But as this can be broken when one class does not define it we added a [generic test which ensures that all the classes in the Pool have ` __slots__ ` defined](https://bugs.tryton.org/issue10719).

When proteus is configured to use `XML-RPC`, it authenticates on each request. This is slow as we are using a slow hashing method for security and to protect against brute-force attacks. Now [proteus can be configured to use a session with `XML-RPC`](https://bugs.tryton.org/issue7783).

The [grouping option to format numeric widget can be configured on the view](https://bugs.tryton.org/issue10731).

We unified the way we set email `From` headers. Tryton now sets the `Reply-To` and `On-Behalf-Of` headers when needed.

---

<div class="post-metadata">

**Author:** ![system](https://discuss-cdn.tryton.org/uploads/default/original/1X/c6f8ec0a40525cdcd50058c734283450a4b3d38b.png) [@system](https://discuss.tryton.org/u/system)\
**Post date:** [October 31, 2021, 9:01am UTC](https://discuss.tryton.org/t/newsletter-october-2021/4659/2 "2021-10-31T09:01:08Z")

</div>

This topic was automatically closed after 30 days. New replies are no longer allowed.
