Which python version is recommended with odoo? - odoo

What is the recommended version of python to use with openerp/odoo? Is it 2.7 or 3
All these days I was using 2.7 if I choose ver 3 will it cause any problems?

Odoo work with Python 2.7 up to version 10.0
For version 11.0, Python must be on version 3.5 or higher

I won't work yet with python 3. The best python version to have is the highest 2.7.* (at least 2.7.3).
You can see the major dependencies and python version in the installing tutorial:
Installing Odoo (version 8.0)
Installing Odoo (version 9.0)
On my operating system, python 3 is the default so to start an instance without using a bundle (in my case I clone the github repository), I use this command:
python2 ~/path-to-my-odoo-git/odoo.py -d odoo-test
As for when odoo will work with python 3, there is a number of needed python package dependencies not already ported to python 3. Even if they were already all ported, Odoo itself would take some efforts (without talking about all the ecosystem of custom addons which would get unusable untill ported).
So I guess it will not be available before 1 year and most probably not available before 2 or 3 years.

Related

Why are the bob databases (e.g. bob.db.arface) not available for Python 3.8

I have lately installed the latest version of Bob (particularly, the package bob.bio.face) (9.0) using conda and following the installation instructions. This automatically installed python version 3.8. When I try to run
bob bio pipelines vanilla-biometrics arface gabor_graph
I get the error: ModuleNotFoundError: No module named 'bob.db.arface'
So, I try to install bob.db.arface: conda install bob.db.arface. For some reason, this wants to install a whole new python version (3.7), and reinstall all bob packages.
Looking at the pipelines of bob.db.arface (https://gitlab.idiap.ch/bob/bob.db.arface/pipelines/45435), I can see that only python 3.6 and 3.7 is supported. It seems to be that this is true for many of the bob.db packages. Will there be versions for python 3.8 available, or do I need to downgrade to python 3.7?
In the new release of bob we deprecated all database packages and porting them one by one (once we have the time for it) to the new database interface (https://gitlab.idiap.ch/bob/bob.bio.face/-/issues/54).
If you want to use the old bob.dbs and the legacy database support (https://www.idiap.ch/software/bob/docs/bob/bob.bio.base/stable/legacy.html), please, rely on bob for py37.
Cheers
You may pip install the bob.db.arface package or use buildout but know that most bob.db. packages are deprecated in favor of the csv format. https://groups.google.com/g/bob-devel/c/6-4SxluHHrA

When a new version 3.X of Python is released, does it always require the Python.Net development team to release a new version of Python.Net?

I have a project that uses Python.Net for which I specify to customers that they need 'Python 3.6 or later'. However, when for example, Python 3.10 becomes the current default download from Python.org, does this mean that there will be a period of time where my applicaion won't work because Python.Net hasn't been updated to work with Python 3.10?
Or do I have to tell customers an upper bound value for the required Python verion?
That strongly depends on how are you distributing Python.NET.
If you are shipping Python.NET before 3.0 (3.0 has not been released yet) with your .NET app, it can only work with the specific python version it has been built for.
If you are asking users to install Python.NET using pip, I think it is possible to do it from source, in which case it should work with any Python 3.6+. You can check that by installing Python 3.10 preview and trying from there. Wheels of course are only built for existing python versions.
Python.NET 3.0 should be able to support future Python 3.x versions once released. But right now it is in flux, and the next release might take 6-12 months: many features are still being developed and/or reworked.

Python Interpreter Invalid when i configurePycharm

When I configure odoo with pycharm, I face the following issue:
My personal experience - python 3.8 doesn't fully compatible with Odoo. So I changed it with lower version and works great.
You can try with python 3.7 or 3.6 version.

is it possible to use 2 diffrent liberies when each one of them depends on diffrent version of protobuf?

in my JVM based project, I am loading 2 different libraries
1) CLD3 that uses protobuffer 3.8 and cannot be compiled otherwise
2) libtensorflow - 1.13.1 that uses protobuffer 3.7.1
that's throw error depending on who is loaded first
is there any way to solve this dependencies issue
if compiling with the same protobuffer version is not an option?
i forked tensorflow master branch , they add 5 days ago support for protobufffer 3.8 in this commit
https://github.com/ntedgi/tensorflow/commit/508f76b1d9925304cedd56d51480ec380636cb82
but its isn't a stable version and I really don't want to maintain this fork or wait until a new release

installing matplotlib on ubuntu?

I have:
Ubuntu 8.04
python 2.5.2 installed on this Ubuntu
matplotlib 0.92.0 installed
I want to upgrade to (atleast) matplotlib 0.99
so that I can do 3d plotting.
The synaptic package (also the command line apt-get)
tells me that whatever I have is the latest matplotlib (which is not true).
How can I install matplotlib 0.99 or matplotlib 1.0.1 ?
You have the latest available package version for your operating system. Given that Ubuntu is at version 11 now and you are using 8.04, the version difference in the matplotlib package might not come as very surprising.
As for installing the newest version, I'd suggest reading:
http://matplotlib.sourceforge.net/faq/installing_faq.html
...if all fails, you can always install from source.
Note that support for Desktop versions of 8.04 LTS is due to expire shortly -- if this is a desktop machine, perhaps the easiest answer is to upgrade to 10.04 LTS, 10.10, or the very-soon-upcoming 11.04 release (or whatever they'll call the next release). Maybe not "the easiest answer", but an answer that includes security updates for Mozilla, Adobe Flash, the Kernel, and so forth.
Many newer versions of packages are supported via the Ubuntu Backports facility, but I didn't spot python-matplotlib in the list of available packages. Perhaps they would provide it if you asked nicely, perhaps it would be too much work.
You can always try installing newer versions from newer releases, but newer versions of python and libraries might introduce worse problems. (But probably will work fine.) See the apt_preferences(5) manpage for details on how to configure multiple APT sources and select some specific packages from a newer distribution (pinning), and rely on the older distribution for all the other packages.
Jim's answer of building the version you need from source is probably your best second option, if installing a newer version of the distribution is too daunting / otherwise impossible at this point.