-
Notifications
You must be signed in to change notification settings - Fork 17
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
Conflicting and outdated requirements for calamari-ocr #294
Comments
ocrd_calamari will be updated to support Calamari 2.1.x. It will then still need TensorFlow 2, other processors need TensorFlow 1, so you can't get around it. |
The latter is an artefact of the very early days (before ocrd_calamari even existed) and will likely be removed soon. See cisocrgroup/ocrd_cis#88
That interpretation of the situation is wrong. We need
As Mike already pointed out, this is already planned – see OCR-D/ocrd_calamari#61 – but is not an ocrd_all issue. Can we close? |
TF2 can simply be installed in the default venv. There is no need for an extra The issue can be closed after removing that outdated submodule. |
Maybe we can agree that submodules which use recent software versions should ideally be installed in the default venv. Additional venvs should be avoided where possible. They cannot be avoided for submodules which use incompatible old software versions, so for example |
If ocrd_cis requires calamari 0.3.5 then it should probably go to the environment supporting TF 1.x. |
What are you talking about? ocrd_cis is one of the most important modules we have.
TF in the main venv has brought us into mutual dependency hell with other modules in the past (numpy IIRC), probably does today, and certainly will in the future. Abandoning this long held precaution makes no sense, because you don't even save up much space (the large packages are TF and its dependents, not the stuff in the main venv). Same is true for headless-torch14 BTW (which I saw you attempt to remove in some other branch). |
Yes, but that old version does not depend on TF though (only protobuf). So my take is still that this should be removed from ocrd_cis soon. |
I misunderstood your "will likely be removed soon". Then let's wait until for the updates of |
I don't see any conflict. They reside in different venvs. If you hope to achieve all-in-one (fat) builds without sub-venvs, then let me reiterate that this is fruitless: there will always be some conflicts around the corner in this evolving federated system. We'll need to manage sub-venvs as long as we have no other isolation mechanism (think: networking). |
100% agree with this. You'll always have conflicting dependencies and it's best to have a solution that works with this fact - separate venvs or containers. |
For the current |
fixed long ago |
ocrd_calamari
requirescalamari-ocr == 1.0.*
, whileocrd_cis
requirescalamari_ocr == 0.3.5
. That causes a conflict which is currently only avoided by using a sub venvheadless-tf2
forocrd_calamari
. I'd like to get rid of that sub venv as it does not seem to be necessary otherwise.In addition, both requirements are really outdated. The latest release is
2.1.4
. It is desirable to use that.The text was updated successfully, but these errors were encountered: