Contributors mailing list archives

contributors@odoo-community.org

Browse archives

Avatar

Re: Removal of migration scripts on each new version

by
Opener B.V., Stefan Rijnhart
- 07/05/2025 15:41:34
Hi everybody,

thank you for your input. Some good points have been raised indeed not 
to keep the scripts by default:

* By assuming that keeping the migration script helps people, we might 
underestimate the ability of developers and consultants to recover from 
their absence. In this light, arguably, breaking a migration process 
with an invalid migration script might make things worse than having no 
migration at all, at least for non-developers.
* While in my experience migration scripts are testable, such tests are 
rare and may not be worthwhile and as such the untested migration 
scripts will lack the quality assurance that is the OCA seal.
* As a party that does a lot of migrations in the way that would 
potentially benefit by keeping the scripts, C2C has indicated that they 
prefer to use a bespoke selection of scripts.

I have also been browsing the migration scripts in 15.0, 16.0 and 17.0. 
On average, 5% of all modules have a migration script for the current 
version. For sure there are some scripts that are going to cause issues 
in later versions (scripts that update translatable fields using SQL 
before the translation refactoring, or scripts that query ir.property). 
At the same time, there are lots of scripts that are unproblematic for 
the next version. Most scripts are short and easy to review.

So I would still be interested to pursue a more pragmatic approach for 
this on the project/module/maintainer level, as Stéphane suggests below 
(and Sebasien Alix also hinted at). So that when we maintain, migrate, 
or review a module we can put in the extra effort to vouch for an older 
migration script to work on the next version. The policy would then 
still be to drop the scripts by default. Would that be something we can 
settle on?

On 07-05-2025 12:12, Stéphane Bidoul wrote:

> As a maintainer I would like to have the liberty of keeping the 

> migration scripts if I want to, as I think it is a good service to 

> provide to my users.

>

> In the modules I help maintaining it is usually not a problem nor 

> difficulty. For instance in mis_builder and queue_job It's likely that 

> we could have all the scripts for the past 8 versions run on the latest.

>

> So I don't quite understand why it is forbidden to keep them. If I 

> want to take responsibility for maintaining them I should be allowed 

> to do so.

>

> Best regards,

>

> -Stéphane


-- 
Opener B.V. - Business solutions driven by open source collaboration

Stefan Rijnhart - Consultant/developer

mail: stefan@opener.amsterdam
tel: +31 (0) 6 1447 8606
web: https://opener.amsterdam

Reference