Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[V10] Package vcr should be vcrpy #113

Closed
Lazza opened this issue Mar 29, 2019 · 21 comments
Closed

[V10] Package vcr should be vcrpy #113

Lazza opened this issue Mar 29, 2019 · 21 comments
Milestone

Comments

@Lazza
Copy link

Lazza commented Mar 29, 2019

There is no package called vcr on PyPI:

https://pypi.org/project/vcr/

This should be the correct one, I think:

https://pypi.org/project/vcrpy/

This issue makes the module not installable even for people who don't use tests (end users).

@Lazza Lazza changed the title [V10] Package vcr should be pyvcr [V10] Package vcr should be vcrpy Mar 29, 2019
@pedrobaeza
Copy link
Member

One thing is the name of the pip library, and other the Python package that should be imported. vcrpy is pip one, but the vcr is the module to import, so everything is alright. Just install vcrpy.

@Lazza
Copy link
Author

Lazza commented Mar 29, 2019

@pedrobaeza seriously, have you even tried to install it?

pip install odoo10-addon-connector-prestashop

The manifest incorrectly refers to vcr as a requirement. This needs to be addressed instead of just ignoring it.

To date, the only way to install this module via pip is ignoring the dependencies and then adding them manually.

@Lazza
Copy link
Author

Lazza commented Mar 29, 2019

This is the offending line in the METADATA file, line 24:

Requires-Dist: vcr

@pedrobaeza
Copy link
Member

Then your problem is not with the module, but with the tricky pip installation, which I seriously hate. @sbidoul please one more time tell us how to map the manifest depends to proper library?

@pedrobaeza pedrobaeza reopened this Mar 29, 2019
@sbidoul
Copy link
Member

sbidoul commented Mar 29, 2019

hate is a strong word, Pedro.

@Lazza the root cause of this issue is odoo/odoo#25549

In the meantime, a mapping needs to be provided manually in setup.py. There is an example in the setuptools-odoo documentation, look at external_dependencies_override.

Are you in a position to do a PR?

@Lazza
Copy link
Author

Lazza commented Mar 29, 2019

Correct, although I would not consider the pip installation tricky at all. It works fantastically with every other OCA package I've tried so far and it's extremely convenient to set up Odoo in a virtual environment, having a reproducible situation all the time. 😄

In a sense, we might say my problem is with the wheel of the module that is published on PyPI.

@Lazza
Copy link
Author

Lazza commented Mar 29, 2019

Are you in a position to do a PR?

If you mean "are you experienced in Odoo development?" ... unfortunately no. 😞 But I might dig into the docs you kindly provided and try later.

@pedrobaeza
Copy link
Member

@sbidoul all the process to make it work through pip is really ugly and anti-natural (setup trick, dependency mapping, etc), so I have finished hating it, and more being something that is not used by main Odoo actors except barely you, but I should tolerate it being promoted to OCA official by you.

@pedrobaeza
Copy link
Member

@sbidoul isn't a way to detect through Travis this name mismatch and gives any clue? Or maybe through pylint-odoo?

@sbidoul
Copy link
Member

sbidoul commented Mar 29, 2019

The way to detect missing and wrong dependencies is to pip install the addons in mqt. This makes both oca_dependencies.txt and requirements.txt redundant, and you can still select specific branches on a per addon basis when needed with requirements.txt.

But again, the problem here is not with pip, it's due to the way Odoo declare and checks it's external dependencies, which was okay 10+ years ago when pypi did not exist, but is now totally outdated.

@pedrobaeza
Copy link
Member

pedrobaeza commented Mar 29, 2019

Yeah, I have seen your "request information update" in Odoo PR, but that will be for upstream. Fortunately, this name mismatch doesn't happen frequently, but I don't see feasible to change MQT to adapt to pip installation.

@sbidoul
Copy link
Member

sbidoul commented Mar 29, 2019

I don't see feasible to change MQT to adapt to pip installation

Why? OCA/maintainer-quality-tools#343 was working perfectly fine.

@pedrobaeza
Copy link
Member

OK, will check, but first you need to rebase and solve conflicts.

@sbidoul
Copy link
Member

sbidoul commented Mar 29, 2019

first you need to rebase and solve conflicts

Well... no. That PR is up since a long time and as received several approvals and positive comments. It can be reviewed as is if you want to. I'll do the rebase when there is an intention to merge it... and when I gather the mental energy to overcome the hate discourse. There is a fine line between direct and offensive talk, pay attention to it, please.

@pedrobaeza
Copy link
Member

OK, as you wish. My feelings about pip are not going to change, but that doesn't mean any offense to you, but if you think so, I will keep my opinion on the pip stuff since now.

@sbidoul
Copy link
Member

sbidoul commented Mar 29, 2019

The second part of #113 (comment) was personal and offensive indeed (and false, since this was a board decision)

@pedrobaeza
Copy link
Member

Well, that's not my intention, but I don't consider it false: you were the one that promoted that method. I'm not saying that the rest of the board opposed to it.

@pedrobaeza
Copy link
Member

Sorry again for my comments and please don't take into account. I will try to do the PR for this case as little intent for apologies.

@pedrobaeza
Copy link
Member

Please check #114 with a possible fix.

@sbidoul sbidoul closed this as completed Mar 29, 2019
@sbidoul
Copy link
Member

sbidoul commented Mar 29, 2019

I bumped the module version, it should land on pypi tomorrow.

@Lazza
Copy link
Author

Lazza commented Apr 3, 2019

I can confirm it works correctly. Thank you for the fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants