L'Agenda du Libre

Logiciels, Arts, Données, Matériels, Contenus, Communs, Internet...

À proximité

Actualités des organisations

LinuxFr

Résultats des Big Brother Awards Allemagne 2026


Internet
Publié le
jeudi 08 octobre 2026 12h44
Importé le
jeudi 08 octobre 2026 13h03

Vendredi 25 septembre a eu lieu la cérémonie officielle de nomination des Big Brother Awards Allemagne 2026 à Bielefeld (Westphalie Est-Lippe).

Si 4 des 6 gagnants sont Allemands, tous concernent par leur (mauvais) exemple de près ou de loin l’ensemble des Européens.

Découvrons ensemble les heureux élus.

Pour rappel les Big Brother Awards ont été initiés au Royaume-Uni en 2008 puis se sont essaimés dans de nombreux pays avant de se réduire à 3 pays ces dernières années. En Allemagne, ils sont organisés depuis l’an 2000 par DigitalCourage, une association de sensibilisation de la protection des données personnelles et fournisseur de quelques services libres, qu’on pourrait donc situer à mi-chemin entre La Quadrature du Net et Framasoft.
Ils visent à alerter le grand-public de quelques cas emblématiques d’atteinte illégitime à nos données personnelles, dont un certain nombre de cas a pu se traduire en sanctions concrètes et finalement revenir à une situation acceptable.

La dernière dépêche sur LinuxFR rapportant des BBA datant de 2013 (dernière édition des BBA France), il semblait intéressant de rapporter l’évènement ici.

Ont été déclarés vainqueurs pour 2026 :

  • l’Église protestante du Nord de l’Allemagne dans la catégorie Société civile pour imposer l’usage de Microsoft pour l’ensemble de ses services informatiques à l’ensemble des paroisses de Hambourg, du Schleswig-Holstein (pourtant désormais célèbre pour sa politique publique de migration vers Linux et les logiciels libres en général, et du Mecklembourg Poméranie. Concerne donc près de 17 000 personnes. Dont des confessions dont les fidèles seront bien contents de savoir qu’elles peuvent se retrouver dans la nature.

  • les opticiens Apollo et Fielmann dans la catégorie Technologie pour faire la promotion des lunettes perverses de Meta. La fabrication et la vente de moyens d’enregistrer des personnes tierces à leur insu est considérée comme un délit dans la loi allemande. Et bien que la Commission de protection des données de Hambourg a confirmé l’insuffisance de la LED signalant certains enregistrements, l’Agence Fédérale des Télécommunications chargée de vérifier la conformité aux lois semble préférer fermer les yeux sur ce délit de lunette.

  • Deutsche Telekom dans la catégorie Préventif pour son plan de fusion avec sa propre filiale T-Mobile US. Cette fusion rendrait la Deutsche Telekom et donc l’infrastructure de télécommunications allemande soumise à la législation américaine (FISA Act 702, Cloud Act, Executive Order 12333, etc). Les communications allemandes seraient donc directement accessibles au FBI comme c’est déjà le cas pour T-Mobile US depuis leur accord en 2001.

  • la Commission européenne dans la catégorie Europe pour son Digital Omnibus, un groupement de lois visant à déréguler les services numériques européens, au profit de la « compétitivité » et aux dépens de la protection numérique des Européens.
    En redéfinissant la notion de donnée personnelle, ces textes doivent permettre aux sociétés marketing et databrokers d’exploiter sans limites vos informations de navigation, de considérer l’entraînement des IA comme d’« intérêt légitime » (et donc sans nécessiter votre consentement !), etc.

  • le Ministre de l’Intérieur fédéral Alexander Dobrindt dans la catégorie Administration pour pousser l’implémentation d’un identifiant personnel unique (via le N° fiscal) dans l’ensemble des bases de données gouvernementales. Au nom de la modernisation de l’administration, cette mesure ouvre la voie a des recoupements entre services gouvernementaux au-delà des besoins fonctionnels. Il est rappelé que cette approche avait été prévue par le gouvernement nazi de l’époque. Et désormais implémenté en Russie donnant entre autres l’exemple des services des armées pouvant faire couper les services bancaires d’une personne qui voudrait pas combattre au front (tout parallèle avec un juge d’une cour pénale internationale serait fortuit).

  • Enfin la dernière catégorie Jeunes et surveillés est choisie par les « jeunes », qui ont choisi de critiquer leur exclusion des réseaux sociaux, comme mauvaise solution ne protégeant au final personne tout en nécessitant la divulgation de données personnelles supplémentaires.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

CERCLL

Windows manipule votre choix (sauf en Europe !) : Mozilla dénonce le cynisme de Microsoft.


Provence-Alpes-Côte d'Azur 🇫🇷
Publié le
jeudi 08 octobre 2026 09h12
Importé le
jeudi 08 octobre 2026 13h03
Windows manipule encore les écrans pour imposer Edge…. sauf en Europe ! 100 jours après son dernier rapport, Mozilla montre que Microsoft réserve un système loyal aux Européens (à l’exception de Copilot !), sous la contrainte du DMA, et maintient ses interfaces trompeuses partout ailleurs. Analyse. Deux poids, deux mesures : Microsoft sait parfaitement concevoir […]
CERCLL

Raspberry Pi Desktop : le bureau léger renaît sur PC et Mac.


Provence-Alpes-Côte d'Azur 🇫🇷
Publié le
jeudi 08 octobre 2026 09h08
Importé le
jeudi 08 octobre 2026 13h03
Quatre années d’attente et deux à trois courriels hebdomadaires d’utilisateurs impatients ont fini par faire plier l’équipe d’ingénierie britannique. Dans un billet officiel intitulé Raspberry Pi Desktop now available for PC and Mac, l’entreprise spécialisée dans les nano-ordinateurs relance son environnement graphique pour les ordinateurs portables et de bureau traditionnels. Cette version modernisée s’aligne directement […]
Loxodata

La volatilité des fonctions dans PostgreSQL


Bourgogne-Franche-Comté 🇫🇷
Publié le
jeudi 08 octobre 2026 08h00
Importé le
jeudi 08 octobre 2026 13h04

Lorsque nous écrivons une fonction dans PostgreSQL, notre attention se porte naturellement sur ce qu’elle calcule. Nous oublions souvent de déclarer ce qui intéresse le plus l’optimiseur : dans quelles conditions son résultat peut-il changer ?

C’est précisément le rôle de la catégorie de volatilité, ce mot-clé que l’on place dans le CREATE FUNCTION et que l’on recopie trop souvent d’un exemple trouvé en ligne.

Dans cet article, nous présentons les différents niveaux de volatilité et le choix à préconiser selon les cas.

Qu’est-ce que la volatilité d’une fonction ?

La volatilité est une classification que PostgreSQL attache à chaque fonction. C’est une promesse faite à l’optimiseur sur le comportement de la fonction vis-à-vis des données. Trois niveaux sont disponibles :

  • VOLATILE : le résultat peut changer à chaque appel, même au sein d’une même requête, et la fonction peut modifier la base
  • STABLE : le résultat est constant pour les mêmes arguments au sein d’une même instruction, mais peut varier d’une instruction à l’autre
  • IMMUTABLE : le résultat est constant pour les mêmes arguments, en toute circonstance

VOLATILE est le niveau appliqué par défaut si aucune annotation n’est précisée à la création de la fonction. La documentation officielle détaille ces trois catégories dans le chapitre consacré à la volatilité des fonctions.

Cette classification a un effet concret : elle dit à PostgreSQL s’il peut réutiliser un résultat déjà calculé, et surtout quel snapshot la fonction a le droit de consulter.

VOLATILE

Une fonction VOLATILE peut modifier la base (INSERT, UPDATE, DELETE) ou lire des données changeantes. Sans annotation explicite, c’est le niveau que PostgreSQL applique automatiquement.

Pour illustrer le comportement, imaginons une table stock contenant 10 produits. Nous créons une fonction qui retourne le prix d’un produit via un simple SELECT dans cette table, avec l’id du produit en paramètre.

Cette fonction est volontairement ralentie par un appel à pg_sleep(1), afin de laisser le temps de modifier les données pendant son exécution. Le but est d’observer si le résultat diffère selon le moment de l’appel.

CREATE TABLE stock (id int primary key, price numeric); INSERT INTO stock SELECT g, 10 FROM generate_series(1, 10) g; CREATE OR REPLACE FUNCTION get_price_volatile_plpgsql(p_id int) RETURNS numeric AS $$ DECLARE v numeric; BEGIN PERFORM pg_sleep(1); SELECT price INTO v FROM stock WHERE id = p_id; RETURN v; END; $$ LANGUAGE plpgsql VOLATILE;

Pour reproduire le test, il faut deux sessions distinctes (deux connexions psql, par exemple) :

  1. Dans la session A, nous lançons la requête suivante, qui va s’exécuter pendant une dizaine de secondes à cause des dix appels à pg_sleep(1) :
SELECT id, get_price_volatile_plpgsql(id) AS price_via_volatile FROM stock ORDER BY id;
  1. Pendant que la session A tourne encore, nous exécutons dans la session B :
UPDATE stock SET price = 15 WHERE id > 3;

Voici le résultat obtenu en session A :

┌────┬────────────────────┐ │ id │ price_via_volatile │ ├────┼────────────────────┤ │ 1 │ 10.00 │ │ 2 │ 10.00 │ │ 3 │ 10.00 │ │ 4 │ 15 │ │ 5 │ 15 │ │ 6 │ 15 │ │ 7 │ 15 │ │ 8 │ 15 │ │ 9 │ 15 │ │ 10 │ 15 │ └────┴────────────────────┘

Le comportement est cohérent avec la définition, les lignes traitées avant l’UPDATE (id 1 à 3) renvoient encore l’ancien prix, tandis que celles traitées après (id 4 et suivants) renvoient le nouveau. Cela s’explique par le fait qu’en isolation READ COMMITTED (le niveau par défaut de PostgreSQL), une fonction VOLATILE est autorisée à prendre un nouveau snapshot des données à chaque appel, elle peut donc « voir » un UPDATE validé entre deux de ses propres exécutions, au sein d’une seule et même requête.

STABLE

Une fonction STABLE renvoie le même résultat pour les mêmes arguments au sein d’une même instruction. Elle peut lire la base sans la modifier.

Reprenons l’exemple de la table stock et créons cette fois une version STABLE de la fonction :

CREATE OR REPLACE FUNCTION get_price_stable_plpgsql(p_id int) RETURNS numeric AS $$ DECLARE v numeric; BEGIN PERFORM pg_sleep(1); SELECT price INTO v FROM stock WHERE id = p_id; RETURN v; END; $$ LANGUAGE plpgsql STABLE;

Remettons d’abord tous les prix à 10 :

UPDATE stock SET price = 10;

Puis, comme précédemment avec deux sessions, lançons en session A :

SELECT id, get_price_stable_plpgsql(id) AS price_via_stable, get_price_volatile_plpgsql(id) AS price_via_volatile FROM stock ORDER BY id;

Et en session B, pendant que la requête tourne :

UPDATE stock SET price = 15 WHERE id > 3; ┌────┬──────────────────┬─────────────────────┐ │ id │ price_via_stable │ price_via_volatile │ ├────┼──────────────────┼─────────────────────┤ │ 1 │ 10 │ 10 │ │ 2 │ 10 │ 10 │ │ 3 │ 10 │ 10 │ │ 4 │ 10 │ 15 │ │ 5 │ 10 │ 15 │ │ 6 │ 10 │ 15 │ │ 7 │ 10 │ 15 │ │ 8 │ 10 │ 15 │ │ 9 │ 10 │ 15 │ │ 10 │ 10 │ 15 │ └────┴──────────────────┴─────────────────────┘ (10 rows)

La colonne price_via_stable reste figée à 10 pour toutes les lignes, alors que price_via_volatile reflète l’UPDATE concurrent à partir de l’id 4. La fonction STABLE réutilise, elle, le snapshot pris au début de la requête appelante, elle ne voit donc jamais les changements survenus pendant son exécution, quel que soit le nombre d’appels effectués au sein de cette même requête.

IMMUTABLE

Une fonction IMMUTABLE renvoie un résultat constant pour les mêmes arguments, en toute circonstance, pas seulement au sein d’une requête comme STABLE, mais y compris d’une requête à l’autre, indéfiniment. Cela signifie qu’elle ne doit jamais lire une table, ni dépendre de paramètres de session ou de l’horloge système.

PostgreSQL ne vérifie pas cette promesse. Si elle est fausse, deux mécanismes peuvent être affectés : le constant folding, qui fige une valeur calculée une fois pour toutes dans le plan, et l’index fonctionnel, dont les entrées ne sont jamais recalculées après un changement du résultat de la fonction pour une même entrée. Dans ce second cas, l’index continue de pointer vers des lignes qui ne correspondent plus à la condition recherchée.

L’intérêt de ce niveau va au-delà de la cohérence des résultats, déjà garantie par STABLE à l’échelle d’une requête. Il ouvre deux usages interdits aux deux autres niveaux : le précalcul de l’expression au moment de la planification, et l’index fonctionnel, où IMMUTABLE est une exigence vérifiée par PostgreSQL (CREATE INDEX échoue sinon).

Illustrons avec un calcul qui ne dépend que de son argument :

CREATE OR REPLACE FUNCTION price_ttc(p_ht numeric) RETURNS numeric AS $$ BEGIN RETURN round(p_ht * 1.20, 2); END; $$ LANGUAGE plpgsql IMMUTABLE;

Cette fonction peut servir de base à un index fonctionnel :

CREATE INDEX idx_stock_price_ttc ON stock (price_ttc(price));

Pour utiliser idx_stock_price_ttc, il faut appliquer la fonction à la colonne, et non pas à la constante :

EXPLAIN (ANALYZE) SELECT * FROM stock WHERE price_ttc(price) = 12.00;

Sur notre table de 10 lignes, cette requête n’utilisera pourtant toujours pas l’index : le volume est trop faible pour que l’accès par index soit jugé rentable par l’optimiseur face à un simple Seq Scan.

Constituons un jeu de données plus réaliste pour l’observer réellement :

TRUNCATE stock; INSERT INTO stock (id, price) SELECT g, (random() * 90 + 10)::numeric(10,2) FROM generate_series(1, 200000) g; ANALYZE stock;

Consultons maintenant le plan d’exécution :

EXPLAIN (ANALYZE) SELECT * FROM stock WHERE price_ttc(price) = 12.00; Index Scan using idx_stock_price_ttc on stock (cost=0.42..26.10 rows=22 width=10) (actual time=0.050..0.074 rows=12 loops=1) Index Cond: (price_ttc(price) = 12.00) Planning Time: 0.131 ms Execution Time: 0.104 ms

L’index idx_stock_price_ttc est bien sollicité : le plan bascule d’un Seq Scan à un Index Scan.

C’est la confirmation concrète de ce qu’annonçait la théorie : un index fonctionnel n’est utilisable que si la fonction indexée est IMMUTABLE, et seulement si la requête compare exactement l’expression indexée (price_ttc(price), et non price seul) à une valeur.

Le piège de l’inlining : VOLATILE n’exclut pas toujours l’index

Une fonction VOLATILE dans un WHERE ne bloque pas systématiquement l’index. Pour une fonction SQL au corps simple, PostgreSQL peut l’inliner avant de regarder sa volatilité, et l’index reste utilisable malgré l’annotation.

CREATE OR REPLACE FUNCTION add_volatile(a int, b int) RETURNS int AS $$ SELECT a + b; $$ LANGUAGE sql VOLATILE; EXPLAIN SELECT * FROM stock WHERE id = add_volatile(2, 3); Index Scan using stock_pkey on stock (cost=0.42..8.44 rows=1 width=36) Index Cond: (id = 5) -- l'index est utilisé malgré le VOLATILE

La fonction add_volatile a un corps trivial, une seule expression, sans effet de bord détectable syntaxiquement. Avant même de considérer sa volatilité, PostgreSQL l’inline : il remplace l’appel par le contenu du corps de la fonction directement dans l’arbre de la requête, tôt dans la planification (eval_const_expressions). Une fois la substitution faite, il ne reste plus de fonction add_volatile dans le plan, seulement une addition entre deux constantes évaluée par l’opérateur +, natif et immuable. L’annotation VOLATILE devient sans objet : le nœud auquel elle s’appliquait a disparu.

Le rapport de bug BUG #11637 documente un cas similaire, sur CREATE INDEX cette fois, une fonction SQL marquée VOLATILE peut se retrouver utilisée dans un index fonctionnel, parce qu’elle est inlinée avant que PostgreSQL ne vérifie sa mutabilité.

Tom Lane a confirmé sur la mailing-list que ce n’est pas un bug au sens strict du terme, mais la conséquence attendue de deux mécanismes indépendants qui se chevauchent, l’inlining et la vérification de volatilité.

Ce qui bloque réellement l’inlining, et fait retrouver au VOLATILE son effet attendu :

  • plusieurs instructions dans le corps de la fonction
  • une fonction SECURITY DEFINER
  • du code en PL/pgSQL, un langage jamais inliné

Le rapport de bug d’origine porte sur CREATE INDEX qui accepte un index sur une fonction marquée VOLATILE parce qu’elle est inlinée avant la vérification de mutabilité,

Conclusion

La volatilité n’est pas une case à cocher administrative, c’est un contrat entre le développeur et le planificateur de requêtes, que PostgreSQL ne vérifie jamais lui-même. Le niveau le plus restrictif que la fonction justifie réellement reste la seule règle sûre, l’inlining rappelle simplement qu’il faut aussi regarder si la fonction est inlinable avant de prédire un plan sur la seule base de son annotation.

Tableau récapitulatif

Critère VOLATILE STABLE IMMUTABLE
Résultat constant Jamais garanti Par requête Toujours
Accès à la BDD Oui (lecture/écriture) Lecture seule Non
Utilisation d’index Non Oui Oui
Index fonctionnel Non Non Oui
Constant folding Non Non Oui

La ligne « Utilisation d’index » pour VOLATILE suppose une fonction que PostgreSQL ne peut pas inliner. C’est le sujet de la section suivante, et c’est le point le plus souvent mal expliqué sur ce sujet.

ritimo

La génération Z en Iran : une perspective contemporaine


Île-de-France 🇫🇷
Publié le
mercredi 07 octobre 2026 12h10
Importé le
mercredi 07 octobre 2026 13h03

Analyser les caractéristiques de la génération Z iranienne à travers les prismes croisés de la socialisation numérique, du néolibéralisme et de la santé mentale, développe une compréhension plus contemporaine des conditions sociales et politiques, des identités et des expériences qui caractérisent cette génération.

- Articles et traductions / numérique, jeunesse, Iran, réseaux sociaux, résistance, femme, santé, politique, économie, article, veille internationale
CERCLL

5 raisons pour lesquelles Linux va véritablement dominer l’avenir de l’informatique de bureau.


Provence-Alpes-Côte d'Azur 🇫🇷
Publié le
mercredi 07 octobre 2026 06h51
Importé le
mercredi 07 octobre 2026 13h03
Linux a le vent en poupe, et si la tendance continue à s’accentuer, nous pourrions bien assister cette année à l’avènement de Linux sur les ordinateurs de bureau. Les points clés à retenir sur la progression de Linux sur les ordinateurs de bureau Linux a un bel avenir devant lui, mais pas pour les raisons […]
Unbee

12ème journée du Libre à Mérignac


Nouvelle-Aquitaine 🇫🇷
Publié le
mardi 06 octobre 2026 21h51
Importé le
mercredi 07 octobre 2026 05h04
Le samedi 10 octobre 2026 de 10h00 à 16h00. Maison des associations, 55 avenue du Maréchal de Lattre de Tassigny, Mérignac, Nouvelle-Aquitaine, France NOS CONFÉRENCES de la journée :
Tryton

Tryton Release 8.2


Wallonie 🇧🇪
Publié le
mardi 06 octobre 2026 18h00
Importé le
mardi 06 octobre 2026 21h05

We are proud to announce the 8.2 release of Tryton.
This release provides many bug fixes, performance improvements and some fine tuning.
You can give it a try on the demo server, use the docker image or download it here.
As usual upgrading from previous series is fully supported.

Here is a list of the most noticeable changes:

Changes for the User

Client

When deleting or removing multiple rows from a list widget, a popup is displayed to confirm the selection that will be deleted or removed.
And when clicking on delete or remove from a list widget with no row selected, a search popup is raised to search and select the rows to delete or remove.

When selecting multiple rows for editing from a One2Many widget, the edition popup loops over each record. This is a faster and more reliable way to perform a mass edition.

The login services can now display an icon to represent the service provider. This makes it easier for users to select the right services.

The Binary widget supports filtering the file selection per file extension and mime type.
And when the field has no file name defined, the widget will use the record name as a fallback file name when the content is downloaded.

It is now possible to mark as read a set of notifications.

Accounting

The “Open Journal” menu entry has been replaced by the “Lines” menu entry which uses a journal and period header as default values.
This new menu entry also provides a new way to search for accounting lines.

We now use the maturity date before the effective date to calculate the reconciliation date.

The wizard to create dunning allows limiting the creation to a selection of companies.

The wizard to create direct debits allows limiting the creation to a selection of companies.

When posting an invoice, the system will check the validity of the European tax identifiers used.

A relate is now available from the period and the fiscal year to open the related invoices.
This is useful when you need to collect all the invoices done in a period, for example to send to an external accountant.

The SEPA payment module now includes the flavors pain.001.001.09 and pain.008.001.08.

A generic CSV format has been added to import statements. You can configure the format to map columns to the Tryton fields.
It is common that banks provide only a custom CSV format for the statements.

It is now possible to create tax rules based on organizations.
This is useful for example to create a single rule that applies to all European countries.

E-document

PEPPOL

We added a configurable processing delay on each PEPPOL service.
This prevents sending the newly posted invoice directly and allows some time for the user to correct any mistakes.

UN/CEFACT

Tryton can now parse the UN/CEFACT invoice to create a supplier invoice.
This will be useful to implement French e-invoicing.

Party

The wizard to check VAT numbers with the VIES service has been replaced by an automatic background task.
Once a number has been validated, it is considered valid for a configurable period before being re-validated.

When entering a contact mechanism, the system will try to guess the type.

Product

The products can now be added or removed directly from the category form.

Production

A tolerance can now be configured on each BoM. It raises warnings when the input or output quantities deviate from the calculated quantities from the BoM. It also detects additional or missing products.

Purchase

Tryton now calculates the actual average lead time of each product supplier over the last year.
This is useful to update the configured lead time or to find poor suppliers.

Sales

It is now possible to configure sales to create customer shipments only in draft (instead of waiting).
This is useful when the workflow requires a manual validation of the shipment before being processed.

The wizard to create invoices and consumptions of subscriptions allows limiting the creation to a selection of companies.

A stock lot can now be set on the sale line from a POS.
This is useful for businesses that require tracking the lot sold to customers.

Stock

Tryton now warns when an inventory modifies the quantities or costs too much.
The variations are now displayed with a visual hint when they are close to the tolerance.

A scheduled task has been added to create stock periods automatically using a configured interval. And another task closes them after a configured delay.
This removes the need to manually close stock periods, which is important for performance.

Web Shop

A scheduled task has been added to cancel abandoned sales after a configured delay per web shop.
This prevents the list of draft sales from increasing too much.

New Modules

Account Invoice Factur-X

The Account Invoice Factur-X Module allows to generate invoices in Factur-X format.

Document Incoming OCR Eagle Doc

The Document Incoming OCR Eagle Doc Module provides integration with Eagle Doc services.

Project Disbursement

The Project Disbursement Module provides support for paying and invoicing disbursements per project.

Stock Conversion

The Stock Conversion Module transforms one product into another with ease.

Changes for the System Administrator

Server

The “Administration” group has been replaced by an “Administrator” flag on the user.
This ensures that an administrator always has access to everything even if a resource access is restricted to a group (which was not the “Administration” group).

The trytond-admin command can now manage any user. This means that it can create a new user, activate or deactivate, promote as administrator or demote from administrator, set the email or password and send a reset password email.

The unfinished queued tasks are now retried automatically by a scheduled task.

A timer is now attached to every RPC request with a timeout defined. It ensures that the request does not last longer by raising a TimeOutException.

The webhooks must be updated to include the /r/ prefix inherited from the new Router.
We have kept the former routes for backward compatibility.

Accounting

The Stripe API has been updated to the version 2026-09-30.endive.

Stock

The DPD Shipment Service API has been updated to version 4.5.

Changes for the Developer

Server

The readonly attribute and states are now enforced on the server-side when checking the access rights of the user.

The fields have a new editable states which completes the existing readonly but it is not enforced, only used for UI purposes.

We added BulkBuffer for creation, deletion, save or any function on ModelStorage.
The BulkBuffers are context managers that are flushed when reaching a defined size by calling a function with the current content.
This is useful when looping on a large set of records to limit the memory consumption.
Ex:

# records are saved every 2000 records with Model.bulk_save() as save: for record in records: record.amount += 10 save.push(record)

A new router type of object is now supported in the Pool.
A Router exposes entrypoints but as it is registered in the Pool it can be extended by other modules.
The entrypoint of a Router is only registered for the database for which the origin module is activated.

A route has been added for the custom.js and custom.css files of sao. It chains a list of files that can be extended by any module.

The ORM is now using a BrowseList instead of a simple list of instances. The BrowseList allows keeping the cache and prefetching aligned with its content when it is mutated, for example by .sort().

It is now possible to define the filename extension of Binary fields.
And it is also possible to set filters on the binary and image widgets.

The database connection cursor now supports row factories like dict_row, namedtuple_row and scalar_row. They change the default tuple type of fetched records.
Thanks to the row factory, the cursor_dict has been removed.

It is now possible to configure Mixins to apply to the Database and TableHandler of the backend.
This feature is now used for the GIS backend.

We added support for AGE to the SQLite backend.

The DBTestCase is now public and can be reused by modules. It is useful to create test cases based on a module but without the generic tests from ModuleTestCase.

The XML record tag now supports a search attribute. The value is a domain used to search for existing records and reuse them when the id is not yet known.
This is useful for example to create a country record which may have been already created.

The convert module gains an import_xml function which can be used to import XML files into the database (like the file declared in the module).
It can be useful for tests that need to have such records created.

The email validation tools now have a check deliverability option.

The URLAccessor can now accept a request parameter to use instead of the Transaction.context.

The ResourceAccessMixin gains two new fields last_user and last_modification.

Proteus the scripting client

When configured with trytond (on the server host), it allows controlling access checks with the _check_access contextual keyword.

Company

The companies and employees are now in the user context.
This is useful to write domains that restrict a selection to only allowed companies or employees.

1 post - 1 participant

Read full topic

LinuxFr

Échange avec Cyrielle Chatelain - « Libre à vous ! » du 29 septembre 2026


Internet
Publié le
mardi 06 octobre 2026 15h06
Importé le
mardi 06 octobre 2026 21h03

286e émission « Libre à vous ! » de l’April. Podcast et programme :

  • sujet principal : Échange avec Cyrielle Chatelain, députée, autrice d'un rapport sur les dépendances et vulnérabilités du secteur numérique ;
  • la chronique À cœur vaillant, la voie est libre, de Laurent et Lorette Costy : « Adhérer Réellement Simplement à un Syndicat » ;
  • Premier épisode d'une nouvelle chronique : Brouillon pour des wikis féministes par Clara. Clara est membre du deuxième texte et des sans pagEs, deux associations visant à réduire le biais de genre sur Wikisource et Wikipédia. Le titre de ce premier épisode : « 25 ans déjà ? État des lieux du biais de genre persistant sur Wikipédia » ;

Rendez‐vous en direct chaque mardi de 15 h 30 à 17 h sur 93,1 FM en Île‐de‐France. L’émission est diffusée simultanément sur le site Web de la radio Cause Commune.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Projet Internet et Citoyenneté

Réunion de CA du 29 Septembre 2026


Occitanie 🇫🇷
Publié le
mardi 06 octobre 2026 14h48
Importé le
mardi 06 octobre 2026 21h04

Compte-rendu du conseil d'administration du 29 septembre

- Année 2026
OMJC

Village de la mobilité oct. 2026


Hauts-de-France 🇫🇷
Publié le
mardi 06 octobre 2026 11h16
Importé le
mardi 06 octobre 2026 21h04

Le 7 octobre 2026, le village de l'éclairage est de retour à Villeneuve d'Ascq, sur le parvis du centre social Flers-Sart de 16h30 à 18h30 ! L'occasion de prendre soin de votre vélo et de repartir avec infos et équipements pour circuler à vélo quand il fait nuit, en toute sécurité !
Au programme : Distribution gratuite d'éclairages vélo et de gilets (dans la limite des stocks disponibles) Parcours trottinette électrique Balade à vélo sur inscription Atelier d'aide à la réparation (…)

- VdAscq / A la une
April

#286 - Échange avec la députée Cyrielle Chatelain - À cœur vaillant, la voie est libre - Brouillon pour des wikis féministes - « Libre à vous ! » diffusée mardi 29 septembre 2026 sur radio Cause Commune


France 🇫🇷
Publié le
mardi 06 octobre 2026 10h38
Importé le
mardi 06 octobre 2026 13h04

Libre à vous !, l’émission de l’April, l’association de promotion et de défense du logiciel libre. Prenez le contrôle de vos libertés informatiques, découvrez les enjeux et l’actualité du libre.

Au programme de la 286e émission :

  • sujet principal : Échange avec Cyrielle Chatelain, députée, autrice d'un rapport sur les dépendances et vulnérabilités du secteur numérique ;
  • la chronique À cœur vaillant, la voie est libre, de Laurent et Lorette Costy : « Adhérer Réellement Simplement à un Syndicat » ;
  • Premier épisode d'une nouvelle chronique : Brouillon pour des wikis féministes par Clara. Clara est membre du deuxième texte et des sans pagEs, deux associations visant à réduire le biais de genre sur Wikisource et Wikipédia. Notamment par un atelier d’initiation un samedi par mois à la librairie militante Violette and co (à Paris), et également en ligne. Le titre de ce premier épisode : « 25 ans déjà ? État des lieux du biais de genre persistant sur Wikipédia » ;
  • Quoi de Libre ? Actualités et annonces concernant l'April et le monde du Libre.

Écouter les podcasts

S'abonner au podcast

S'abonner à la lettre d'actus

AukFood

Premiers pas avec Hermes et LLM en local


Pays de la Loire 🇫🇷
Publié le
mardi 06 octobre 2026 08h00
Importé le
mardi 06 octobre 2026 13h05

Hermes est un agent IA OpenSource, mon idée est d'apprendre à l'utiliser et petit à petit le connecter sur nos travaux en cours sur le déploiement d'instance GPU à la demande (rationalisation de coûts de GPU) et les MCP Nextcloud et Gitlab et peut-être d'autres intégrations, à voir ...  Isolement Pour le moment je prends […]

L’article Premiers pas avec Hermes et LLM en local est apparu en premier sur Aukfood.

CLX

Samedi 17 octobre : 🎥 et zoom sur kdenlive


Hauts-de-France 🇫🇷
Publié le
mardi 06 octobre 2026 00h17
Importé le
mardi 06 octobre 2026 05h04

Samedi 17 octobre à 15h, vous pourrez découvrir vos talents de vidéaste, en apprenant les bases de Kdenlive , un logiciel libre d'édition vidéo non-linéaire, permettant de monter sons et images avec divers effets spéciaux.
Bien entendu, l'atelier traitera comme toujours les aides, questions et réponses pour des installations et configurations de logiciels libres.
Comme d'habitude, l'atelier débutera à 15h dans les locaux du CAJ-MIR. L'adresse : Allée de la Motte numéro 4 à Boussu. (…)

- Nos Activités / DivX, MP3 etc., LoLiGRub, Conférence
CLX

Samedi 17 octobre : 🎥 et zoom sur kdenlive


Hauts-de-France 🇫🇷
Publié le
mardi 06 octobre 2026 00h17
Importé le
mardi 06 octobre 2026 05h04

Samedi 17 octobre à 15h, vous pourrez découvrir vos talents de vidéaste, en apprenant les bases de Kdenlive , un logiciel libre d'édition vidéo non-linéaire, permettant de monter sons et images avec divers effets spéciaux.
Bien entendu, l'atelier traitera comme toujours les aides, questions et réponses pour des installations et configurations de logiciels libres.
Comme d'habitude, l'atelier débutera à 15h dans les locaux du CAJ-MIR. L'adresse : Allée de la Motte numéro 4 à Boussu. (…)

- Nos Activités / DivX, MP3 etc., LoLiGRub, Conférence
LOV

Une étagère à épices : de la photo d’inspiration au fichier STEP avec ChatGPT


Auvergne-Rhône-Alpes 🇫🇷
Publié le
lundi 05 octobre 2026 21h33
Importé le
mardi 06 octobre 2026 05h03

Un rangement en bois, quelques contraintes de dimensions et une scie à onglet : voilà le point de départ de ce projet. J’ai utilisé ChatGPT pour explorer plusieurs formes, choisir un modèle et obtenir un fichier 3D à ouvrir dans Fusion 360. Voici les étapes de cet échange, la correction d’un détail important et les photos … Continuer la lecture de « Une étagère à épices : de la photo d’inspiration au fichier STEP avec ChatGPT »

L’article Une étagère à épices : de la photo d’inspiration au fichier STEP avec ChatGPT est apparu en premier sur LABORATOIRE OUVERT VILLEURBANNAIS.

AGeNUx

Eco-Village d’Horizon Vert


Nouvelle-Aquitaine 🇫🇷
Publié le
lundi 05 octobre 2026 19h03
Importé le
lundi 05 octobre 2026 21h04
Notre association aGeNUx était présente à la manifestation, représentée par Lucile, Denis et Phil Gia. Nous étions relativement bien placés, tout près de l’entrée du village. Si bien que régulièrement des visiteurs se sont arrêtés à notre stand. Certains se sont montrés très intéressés, et nous devrions en revoir prochainement au Campus Numérique. Nous en … Continuer la lecture de « Eco-Village d’Horizon Vert »
LinuxFr

Revue de presse de l’April pour la semaine 40 de l’année 2026


Internet
Publié le
lundi 05 octobre 2026 16h40
Importé le
lundi 05 octobre 2026 21h04

Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.

[Silicon.fr] 15 outils open source à mettre dans sa toolbox IA

✍ Clément Bohic, le mercredi 30 septembre 2026.

Ces outils sous licence Apache ou MIT couvrent le cycle de vie des projets IA, de la gestion des connaissances au pilotage d’agents.

[ZDNET] Libre et open source express: IA vs Adullact, iNaturalist, Atos, communs agricoles

✍ Thierry Noisette, le mercredi 30 septembre 2026.

En bref. Pilonnage d’IA sur le Gitlab de l’Adullact. Atos crée un comité pour ‘allier IA, open source et souveraineté’. iNaturalist, ’l’appli qui prend soin de la nature’. OSFarm propose un annuaire des communs agricoles.

[ZDNET] 5 raisons pour lesquelles Linux va véritablement dominer l'avenir de l'informatique de bureau

✍ Jack Wallen, le mardi 29 septembre 2026.

Linux a le vent en poupe, et si la tendance continue à s’accentuer, nous pourrions bien assister cette année à l’avènement de Linux sur les ordinateurs de bureau.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Loxodata

Meetup du 22 septembre 2026 PostgreSQL à Toulouse


Bourgogne-Franche-Comté 🇫🇷
Publié le
lundi 05 octobre 2026 15h01
Importé le
lundi 05 octobre 2026 21h04

Meetup INSERT INTO meetup VALUES ('TLSPUG','Air France','2026-09-22');

Un nouveau meetup du PostgreSQL User Group Toulousain (AKA TLSPUG) a eu lieu le 22 septembre 2026 chez Air France à Toulouse. Pour cette édition, PostgreSQL US, auquel TLSPUG est affilié, a financé un drapeau afin de matérialiser l’entrée du meetup. Outre Air France, qui a sponsorisé les lieux, Percona a sponsorisé les pizzas et les boissons. Merci à eux!

Au menu des présentations lors de cette soirée, Dimitri Vanoverbeke de Pecona nous a présenté l’extension open source pg_tde permettant le chiffrement transparent des données dans une base PostgreSQL. Dimitri a surtout insisté sur les raisons qui ont fait que Percona a investi dans ce développement (les pourquois) et ce qu’il manquerait dans le noyau de PostgreSQL pour une adoption facilitée de cette extension. Il nous a également présenté les cas d’usages pour cette fonctionnalité.

L’autre grande présentation de la soirée a été celle de Marc Rechté de Météo-France : une comparaison pratique entre deux versions du pilote python pour PostgreSQL : psycopg2 et de psycopg3. Grâce à un notebook jupyter Marc nous a exposé les problématiques liées à l’utilisation des curseurs de façon didactique. Psycopg3 comble effectivement les manques observés dans psycopg2.

Enfin, le challenge trimestriel de votre serviteur : Présenter l’actualité de PostgreSQL et de son écosystème en moins de 5 minutes (en vrai, moins de 10 minutes) a permis de lister les « reverts » effectués sur la version 19 de PostgerSQL, suite à différents problèmes rencontrés lors des tests des versions bêta. Le challenge (en moins de 10 minutes) a été tenu.

Le prochain meetup aura lieu le 1er décembre 2026 à 19h00 chez Makina Corpus à Toulouse!

Les présentations qui ont été transmises par les intervenants sont disponibles au format PDF sur le site du TLSPUG.

Commission Open Source de Telecom Valley

Le premier TEDx de l’histoire de Sophia Antipolis arrive le 4 novembre


Provence-Alpes-Côte d'Azur 🇫🇷
Publié le
lundi 05 octobre 2026 14h32
Importé le
lundi 05 octobre 2026 21h04

L’article Le premier TEDx de l’histoire de Sophia Antipolis arrive le 4 novembre est apparu en premier sur Telecom Valley.

LinuxFr

🪶 Les journaux LinuxFr.org les mieux notés de septembre 2026


Internet
Publié le
lundi 05 octobre 2026 13h15
Importé le
lundi 05 octobre 2026 21h04

LinuxFr.org propose des dépêches et articles, soumis par tout un chacun, puis revus et corrigés par l’équipe de modération avant publication. C’est la partie la plus visible de LinuxFr.org, ce sont les dépêches qui sont le plus lues et suivies, sur le site, via Atom/RSS, ou bien via partage par messagerie instantanée, par courriel, ou encore via médias sociaux.

Ce que l’on sait moins, c’est que LinuxFr.org vous propose également de publier directement vos propres articles, sans validation a priori de lʼéquipe de modération. Ceux-ci s’appellent des journaux. Voici un florilège d’une dizaine de ces journaux parmi les mieux notés par les utilisateurs et les utilisatrices… qui notent. Lumière sur ceux du mois de septembre passé.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

April

Revue de presse de l’April pour la semaine 40 de l’année 2026


France 🇫🇷
Publié le
lundi 05 octobre 2026 11h18
Importé le
lundi 05 octobre 2026 13h04

Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.

[Silicon.fr] 15 outils open source à mettre dans sa toolbox IA

✍ Clément Bohic, le mercredi 30 septembre 2026.

Ces outils sous licence Apache ou MIT couvrent le cycle de vie des projets IA, de la gestion des connaissances au pilotage d’agents.

[ZDNET] Libre et open source express: IA vs Adullact, iNaturalist, Atos, communs agricoles

✍ Thierry Noisette, le mercredi 30 septembre 2026.

En bref. Pilonnage d’IA sur le Gitlab de l’Adullact. Atos crée un comité pour ‘allier IA, open source et souveraineté’. iNaturalist, ’l’appli qui prend soin de la nature’. OSFarm propose un annuaire des communs agricoles.

[ZDNET] 5 raisons pour lesquelles Linux va véritablement dominer l'avenir de l'informatique de bureau

✍ Jack Wallen, le mardi 29 septembre 2026.

Linux a le vent en poupe, et si la tendance continue à s’accentuer, nous pourrions bien assister cette année à l’avènement de Linux sur les ordinateurs de bureau.

Electrocycle

Prolonger la durée d’utilisation d’un smartphone le 17 oct. 2026 14h (JNR 2026 à la MIC)


Île-de-France 🇫🇷
Publié le
lundi 05 octobre 2026 10h55
Importé le
lundi 05 octobre 2026 13h04
Electrocycle et le bureau d’études en innovation sociale, InfoGnuEureka, en partenariat avec la MIC de l’Ile St Denis participeront aux journées nationales de la réparation à travers l’organisation d’un atelier visant à prolonger la durée d’utilisation d’un smartphone. Trois activités prévues en 1 seul événement : Mise à niveau de l’OS d’un smartphone ; Remplacement […]
April

« Libre à vous ! » sur radio Cause Commune (6 octobre 2026)


France 🇫🇷
Publié le
lundi 05 octobre 2026 10h35
Importé le
lundi 05 octobre 2026 13h04
Start: 6 Octobre 2026 - 15:30End: 6 Octobre 2026 - 17:00

287e émission Libre à vous ! de l'April en direct sur radio Cause Commune 93.1 FM et DAB+ en Île-de-France, et sur le site web de la radio, mardi 6 octobre 2025 de 15 h 30 à 17 h. Le podcast de l'émission et les podcasts par sujets traités sont disponibles dès que possible, quelques jours après l'émission en général.

Au programme :

  • sujet principal : Le logiciel Libre et les Journées Nationales de la Réparation, avec Tiphaine Breton, bénévole de l'association Les Petits Pois Sont Verts, et Koffi Hukportie, président de l'association Générations Solidaires Val d'Oise (GSVO)"
  • la chronique Pépites libres de Jean-Christophe Becquet sur le thème « *.data.gouv.fr : 10 ans de données ouvertes »
  • la chronique La Pituite de Luk sur le thème « Le réseau de confiance de mes rêves »
  • quoi de Libre ? Actualités et annonces concernant l'April et le monde du Libre

Nous contacter pour poser une question :

Intervenir pendant le direct (mardi 6 octobre 2025 de 15 h 30 à 17 h 00) :

Écouter le direct mardi 6 octobre 2025 de 15 h 30 à 17 h 00   S'abonner au podcast S'abonner à la lettre d'actus

Les ambitions de l'émission Libre à vous !

La radio Cause commune a commencé à émettre fin 2017 sur la bande FM en région parisienne (93.1) et sur Internet. Sur le site de la radio on lit : « Radio associative et citoyenne, les missions de Cause Commune sont de fédérer toutes les initiatives autour du partage et de l’échange de savoirs, de cultures et de techniques ».

Nous avons alors proposé de tenir une émission April intitulée Libre à vous ! — l'émission pour comprendre et agir avec l'April — d'explications et d'échanges concernant les dossiers politiques et juridiques que l'association traite et les actions qu'elle mène. Une partie de l'émission est également consacrée aux actualités et actions de type sensibilisation. L'émission Libre à vous ! est principalement animée par l'équipe salariée de l'April mais aussi par des membres bénévoles de l'association et des personnes invitées. Donner à chacun et chacune, de manière simple et accessible, les clefs pour comprendre les enjeux mais aussi proposer des moyens d'action, tel est l'objectif de cette émission hebdomadaire, qui est diffusée en direct chaque mardi du mois de 15 h 30 à 17 h.

Les archives de l'émission

Écouter les émissions précédentes

Tryton

Security Release for issue 15035


Wallonie 🇧🇪
Publié le
lundi 05 octobre 2026 08h00
Importé le
lundi 05 octobre 2026 13h05

lizparadox_ has discovered that the report name can be used to execute commands on the server.

Impact

CVSS v3.0 Base Score: 6.8

  • Attack Vector: Network
  • Attack Complexity: Low
  • Privileges Required: High
  • User Interaction: Required
  • Scope: Unchanged
  • Confidentiality: High
  • Integrity: High
  • Availability: High

Workaround

There is no workaround.

Resolution

All affected users should upgrade trytond to the latest version.

Affected versions per series:

  • trytond:
    • 8.0: <= 8.0.10
    • 7.8: <= 7.8.16

Not affected versions per series:

  • trytond:
    • 8.0: >= 8.0.11
    • 7.8: >= 7.8.17

Reference

Concerns?

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

1 post - 1 participant

Read full topic