Community mailing list archives

Re: Should Odoo keep the old API for v10?

Andi Becker
- 05/10/2016 22:38:28

since 2002 we did several successful server migrations, so no worries as we know what we are talking about and very sure the others arguing here have experiences to but they - as I guess - keep their customers sites always updated and there servers too. The only problems we had in the past while migrating servers was that if the previous agency did only sell their stuff but did not maintain it propperly like it should be. In those cases it was indeed more difficult. Unfortunately their are quite a lot of agencies out there - Only guess - but for sure they would argue to stay with 2.7 as than they could keep their customers sites like you said for another 3 years and again not doing much to make after those three years an update or migration easier.

For them Version nine is just fine and Version 10 would do best to keep track and be realeased with Python 3

Instead of now investing and actually wasting time in getting things done with the new API which is alredy there in version 9 for those who like to waste money and resources , it would be much better and wiser to invest that money and resources in Odoo 10  running on python 3 and simply releasing it 6 months later.

This would also seperate the "Spreu vom Weizen" of agencies like we would say in Germany. Companies would soon realise which companies/ agencies/ develoers are goining with the time and with A future Proof Odoo 10 with Python 3 and no more backward compatibility to Python 2,7 and which companies will get stuck in future or latest in 3 years in the 2.7 based Odoo dead end road. Simply provide them the stable 9 version so they can be at least a bit happy.

Yes Python 2.7 and Python 3 are in some parts a little bit different and your developers would need perhaps to learn it. but imho this should be no problem for future oriented agencies.

Please don't throw to many stones in the roadmap of Odoo for its future. Customers want actually see a modern product and are asking more and mire for a Python 3 Odoo Version!

Perhaps you are right for those companies who only maintain old Odoo sites and make their money with that but right now many new companies want to switch to provide also Odoo services and for them an outdated and already on death row sitting Odoo 2.7 is a complete no go. They don't want to waste time in old stuff they like to build future proof Odoo installations for their customers.

On May 11, 2016, at 7:27, Eric Caudal <> wrote:

Not sure any of the people proposing python 3 for v10 (which is planned for tomorrow) really have a sense of the burden of a migration.
One problem/migration to be solved at a time: anyway there is no rush as there is still 3 yrs before deprecation so v11/v12 looks a good proposal.

Eric Caudal [Founder and CEO]
Skype: elico.corp. Phone: + 86 186 2136 1670 (Cell), + 86 21 6211 8017/27/37 (Office)
Elico Shanghai (Hong Kong/Shenzhen/Singapore) Odoo Gold Partner, best Odoo Partner 2014 for APAC
On 05/10/2016 09:35 PM, Andreas Becker wrote:
Old API users could stay with old stuff which means versions 7 and lower (Python 2.7 and lower)

New API users could use 8 and especially Version 9. They will actually benefit from the fact that the Version 9 will have lots and lots of more modules every week which run on the new API (Python 2.7)

Python 3 users can start developing modules and planning installations on Odoo 10. (Python 3)
If Odoo 10 will hit the surface six months later it still won't have many modules. The module migration process will take usually again about 1 year until most common modules will be migrated. 

This is enough time to plan new projects on Odoo 10 base on Python 3 and to migrate all custom modules too to Python 3

An exact release date would be very helpful, so customers can plan ahead and know when it would be the best time to start their old stuff migration process to Python 3.


Nhomar stay with Odoo 9 and its API and you will be fine. Test it even with more tests what kind however but stay with 9 as this will be the fastest way - but also the way with no big future. but OK your customers might be happy with it!

Odoo 10 with Python 3 can be tested and the phase you will be testing will take much less amount of time and valuable resources and of course money than

an Odoo 10 with Python 2 but a new API, where you would need to convert your whole stuff first and than again short after again you would need to convert all your stuff again to Python 3, which is - sorry to say this - but it is stupid!

If you want to have a stable system for the next 2-3 years simply use Odoo 9 and if you want to convert in the way which I think it is a waste of money - the 2 step way - well than do it and let your customers pay you for the job. It is a nice way of job creation - here you are right!

But if you want to be customer friendly than you simply would recommend your customers to wait until Odoo 10 with  Python 3 is out and meanwhile start convertng all your modules to Python 3 too. This way your customers will have a clean codebase, enough time to test the Python 3 Odoo while still have a well and stable running old Odoo site or if they are lucky one already with new API.


