Tryton Unconference Liège 2017 is coming!

Security Release for issue4155

Publicat: 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.

Nova versió 3.2 de tryton

Publicat: 2014-04-21 20:00:00+00:00 release

Estem contents d'anunciar l'alliberament de la versió 3.2 de Tryton.

Aquesta versió consolida noves funcionalitats afegides els últims dos anys. També prepara la migració a Python 3 eliminant el suport per Python 2.6. Com és habitual també s'han realitzat correccions d'errors, millores i nous móduls (a continuació se'n donen més detalls).

Per suposat, la migració de les versions anteriors està completament suportada.

Canvis en la interfície d'usuari

  • El client fa servir la zona horària local per mostrar les hores.

  • S'ha millorat la funcionalitat d'enganxar en llistes editables per tal d'afegir noves línies si es necessita, a part d'actualitzar els registres existents.

  • Els botons de les vistes també es mostren al menú d'accions. Això permet un accès ràpid a través de les dreceres del teclat, i també executar un botó per tots els registres seleccionats.

    button action menu
  • Els botons i els assitents també poden llençar accions del client. Això vol dir que es comporten tal com si l'usuari hagués clicat sobre un dels botons de la barra d'eines.

  • El client ara fa servir un conjunt de connexions. Això permet millorar la velocitat del client per les peticions que poden ser paral·lelitzades.

  • Es poden arrosegar fitxers al botó d'adjunts per tal de crear adjunts de forma ràpida.

  • S'ha afegit un nou giny multi-selecció, que fa servir els camps Many2Many per guardar les dades. És molt útil i més visual quan hi ha un petit nombre de seleccions.

    multiselection
  • El client permet navegar per les versions d'un registre que està versionat. També funciona en una llista de registres i en aquest cas el client mostra el resultat de la cerca com si s'hagués fet a la data de la revisió.

    revisions

Canvis majors en el servidor

  • El servidor utilitza internament la zona horària UTC.
  • El mètode ModelStorage.write rep millores similars a les que va rebre el mètode ModelStorage.create a la versió 2.8. Això vol dir que pot escriure diferents valors a varis conjunts de registres amb una sola crida. Això millora el rendiment, validant tots els registres d'una vegada. A més a més només es validaran els camps modificats i les seves dependències. A més a més les accions dels camps relacionats s'han actualitzat amb la mateixa interfície.
  • S'ha afegit un nou decorador fields.depends que té com objectiu reemplaçar els attributs on_change, on_change_with, selection_change_with i autocomplete que han estat depreciats. Aquest decorador s'aplica als mètodes que es criden, i el resultat serà la suma de les dependències de tots els mòduls. Això proporciona molta més flexiblitat.
  • Tryton fa servir la llibreria bcrypt per encriptar les contrasenyes si la llibreria està disponible.
  • Ara tots els tipus de camps poden tenir una restricció de domini pels seus valors i la majoria de valors estan suportats en la prevalidació i la inversió en la banda del client.
  • El valor retornant per un on_change d'un One2Many a partir d'ara utilitza un índex per la funció add. Això permet definir la posició del nou registre en la llista, en compte d'afegir-lo sempre al final.
  • S'ha creat un nou mètode ModelSQL.restore_history que permet restaurar els valors d'un registre tal com estaven a una data determinada.

Mòduls

Account

  • S'ha creat un nou diari de tipus Desajust per facilitar la creació d'ajustaments.
  • Es pot definir opcionalment als impostos la seva data d'inici i final de validesa. Això permet gestionar canvis a través del temps.

French Chart of Account

  • El pla comptable francès s'ha actualitzat amb els nous impostos del 2014.

Account Statement

  • A partir d'ara no es pot utilizar una factura ja pagada en els extractes en esborrany.
  • Es fa servir el nou índex del on_change per afegir les noves línies separades a sota de les originals.

Account Stock Continental

  • S'ha millorat el rendiment de la creació dels apunts comptables pels moviments d'estoc.

Bank

  • Els nombres IBAN a partir d'ara són validats i formatejats.

Company

  • S'ha afegit la zona horària a l'empresa per obtenir la data actual correctament.
  • L'empleat es llegeix del context com l'empresa. Això permet utilitzar més d'un client amb el mateix usuari i diferents empleats.

Production

  • Ara és possible introduïr la data efectiva d'una producció. Això permet introduir produccions realitzades en el passat.

Purchase

  • Ara hi ha un avís quan s'intenta rebre un moviment d'estoc de proveïdor sense orígen. Normalment, l'orígen ha de ser una ordre de compra.
  • La compra intenta relacionar els moviments d'estoc amb les línies de factura.

Sale

  • El mateix avís existeix pels moviments de client sense orígen.
  • Les vendes també intenten relacionar els moviments d'estoc amb les línies de factura, tal com es fa en les compres.

Stock

  • Els albarans de retorn de proveïdor poden tenir assignació parcial.
  • El càlcul de les quantitats d'estoc s'ha refactoritzat per facilitar la personalització i millorar la cerca.
  • Ara és possible introduir la data efectiva de tots els albarans. Això permet introduir alabarans realitzats en el passat.

Stock Lot

  • S'ha afegit una acció per visualitzar tots els moviments d'un lot.

Nous mòduls

  • El mòdul Party Relationship defineix diferents tipus de relacions entre tercers.
  • El mòdul Account Payment per generar pagaments agrupats pels apunts dels comptes a cobrar i a pagar.
  • El mòdul Account Payment SEPA permet generar fitxers SEPA pels pagaments.
  • El mòdul Stock Package permet emmagatzemar la informació d'empaquetament dels albarans de clients i els albarans de retorn de proveïdor.
  • El mòdul Sale Shipment Grouping afegeix una opció per definir com s'agruparan els moviments d'estoc generats per una venda.
  • El mòdul Account Credit Limit gestiona els límits de crèdit dels tercers.
  • El mòdul Sale Credit Limit afegeix les vendes confirmades a l'import de crèdit del tercer.

Security Release for issue3446

Publicat: 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.

Nova versió 3.0 de tryton

Publicat: 2013-10-21 18:00:00+00:00 release

Estem contents d'anunciar l'alliberament de la versió 3.0 de Tryton.

Aquesta versió porta la nova vista de calendari com a millora a la interfície d'usuari i també incorpora el resultat d'una gran refactorització de codi que va començar fa dos anys amb el projecte python-sql. Com és habitual, també s'han realitzat correccions d'errors, millores i nous mòduls (a continuació se'n donen més detalls).

Per suposat, la migració de les versions anteriors està completament suportada.

Canvis en la interfície d'usuari.

  • Ara hi ha disponible la vista de calendari que permet mostrar registres en un calendari utilitzant els camps inici i/o fi de tipus data/data i hora. També soporta arrosegar i soltar esdeveniments i editar el registre fent doble click. La vista està optimitzada per obtenir només els registres que es mostren.

    calendari de producció
  • L'esquema de URL, introduït a la versió 2.0, ara és accessble a la part inferior de totes les pestanyes. Aquesta URL permet obrir la mateixa pestanya en qualsevol altre client.

    url
  • S'han eliminat les sol·licituds. Es suggereix utilitzar emails amb URL.

  • Els registres seleccionats en una vista de llista es guarden entre sessions.

Canvis majors en el servidor

  • El servidor ara utilitza python-sql per a generar les consultes SQL. Aquest canvi permet una millor compatibilitat amb les diferents Bases de dades que es suporten actualment (i també les que es puguin suportar en un futur).
  • El mètode searcher ara pot retornar un domini complet (en comptes d'un limitat només a clàusules AND)
  • L'antic atribut order_field es reemplaça pel mètode order_<field name> per a ser més modular.
  • El motor de base de dades es pot carregar dinàmicament, cosa que vol dir que es pot definir qualsevol en un paquet extern al servidor de tryton.
  • El rendiment de l'emmagatzemament MPTT s'ha millorat eliminant l'ordre per defecte i reduint el nombre de consultes.
  • A partir d'ara es pot utilitzar el nou atribut grouped al tag data. Aquest atribut permet crear registres del mateix model a la vegada. Això millora el temps d'instal·lació de mòduls amb una gran quantitat d'informació.
  • Ara és possible definir un ordre per defecte a les accions de finestra.

Mòduls

  • Molts mòduls s'han adaptat al nou disseny d'enllaçar els documents generats amb el seu origen. En comptes de copiar el codi de l'origen com una referència, s'utilitza un camp de tipus Reference. La majoria de relacions es defineixen a nivell de línia. Això permet una millor visió dels enllaços entre documents sense perdre la informació quan es barregen dos documents.

Account

  • S'ha afegit un nou assistent per facilitar la creació de l'assentament de regularització al tancament de l'exercici fiscal.
  • Tots els comptes d'un pla comptable han de pertànyer a la mateixa empresa. Aquesta validació millora dràsticament el rendiment del càlcul del deure/haver.
  • Qualsevol assentament amb un apunt d'import zero es reconcilia automàticament si està en un compte que permet la conciliació. Això permet que les factures amb quantitat zero quedin automàticament pagades.
  • S'ha eliminat l'opció de contrapartida centralitzada dels diaris.

Account Invoice

  • Quan la factura està confirmada s'utilitza el moviment comptable per mostrar els imports en comptes de calcular-ho a partir de les linies. Això millora el rendiment especialment per aquelles factures amb moltes línies.

Account Statement

  • Ara és possible definir una factura en una línia d'extracte. Si s'indica la factura s'emplenarà automàticament el tercer i el compte.

Stock

  • Ara és possible consultar la quantitat en stock amb qualsevol tipus de paràmetres d'agrupació. Això es pot fer servir per calcular la quantitat d'estoc per lot en comptes de per producte.
  • S'ha refactoritzat l'apartat d'inventaris per facilitar la personalització de la creació dels moviments i també per la restricció d'unicitat de les línies d'inventari.
  • La memòria cau del període ara es pot adaptar per guardar diferents tipus d'agrupacions de quantitats.

Stock Lot

  • S'ha afegit els camps quantitat i la quantitat estimada al lot.
  • Ara es poden crear inventaris amb lots.
  • La memòria cau del període també guarda les quantitats per lot.

Stock Supply

  • S'ha afegit un nou assistent per crear automàticament moviments interns.
  • Si hi ha moviments tardans del proveïdor quan es creen les sol·licituds de compra, l'assistent mostra un missatge per permetre canviar la data d'aquestes línies en un futur, sinó aquestes línies d'entrada són ignorades.

Nous mòduls

  • El mòdul Bank defineix el concepte de banc i compte bancari.
  • El mòdul Account Dunning permet gestionar reclamacions seguint un procediment amb diferents nivells.
  • El mòdul Account Dunning Letter permet la generació de cartes quan es processen reclamacions.
  • El mòdul Sale Invoice Grouping afegeix una opció per definir com s'agruparan les línies de factura generades per una venda.

Llançament de la ultima versió per les series 1.8

Publicat: 2013-05-16 12:00:00+00:00 release
Fa dos setmanes les series 1.8 van rebre la seva última versió que corregeix errors. Dos anys i mitg desprès del la sortida de la primera versió es deixa de mantenir aquesta serie. A més a més, també s'ha lliberat una actualització per les series 2.0, 2.2, 2.4 i 2.6, on es corregeixen errors que ja s'han corregit en la serie 2.8. Com es habitual, no es requereix l'actualització de la base de dades en aquest llançament.

Nova versió 2.8 de Tryton

Publicat: 2013-04-22 18:00:00+00:00 release

Estem contents d'anunciar l'alliberament de la versió 2.8 de Tryton.

En aquesta versió s'han realitzat canvis a la intefície d'usuari per millorar la forma de treballar dels usuaris. Els canvis més importants són: cerques preferides, autocompletat, la cerca global i la revisió de tots els missatges d'error per a proporcionar més informació. Com és habitual, també s'han realitzat correccions d'errors, millores i nous mòduls (a continuació se'n donen més detalls)

Com és habitual, la migració de les versions anteriors està completament suportada.

Canvis en la interfície d'usuari

  • Afegits dominis a les finestres d'acció: Aquesta funcionalitat permet mostrar pestanyes a les vistes de llista. Aquestes pestanyes permeten filtrar els registres. Tots els mòduls s'han actualitzat per tal d'aprofitar aquesta funcionalitat i per tant s'han reduït el nombre d'entrades de menú.
Dominis a les finestres d'acció
  • Cerques preferides: Els usuaris poden guardar les seves cerques preferides i tornar-les a executar sempre que ho desitgin.
Cerques preferides
  • Auto-completat en camps relacionals (Many2One, Many2Many i One2Many): Quan s'escriu a algun d'aquests camps el client prova d'autocompletar per permetre una entrada ràpida de les dades. L'auto-completat també proposa dos accions addicionals: Crear un nou registre o entrar a la cerca avançada.
Auto-completat
  • Substituïts els accessos directes pels elements de menú preferits: S'han re-disenyat els preferits (també coneguts com accessos directes) per tal de millorar l'experiència de l'usuari.
Menú preferits
  • Afegir la cerca global: A la part superior del menú s'ha afegit una nova entrada que permet cercar sobre tots els objectes i els menús. Quan es selecciona un resultat de la cerca el client obre la seva vista de formulari o selecciona les seves entrades de menú. Es pot configurar els tipus de documents que es mostren a la cerca global.
Global Search

Canvis majors en el servidor

  • El mètode create ara accepta una llista de valors, i això permet unificar l'API. Això també millora el rendiment en la creació de registres, validant tots els registres de cop.
  • Es substitueix (Camp, Operador, Operant) per regles de domini. A més a més d'unificar la definició, això millora la velocitat de computació i facilita la memòria cau.
  • S'ha introduït un nou tipus de camp Dict. Aquest camp permet emmagatzemar un diccionari. Les claus del mateix s'emmagatzemen a la base de dades. El nou mòdul product_attribute utilitza aquesta funcionalitat (veure a continuació).
  • S'ha decidit eliminar els _inherits perquè no assolien completament la seva missió. S'han reemplaçant els seus usos (un per un) per camps Function, per classes de tipus Mixin o per un Many2One.
  • Els valors de selecció d'un camp de tipus referència o selecció poden ser dinàmics. Això es produeix gràcies a l'atribut selection_change_with.

Mòduls

account

  • La seqüència d'apunt és opcional en el període. Si no s'informa s'utilitzarà la seqüència de l'exercici físcal.
  • Les regles d'impostos i els grups d'impostos tenen un atribut tipus (vendes, compres o altres) que s'utilitza per definir on es poden utilitzar.

account_invoice

  • Les seqüències de facturació en el període també són opcionals.
  • Quan es cancel·la una factura l'apunt existent s'eliminarà si és possible. Si no es pot eliminar es generarà un apunt contrari.
  • Quan es valida la factura del proveïdor es crea l'apunt en esborrany. En cas de la validació en dos fases això permet obtenir informes actualitzats.
  • Les factures de proveïdor i els abonaments de proveïdor no es poden retornar de forma automàtica perquè s'han de revisar amb l'abonament del proveïdor.

dashboard

  • Per facilitar a l'usuari la selecció d'accions de l'escriptori aquestes es filtren en funció de l'ús de l'escriptori.

party

  • S'utilitza la url en les vistes de llista per al medi de contacte.
Medis de contacte

purchase

  • A partir d'ara és possible deixar el temps d'enviament buit per un producte d'un proveïdor. Això significa que no sabem quan ens l'enviarà.

stock

  • Amb el nou disseny del flux de treball ja no hi ha més colls d'ampolla per afegir un nou moviment d'estoc.
  • Totes les relacions Many2One en els enviaments s'han simplificat en una sola referència a l'enviament.

stock_supply

  • El mètode find_best_supplier ja no optimitza el retard d'enviament per tal de respectar l'ordre de prioritat en seleccionar un proveïdor.

timesheet

  • A partir d'ara és possible definir un període que indica el temps en que el treball estarà disponible per entrar als fulls de treball.

Nous mòduls

  • account_asset afegeix la depreciació fixa d'actius.
  • sale_supply afegeix l'opció envia a la venda al producte per tal de generar comandes de compra des de les línies de venda independentment dels nivells d'estoc.
  • sale_supply_drop_shipment afegeix l'opció enviament directe al producte si s'ha marcat l'opció envia a la venda per generar un enviament directe.
  • project_invoice afegeix mètodes de facturació (Manual, Per l'esforç estimat, Per les hores realitzades) als projectes.
  • product_attribute afegeix atributs de producte flexibles.
Atributs de producte

Altres canvis a l'interfície d'usuari

  • Es pot utilitzar un rang de Dates/Hores en la cerca de registres.
  • Es permet la multiselecció per camps de tipus Selecció a la cerca de registres.
  • La vista de llista pot mostrar url's.
  • El menú plugins s'ha mogut a la barra d'eines accions.

Altres canvis al servidor

  • L'idioma per defecte s'emmagatzema a la base de dades, cosa que soluciona errors inesperats en cas que la configuració del servidor es canviï.
  • S'ha eliminat la restricció única a les regles d'accés del model i del camp per tal de permetre que diferents mòduls creïn accessos que es solapen.
  • La llista de _constraints s'ha declarat obsoleta i s'ha reemplaçat pel mètode validate per millorar els missatges d'error.
  • Ara és possible buscar sobre el resultat dels camps de referència.

Versións de manteniment per les series suportades 1.8, 2.0, 2.2, 2.4 i 2.6

Publicat: 2012-12-24 12:00:00+00:00 release
S'ha alliberat noves versions de correcció d'errors per les series 1.8, 2.0, 2.2, 2.4 i 2.6. No es requereix l'actualització de la base de dades per actualitzar a aquestes noves versions.

Nova versió de Tryton 2.6

Publicat: 2012-10-23 12:00:00+00:00 release

Estem contents d'anunciar el llançament de la versió 2.6 de Tryton.

Aquesta versió porta canvis majors a la API amb la introducció del patró Active Record. La interfície gràfica no ha estat oblidada i també ha rebut noves millores. Com de costum, s'han corregit molts errors, s'han millorats alguns mòduls i s'han afegit nous mòduls (com es va anunciar en les noticies de llançament de la última versió).

Per suposat, la migració de versions anteriors esta totalment suportada.

Majors canvis en la interfície gràcia d'usuari

  • Gestió de les regles d'accés als models i les regles per crear/esborrar el valor d'un camp.

    El client a partir d'ara es conscient de les regles d'accés al model. Això permet desactivar botons quan l'usuari no té els permisos suficients per accedir-hi.

    També es possible gestionar els esdeveniments de creació/eliminació als camps, a més a més dels esdeveniments de lectura/escriptura.

  • Limit de mida dinàmic en els camps One2Many, Many2Many i Char.

    A partir d'ara es possible de limitar la mida d'aquest camps i el client s'encarrega de que aquests valors es compleixin.

  • Eliminar la finestra emergent "Sis plau esperi". Aquesta finestra molestava perquè causava que el client perdes el focus.

  • Enganxa en una vista de llista editable. Es possible empegar registres directament des d'un full de càlcul per modificar un conjunts de files.

Canvis majors a la banda del servidor

  • Permetre utilitzar el camp Reference en les relacions One2ManyA i Many2Many.

    A més a més dels camps Many2One, el camp revers pot ser de tipus Reference. En el futur, l'enllaç entre els Moviments i els Enviaments s'implementarà d'aquesta forma, substituïnt els quatre camps Many2One exclusiu que hi ha actualment.

  • Tots els tipus de botons s'han unit amb un concepte més simple.

  • Active Record: Aquest es el resultat de la refactorització que es va començar fa 2 anys.

    Us detallem alguns dels seus beneficis:

    • Reduir la quantitat de codi ( s'han eliminat unes 2.2k línies de codi). Per exemple on_change_with i la Funció getter s'uneixen.

    • Unificar l'accés al valor del registre independentment si esta guardat a la base de dades o no.Això permet eliminar valors del diccionari de valors al mètode on_change.

    • Eliminar el bucle sobre els ids en el getter d'un camp Function :

      abans:

      def getter(self, ids, name):
          res = {}
          for record in self.browse(ids):
              res[record.id] = …
          return res
      

      després:

      def getter(self, name):
          return self.…
      
    • Racionalitzar els proces de registre d'un Model (utilitzar copies dels camps, etc.)

    • Eliminar la sessió en els assistents. A partir d'ara la instància del Assistent és la sessió.

  • Permetre guardar les vistes en fitxers XML en comptes de a la base de dades. Això ens permet la modificació de la vista sense actualitzar la base de dades. Una millorar en la velocitat de dissenyar vistes.

  • S'ha afegit un nou tipus de validació: pre_validation.

    La nova validació pre_validation permet validar el registre sense guardar-lo. Aquesta validació es fa servir pel client per validar les línies dels camps One2Many. Amb la pre_validation es possible proporcionar informació als usuaris tan aviat possible i abans de que el registre estigui guardat.

Mòduls

account

  • L'informe de balanç de sumes i saldos ara mostra el balanç inicial i el balanç final a més a més de les columnes de crèdit i dèbit.
  • Es pot obrir el detall de la compte fent doble-click al balanç general.
  • El pla de compte no acumula el Crèdit/Dèbit per defecte, només pel període actual.
  • El balanç històric es calcula sobre tots els períodes fiscals.
  • Els moviments comptables han estat refactoritzats per a incloure un camp origen, que permet enllaçar fàcilment al document mestre. Tenen dos camps de nombre per als Esborranys i els Confirmats.

account_stock_continental

  • Actualitzar el preu de cost automàticament crea un moviment comptable de estoc.

purchase

  • El mòdul de compres pot gestionar quantitats negatives a les línies, generant Devolucions i notes de crèdit.

stock

  • S'ha afegit un gràfic que mostra la evolució en el passat i en el futur del nivell de stock per un producte a un magatzem.
quantitats de productes per magatzem

Nous mòduls

  • stock_lot defineix lots de productes.
  • stock_split afegeix un assistent per dividir un moviment.
  • account_fr afegeix el pla comptable francès.
  • production defineix els models bàsics per a la gestió de la producció.
  • stock_supply_production afegeix mecanismes automàtics de subministraments basats en les sol·licituds de producció.

Altres canvis en la interfície gràfica d'usuari

  • La interpolació constat s'ha afegit al gràfic de línia.
  • Un grup pot tenir l'estat de només lectura.
  • Es possible definir el format del temps i que aquest sigui diferent del clàssic '%H:%M:%S'.

Altres canvis en la banda del servidor

  • S'ha eliminat la ModelSQL.default_sequence. Un camp de seqüència no s'incrementarà més de forma indefinida.
  • El format del temps es valida, així es possible obligar que els segons siguin 0 per exemple
  • __tryton__.py es reemplaçat per tryton.cfg, un fitxer estàtic.
  • Es possible utilitzar una tuple com a valor d'una Reference. És util per a construir dominis dinàmics en un camp en PYSON.