Community mailing list archives
Re: Should Odoo keep the old API for v10?by
On May 11, 2016, at 7:27, Eric Caudal <firstname.lastname@example.org> 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.
On Tue, May 10, 2016 at 8:38 AM, Cocopapa <email@example.com> 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 ;-)