In nearly every talk with customers the Python 3 Problem gets mentioned from customers and agencies which like enhance their product line with providing also Odoo services.


Python 3

is the way you should go for the future! IMHO it is already quite late to start with Python 3 and should have happened much earlier!

On Tue, May 10, 2016 at 8:38 AM, Cocopapa <> wrote:
+1 @Mohamed Magdy

Nhomar even you migrate the rest of the code to 2.7 it won't be tested faster than it would be tested if you migrate it now to Python 3.

IMHO first priority would be the migration to Python 3! And give it half a year longer until Version 10 appears on the market.

Migrating to the new API costs a lot of money for a lot of companies if the old API gets dropped as they all would need to migrate their complete custom stuff from the Old to the New API

The same way they would need to migrate all their stuff to a Version 10 ODOO running on Python 3

Instead of having twice the head ache of migrating code first to the new API in Version 10 and than to Python 3 in Version 11 costs a lot of more time and money than simply migrating it directly to Version 3 Python already with Version 10.

And I see no problem if Odoo 10 would appear 6 months later on the market because of the migration to Python 3.

People who would like to migrate in 2 steps could migrate to version 9 first and than to Version 10 with Python 3.

this way you would have a stable and well running Version 9 with new API for all those people who want to migrate in a very costy 2 step process like mentioned from Mr Hernandez and Cody

and it would give enough time to migrate and test the code for Version 10 which would than run entirely on Python 3 - best without any slowing down and perhaps blocking compatibility stuff for Version 2.7 Python.

As most users use their Odoo Versions for very long time - a reason why their are still a lot of Version 5 and version 6 and Version 7 sites out their - it is recommended to extend the support for Version 9 perhaps a bit longer for those guys who can afford a two way migration.

For all others the Version 10 running on Python 3 would be the much better option. Especially for those who regularly update their customers sites to current code bases and keep sites secure and updated and of course for all those who will start new projects. Those new projects could be done entirely on Version 10 with Python 3 without any compatibility headaches or worries because of python 2.7. 


A migration to Python 3 in Version 11 (perhaps out in 2018 and Version 12 perhaps out in a stable version in 2020) is not economical feasible and not recommended. Meanwhile competitors will appear and simply take over again market shares which have been just getting to Odoo. People at Tryton and other ERP systems are not sleeping at all and it will be only a question of time - and the clock will run against the current Odoo development plan - until they will have nice easy to handle website builders and other nice features you currently find in odoo 9 integrated.

The DHL etc modules already are much much better in Tryton - and Tryton is already Python 3!!! So they can invest their time in usability and making the Tryton stuff more handy and userfriendly. And Tryton is only one example, there are for sure many more.


The Odoo Technical Team Leader Mohamed Magdy and Zahid Jalal made very good points in their argumentations. 

Changing all stuff to new API 2.7 first and than to Python 3 on a far far away release date can only be recommended by people who like to keep old stuff as long as possible, even it is already outdated or long long time already on death row with final date.  Lazyness and Sabai Sabai (like we say here) Behaviour would cause a loss of customers as most of our customers and those agencies which contact us are concerning Python 3 and they are worried especially also because many of them are running on Ubuntu and here it has been already made clear that Python 2.7 will be available but their complete focus for the future will be on Python 3!!! For sure other will follow that example. 

With Python 2.7 and Python 3 it is pretty much similar to the date when PHP 5.2 was announced as the one and only way to go! And it will be again the same with PHP 7 - already CRMs like TYPO3 and others go with the time (which is fast developing) - and focus on the future of the internet and coding standards.

Those standards won't include Python 2.7 but for sure they will be based on a Python 3 Version.


Like mentioned already

for all those who are addicted to the past and who would like a well tested Odoo with new API - Please Please use Version 9 and as it will be much better tested as a Version 10 and of course you can run even your own Unit Tests on Version 9 too

For all others I recommend delaying the release of Odoo 10 - even for 6 months (October 2017) - but release it based entirely on Python 3.

The number "10" would be also a nice time to switch to Python 3 as than all future versions which run on 2 digits Version numbers would be Python 3 and all one digit version numbers would be Python 2.7 ;-)


On Tue, May 10, 2016 at 6:47 AM, Nhomar Hernandez <> wrote:

On Mon, May 9, 2016 at 6:20 PM, zahid jalal <> wrote:
+1 @Mohamed Magdy

Post to:

Post to:

Post to: