This question has been flagged
1 Reply
2318 Views


Hello, I'm a complete newbbie about odoo and I thank you for your time and help.

In the last month I installed more times Odoo from source onto a 32bit Windows 7 machine. I ran odoo and did some scaffolding without problems.

In the last days I installed, always from source, Odoo (odoo_8.0.20150318) onto a 64bit Windows 8 machine. As usual I edited the requirements.txt

file to comment out python-ldap, gevent and psutil like documentation says.

It had been running without problems for 2 days.

Then I tried to scaffolding a new module and I got an error about ldap....

if I well remember odoo/openerp/cli/__init__.py was trying to import the auth_ldap module

....

for m in module.get_modules():

m = 'openerp.addons.' + m

__import__(m)

....

I don't understand why this didn't happen previous times, anyway to reach my goal I just put a print before the __import__ and an if-test module

name = "auth_ldap" then continue. It worked and I restored the modified code.

Anyway it's not this the strange thing I'm going to talk about...

I did some changes to my new module and it worked. After a while suddenly odoo stopped starting, even if leaving out my new module.

(I'm sorry I don't have a traceback anymore):

odoo/openerp/cli/deploy.py was getting an import error when trying to do "from . import Command" (one of the first things it does)

odoo/openerp/cli/deploy.py is imported by odoo/openerp/cli/__init__.py whose defines the class Command himself!!

The fact is that the "import deploy" was used first than the Command definition. And this makes me perfectly understand why it wasn't starting...

... but how could it before??

Later I had the idea of renaming the "odoo" folder into "odoo_old" e unzipping the same tar source code file I used before. I started odoo and it ran!

Later I compared the "odoo" and "odoo_old" folders and I found a lot of differences, mainly in PY files and mainly in its "import": the import order

was complete different. And looking at the odoo/openerp/cli/__init__.py the Command definition was this time executed BEFORE the "import deploy"!!

So my question is: why odoo source changed themselves, when does this happen, who does this, and why in a wrong way?

And does this mean that if a customer of mine has any problem, to be sure to successfully replicate the problem do I need copy the whole odoo installation (folder)

instead of using the develop/test one even if born with the same release?

Avatar
Discard
Best Answer

Hello,


No the code of V8 doesn't change alone.

The only code that we change is for fix, and we try/must to stay always retro-compatible.

You can have a list of the last modification for v8 here: https://github.com/odoo/odoo/commits/8.0

As you can see, we don't change import or other thing in the last weeks.

Last update of the init file is : e20cf77 on Jul 12, 2015 @dreispt dreispt [FIX] cli: Backport client command discovery optimization

src: https://github.com/odoo/odoo/commits/8.0/openerp/cli/__init__.py


So in theory, no, you don't need to replicate the whole odoo installation.If both branchs are at the the same release, run with the same config, and the same addons-path...


I have no explication for your problem... It's strange... but we don't change it 'in a wrong way" :)

Avatar
Discard