-
-
Notifications
You must be signed in to change notification settings - Fork 534
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
Revert "[16.0][FIX] pinned requests_pkcs12 version due cryptography dependency" #3987
base: 16.0
Are you sure you want to change the base?
Conversation
…ependency" This reverts commit 6e3f594. The fix started producing other dependency conflicts: ERROR: Cannot install requests_pkcs12 because these package versions have conflicting dependencies. The conflict is caused by: requests-pkcs12 1.22 depends on requests>=2.26.0 The user requested (constraint) requests==2.25.1
Hi @ao-landoo, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hola! ao-landoo ya no es mantendor, ¿quíén podría revisar este PR por favor @OCA/local-spain-maintainers ?
This PR has the |
@extrememicro fue el que tuvo el problema, así que debéis acordar entre los dos la solución adecuada para todos. |
@yajo pero creo que muchos instalaran los requirements de la localización sin el constraint al requirements de Odoo, como el Runboat, o Doodba, por ejemplo. |
Es otra opción. No obstante, en general, usar los constraints es mucho mejor porque permites a cualquiera la libertad de instalar la versión que no colisione con el resto de su entorno. Se pueden usar los constrains en Doodba y básicamente cualquier sitio que use un
Puesto que nuestros constraints se autogeneran, si los escribimos en el manifest estamos realmente creando una dependencia estricta. Puede ser que alguien prefiera actualizar los paquetes más allá de lo que Odoo recomienda (y por tanto tenga sus propios requirements o constraints), como se ve en OCA/oca-ci#66 (comment). En resumen, no deberíamos restringir la instalación de una determinada versión de una dependencia solamente porque una subdependencia no sea exactamente la favorita de Odoo SA, sino solamente porque realmente es la única versión compatible. Este acercamiento permite más flexibilidad a la hora de reutilizar las piezas que la OCA proporciona, y por eso creo que es mejor. |
Aquí revierto #3954 pues el fix empezó a romper nuestro CI:
En resumidas cuentas, lo que viene diciendo es que al exigir
requests-pkcs12==1.22
, estamos rompiendo este constraint de Odoo.Esto me ha empezado a suceder porque usamos el archivo
requirements.txt
de Odoo como un pip contraint y no como un pip requirements. Algo así:Lo hacemos así para siempre coger las dependencias más modernas que necesitan los módulos de OCA, pero respetando las restricciones últimas que establece Odoo. Para que esto funcione, es mejor que los repos de OCA no definan restricciones de versiones1, y dejar que sea Odoo quien las restrinja.
Dicho de otra forma, si usas el
requirements.txt
de OCA, es mejor que dicho archivo no congele versiones para que sea Odoo quien lo haga.Dejo el PR en borrador hasta que compruebe si esto realmente resuelve el problema.1 Las restricciones de versiones que tengan sentido se deben poner, por supuesto (si el módulo es incompatible con cierta versión de cierta dependencia). Pero si se ponen solo para evitar conflictos o reinstalaciones, es contraproducente, y es preferible hacerlo con constraints como se explica arriba.
@moduon MT-8983