New Tryton release 3.4

Опубликовано: 2014-10-20 18:00:00+00:00 release

We are proud to announce the 3.4 release of Tryton.

In addition to the usual improvements of existing features for users and developers, this release has seen a lot of work done on the accounting part.

Of course, migration from previous series is fully supported with the obvious exception of the ldap_connection module which was removed.

Major changes in graphical user interface

  • The search of relation record has been re-worked to take advantage of the auto-completion. The search box of the pop-up window is filled with the text entered in the widget.

  • The search/open button of the Many2One widget is now inside the entry box and the create button is removed in favor of auto-completion actions or pop-up button. This change allow to harmonize the size of all widgets inside a form.

    many2one button inside
  • A new image widget is available on list/tree view.

    widget image tree
  • The client can now perform a pre-validation before executing a button action. The validation is based on a domain and so the offending fields can be highlighted and focused instead of having an error message pop-up.

  • The selection label are now available in addition of the internal value for the export data (CSV) functionality.

  • The export data window is now predefined with the fields of the current view. This gives a fast way to export what you see.

  • The predefined export can now be replaced directly with a new selection of fields. This eases the process of creating such predefined exportation.

  • It is now possible to re-order the list of the exported fields using drag and drop.

  • The range operator of the search box is now including on both endpoints. It appears to be less astonishing behavior for users even if the previous behavior including-excluding had some practical advantages.

  • The client loads now plug-ins defined in the user local directory (~/.config/tryton/x.y/plugins).

Major changes on the server side

  • A new Mixin MatchMixin is introduced. It allows to implement a common pattern in Tryton to find records that match certain values.
  • Another UnionMixin is also introduced. It allows to define a ModelSQL which is the UNION of some ModelSQL's.
  • Actually, Tryton doesn't update a record defined in a XML file if this one has been modified outside the XML. Now, it is possible to find those records and force the update to get the record synchronised with the XML.
  • A Python descriptor has been added to the Selection field. It allows to define an attribute on a Model which will contains the selection label of the record. It is planned to update all the reports to use such descriptor instead of hard-coded values.
  • A new configuration file format is introduced for the server. It is easily extendable to be used by modules. For example, the ldap_authentication module starts using it in replacement of the removed ldap_connection.
  • It is now possible to give a logging configuration files to setup the server logging. This file uses the Python logging configuration format.
  • The context defined on relation fields are now used to instantiate the target.
  • The SQL clause for a domain on a field can be now customized using a domain_<field> method. This method allows in some cases a more efficient SQL query. The method is designed to support joins.
  • The access rights has been reworked to be active only on RPC calls. With this design, Tryton follows the principle of checking input on the border of the application. So it is no more required to switch to the root user when calling methods requiring some specific access rights as far as it is not from an RPC call.

Modules

Account

  • A new wizard to help reconcile all accounts has been added. It loops over each account and party and makes a proposal of lines to reconcile if it could find one. This really speeds up the reconciliation task.

    reoncilie wizard
  • There is also another new wizard to ease the creation of cancellation moves. The wizard also reconciles automatically the line with the cancelled sibling.

  • A new option Party Required on account has been added. This option makes the party required for move lines of this account and forbids it for others.

Account Invoice

  • It is now possible to configure which tax rounding to use. There are two ways implemented: per document and per line. The default stays per document.

Account Payment

  • It is now possible to change a succeeded payment to failed.

Account Payment SEPA

  • The scheme Business to Business is supported for direct debit.
  • The mandate receives now a default unique identification using a configured sequence.
  • The module supports now the bank to customer debit/credit notification message (CAMT.054).
  • A report to print a standard form for mandate has been added.

Account Statement

  • It is now possible to order the statement lines and to give them a number. With those features, it is easier to reproduce the same layout of a bank statement.
  • A report for statement has been added. For example, it can be used when using the statement for check deposit.
  • A validation method can be defined on the statement journal. The available methods are: Balance, Amount and Number of Lines. This helps to uses the statement for different purposes like bank statement or check deposit.

Account Stock Continental/Anglo-Saxon

  • The method is now defined on the fiscal year instead of being globally activated on module installation.

Country

  • It is now possible to store zip code per country. A script is provided to load zip codes from GeoNames.

LDAP Authentication

  • The module ldap_connection has been replaced by an entry in the configuration file of trytond.

Party

  • The new zip code from the module country is used to auto-complete zip and city field on address.

Purchase

  • The Confirmed state has been split into Confirmed and Processing, just like the Sale workflow.

Sale Supply Drop Shipment

  • The management of exception on drop shipment is propagated from the sale to the purchase.

New modules

  • The Account Payment Clearing module allows to generate clearing account move when a payment has succeeded between the receivable/payable account to a clearing account. The clearing account will be reconciled later by the statement.

Proteus

Proteus is a library to access Tryton like a client.

  • It is now possible to run reports. It is useful for testing them.
  • A new duplicate method is added which is similar to the copy menu entry of the client.

Security Release for issue4155

Опубликовано: 2014-09-30 10:00:00+00:00 release security

Synopsis

A vulnerability in trytond has been found by duesenfranz, that might allow a malicious user to execute arbitrary commands on the server via the safe_eval function (see issue4155).

Impact

Any authenticated user can run arbitrary commands on the server with the permissions of the trytond user.

Workaround

There is no workaround.

Resolution

All users should upgrade trytond to the latest version of the used series.

Concern?

Any security concerns should be reported on the bug-tracker at https://bugs.tryton.org/ with the type security.

Tryton Unconference Leipzig 2014

Опубликовано: 2014-09-15 12:00:00+00:00 TUL

This year the annual Tryton Unconference will take place in Leipzig the 14th, 15th and 16th of November at the Leipzig University of Applied Sciences.

This will be the fourth global meeting where users, developers and interested people will have the opportunity to discover or talk about Tryton.

Until now, the following talks are proposed:

(More to be announced on our Lanyrd page)

The second Foundation Supporter Meeting will take place on Saturday 15h, 18.00.

On Sunday 16th, a Sprint is planned at the Hackerspace sublab.

Registration is available at TUL 2014.

If you like to give a talk, please announce it on Lanyrd. If you want to request a talk on a specific topic, you can send your request to the Tryton mailing list. If you have question about the organisation, please contact the foundation at foundation@tryton.org.

And don't forget to spread the word! #TUL2014

Videos of the Tryton Unconference 2013

Опубликовано: 2014-06-05 12:00:00+00:00 TUB video
Finally, the videos recored during the last Tryton Unconference 2013 are available. It took some time to synchronize the sound with the image but thanks to Pierre-Louis Bonicoli we have them now.

New Tryton release 3.2

Опубликовано: 2014-04-21 20:00:00+00:00 release

We are happy to announce the 3.2 release of Tryton.

This release mainly consolidates many new functionalities added in last two years. Also it prepares the future migration to Python 3 by dropping the support for Python 2.6. But also as usual there are many bug-fixes, improvements and new modules (see below).

Of course, migration from previous series is fully supported.

Major changes in graphical user interface

  • The client uses the local timezone to display date time.

  • The copy/paste on editable list has been improved to add new lines if needed beside of updating existing records.

  • The buttons of the view are also available in the action menu. This allows fast access using keyboard shortcuts but also trigger the button for a list of selected records.

    button action menu
  • Buttons and wizards can now trigger actions from the client side. This means it behaves like if the user clicked on one of the tool bar buttons.

  • The client uses now a pool of connections, this allows to speed up the client on requests that can be parallelized.

  • The attachment button can now receive drag & drop of file to quickly create attachments.

  • There is a new widget multi-selection, it uses the Many2Many field as backend. It is very useful and more visual when there is a small number of selection.

    multiselection
  • The client allows to browse the revisions of a record if it is historized. It also works on a full list of records, in this case the client shows the result of the search as if it was done at the revision date.

    revisions

Major changes on the server side

  • The server runs internally always in UTC timezone.
  • The ModelStorage.write method receives the similar improvements as the ModelStorage.create in version 2.8. This means it can write different values to many sets of records in one call and so this improves the performance by validating all the records at once and also it will validate only the modified and dependant fields. Also the action values of relation fields have been updated with the same interface.
  • A new decorator fields.depends is introduced to replace the deprecated on_change, on_change_with, selection_change_with and autocomplete fields attributes. This decorator applies on the called methods and the result will be the sum of all depends of all the modules, this brings much more flexibility to the modularity.
  • Tryton uses bcrypt to hash password if the library is available.
  • All types of field can now have a domain to constraint its value and most of the domains are supported for pre-validation and inversion on the client side.
  • The on_change returned value of One2Many uses now an index for the add keyword. This allows to define the position of the new record in the list instead of being always at the bottom.
  • A new method ModelSQL.restore_history allows to restore the values of a record as they were at a specific date time.

Modules

Account

  • A new journal type write-off has been added to ease the creation of write-offs.
  • Taxes has now an optional start and end, this allows to manage the changes over time.

French Chart of Account

  • The French chart of account has been updated for the new tax rates of 2014.

Account Statement

  • The module prevents now to use an already paid invoice in draft statements.
  • It uses the new index of on_change to add the new split line under the original.

Account Stock Continental

  • The creation of account move for stock move is speed-up.

Bank

  • The IBAN numbers are now validated and formatted.

Company

  • A new timezone field is added to the company to get the right date for today.
  • The employee is also taken from the context just like the company. This allows to use many clients with the same user but different employees.

Production

  • It is now possible to define the effective date of a production. This allows to enter past productions.

Purchase

  • There is now a warning when trying to receive a supplier stock move without an origin. Normally, the origin should be a purchase order.
  • The purchase tries to create links between stock moves and invoice lines.

Sale

  • The same warning exists for customer move without origin.
  • The sale tries as the purchase to create links between stock moves and invoice lines.

Stock

  • Supplier Shipment Return can now have partial assignation
  • The computation of stock quantities has been reworked to allow easy customization and better search.
  • It is now possible to define the effective date for all shipments. This allows to enter past shipments.

Stock Lot

  • A new relate has been added from lot to moves.

New modules

  • The Party Relationship module defines different types of relations between parties.
  • The Account Payment module allows to generate grouped payments for receivable and payable account move lines.
  • The Account Payment SEPA module allows to generate SEPA files for payments.
  • The Stock Package module allows to store packaging information about customer and supplier return shipments.
  • The Sale Shipment Grouping module adds an option to define how stock moves generated from sales will be grouped.
  • The Account Credit Limit module manages credit limit of parties.
  • The Sale Credit Limit module adds confirmed sale to the credit amount of the party.

Security Release for issue3446

Опубликовано: 2013-11-04 10:00:00+00:00 release security

Synopsis

A vulnerability in tryton has been found, that might allow a malicious server to send a crafted extention as answer to a report request leading the client to write the report on any file of the client host with the right of the user running the client (see issue3446).

Impact

Any file can be created on the client host with the access permissions of the user running the client.

Workaround

Users should connect only to trusted servers.

Resolution

All users should upgrade to the latest version of the used series.

Concern?

Any security concerns should be reported on the bug-tracker at http://bugs.tryton.org/ with the type security.

New Tryton release 3.0

Опубликовано: 2013-10-21 18:00:00+00:00 release

We are happy to announce the 3.0 release of Tryton.

This release brings a new calendar view for the graphical user interface and sees the result of a large refactoring of the code started 2 years ago with the project python-sql. But also as usual there are many bug-fixes, improvements and new modules (see below).

Of course, migration from previous series is fully supported.

Major changes in graphical user interface

  • A calendar view is now available. It allows to display records on a calendar using a start and/or an end date/datetime fields. It supports the Drag & Drop of events and the edition on double-click. The view is optimized to fetch only the events displayed.

    production calendar
  • The URL scheme, introduced in 2.0, is now accessible at the bottom of all tabs. This URL allows to open the same tab on any other client.

    url
  • The request has been removed. It is suggested to use emails with URL instead.

  • The selected records in list view is remembered between sessions.

Major changes on the server side

  • The server uses now python-sql to generate the SQL queries. This change brings a better compatibility with all the different Databases currently supported (and also with the future ones).
  • The searcher method can now return a full domain (instead of one limited to AND clause only).
  • The older order_field attribute is replaced by method order_<field name> to be more modular.
  • The database backend can be loaded dynamically which means it is possible to define one in a external package of trytond.
  • The performance of MPTT storage has been improved by removing the default order and reducing the number of queries.
  • A new attribute grouped can be added on the data tag. It allows to create all the records of the same Model at once. This improves the installation time of modules with large sets of data.
  • It is possible to define a default order on the Action Window.

Modules

  • Many modules have been adapted to a new design to link generated documents with their origin. Instead of copying the code of the origin as reference, a Reference field is used and most of the time the field is on the lines. This brings a better vision of the links between documents without loosing information when merge of documents occurs.

Account

  • A new wizard appears to ease the creation of the balance move for non-deferral accounts at the end of the fiscal year.
  • All accounts of a chart must always be in the same company. This constraint improves drastically the performance of computing the debit/credit.
  • Any move posted with one line of zero is automatically reconciled if it is on an account to reconcile. With this feature, invoices with amount of zero are automatically marked as paid.
  • The centralised counterpart option on journal has been removed.

Account Invoice

  • Once an invoice is posted, the account move is used to show the amounts instead of computing it from the lines. This improves a little bit the performance especially for invoices with a lot of lines.

Account Statement

  • Now it is possible to directly set an invoice on a statement line. This will fill the party and account automatically.

Stock

  • It is now possible to query the stock quantity with any kind of grouping parameters. For example, it can be used to compute the stock quantity of a lot instead of a product.
  • The code of inventory has been reworked to allow easy customization of the move creation and also of the unique constraint on the inventory lines.
  • The period cache can now be adapted to cache different kind of grouped quantities.

Stock Lot

  • The quantity and forecast quantity fields have been added on lot.
  • It is now possible to create inventories with lot.
  • The period cache stores also the quantities per lot.

Stock Supply

  • A new wizard appears to create automatically internal shipments.
  • If there are late supplier moves when creating purchase requests, the wizard shows a warning to allow the user to change the date of those moves into the future if needed otherwise those incoming moves will be ignored.

New modules

  • The Bank module defines the concept of bank and account.
  • The Account Dunning module allows to manage the dunning following a procedure with different levels.
  • The Account Dunning Letter module adds the generation of a letter when processing dunnings.
  • The Sale Invoice Grouping module adds an option to define how invoice lines generated from sales will be grouped.

Tryton Unconference Barcelona 2013

Опубликовано: 2013-09-17 12:00:00+00:00 TUB

In this third global meeting you will have the opportunity to gather together community members (both users and developers), to talk about the future of Tryton and of course to discover the city of Barcelona.

Until now, the following talks are proposed:

(Follow the changes on our Talks planning page)

The first Foundation Supporter Meeting will take place on Saturday 9th, 18.30 at the same place of the Unconference.

We have reserved Sunday 10th for a Coding Sprint.

Registration to the event is available at TUB 2013.

If you like to give a talk (about your work, to give your feedback etc.), please add yourself to the wiki page or send an email to foundation@tryton.org.

Please, spread the word! #TUB2013

News from Development July13

Опубликовано: 2013-07-08 12:00:00+00:00 development

Here are some changes recently landed in the development branch of Tryton that will be available on the next release.

Server

  • A factor on number widgets. This factor is used for conversion between the value displayed and the internal value. The main usage is showing the user a percent value like 10%, while storing 0.1.

    factor
  • The requests have been removed. Instead the server sends emails to notify users and thanks to the Tryton URL users are able to communicate about specific records by referencing them. This also removes load on the server as each client was polling every 5 minutes for new requests.

Client

  • A new kind of view has been added: calendar. It allows to display records on a calendar using ane start and/or an end date/datetime fields. It is based on the widget GooCalendar. It supports the Drag&Drop of events, the edition on double-click and it fetches only the events to display.

    production calendar
  • Since the version 2.0, Tryton has a URL scheme that the client can read. But in the past there was no easy way for the user to get the URL of a record. Now the URL is visible at the bottom of each tab. It contains all information to open the same tab on any other client.

    url

Modules

Account

  • Now any move posted with one line of zero is automaticaly reconciled if it is on an account to reconcile. With this feature, invoices with an amount of zero are automatically marked as paid.
  • A legacy of OpenERP, the centralised counterpart option on journal, has been removed after a poll that shows nobody was using it.

Account Invoice

  • Once an invoice is posted, the account move is used to show the amounts instead of computing it from the lines. This improve a little bit the performance especially for invoices with a lot of lines.

Account Statement

  • Now it is possible to directly set an invoice on a statement line. This will fill the party and account automatically.

Stock

  • It is now possible to query the stock quantity with any kind of grouping parameters. For example, it can be used to compute the stock quantity of a lot instead of a product.
  • The code of inventory has been reworked to allow easy customization of the move creation and also of the unique constraint on the inventory lines.
  • The period cache can now be adapted to cache different kind of grouped quantities.

Stock Lot

  • It is now possible to create inventories with lot.
  • The period cache store also the quantities per lot.

Stock Supply

  • If there are late supplier moves when creating purchase requests, the wizard shows a warning to allow the user to change the date of those moves into the future if needed otherwise those incoming moves will be ignored.

Last maintenance releases for series 1.8

Опубликовано: 2013-05-16 12:00:00+00:00 release
Two weeks ago, the series 1.8 received its very last bugfix releases. Two-and-a-half year after the first release, we are going to close the maintenance for this series. Additionally series 2.0, 2.2, 2.4 and 2.6 got several bugfix releases that were already provided in the 2.8 series. As usual, no database update is required for these releases.