Open pdallair opened 2 years ago
I think most would agree with you that the process is not push button. Improvement would be excellent.
PRs welcome.
Conceptually simple, the devil is in the details. As shown by this https://github.com/Android-for-Python/Android-for-Python-Users#requirements which is a list of examples and not a set of rules. That list is definitely not exhaustive. Recipes create some special cases, and false positives result in apk bloat. In addition abstraction requires that any fails are reported meaningfully.
So a PR that addresses these would be, I think, great.
Is there a concrete reason why this argument is being used? Would removing it break any use cases or other parts of this package?
The historical reason for this is that pip used to pull in dependencies without being aware of what would actually build correctly for android, and python-for-android wasn't always able to catch and prevent those builds leading to apks being broken with difficult-to-understand architecture-related errors. This was quite common as it affected a few common packages that were often pulled in as dependencies (I think especially e.g. numpy), and --no-deps
improved things as it forced dependency builds to use their recipes as expected.
This was always a workaround rather than an ideal architecture though, it isn't fundamentally necessary and it was always expected that python-for-android could be improved to handle this all better and automatically resolve dependencies. Indeed, maybe it already does a better job, this hasn't really been revisited for years.
In other words, what you are saying @inclement, it's that some of the indirect dependencies pulled in might require a recipe. Correct?
I am glad to see you folks are open to my suggestion. I will voluntarily investigate to see if there's a way to automate the use of recipes with these indirect dependencies when possible. It would be an honor for me to find a solution and create a PR that could lead to my first ever contribution to an open-source project.
Let me know if you have any suggestions or practical advice along the way.
The --no-deps
flag was introduced here: https://github.com/kivy/python-for-android/pull/557 and the aim was to avoid the substitution of an already built (via recipe) package.
Considering that an eventual dependency of a pip installed package that is not plain Python will just fail to build, is definitely a good idea to get rid of the --no-deps
flag.
I have seen a lot of new users on support channels complaining about it. The most extensive example are users with requests
into their requirements
that have a lot of plain Python dependencies that are not automatically resolved.
Something similar happened, and has been fixed here:
Considering that an eventual dependency of a pip installed package that is not plain Python will just fail to build, is definitely a good idea to get rid of the --no-deps flag.
The problem at the time was that it would fail to build in a way that p4a didn't notice/detect, then the apk would crash with an obscure (for a python user) error. This was also a common problem that people complained about a lot. I don't know what's the best option, and things may have improved, but it did make sense at the time imo.
The requests issue was originally further worked around by having a recipe for it, but of course that wasn't a good resolution of the real issue.
Alright, so... I've managed to create a "testapp" that would require numpy
(a dependency that needs to be installed using the recipe) indirectly through the astropy
. As predicted, after removing the --no-deps
argument usage in build.py
, some recipes are skipped and weird error messages show up when trying to run the app on my android device. In this case the error message is as follows:
12-09 21:12:20.631 545 25974 I python : Traceback (most recent call last):
12-09 21:12:20.631 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/app/main.py", line 10, in <module>
12-09 21:12:20.631 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/__init__.py", line 42, in <module>
12-09 21:12:20.631 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/config/__init__.py", line 10, in <module>
12-09 21:12:20.632 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/config/configuration.py", line 24, in <module>
12-09 21:12:20.632 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/utils/__init__.py", line 17, in <module>
12-09 21:12:20.632 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/utils/codegen.py", line 13, in <module>
12-09 21:12:20.632 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/utils/introspection.py", line 14, in <module>
12-09 21:12:20.632 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/utils/decorators.py", line 15, in <module>
12-09 21:12:20.633 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/astropy/utils/exceptions.py", line 11, in <module>
12-09 21:12:20.633 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/erfa/__init__.py", line 5, in <module>
12-09 21:12:20.633 545 25974 I python : File "/home/pdallair/dev/PycharmProjects/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/p4anodepstest/erfa/version.py", line 25, in <module>
12-09 21:12:20.633 545 25974 I python : ImportError: dlopen failed: "/data/data/org.kivy.p4anodepstest/files/app/_python_bundle/site-packages/erfa/ufunc.so" is 64-bit instead of 32-bit
This may be one of those "obscure (for a python user) error" messages that @inclement mentioned. Although I doubt the accuracy of the error message (my mobile device is 64-bit... I think...), I believe it's safe to say that some files were compiled by pip to run on my Ubuntu VM and not an android device, in line with your prediction.
1) Compile a list of what would be installed by pip (a "dry-run"*)
2) Identify and extract the elements from the list that:
a) Have already been "built".
b) Have a recipe.
3) Install/Build the extracted that require using their recipe.
4) Install all remaining using pip install
with the --no-deps
argument (to avoid reinstalling what was handled in step 3, similar to it's original purpose).
* Sadly pip doesn't have a --dry-run
options (which is apparently something people have been asking for but never obtained). The workaround for this seems to be creating a temporary virtual environment, installing what we need, checking what got installed alongside it and then delete this temporary venv. Pretty gross but that's how I originally compiled my list of requirements for my buildozer.spec
before removing --no-deps
, just didn't automate it.
What do you guys think? To keep the installation via recipe and via pip separate maybe this "dry-run" approach ought to be done very early on in the build process. So far I haven't looked beyond the one method that took care of "all non-recipe things" (as was beautifully commented in the code :smile: ) so feedback before or as I'm digging would be appreciated.
Let me know what you think.
@pdallair If you expand the original requirements list with a "dry-run" and then pass that back into the requirements, then steps 2-4 should be unnecessary.
The only complication would be recipes that aren't also pip packages (e.g. python3
).
Hey folks. I'm almost done with this fix. I've pushed commits to my forked repository if you want to check them out. However there is one thing I've noticed that I'd like to get your input on before submitting the PR.
A bit of context first: To compile the expanded list of requirements I use the pip-compile
command from jazzband/pip-tools. Here's an example of it's usage:
pdallair@ubuntu-vbox$ echo -e "mle-monitor\ntelenium" > requirements.in && pip-compile -v --dry-run --annotation-style=line && rm requirements.in
Using indexes:
https://pypi.org/simple
ROUND 1
Current constraints:
mle-monitor (from -r requirements.in (line 1))
telenium (from -r requirements.in (line 2))
Finding the best candidates:
found candidate mle-monitor==0.0.1 (constraint was <any>)
found candidate telenium==0.5.0 (constraint was <any>)
Finding secondary dependencies:
telenium==0.5.0 not in cache, need to check index
Collecting telenium==0.5.0
Using cached telenium-0.5.0-py2.py3-none-any.whl (332 kB)
telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2
mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich
New dependencies found in this round:
adding ('cherrypy', '>=10.2.1', [])
adding ('commentjson', '', [])
adding ('dotmap', '', [])
adding ('gitpython', '', [])
adding ('google-cloud-storage', '', [])
adding ('gputil', '', [])
adding ('json-rpc', '>=1.10.3', [])
adding ('mako', '>=1.0.6', [])
adding ('numpy', '', [])
adding ('pandas', '', [])
adding ('pickledb', '', [])
adding ('pillow', '', [])
adding ('plotext', '', [])
adding ('psutil', '', [])
adding ('pyyaml', '', [])
adding ('rich', '', [])
adding ('werkzeug', '>=0.12.2', [])
adding ('ws4py', '>=0.4.2', [])
Removed dependencies in this round:
------------------------------------------------------------
Result of round 1: not stable
ROUND 2
Current constraints:
CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2))
commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1))
dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1))
GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1))
gputil (from mle-monitor==0.0.1->-r requirements.in (line 1))
json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2))
Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2))
mle-monitor (from -r requirements.in (line 1))
numpy (from mle-monitor==0.0.1->-r requirements.in (line 1))
pandas (from mle-monitor==0.0.1->-r requirements.in (line 1))
pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1))
Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1))
plotext (from mle-monitor==0.0.1->-r requirements.in (line 1))
psutil (from mle-monitor==0.0.1->-r requirements.in (line 1))
pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1))
rich (from mle-monitor==0.0.1->-r requirements.in (line 1))
telenium (from -r requirements.in (line 2))
Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2))
ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates:
found candidate cherrypy==18.6.1 (constraint was >=10.2.1)
found candidate commentjson==0.9.0 (constraint was <any>)
found candidate dotmap==1.3.26 (constraint was <any>)
found candidate gitpython==3.1.24 (constraint was <any>)
found candidate google-cloud-storage==1.43.0 (constraint was <any>)
found candidate gputil==1.4.0 (constraint was <any>)
found candidate json-rpc==1.13.0 (constraint was >=1.10.3)
found candidate mako==1.1.6 (constraint was >=1.0.6)
found candidate mle-monitor==0.0.1 (constraint was <any>)
found candidate numpy==1.21.5 (constraint was <any>)
found candidate pandas==1.3.5 (constraint was <any>)
found candidate pickledb==0.9.2 (constraint was <any>)
found candidate pillow==8.4.0 (constraint was <any>)
found candidate plotext==4.1.3 (constraint was <any>)
found candidate psutil==5.8.0 (constraint was <any>)
found candidate pyyaml==6.0 (constraint was <any>)
found candidate rich==10.16.1 (constraint was <any>)
found candidate telenium==0.5.0 (constraint was <any>)
found candidate werkzeug==2.0.2 (constraint was >=0.12.2)
found candidate ws4py==0.5.1 (constraint was >=0.4.2)
Finding secondary dependencies:
dotmap==1.3.26 requires -
rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0
pillow==8.4.0 requires -
numpy==1.21.5 requires -
pickledb==0.9.2 requires -
cherrypy==18.6.1 not in cache, need to check index
Collecting CherryPy==18.6.1
Using cached CherryPy-18.6.1-py2.py3-none-any.whl (419 kB)
cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile
mako==1.1.6 not in cache, need to check index
Collecting Mako==1.1.6
Using cached Mako-1.1.6-py2.py3-none-any.whl (75 kB)
mako==1.1.6 requires MarkupSafe>=0.9.2
json-rpc==1.13.0 not in cache, need to check index
Collecting json-rpc==1.13.0
Using cached json_rpc-1.13.0-py2.py3-none-any.whl (41 kB)
json-rpc==1.13.0 requires -
pyyaml==6.0 requires -
google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six
telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2
gputil==1.4.0 requires -
ws4py==0.5.1 not in cache, need to check index
Collecting ws4py==0.5.1
Using cached ws4py-0.5.1.tar.gz (51 kB)
ws4py==0.5.1 requires -
werkzeug==2.0.2 not in cache, need to check index
Collecting Werkzeug==2.0.2
Using cached Werkzeug-2.0.2-py3-none-any.whl (288 kB)
werkzeug==2.0.2 requires -
psutil==5.8.0 requires -
gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10"
commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1
pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3
mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich
plotext==4.1.3 requires -
New dependencies found in this round:
adding ('cheroot', '>=8.2.1', [])
adding ('colorama', '<0.5.0,>=0.4.0', [])
adding ('commonmark', '<0.10.0,>=0.9.0', [])
adding ('gitdb', '<5,>=4.0.1', [])
adding ('google-api-core', '<3.0dev,>=1.29.0', [])
adding ('google-auth', '<3.0dev,>=1.25.0', [])
adding ('google-cloud-core', '<3.0dev,>=1.6.0', [])
adding ('google-resumable-media', '<3.0dev,>=1.3.0', [])
adding ('jaraco.collections', '', [])
adding ('lark-parser', '<0.8.0,>=0.7.1', [])
adding ('markupsafe', '>=0.9.2', [])
adding ('more-itertools', '', [])
adding ('numpy', '>=1.17.3', [])
adding ('portend', '>=2.1.1', [])
adding ('protobuf', '', [])
adding ('pygments', '<3.0.0,>=2.6.0', [])
adding ('python-dateutil', '>=2.7.3', [])
adding ('pytz', '>=2017.3', [])
adding ('requests', '<3.0.0dev,>=2.18.0', [])
adding ('six', '', [])
adding ('typing-extensions', '>=3.7.4.3', [])
adding ('zc.lockfile', '', [])
Removed dependencies in this round:
removing ('numpy', '', [])
------------------------------------------------------------
Result of round 2: not stable
ROUND 3
Current constraints:
cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2))
colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1))
commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1))
gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-api-core<3.0dev,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-auth<3.0dev,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
gputil (from mle-monitor==0.0.1->-r requirements.in (line 1))
jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2))
lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1))
Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2))
MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2))
mle-monitor (from -r requirements.in (line 1))
more-itertools (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1))
pandas (from mle-monitor==0.0.1->-r requirements.in (line 1))
pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1))
Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1))
plotext (from mle-monitor==0.0.1->-r requirements.in (line 1))
portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
protobuf (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
psutil (from mle-monitor==0.0.1->-r requirements.in (line 1))
pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1))
requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
rich (from mle-monitor==0.0.1->-r requirements.in (line 1))
six (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
telenium (from -r requirements.in (line 2))
typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2))
ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2))
zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates:
found candidate cheroot==8.5.2 (constraint was >=8.2.1)
found candidate cherrypy==18.6.1 (constraint was >=10.2.1)
found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0)
found candidate commentjson==0.9.0 (constraint was <any>)
found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0)
found candidate dotmap==1.3.26 (constraint was <any>)
found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5)
found candidate gitpython==3.1.24 (constraint was <any>)
found candidate google-api-core==2.3.2 (constraint was >=1.29.0,<3.0dev)
found candidate google-auth==2.3.3 (constraint was >=1.25.0,<3.0dev)
found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev)
found candidate google-cloud-storage==1.43.0 (constraint was <any>)
found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev)
found candidate gputil==1.4.0 (constraint was <any>)
found candidate jaraco.collections==3.4.0 (constraint was <any>)
found candidate json-rpc==1.13.0 (constraint was >=1.10.3)
found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0)
found candidate mako==1.1.6 (constraint was >=1.0.6)
found candidate markupsafe==2.0.1 (constraint was >=0.9.2)
found candidate mle-monitor==0.0.1 (constraint was <any>)
found candidate more-itertools==8.12.0 (constraint was <any>)
found candidate numpy==1.21.5 (constraint was >=1.17.3)
found candidate pandas==1.3.5 (constraint was <any>)
found candidate pickledb==0.9.2 (constraint was <any>)
found candidate pillow==8.4.0 (constraint was <any>)
found candidate plotext==4.1.3 (constraint was <any>)
found candidate portend==3.1.0 (constraint was >=2.1.1)
found candidate protobuf==3.19.1 (constraint was <any>)
found candidate psutil==5.8.0 (constraint was <any>)
found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0)
found candidate python-dateutil==2.8.2 (constraint was >=2.7.3)
found candidate pytz==2021.3 (constraint was >=2017.3)
found candidate pyyaml==6.0 (constraint was <any>)
found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev)
found candidate rich==10.16.1 (constraint was <any>)
found candidate six==1.16.0 (constraint was <any>)
found candidate telenium==0.5.0 (constraint was <any>)
found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3)
found candidate werkzeug==2.0.2 (constraint was >=0.12.2)
found candidate ws4py==0.5.1 (constraint was >=0.4.2)
found candidate zc.lockfile==2.0 (constraint was <any>)
Finding secondary dependencies:
google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0
rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0
gitdb==4.0.9 requires smmap<6,>=3.0.1
pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3
psutil==5.8.0 requires -
pyyaml==6.0 requires -
zc.lockfile==2.0 not in cache, need to check index
Collecting zc.lockfile==2.0
Using cached zc.lockfile-2.0-py2.py3-none-any.whl (9.7 kB)
zc.lockfile==2.0 requires setuptools
dotmap==1.3.26 requires -
ws4py==0.5.1 requires -
google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0
gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10"
lark-parser==0.7.8 requires -
telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2
pickledb==0.9.2 requires -
cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile
protobuf==3.19.1 requires -
mako==1.1.6 requires MarkupSafe>=0.9.2
typing-extensions==4.0.1 requires -
google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six
json-rpc==1.13.0 requires -
jaraco.collections==3.4.0 not in cache, need to check index
Collecting jaraco.collections==3.4.0
Using cached jaraco.collections-3.4.0-py3-none-any.whl (10 kB)
jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text
pillow==8.4.0 requires -
pygments==2.10.0 requires -
colorama==0.4.4 requires -
numpy==1.21.5 requires -
plotext==4.1.3 requires -
pytz==2021.3 requires -
werkzeug==2.0.2 requires -
python-dateutil==2.8.2 requires six>=1.5
commonmark==0.9.1 requires -
markupsafe==2.0.1 not in cache, need to check index
Collecting MarkupSafe==2.0.1
Using cached MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (30 kB)
markupsafe==2.0.1 requires -
commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1
requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1
mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich
six==1.16.0 requires -
cheroot==8.5.2 not in cache, need to check index
Collecting cheroot==8.5.2
Using cached cheroot-8.5.2-py2.py3-none-any.whl (97 kB)
cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0
google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0
portend==3.1.0 not in cache, need to check index
Collecting portend==3.1.0
Using cached portend-3.1.0-py3-none-any.whl (5.3 kB)
portend==3.1.0 requires tempora>=1.8
more-itertools==8.12.0 not in cache, need to check index
Collecting more-itertools==8.12.0
Using cached more_itertools-8.12.0-py3-none-any.whl (54 kB)
more-itertools==8.12.0 requires -
gputil==1.4.0 requires -
google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0
New dependencies found in this round:
adding ('cachetools', '<5.0,>=2.0.0', [])
adding ('certifi', '>=2017.4.17', [])
adding ('charset-normalizer', '~=2.0.0', [])
adding ('google-api-core', '<3.0dev,>=1.21.0,>=1.29.0', [])
adding ('google-auth', '<3.0dev,>=1.24.0,>=1.25.0', [])
adding ('google-crc32c', '<2.0dev,>=1.0', [])
adding ('googleapis-common-protos', '<2.0dev,>=1.52.0', [])
adding ('idna', '<4,>=2.5', [])
adding ('jaraco.classes', '', [])
adding ('jaraco.functools', '', [])
adding ('jaraco.text', '', [])
adding ('more-itertools', '>=2.6', [])
adding ('protobuf', '>=3.12.0', [])
adding ('pyasn1-modules', '>=0.2.1', [])
adding ('rsa', '<5,>=3.1.4', [])
adding ('setuptools', '>=40.3.0', [])
adding ('six', '>=1.11.0,>=1.5,>=1.9.0', [])
adding ('smmap', '<6,>=3.0.1', [])
adding ('tempora', '>=1.8', [])
adding ('urllib3', '<1.27,>=1.21.1', [])
Removed dependencies in this round:
removing ('google-api-core', '<3.0dev,>=1.29.0', [])
removing ('google-auth', '<3.0dev,>=1.25.0', [])
removing ('more-itertools', '', [])
removing ('protobuf', '', [])
removing ('six', '', [])
------------------------------------------------------------
Result of round 3: not stable
ROUND 4
Current constraints:
cachetools<5.0,>=2.0.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
certifi>=2017.4.17 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
charset-normalizer~=2.0.0 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2))
colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1))
commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1))
gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-api-core<3.0dev,>=1.21.0,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-auth<3.0dev,>=1.24.0,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-crc32c<2.0dev,>=1.0 (from google-resumable-media==2.1.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
googleapis-common-protos<2.0dev,>=1.52.0 (from google-api-core==2.3.2->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
gputil (from mle-monitor==0.0.1->-r requirements.in (line 1))
idna<4,>=2.5 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
jaraco.classes (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.functools (from cheroot==8.5.2->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.text (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2))
lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1))
Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2))
MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2))
mle-monitor (from -r requirements.in (line 1))
more-itertools>=2.6 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1))
pandas (from mle-monitor==0.0.1->-r requirements.in (line 1))
pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1))
Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1))
plotext (from mle-monitor==0.0.1->-r requirements.in (line 1))
portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
protobuf>=3.12.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
psutil (from mle-monitor==0.0.1->-r requirements.in (line 1))
pyasn1-modules>=0.2.1 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1))
requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
rich (from mle-monitor==0.0.1->-r requirements.in (line 1))
rsa<5,>=3.1.4 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
setuptools>=40.3.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
six>=1.11.0,>=1.5,>=1.9.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
smmap<6,>=3.0.1 (from gitdb==4.0.9->GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
telenium (from -r requirements.in (line 2))
tempora>=1.8 (from portend==3.1.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
urllib3<1.27,>=1.21.1 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2))
ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2))
zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates:
found candidate cachetools==4.2.4 (constraint was >=2.0.0,<5.0)
found candidate certifi==2021.10.8 (constraint was >=2017.4.17)
found candidate charset-normalizer==2.0.9 (constraint was ~=2.0.0)
found candidate cheroot==8.5.2 (constraint was >=8.2.1)
found candidate cherrypy==18.6.1 (constraint was >=10.2.1)
found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0)
found candidate commentjson==0.9.0 (constraint was <any>)
found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0)
found candidate dotmap==1.3.26 (constraint was <any>)
found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5)
found candidate gitpython==3.1.24 (constraint was <any>)
found candidate google-api-core==2.3.2 (constraint was >=1.21.0,>=1.29.0,<3.0dev)
found candidate google-auth==2.3.3 (constraint was >=1.24.0,>=1.25.0,<3.0dev)
found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev)
found candidate google-cloud-storage==1.43.0 (constraint was <any>)
found candidate google-crc32c==1.3.0 (constraint was >=1.0,<2.0dev)
found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev)
found candidate googleapis-common-protos==1.54.0 (constraint was >=1.52.0,<2.0dev)
found candidate gputil==1.4.0 (constraint was <any>)
found candidate idna==3.3 (constraint was >=2.5,<4)
found candidate jaraco.classes==3.2.1 (constraint was <any>)
found candidate jaraco.collections==3.4.0 (constraint was <any>)
found candidate jaraco.functools==3.5.0 (constraint was <any>)
found candidate jaraco.text==3.6.0 (constraint was <any>)
found candidate json-rpc==1.13.0 (constraint was >=1.10.3)
found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0)
found candidate mako==1.1.6 (constraint was >=1.0.6)
found candidate markupsafe==2.0.1 (constraint was >=0.9.2)
found candidate mle-monitor==0.0.1 (constraint was <any>)
found candidate more-itertools==8.12.0 (constraint was >=2.6)
found candidate numpy==1.21.5 (constraint was >=1.17.3)
found candidate pandas==1.3.5 (constraint was <any>)
found candidate pickledb==0.9.2 (constraint was <any>)
found candidate pillow==8.4.0 (constraint was <any>)
found candidate plotext==4.1.3 (constraint was <any>)
found candidate portend==3.1.0 (constraint was >=2.1.1)
found candidate protobuf==3.19.1 (constraint was >=3.12.0)
found candidate psutil==5.8.0 (constraint was <any>)
found candidate pyasn1-modules==0.2.8 (constraint was >=0.2.1)
found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0)
found candidate python-dateutil==2.8.2 (constraint was >=2.7.3)
found candidate pytz==2021.3 (constraint was >=2017.3)
found candidate pyyaml==6.0 (constraint was <any>)
found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev)
found candidate rich==10.16.1 (constraint was <any>)
found candidate rsa==4.8 (constraint was >=3.1.4,<5)
found candidate setuptools==60.1.0 (constraint was >=40.3.0)
found candidate six==1.16.0 (constraint was >=1.11.0,>=1.5,>=1.9.0)
found candidate smmap==5.0.0 (constraint was >=3.0.1,<6)
found candidate telenium==0.5.0 (constraint was <any>)
found candidate tempora==4.1.2 (constraint was >=1.8)
found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3)
found candidate urllib3==1.26.7 (constraint was >=1.21.1,<1.27)
found candidate werkzeug==2.0.2 (constraint was >=0.12.2)
found candidate ws4py==0.5.1 (constraint was >=0.4.2)
found candidate zc.lockfile==2.0 (constraint was <any>)
Finding secondary dependencies:
urllib3==1.26.7 requires -
dotmap==1.3.26 requires -
jaraco.classes==3.2.1 not in cache, need to check index
Collecting jaraco.classes==3.2.1
Using cached jaraco.classes-3.2.1-py3-none-any.whl (5.6 kB)
jaraco.classes==3.2.1 requires more-itertools
protobuf==3.19.1 requires -
jaraco.text==3.6.0 not in cache, need to check index
Collecting jaraco.text==3.6.0
Using cached jaraco.text-3.6.0-py3-none-any.whl (8.1 kB)
jaraco.text==3.6.0 requires importlib-resources; python_version < "3.9", jaraco.functools
pickledb==0.9.2 requires -
pyyaml==6.0 requires -
more-itertools==8.12.0 requires -
google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0
pyasn1-modules==0.2.8 requires pyasn1<0.5.0,>=0.4.6
colorama==0.4.4 requires -
certifi==2021.10.8 requires -
mako==1.1.6 requires MarkupSafe>=0.9.2
werkzeug==2.0.2 requires -
googleapis-common-protos==1.54.0 requires protobuf>=3.12.0
portend==3.1.0 requires tempora>=1.8
json-rpc==1.13.0 requires -
pygments==2.10.0 requires -
six==1.16.0 requires -
google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0
telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2
lark-parser==0.7.8 requires -
psutil==5.8.0 requires -
typing-extensions==4.0.1 requires -
rsa==4.8 requires pyasn1>=0.1.3
ws4py==0.5.1 requires -
cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile
plotext==4.1.3 requires -
zc.lockfile==2.0 requires setuptools
pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3
gitdb==4.0.9 requires smmap<6,>=3.0.1
commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1
markupsafe==2.0.1 requires -
google-crc32c==1.3.0 requires -
mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich
gputil==1.4.0 requires -
gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10"
google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0
pytz==2021.3 requires -
google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six
jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text
commonmark==0.9.1 requires -
pillow==8.4.0 requires -
jaraco.functools==3.5.0 not in cache, need to check index
Collecting jaraco.functools==3.5.0
Downloading jaraco.functools-3.5.0-py3-none-any.whl (7.0 kB)
jaraco.functools==3.5.0 requires more-itertools
python-dateutil==2.8.2 requires six>=1.5
setuptools==60.1.0 requires -
smmap==5.0.0 requires -
idna==3.3 requires -
numpy==1.21.5 requires -
charset-normalizer==2.0.9 requires -
requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1
rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0
tempora==4.1.2 not in cache, need to check index
Collecting tempora==4.1.2
Using cached tempora-4.1.2-py3-none-any.whl (15 kB)
tempora==4.1.2 requires jaraco.functools>=1.20, pytz
google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0
cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0
cachetools==4.2.4 requires -
New dependencies found in this round:
adding ('importlib-resources', '', [])
adding ('jaraco.functools', '>=1.20', [])
adding ('pyasn1', '<0.5.0,>=0.1.3,>=0.4.6', [])
Removed dependencies in this round:
removing ('jaraco.functools', '', [])
------------------------------------------------------------
Result of round 4: not stable
ROUND 5
Current constraints:
cachetools<5.0,>=2.0.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
certifi>=2017.4.17 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
charset-normalizer~=2.0.0 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2))
colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1))
commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1))
gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-api-core<3.0.0dev,>=1.21.0,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-auth<3.0dev,>=1.24.0,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-crc32c<2.0dev,>=1.0 (from google-resumable-media==2.1.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
googleapis-common-protos<2.0dev,>=1.52.0 (from google-api-core==2.3.2->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
gputil (from mle-monitor==0.0.1->-r requirements.in (line 1))
idna<4,>=2.5 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
importlib-resources (from jaraco.text==3.6.0->jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.classes (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.functools>=1.20 (from cheroot==8.5.2->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.text (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2))
lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1))
Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2))
MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2))
mle-monitor (from -r requirements.in (line 1))
more-itertools>=2.6 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1))
pandas (from mle-monitor==0.0.1->-r requirements.in (line 1))
pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1))
Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1))
plotext (from mle-monitor==0.0.1->-r requirements.in (line 1))
portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
protobuf>=3.12.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
psutil (from mle-monitor==0.0.1->-r requirements.in (line 1))
pyasn1<0.5.0,>=0.1.3,>=0.4.6 (from rsa==4.8->google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
pyasn1-modules>=0.2.1 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1))
requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
rich (from mle-monitor==0.0.1->-r requirements.in (line 1))
rsa<5,>=3.1.4 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
setuptools>=40.3.0 (from zc.lockfile==2.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
six>=1.11.0,>=1.5,>=1.9.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
smmap<6,>=3.0.1 (from gitdb==4.0.9->GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
telenium (from -r requirements.in (line 2))
tempora>=1.8 (from portend==3.1.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
urllib3<1.27,>=1.21.1 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2))
ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2))
zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates:
found candidate cachetools==4.2.4 (constraint was >=2.0.0,<5.0)
found candidate certifi==2021.10.8 (constraint was >=2017.4.17)
found candidate charset-normalizer==2.0.9 (constraint was ~=2.0.0)
found candidate cheroot==8.5.2 (constraint was >=8.2.1)
found candidate cherrypy==18.6.1 (constraint was >=10.2.1)
found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0)
found candidate commentjson==0.9.0 (constraint was <any>)
found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0)
found candidate dotmap==1.3.26 (constraint was <any>)
found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5)
found candidate gitpython==3.1.24 (constraint was <any>)
found candidate google-api-core==2.3.2 (constraint was >=1.21.0,>=1.29.0,<3.0.0dev)
found candidate google-auth==2.3.3 (constraint was >=1.24.0,>=1.25.0,<3.0dev)
found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev)
found candidate google-cloud-storage==1.43.0 (constraint was <any>)
found candidate google-crc32c==1.3.0 (constraint was >=1.0,<2.0dev)
found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev)
found candidate googleapis-common-protos==1.54.0 (constraint was >=1.52.0,<2.0dev)
found candidate gputil==1.4.0 (constraint was <any>)
found candidate idna==3.3 (constraint was >=2.5,<4)
found candidate importlib-resources==5.4.0 (constraint was <any>)
found candidate jaraco.classes==3.2.1 (constraint was <any>)
found candidate jaraco.collections==3.4.0 (constraint was <any>)
found candidate jaraco.functools==3.5.0 (constraint was >=1.20)
found candidate jaraco.text==3.6.0 (constraint was <any>)
found candidate json-rpc==1.13.0 (constraint was >=1.10.3)
found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0)
found candidate mako==1.1.6 (constraint was >=1.0.6)
found candidate markupsafe==2.0.1 (constraint was >=0.9.2)
found candidate mle-monitor==0.0.1 (constraint was <any>)
found candidate more-itertools==8.12.0 (constraint was >=2.6)
found candidate numpy==1.21.5 (constraint was >=1.17.3)
found candidate pandas==1.3.5 (constraint was <any>)
found candidate pickledb==0.9.2 (constraint was <any>)
found candidate pillow==8.4.0 (constraint was <any>)
found candidate plotext==4.1.3 (constraint was <any>)
found candidate portend==3.1.0 (constraint was >=2.1.1)
found candidate protobuf==3.19.1 (constraint was >=3.12.0)
found candidate psutil==5.8.0 (constraint was <any>)
found candidate pyasn1==0.4.8 (constraint was >=0.1.3,>=0.4.6,<0.5.0)
found candidate pyasn1-modules==0.2.8 (constraint was >=0.2.1)
found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0)
found candidate python-dateutil==2.8.2 (constraint was >=2.7.3)
found candidate pytz==2021.3 (constraint was >=2017.3)
found candidate pyyaml==6.0 (constraint was <any>)
found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev)
found candidate rich==10.16.1 (constraint was <any>)
found candidate rsa==4.8 (constraint was >=3.1.4,<5)
found candidate setuptools==60.1.0 (constraint was >=40.3.0)
found candidate six==1.16.0 (constraint was >=1.11.0,>=1.5,>=1.9.0)
found candidate smmap==5.0.0 (constraint was >=3.0.1,<6)
found candidate telenium==0.5.0 (constraint was <any>)
found candidate tempora==4.1.2 (constraint was >=1.8)
found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3)
found candidate urllib3==1.26.7 (constraint was >=1.21.1,<1.27)
found candidate werkzeug==2.0.2 (constraint was >=0.12.2)
found candidate ws4py==0.5.1 (constraint was >=0.4.2)
found candidate zc.lockfile==2.0 (constraint was <any>)
Finding secondary dependencies:
tempora==4.1.2 requires jaraco.functools>=1.20, pytz
google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0
google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0
google-crc32c==1.3.0 requires -
mako==1.1.6 requires MarkupSafe>=0.9.2
numpy==1.21.5 requires -
pyasn1-modules==0.2.8 requires pyasn1<0.5.0,>=0.4.6
rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0
smmap==5.0.0 requires -
typing-extensions==4.0.1 requires -
google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0
mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich
jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text
gitdb==4.0.9 requires smmap<6,>=3.0.1
gputil==1.4.0 requires -
jaraco.functools==3.5.0 requires more-itertools
pyyaml==6.0 requires -
certifi==2021.10.8 requires -
gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10"
setuptools==60.1.0 requires -
dotmap==1.3.26 requires -
commonmark==0.9.1 requires -
commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1
cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0
python-dateutil==2.8.2 requires six>=1.5
ws4py==0.5.1 requires -
rsa==4.8 requires pyasn1>=0.1.3
googleapis-common-protos==1.54.0 requires protobuf>=3.12.0
json-rpc==1.13.0 requires -
psutil==5.8.0 requires -
telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2
urllib3==1.26.7 requires -
jaraco.classes==3.2.1 requires more-itertools
jaraco.text==3.6.0 requires importlib-resources; python_version < "3.9", jaraco.functools
pytz==2021.3 requires -
importlib-resources==5.4.0 not in cache, need to check index
Collecting importlib-resources==5.4.0
Using cached importlib_resources-5.4.0-py3-none-any.whl (28 kB)
importlib-resources==5.4.0 requires zipp>=3.1.0; python_version < "3.10"
werkzeug==2.0.2 requires -
portend==3.1.0 requires tempora>=1.8
pygments==2.10.0 requires -
plotext==4.1.3 requires -
lark-parser==0.7.8 requires -
requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1
cachetools==4.2.4 requires -
google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0
pyasn1==0.4.8 requires -
colorama==0.4.4 requires -
pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3
pickledb==0.9.2 requires -
cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile
idna==3.3 requires -
pillow==8.4.0 requires -
six==1.16.0 requires -
more-itertools==8.12.0 requires -
zc.lockfile==2.0 requires setuptools
protobuf==3.19.1 requires -
google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six
markupsafe==2.0.1 requires -
charset-normalizer==2.0.9 requires -
New dependencies found in this round:
adding ('zipp', '>=3.1.0', [])
Removed dependencies in this round:
------------------------------------------------------------
Result of round 5: not stable
ROUND 6
Current constraints:
cachetools<5.0,>=2.0.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
certifi>=2017.4.17 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
charset-normalizer~=2.0.0 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2))
colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1))
commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1))
gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-api-core<3.0.0dev,>=1.21.0,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-auth<3.0dev,>=1.24.0,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1))
google-crc32c<2.0dev,>=1.0 (from google-resumable-media==2.1.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
googleapis-common-protos<2.0dev,>=1.52.0 (from google-api-core==2.3.2->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
gputil (from mle-monitor==0.0.1->-r requirements.in (line 1))
idna<4,>=2.5 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
importlib-resources (from jaraco.text==3.6.0->jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.classes (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.functools>=1.20 (from cheroot==8.5.2->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
jaraco.text (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2))
lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1))
Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2))
MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2))
mle-monitor (from -r requirements.in (line 1))
more-itertools>=2.6 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1))
pandas (from mle-monitor==0.0.1->-r requirements.in (line 1))
pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1))
Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1))
plotext (from mle-monitor==0.0.1->-r requirements.in (line 1))
portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
protobuf>=3.12.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
psutil (from mle-monitor==0.0.1->-r requirements.in (line 1))
pyasn1<0.5.0,>=0.1.3,>=0.4.6 (from rsa==4.8->google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
pyasn1-modules>=0.2.1 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1))
python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1))
pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1))
requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
rich (from mle-monitor==0.0.1->-r requirements.in (line 1))
rsa<5,>=3.1.4 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
setuptools>=40.3.0 (from zc.lockfile==2.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
six>=1.11.0,>=1.5,>=1.9.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
smmap<6,>=3.0.1 (from gitdb==4.0.9->GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
telenium (from -r requirements.in (line 2))
tempora>=1.8 (from portend==3.1.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1))
urllib3<1.27,>=1.21.1 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1))
Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2))
ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2))
zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
zipp>=3.1.0 (from importlib-resources==5.4.0->jaraco.text==3.6.0->jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates:
found candidate cachetools==4.2.4 (constraint was >=2.0.0,<5.0)
found candidate certifi==2021.10.8 (constraint was >=2017.4.17)
found candidate charset-normalizer==2.0.9 (constraint was ~=2.0.0)
found candidate cheroot==8.5.2 (constraint was >=8.2.1)
found candidate cherrypy==18.6.1 (constraint was >=10.2.1)
found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0)
found candidate commentjson==0.9.0 (constraint was <any>)
found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0)
found candidate dotmap==1.3.26 (constraint was <any>)
found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5)
found candidate gitpython==3.1.24 (constraint was <any>)
found candidate google-api-core==2.3.2 (constraint was >=1.21.0,>=1.29.0,<3.0.0dev)
found candidate google-auth==2.3.3 (constraint was >=1.24.0,>=1.25.0,<3.0dev)
found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev)
found candidate google-cloud-storage==1.43.0 (constraint was <any>)
found candidate google-crc32c==1.3.0 (constraint was >=1.0,<2.0dev)
found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev)
found candidate googleapis-common-protos==1.54.0 (constraint was >=1.52.0,<2.0dev)
found candidate gputil==1.4.0 (constraint was <any>)
found candidate idna==3.3 (constraint was >=2.5,<4)
found candidate importlib-resources==5.4.0 (constraint was <any>)
found candidate jaraco.classes==3.2.1 (constraint was <any>)
found candidate jaraco.collections==3.4.0 (constraint was <any>)
found candidate jaraco.functools==3.5.0 (constraint was >=1.20)
found candidate jaraco.text==3.6.0 (constraint was <any>)
found candidate json-rpc==1.13.0 (constraint was >=1.10.3)
found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0)
found candidate mako==1.1.6 (constraint was >=1.0.6)
found candidate markupsafe==2.0.1 (constraint was >=0.9.2)
found candidate mle-monitor==0.0.1 (constraint was <any>)
found candidate more-itertools==8.12.0 (constraint was >=2.6)
found candidate numpy==1.21.5 (constraint was >=1.17.3)
found candidate pandas==1.3.5 (constraint was <any>)
found candidate pickledb==0.9.2 (constraint was <any>)
found candidate pillow==8.4.0 (constraint was <any>)
found candidate plotext==4.1.3 (constraint was <any>)
found candidate portend==3.1.0 (constraint was >=2.1.1)
found candidate protobuf==3.19.1 (constraint was >=3.12.0)
found candidate psutil==5.8.0 (constraint was <any>)
found candidate pyasn1==0.4.8 (constraint was >=0.1.3,>=0.4.6,<0.5.0)
found candidate pyasn1-modules==0.2.8 (constraint was >=0.2.1)
found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0)
found candidate python-dateutil==2.8.2 (constraint was >=2.7.3)
found candidate pytz==2021.3 (constraint was >=2017.3)
found candidate pyyaml==6.0 (constraint was <any>)
found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev)
found candidate rich==10.16.1 (constraint was <any>)
found candidate rsa==4.8 (constraint was >=3.1.4,<5)
found candidate setuptools==60.1.0 (constraint was >=40.3.0)
found candidate six==1.16.0 (constraint was >=1.11.0,>=1.5,>=1.9.0)
found candidate smmap==5.0.0 (constraint was >=3.0.1,<6)
found candidate telenium==0.5.0 (constraint was <any>)
found candidate tempora==4.1.2 (constraint was >=1.8)
found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3)
found candidate urllib3==1.26.7 (constraint was >=1.21.1,<1.27)
found candidate werkzeug==2.0.2 (constraint was >=0.12.2)
found candidate ws4py==0.5.1 (constraint was >=0.4.2)
found candidate zc.lockfile==2.0 (constraint was <any>)
found candidate zipp==3.6.0 (constraint was >=3.1.0)
Finding secondary dependencies:
cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile
plotext==4.1.3 requires -
psutil==5.8.0 requires -
google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0
mako==1.1.6 requires MarkupSafe>=0.9.2
zipp==3.6.0 not in cache, need to check index
Collecting zipp==3.6.0
Using cached zipp-3.6.0-py3-none-any.whl (5.3 kB)
zipp==3.6.0 requires -
certifi==2021.10.8 requires -
google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0
six==1.16.0 requires -
requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1
pytz==2021.3 requires -
charset-normalizer==2.0.9 requires -
lark-parser==0.7.8 requires -
pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3
tempora==4.1.2 requires jaraco.functools>=1.20, pytz
more-itertools==8.12.0 requires -
ws4py==0.5.1 requires -
telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2
cachetools==4.2.4 requires -
pygments==2.10.0 requires -
rsa==4.8 requires pyasn1>=0.1.3
gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10"
jaraco.functools==3.5.0 requires more-itertools
pickledb==0.9.2 requires -
pyasn1-modules==0.2.8 requires pyasn1<0.5.0,>=0.4.6
markupsafe==2.0.1 requires -
rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0
werkzeug==2.0.2 requires -
zc.lockfile==2.0 requires setuptools
googleapis-common-protos==1.54.0 requires protobuf>=3.12.0
google-crc32c==1.3.0 requires -
numpy==1.21.5 requires -
portend==3.1.0 requires tempora>=1.8
cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0
setuptools==60.1.0 requires -
typing-extensions==4.0.1 requires -
pyasn1==0.4.8 requires -
importlib-resources==5.4.0 requires zipp>=3.1.0; python_version < "3.10"
google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0
google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0
google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six
gputil==1.4.0 requires -
json-rpc==1.13.0 requires -
commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1
pillow==8.4.0 requires -
protobuf==3.19.1 requires -
colorama==0.4.4 requires -
mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich
dotmap==1.3.26 requires -
jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text
gitdb==4.0.9 requires smmap<6,>=3.0.1
urllib3==1.26.7 requires -
idna==3.3 requires -
commonmark==0.9.1 requires -
jaraco.classes==3.2.1 requires more-itertools
jaraco.text==3.6.0 requires importlib-resources; python_version < "3.9", jaraco.functools
python-dateutil==2.8.2 requires six>=1.5
smmap==5.0.0 requires -
pyyaml==6.0 requires -
------------------------------------------------------------
Result of round 6: stable, done
#
# This file is autogenerated by pip-compile with python 3.8
# To update, run:
#
# pip-compile --annotation-style=line
#
cachetools==4.2.4 # via google-auth
certifi==2021.10.8 # via requests
charset-normalizer==2.0.9 # via requests
cheroot==8.5.2 # via cherrypy
cherrypy==18.6.1 # via telenium
colorama==0.4.4 # via rich
commentjson==0.9.0 # via mle-monitor
commonmark==0.9.1 # via rich
dotmap==1.3.26 # via mle-monitor
gitdb==4.0.9 # via gitpython
gitpython==3.1.24 # via mle-monitor
google-api-core==2.3.2 # via google-cloud-core, google-cloud-storage
google-auth==2.3.3 # via google-api-core, google-cloud-core, google-cloud-storage
google-cloud-core==2.2.1 # via google-cloud-storage
google-cloud-storage==1.43.0 # via mle-monitor
google-crc32c==1.3.0 # via google-resumable-media
google-resumable-media==2.1.0 # via google-cloud-storage
googleapis-common-protos==1.54.0 # via google-api-core
gputil==1.4.0 # via mle-monitor
idna==3.3 # via requests
importlib-resources==5.4.0 # via jaraco.text
jaraco.classes==3.2.1 # via jaraco.collections
jaraco.collections==3.4.0 # via cherrypy
jaraco.functools==3.5.0 # via cheroot, jaraco.text, tempora
jaraco.text==3.6.0 # via jaraco.collections
json-rpc==1.13.0 # via telenium
lark-parser==0.7.8 # via commentjson
mako==1.1.6 # via telenium
markupsafe==2.0.1 # via mako
mle-monitor==0.0.1 # via -r requirements.in
more-itertools==8.12.0 # via cheroot, cherrypy, jaraco.classes, jaraco.functools
numpy==1.21.5 # via mle-monitor, pandas
pandas==1.3.5 # via mle-monitor
pickledb==0.9.2 # via mle-monitor
pillow==8.4.0 # via mle-monitor
plotext==4.1.3 # via mle-monitor
portend==3.1.0 # via cherrypy
protobuf==3.19.1 # via google-api-core, google-cloud-storage, googleapis-common-protos
psutil==5.8.0 # via mle-monitor
pyasn1==0.4.8 # via pyasn1-modules, rsa
pyasn1-modules==0.2.8 # via google-auth
pygments==2.10.0 # via rich
python-dateutil==2.8.2 # via pandas
pytz==2021.3 # via pandas, tempora
pyyaml==6.0 # via mle-monitor
requests==2.26.0 # via google-api-core, google-cloud-storage
rich==10.16.1 # via mle-monitor
rsa==4.8 # via google-auth
six==1.16.0 # via cheroot, google-auth, google-cloud-storage, python-dateutil
smmap==5.0.0 # via gitdb
telenium==0.5.0 # via -r requirements.in
tempora==4.1.2 # via portend
typing-extensions==4.0.1 # via gitpython
urllib3==1.26.7 # via requests
werkzeug==2.0.2 # via telenium
ws4py==0.5.1 # via telenium
zc.lockfile==2.0 # via cherrypy
zipp==3.6.0 # via importlib-resources
# The following packages are considered to be unsafe in a requirements file:
# setuptools
Dry-run, so nothing updated.
While pip-compile
has generously provided us with the exact version of each package would get installed (e.g. pandas==1.3.5) if we used pip install
, using these versions sometimes breaks recipes. For e.g., with pandas==1.3.5
, I get the following error message when I try to build my application:
[INFO]: Applying patches for pandas[armeabi-v7a]
[INFO]: Applying patch fix_numpy_includes.patch
[INFO]: -> running patch -t -d /home/pdallair/dev/PycharmProjects/PythonForAndroid/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/pandas/armeabi-v7a__ndk_target_21/pandas -p1 -i /home/pdallair/dev/PycharmProjects/PythonForAndroid/TestApp/.buildozer/android/p...(and 83 more)
working: 2 out of 2 hunks FAILED -- saving rejects to file setup.py.rej Exception in thread background thread for pid 1215227:
Traceback (most recent call last):
File "/home/pdallair/anaconda3/envs/p4a-dev/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/home/pdallair/anaconda3/envs/p4a-dev/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/pdallair/anaconda3/envs/p4a-dev/lib/python3.8/site-packages/sh.py", line 1683, in wrap
fn(*rgs, **kwargs)
File "/home/pdallair/anaconda3/envs/p4a-dev/lib/python3.8/site-packages/sh.py", line 2662, in background_thread
handle_exit_code(exit_code)
File "/home/pdallair/anaconda3/envs/p4a-dev/lib/python3.8/site-packages/sh.py", line 2349, in fn
return self.command.handle_command_exit_code(exit_code)
File "/home/pdallair/anaconda3/envs/p4a-dev/lib/python3.8/site-packages/sh.py", line 905, in handle_command_exit_code
raise exc
sh.ErrorReturnCode_1:
RAN: /usr/bin/patch -t -d /home/pdallair/dev/PycharmProjects/PythonForAndroid/TestApp/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/pandas/armeabi-v7a__ndk_target_21/pandas -p1 -i /home/pdallair/dev/PycharmProjects/PythonForAndroid/TestApp/.buildozer/android/platform/python-for-android/pythonforandroid/recipes/pandas/fix_numpy_includes.patch
STDOUT:
patching file setup.py
Hunk #1 FAILED at 37.
Hunk #2 FAILED at 514.
2 out of 2 hunks FAILED -- saving rejects to file setup.py.rej
I believe I have reason to suspect that the pandas
recipe, that installs version 1.0.3 by default, doesn't support the latest version. I wouldn't be surprised if this would happen with other recipes as well. Removing the version constraints deduced by pip-compile
for recipes — effectively letting said recipes choose which versions to install — does work in this case. However, I'm afraid that might not always be the case. At some point we may run into a case where other requirement may need features or fixes only available in the version specified in pip-compile output.
So, how should I handle this? I'm afraid this might be another can of worms and I'm tempted to cut corners for now, letting the recipes choose which versions to install... but ideally which versions specified shouldn't be a problem for python-for-android but I don't know how to achieve this, nevermind how challenging this might get. Any opinions/suggestions?
Yes, most of the recipes are currently out of date and you cannot use the latest version. A couple even fail if you specify the version that they’d use anyway.
That’s a problem that exists already if you need a newer version, so your changes wouldn’t make it worse.
I think you’d just have to special-case the ones that don’t work for the moment, and hopefully the recipes get updated at some point.
On 24 Dec 2021, at 18:55, Patrick Dallaire @.***> wrote:
Hey folks. I'm almost done with this fix. I've pushed commits to my forked repository if you want to check them out. However there is one thing I've noticed that I'd like to get your input on before submitting the PR.
A bit of context first: To compile the expanded list of I use the pip-compile command from jazzband/pip-tools. Here's an example of it's usage:
@.***$ echo -e "mle-monitor\ntelenium" > requirements.in && pip-compile -v --dry-run --annotation-style=line && rm requirements.in Using indexes: https://pypi.org/simple
ROUND 1
Current constraints: mle-monitor (from -r requirements.in (line 1)) telenium (from -r requirements.in (line 2))
Finding the best candidates: found candidate mle-monitor==0.0.1 (constraint was
) found candidate telenium==0.5.0 (constraint was ) Finding secondary dependencies: telenium==0.5.0 not in cache, need to check index Collecting telenium==0.5.0 Using cached telenium-0.5.0-py2.py3-none-any.whl (332 kB) telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2 mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich
New dependencies found in this round: adding ('cherrypy', '>=10.2.1', []) adding ('commentjson', '', []) adding ('dotmap', '', []) adding ('gitpython', '', []) adding ('google-cloud-storage', '', []) adding ('gputil', '', []) adding ('json-rpc', '>=1.10.3', []) adding ('mako', '>=1.0.6', []) adding ('numpy', '', []) adding ('pandas', '', []) adding ('pickledb', '', []) adding ('pillow', '', []) adding ('plotext', '', []) adding ('psutil', '', []) adding ('pyyaml', '', []) adding ('rich', '', []) adding ('werkzeug', '>=0.12.2', []) adding ('ws4py', '>=0.4.2', []) Removed dependencies in this round:
Result of round 1: not stable
ROUND 2
Current constraints: CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2)) commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1)) dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1)) GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1)) gputil (from mle-monitor==0.0.1->-r requirements.in (line 1)) json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2)) Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2)) mle-monitor (from -r requirements.in (line 1)) numpy (from mle-monitor==0.0.1->-r requirements.in (line 1)) pandas (from mle-monitor==0.0.1->-r requirements.in (line 1)) pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1)) Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1)) plotext (from mle-monitor==0.0.1->-r requirements.in (line 1)) psutil (from mle-monitor==0.0.1->-r requirements.in (line 1)) pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1)) rich (from mle-monitor==0.0.1->-r requirements.in (line 1)) telenium (from -r requirements.in (line 2)) Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2)) ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates: found candidate cherrypy==18.6.1 (constraint was >=10.2.1) found candidate commentjson==0.9.0 (constraint was
) found candidate dotmap==1.3.26 (constraint was ) found candidate gitpython==3.1.24 (constraint was ) found candidate google-cloud-storage==1.43.0 (constraint was ) found candidate gputil==1.4.0 (constraint was ) found candidate json-rpc==1.13.0 (constraint was >=1.10.3) found candidate mako==1.1.6 (constraint was >=1.0.6) found candidate mle-monitor==0.0.1 (constraint was ) found candidate numpy==1.21.5 (constraint was ) found candidate pandas==1.3.5 (constraint was ) found candidate pickledb==0.9.2 (constraint was ) found candidate pillow==8.4.0 (constraint was ) found candidate plotext==4.1.3 (constraint was ) found candidate psutil==5.8.0 (constraint was ) found candidate pyyaml==6.0 (constraint was ) found candidate rich==10.16.1 (constraint was ) found candidate telenium==0.5.0 (constraint was ) found candidate werkzeug==2.0.2 (constraint was >=0.12.2) found candidate ws4py==0.5.1 (constraint was >=0.4.2) Finding secondary dependencies: dotmap==1.3.26 requires - rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0 pillow==8.4.0 requires - numpy==1.21.5 requires - pickledb==0.9.2 requires - cherrypy==18.6.1 not in cache, need to check index Collecting CherryPy==18.6.1 Using cached CherryPy-18.6.1-py2.py3-none-any.whl (419 kB) cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile mako==1.1.6 not in cache, need to check index Collecting Mako==1.1.6 Using cached Mako-1.1.6-py2.py3-none-any.whl (75 kB) mako==1.1.6 requires MarkupSafe>=0.9.2 json-rpc==1.13.0 not in cache, need to check index Collecting json-rpc==1.13.0 Using cached json_rpc-1.13.0-py2.py3-none-any.whl (41 kB) json-rpc==1.13.0 requires - pyyaml==6.0 requires - google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2 gputil==1.4.0 requires - ws4py==0.5.1 not in cache, need to check index Collecting ws4py==0.5.1 Using cached ws4py-0.5.1.tar.gz (51 kB) ws4py==0.5.1 requires - werkzeug==2.0.2 not in cache, need to check index Collecting Werkzeug==2.0.2 Using cached Werkzeug-2.0.2-py3-none-any.whl (288 kB) werkzeug==2.0.2 requires - psutil==5.8.0 requires - gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10" commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1 pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3 mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich plotext==4.1.3 requires -
New dependencies found in this round: adding ('cheroot', '>=8.2.1', []) adding ('colorama', '<0.5.0,>=0.4.0', []) adding ('commonmark', '<0.10.0,>=0.9.0', []) adding ('gitdb', '<5,>=4.0.1', []) adding ('google-api-core', '<3.0dev,>=1.29.0', []) adding ('google-auth', '<3.0dev,>=1.25.0', []) adding ('google-cloud-core', '<3.0dev,>=1.6.0', []) adding ('google-resumable-media', '<3.0dev,>=1.3.0', []) adding ('jaraco.collections', '', []) adding ('lark-parser', '<0.8.0,>=0.7.1', []) adding ('markupsafe', '>=0.9.2', []) adding ('more-itertools', '', []) adding ('numpy', '>=1.17.3', []) adding ('portend', '>=2.1.1', []) adding ('protobuf', '', []) adding ('pygments', '<3.0.0,>=2.6.0', []) adding ('python-dateutil', '>=2.7.3', []) adding ('pytz', '>=2017.3', []) adding ('requests', '<3.0.0dev,>=2.18.0', []) adding ('six', '', []) adding ('typing-extensions', '>=3.7.4.3', []) adding ('zc.lockfile', '', []) Removed dependencies in this round: removing ('numpy', '', [])
Result of round 2: not stable
ROUND 3
Current constraints: cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2)) colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1)) commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1)) gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-api-core<3.0dev,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-auth<3.0dev,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) gputil (from mle-monitor==0.0.1->-r requirements.in (line 1)) jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2)) lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1)) Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2)) MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2)) mle-monitor (from -r requirements.in (line 1)) more-itertools (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1)) pandas (from mle-monitor==0.0.1->-r requirements.in (line 1)) pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1)) Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1)) plotext (from mle-monitor==0.0.1->-r requirements.in (line 1)) portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) protobuf (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) psutil (from mle-monitor==0.0.1->-r requirements.in (line 1)) pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1)) requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) rich (from mle-monitor==0.0.1->-r requirements.in (line 1)) six (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) telenium (from -r requirements.in (line 2)) typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2)) ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2)) zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates: found candidate cheroot==8.5.2 (constraint was >=8.2.1) found candidate cherrypy==18.6.1 (constraint was >=10.2.1) found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0) found candidate commentjson==0.9.0 (constraint was
) found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0) found candidate dotmap==1.3.26 (constraint was ) found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5) found candidate gitpython==3.1.24 (constraint was ) found candidate google-api-core==2.3.2 (constraint was >=1.29.0,<3.0dev) found candidate google-auth==2.3.3 (constraint was >=1.25.0,<3.0dev) found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev) found candidate google-cloud-storage==1.43.0 (constraint was ) found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev) found candidate gputil==1.4.0 (constraint was ) found candidate jaraco.collections==3.4.0 (constraint was ) found candidate json-rpc==1.13.0 (constraint was >=1.10.3) found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0) found candidate mako==1.1.6 (constraint was >=1.0.6) found candidate markupsafe==2.0.1 (constraint was >=0.9.2) found candidate mle-monitor==0.0.1 (constraint was ) found candidate more-itertools==8.12.0 (constraint was ) found candidate numpy==1.21.5 (constraint was >=1.17.3) found candidate pandas==1.3.5 (constraint was ) found candidate pickledb==0.9.2 (constraint was ) found candidate pillow==8.4.0 (constraint was ) found candidate plotext==4.1.3 (constraint was ) found candidate portend==3.1.0 (constraint was >=2.1.1) found candidate protobuf==3.19.1 (constraint was ) found candidate psutil==5.8.0 (constraint was ) found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0) found candidate python-dateutil==2.8.2 (constraint was >=2.7.3) found candidate pytz==2021.3 (constraint was >=2017.3) found candidate pyyaml==6.0 (constraint was ) found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev) found candidate rich==10.16.1 (constraint was ) found candidate six==1.16.0 (constraint was ) found candidate telenium==0.5.0 (constraint was ) found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3) found candidate werkzeug==2.0.2 (constraint was >=0.12.2) found candidate ws4py==0.5.1 (constraint was >=0.4.2) found candidate zc.lockfile==2.0 (constraint was ) Finding secondary dependencies: google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0 rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0 gitdb==4.0.9 requires smmap<6,>=3.0.1 pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3 psutil==5.8.0 requires - pyyaml==6.0 requires - zc.lockfile==2.0 not in cache, need to check index Collecting zc.lockfile==2.0 Using cached zc.lockfile-2.0-py2.py3-none-any.whl (9.7 kB) zc.lockfile==2.0 requires setuptools dotmap==1.3.26 requires - ws4py==0.5.1 requires - google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0 gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10" lark-parser==0.7.8 requires - telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2 pickledb==0.9.2 requires - cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile protobuf==3.19.1 requires - mako==1.1.6 requires MarkupSafe>=0.9.2 typing-extensions==4.0.1 requires - google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six json-rpc==1.13.0 requires - jaraco.collections==3.4.0 not in cache, need to check index Collecting jaraco.collections==3.4.0 Using cached jaraco.collections-3.4.0-py3-none-any.whl (10 kB) jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text pillow==8.4.0 requires - pygments==2.10.0 requires - colorama==0.4.4 requires - numpy==1.21.5 requires - plotext==4.1.3 requires - pytz==2021.3 requires - werkzeug==2.0.2 requires - python-dateutil==2.8.2 requires six>=1.5 commonmark==0.9.1 requires - markupsafe==2.0.1 not in cache, need to check index Collecting MarkupSafe==2.0.1 Using cached MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (30 kB) markupsafe==2.0.1 requires - commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1 requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1 mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich six==1.16.0 requires - cheroot==8.5.2 not in cache, need to check index Collecting cheroot==8.5.2 Using cached cheroot-8.5.2-py2.py3-none-any.whl (97 kB) cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0 google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0 portend==3.1.0 not in cache, need to check index Collecting portend==3.1.0 Using cached portend-3.1.0-py3-none-any.whl (5.3 kB) portend==3.1.0 requires tempora>=1.8 more-itertools==8.12.0 not in cache, need to check index Collecting more-itertools==8.12.0 Using cached more_itertools-8.12.0-py3-none-any.whl (54 kB) more-itertools==8.12.0 requires - gputil==1.4.0 requires - google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0
New dependencies found in this round: adding ('cachetools', '<5.0,>=2.0.0', []) adding ('certifi', '>=2017.4.17', []) adding ('charset-normalizer', '~=2.0.0', []) adding ('google-api-core', '<3.0dev,>=1.21.0,>=1.29.0', []) adding ('google-auth', '<3.0dev,>=1.24.0,>=1.25.0', []) adding ('google-crc32c', '<2.0dev,>=1.0', []) adding ('googleapis-common-protos', '<2.0dev,>=1.52.0', []) adding ('idna', '<4,>=2.5', []) adding ('jaraco.classes', '', []) adding ('jaraco.functools', '', []) adding ('jaraco.text', '', []) adding ('more-itertools', '>=2.6', []) adding ('protobuf', '>=3.12.0', []) adding ('pyasn1-modules', '>=0.2.1', []) adding ('rsa', '<5,>=3.1.4', []) adding ('setuptools', '>=40.3.0', []) adding ('six', '>=1.11.0,>=1.5,>=1.9.0', []) adding ('smmap', '<6,>=3.0.1', []) adding ('tempora', '>=1.8', []) adding ('urllib3', '<1.27,>=1.21.1', []) Removed dependencies in this round: removing ('google-api-core', '<3.0dev,>=1.29.0', []) removing ('google-auth', '<3.0dev,>=1.25.0', []) removing ('more-itertools', '', []) removing ('protobuf', '', []) removing ('six', '', [])
Result of round 3: not stable
ROUND 4
Current constraints: cachetools<5.0,>=2.0.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) certifi>=2017.4.17 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) charset-normalizer~=2.0.0 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2)) colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1)) commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1)) gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-api-core<3.0dev,>=1.21.0,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-auth<3.0dev,>=1.24.0,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-crc32c<2.0dev,>=1.0 (from google-resumable-media==2.1.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) googleapis-common-protos<2.0dev,>=1.52.0 (from google-api-core==2.3.2->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) gputil (from mle-monitor==0.0.1->-r requirements.in (line 1)) idna<4,>=2.5 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) jaraco.classes (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.functools (from cheroot==8.5.2->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.text (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2)) lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1)) Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2)) MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2)) mle-monitor (from -r requirements.in (line 1)) more-itertools>=2.6 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1)) pandas (from mle-monitor==0.0.1->-r requirements.in (line 1)) pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1)) Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1)) plotext (from mle-monitor==0.0.1->-r requirements.in (line 1)) portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) protobuf>=3.12.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) psutil (from mle-monitor==0.0.1->-r requirements.in (line 1)) pyasn1-modules>=0.2.1 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1)) requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) rich (from mle-monitor==0.0.1->-r requirements.in (line 1)) rsa<5,>=3.1.4 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) setuptools>=40.3.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) six>=1.11.0,>=1.5,>=1.9.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) smmap<6,>=3.0.1 (from gitdb==4.0.9->GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) telenium (from -r requirements.in (line 2)) tempora>=1.8 (from portend==3.1.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) urllib3<1.27,>=1.21.1 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2)) ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2)) zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates: found candidate cachetools==4.2.4 (constraint was >=2.0.0,<5.0) found candidate certifi==2021.10.8 (constraint was >=2017.4.17) found candidate charset-normalizer==2.0.9 (constraint was ~=2.0.0) found candidate cheroot==8.5.2 (constraint was >=8.2.1) found candidate cherrypy==18.6.1 (constraint was >=10.2.1) found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0) found candidate commentjson==0.9.0 (constraint was
) found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0) found candidate dotmap==1.3.26 (constraint was ) found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5) found candidate gitpython==3.1.24 (constraint was ) found candidate google-api-core==2.3.2 (constraint was >=1.21.0,>=1.29.0,<3.0dev) found candidate google-auth==2.3.3 (constraint was >=1.24.0,>=1.25.0,<3.0dev) found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev) found candidate google-cloud-storage==1.43.0 (constraint was ) found candidate google-crc32c==1.3.0 (constraint was >=1.0,<2.0dev) found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev) found candidate googleapis-common-protos==1.54.0 (constraint was >=1.52.0,<2.0dev) found candidate gputil==1.4.0 (constraint was ) found candidate idna==3.3 (constraint was >=2.5,<4) found candidate jaraco.classes==3.2.1 (constraint was ) found candidate jaraco.collections==3.4.0 (constraint was ) found candidate jaraco.functools==3.5.0 (constraint was ) found candidate jaraco.text==3.6.0 (constraint was ) found candidate json-rpc==1.13.0 (constraint was >=1.10.3) found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0) found candidate mako==1.1.6 (constraint was >=1.0.6) found candidate markupsafe==2.0.1 (constraint was >=0.9.2) found candidate mle-monitor==0.0.1 (constraint was ) found candidate more-itertools==8.12.0 (constraint was >=2.6) found candidate numpy==1.21.5 (constraint was >=1.17.3) found candidate pandas==1.3.5 (constraint was ) found candidate pickledb==0.9.2 (constraint was ) found candidate pillow==8.4.0 (constraint was ) found candidate plotext==4.1.3 (constraint was ) found candidate portend==3.1.0 (constraint was >=2.1.1) found candidate protobuf==3.19.1 (constraint was >=3.12.0) found candidate psutil==5.8.0 (constraint was ) found candidate pyasn1-modules==0.2.8 (constraint was >=0.2.1) found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0) found candidate python-dateutil==2.8.2 (constraint was >=2.7.3) found candidate pytz==2021.3 (constraint was >=2017.3) found candidate pyyaml==6.0 (constraint was ) found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev) found candidate rich==10.16.1 (constraint was ) found candidate rsa==4.8 (constraint was >=3.1.4,<5) found candidate setuptools==60.1.0 (constraint was >=40.3.0) found candidate six==1.16.0 (constraint was >=1.11.0,>=1.5,>=1.9.0) found candidate smmap==5.0.0 (constraint was >=3.0.1,<6) found candidate telenium==0.5.0 (constraint was ) found candidate tempora==4.1.2 (constraint was >=1.8) found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3) found candidate urllib3==1.26.7 (constraint was >=1.21.1,<1.27) found candidate werkzeug==2.0.2 (constraint was >=0.12.2) found candidate ws4py==0.5.1 (constraint was >=0.4.2) found candidate zc.lockfile==2.0 (constraint was ) Finding secondary dependencies: urllib3==1.26.7 requires - dotmap==1.3.26 requires - jaraco.classes==3.2.1 not in cache, need to check index Collecting jaraco.classes==3.2.1 Using cached jaraco.classes-3.2.1-py3-none-any.whl (5.6 kB) jaraco.classes==3.2.1 requires more-itertools protobuf==3.19.1 requires - jaraco.text==3.6.0 not in cache, need to check index Collecting jaraco.text==3.6.0 Using cached jaraco.text-3.6.0-py3-none-any.whl (8.1 kB) jaraco.text==3.6.0 requires importlib-resources; python_version < "3.9", jaraco.functools pickledb==0.9.2 requires - pyyaml==6.0 requires - more-itertools==8.12.0 requires - google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0 pyasn1-modules==0.2.8 requires pyasn1<0.5.0,>=0.4.6 colorama==0.4.4 requires - certifi==2021.10.8 requires - mako==1.1.6 requires MarkupSafe>=0.9.2 werkzeug==2.0.2 requires - googleapis-common-protos==1.54.0 requires protobuf>=3.12.0 portend==3.1.0 requires tempora>=1.8 json-rpc==1.13.0 requires - pygments==2.10.0 requires - six==1.16.0 requires - google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0 telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2 lark-parser==0.7.8 requires - psutil==5.8.0 requires - typing-extensions==4.0.1 requires - rsa==4.8 requires pyasn1>=0.1.3 ws4py==0.5.1 requires - cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile plotext==4.1.3 requires - zc.lockfile==2.0 requires setuptools pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3 gitdb==4.0.9 requires smmap<6,>=3.0.1 commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1 markupsafe==2.0.1 requires - google-crc32c==1.3.0 requires - mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich gputil==1.4.0 requires - gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10" google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0 pytz==2021.3 requires - google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text commonmark==0.9.1 requires - pillow==8.4.0 requires - jaraco.functools==3.5.0 not in cache, need to check index Collecting jaraco.functools==3.5.0 Downloading jaraco.functools-3.5.0-py3-none-any.whl (7.0 kB) jaraco.functools==3.5.0 requires more-itertools python-dateutil==2.8.2 requires six>=1.5 setuptools==60.1.0 requires - smmap==5.0.0 requires - idna==3.3 requires - numpy==1.21.5 requires - charset-normalizer==2.0.9 requires - requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1 rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0 tempora==4.1.2 not in cache, need to check index Collecting tempora==4.1.2 Using cached tempora-4.1.2-py3-none-any.whl (15 kB) tempora==4.1.2 requires jaraco.functools>=1.20, pytz google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0 cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0 cachetools==4.2.4 requires -
New dependencies found in this round: adding ('importlib-resources', '', []) adding ('jaraco.functools', '>=1.20', []) adding ('pyasn1', '<0.5.0,>=0.1.3,>=0.4.6', []) Removed dependencies in this round: removing ('jaraco.functools', '', [])
Result of round 4: not stable
ROUND 5
Current constraints: cachetools<5.0,>=2.0.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) certifi>=2017.4.17 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) charset-normalizer~=2.0.0 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2)) colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1)) commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1)) gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-api-core<3.0.0dev,>=1.21.0,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-auth<3.0dev,>=1.24.0,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-crc32c<2.0dev,>=1.0 (from google-resumable-media==2.1.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) googleapis-common-protos<2.0dev,>=1.52.0 (from google-api-core==2.3.2->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) gputil (from mle-monitor==0.0.1->-r requirements.in (line 1)) idna<4,>=2.5 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) importlib-resources (from jaraco.text==3.6.0->jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.classes (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.functools>=1.20 (from cheroot==8.5.2->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.text (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2)) lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1)) Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2)) MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2)) mle-monitor (from -r requirements.in (line 1)) more-itertools>=2.6 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1)) pandas (from mle-monitor==0.0.1->-r requirements.in (line 1)) pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1)) Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1)) plotext (from mle-monitor==0.0.1->-r requirements.in (line 1)) portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) protobuf>=3.12.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) psutil (from mle-monitor==0.0.1->-r requirements.in (line 1)) pyasn1<0.5.0,>=0.1.3,>=0.4.6 (from rsa==4.8->google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) pyasn1-modules>=0.2.1 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1)) requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) rich (from mle-monitor==0.0.1->-r requirements.in (line 1)) rsa<5,>=3.1.4 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) setuptools>=40.3.0 (from zc.lockfile==2.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) six>=1.11.0,>=1.5,>=1.9.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) smmap<6,>=3.0.1 (from gitdb==4.0.9->GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) telenium (from -r requirements.in (line 2)) tempora>=1.8 (from portend==3.1.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) urllib3<1.27,>=1.21.1 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2)) ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2)) zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates: found candidate cachetools==4.2.4 (constraint was >=2.0.0,<5.0) found candidate certifi==2021.10.8 (constraint was >=2017.4.17) found candidate charset-normalizer==2.0.9 (constraint was ~=2.0.0) found candidate cheroot==8.5.2 (constraint was >=8.2.1) found candidate cherrypy==18.6.1 (constraint was >=10.2.1) found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0) found candidate commentjson==0.9.0 (constraint was
) found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0) found candidate dotmap==1.3.26 (constraint was ) found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5) found candidate gitpython==3.1.24 (constraint was ) found candidate google-api-core==2.3.2 (constraint was >=1.21.0,>=1.29.0,<3.0.0dev) found candidate google-auth==2.3.3 (constraint was >=1.24.0,>=1.25.0,<3.0dev) found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev) found candidate google-cloud-storage==1.43.0 (constraint was ) found candidate google-crc32c==1.3.0 (constraint was >=1.0,<2.0dev) found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev) found candidate googleapis-common-protos==1.54.0 (constraint was >=1.52.0,<2.0dev) found candidate gputil==1.4.0 (constraint was ) found candidate idna==3.3 (constraint was >=2.5,<4) found candidate importlib-resources==5.4.0 (constraint was ) found candidate jaraco.classes==3.2.1 (constraint was ) found candidate jaraco.collections==3.4.0 (constraint was ) found candidate jaraco.functools==3.5.0 (constraint was >=1.20) found candidate jaraco.text==3.6.0 (constraint was ) found candidate json-rpc==1.13.0 (constraint was >=1.10.3) found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0) found candidate mako==1.1.6 (constraint was >=1.0.6) found candidate markupsafe==2.0.1 (constraint was >=0.9.2) found candidate mle-monitor==0.0.1 (constraint was ) found candidate more-itertools==8.12.0 (constraint was >=2.6) found candidate numpy==1.21.5 (constraint was >=1.17.3) found candidate pandas==1.3.5 (constraint was ) found candidate pickledb==0.9.2 (constraint was ) found candidate pillow==8.4.0 (constraint was ) found candidate plotext==4.1.3 (constraint was ) found candidate portend==3.1.0 (constraint was >=2.1.1) found candidate protobuf==3.19.1 (constraint was >=3.12.0) found candidate psutil==5.8.0 (constraint was ) found candidate pyasn1==0.4.8 (constraint was >=0.1.3,>=0.4.6,<0.5.0) found candidate pyasn1-modules==0.2.8 (constraint was >=0.2.1) found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0) found candidate python-dateutil==2.8.2 (constraint was >=2.7.3) found candidate pytz==2021.3 (constraint was >=2017.3) found candidate pyyaml==6.0 (constraint was ) found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev) found candidate rich==10.16.1 (constraint was ) found candidate rsa==4.8 (constraint was >=3.1.4,<5) found candidate setuptools==60.1.0 (constraint was >=40.3.0) found candidate six==1.16.0 (constraint was >=1.11.0,>=1.5,>=1.9.0) found candidate smmap==5.0.0 (constraint was >=3.0.1,<6) found candidate telenium==0.5.0 (constraint was ) found candidate tempora==4.1.2 (constraint was >=1.8) found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3) found candidate urllib3==1.26.7 (constraint was >=1.21.1,<1.27) found candidate werkzeug==2.0.2 (constraint was >=0.12.2) found candidate ws4py==0.5.1 (constraint was >=0.4.2) found candidate zc.lockfile==2.0 (constraint was ) Finding secondary dependencies: tempora==4.1.2 requires jaraco.functools>=1.20, pytz google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0 google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0 google-crc32c==1.3.0 requires - mako==1.1.6 requires MarkupSafe>=0.9.2 numpy==1.21.5 requires - pyasn1-modules==0.2.8 requires pyasn1<0.5.0,>=0.4.6 rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0 smmap==5.0.0 requires - typing-extensions==4.0.1 requires - google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0 mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text gitdb==4.0.9 requires smmap<6,>=3.0.1 gputil==1.4.0 requires - jaraco.functools==3.5.0 requires more-itertools pyyaml==6.0 requires - certifi==2021.10.8 requires - gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10" setuptools==60.1.0 requires - dotmap==1.3.26 requires - commonmark==0.9.1 requires - commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1 cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0 python-dateutil==2.8.2 requires six>=1.5 ws4py==0.5.1 requires - rsa==4.8 requires pyasn1>=0.1.3 googleapis-common-protos==1.54.0 requires protobuf>=3.12.0 json-rpc==1.13.0 requires - psutil==5.8.0 requires - telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2 urllib3==1.26.7 requires - jaraco.classes==3.2.1 requires more-itertools jaraco.text==3.6.0 requires importlib-resources; python_version < "3.9", jaraco.functools pytz==2021.3 requires - importlib-resources==5.4.0 not in cache, need to check index Collecting importlib-resources==5.4.0 Using cached importlib_resources-5.4.0-py3-none-any.whl (28 kB) importlib-resources==5.4.0 requires zipp>=3.1.0; python_version < "3.10" werkzeug==2.0.2 requires - portend==3.1.0 requires tempora>=1.8 pygments==2.10.0 requires - plotext==4.1.3 requires - lark-parser==0.7.8 requires - requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1 cachetools==4.2.4 requires - google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0 pyasn1==0.4.8 requires - colorama==0.4.4 requires - pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3 pickledb==0.9.2 requires - cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile idna==3.3 requires - pillow==8.4.0 requires - six==1.16.0 requires - more-itertools==8.12.0 requires - zc.lockfile==2.0 requires setuptools protobuf==3.19.1 requires - google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six markupsafe==2.0.1 requires - charset-normalizer==2.0.9 requires -
New dependencies found in this round: adding ('zipp', '>=3.1.0', []) Removed dependencies in this round:
Result of round 5: not stable
ROUND 6
Current constraints: cachetools<5.0,>=2.0.0 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) certifi>=2017.4.17 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) charset-normalizer~=2.0.0 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) cheroot>=8.2.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) CherryPy>=10.2.1 (from telenium==0.5.0->-r requirements.in (line 2)) colorama<0.5.0,>=0.4.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) commentjson (from mle-monitor==0.0.1->-r requirements.in (line 1)) commonmark<0.10.0,>=0.9.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) dotmap (from mle-monitor==0.0.1->-r requirements.in (line 1)) gitdb<5,>=4.0.1 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) GitPython (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-api-core<3.0.0dev,>=1.21.0,>=1.29.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-auth<3.0dev,>=1.24.0,>=1.25.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-core<3.0dev,>=1.6.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-cloud-storage (from mle-monitor==0.0.1->-r requirements.in (line 1)) google-crc32c<2.0dev,>=1.0 (from google-resumable-media==2.1.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) google-resumable-media<3.0dev,>=1.3.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) googleapis-common-protos<2.0dev,>=1.52.0 (from google-api-core==2.3.2->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) gputil (from mle-monitor==0.0.1->-r requirements.in (line 1)) idna<4,>=2.5 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) importlib-resources (from jaraco.text==3.6.0->jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.classes (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.collections (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.functools>=1.20 (from cheroot==8.5.2->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) jaraco.text (from jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) json-rpc>=1.10.3 (from telenium==0.5.0->-r requirements.in (line 2)) lark-parser<0.8.0,>=0.7.1 (from commentjson==0.9.0->mle-monitor==0.0.1->-r requirements.in (line 1)) Mako>=1.0.6 (from telenium==0.5.0->-r requirements.in (line 2)) MarkupSafe>=0.9.2 (from Mako==1.1.6->telenium==0.5.0->-r requirements.in (line 2)) mle-monitor (from -r requirements.in (line 1)) more-itertools>=2.6 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) numpy>=1.17.3 (from mle-monitor==0.0.1->-r requirements.in (line 1)) pandas (from mle-monitor==0.0.1->-r requirements.in (line 1)) pickledb (from mle-monitor==0.0.1->-r requirements.in (line 1)) Pillow (from mle-monitor==0.0.1->-r requirements.in (line 1)) plotext (from mle-monitor==0.0.1->-r requirements.in (line 1)) portend>=2.1.1 (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) protobuf>=3.12.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) psutil (from mle-monitor==0.0.1->-r requirements.in (line 1)) pyasn1<0.5.0,>=0.1.3,>=0.4.6 (from rsa==4.8->google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) pyasn1-modules>=0.2.1 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) pygments<3.0.0,>=2.6.0 (from rich==10.16.1->mle-monitor==0.0.1->-r requirements.in (line 1)) python-dateutil>=2.7.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pytz>=2017.3 (from pandas==1.3.5->mle-monitor==0.0.1->-r requirements.in (line 1)) pyyaml (from mle-monitor==0.0.1->-r requirements.in (line 1)) requests<3.0.0dev,>=2.18.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) rich (from mle-monitor==0.0.1->-r requirements.in (line 1)) rsa<5,>=3.1.4 (from google-auth==2.3.3->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) setuptools>=40.3.0 (from zc.lockfile==2.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) six>=1.11.0,>=1.5,>=1.9.0 (from google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) smmap<6,>=3.0.1 (from gitdb==4.0.9->GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) telenium (from -r requirements.in (line 2)) tempora>=1.8 (from portend==3.1.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) typing-extensions>=3.7.4.3 (from GitPython==3.1.24->mle-monitor==0.0.1->-r requirements.in (line 1)) urllib3<1.27,>=1.21.1 (from requests==2.26.0->google-cloud-storage==1.43.0->mle-monitor==0.0.1->-r requirements.in (line 1)) Werkzeug>=0.12.2 (from telenium==0.5.0->-r requirements.in (line 2)) ws4py>=0.4.2 (from telenium==0.5.0->-r requirements.in (line 2)) zc.lockfile (from CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2)) zipp>=3.1.0 (from importlib-resources==5.4.0->jaraco.text==3.6.0->jaraco.collections==3.4.0->CherryPy==18.6.1->telenium==0.5.0->-r requirements.in (line 2))
Finding the best candidates: found candidate cachetools==4.2.4 (constraint was >=2.0.0,<5.0) found candidate certifi==2021.10.8 (constraint was >=2017.4.17) found candidate charset-normalizer==2.0.9 (constraint was ~=2.0.0) found candidate cheroot==8.5.2 (constraint was >=8.2.1) found candidate cherrypy==18.6.1 (constraint was >=10.2.1) found candidate colorama==0.4.4 (constraint was >=0.4.0,<0.5.0) found candidate commentjson==0.9.0 (constraint was
) found candidate commonmark==0.9.1 (constraint was <0.10.0,>=0.9.0) found candidate dotmap==1.3.26 (constraint was ) found candidate gitdb==4.0.9 (constraint was >=4.0.1,<5) found candidate gitpython==3.1.24 (constraint was ) found candidate google-api-core==2.3.2 (constraint was >=1.21.0,>=1.29.0,<3.0.0dev) found candidate google-auth==2.3.3 (constraint was >=1.24.0,>=1.25.0,<3.0dev) found candidate google-cloud-core==2.2.1 (constraint was >=1.6.0,<3.0dev) found candidate google-cloud-storage==1.43.0 (constraint was ) found candidate google-crc32c==1.3.0 (constraint was >=1.0,<2.0dev) found candidate google-resumable-media==2.1.0 (constraint was >=1.3.0,<3.0dev) found candidate googleapis-common-protos==1.54.0 (constraint was >=1.52.0,<2.0dev) found candidate gputil==1.4.0 (constraint was ) found candidate idna==3.3 (constraint was >=2.5,<4) found candidate importlib-resources==5.4.0 (constraint was ) found candidate jaraco.classes==3.2.1 (constraint was ) found candidate jaraco.collections==3.4.0 (constraint was ) found candidate jaraco.functools==3.5.0 (constraint was >=1.20) found candidate jaraco.text==3.6.0 (constraint was ) found candidate json-rpc==1.13.0 (constraint was >=1.10.3) found candidate lark-parser==0.7.8 (constraint was >=0.7.1,<0.8.0) found candidate mako==1.1.6 (constraint was >=1.0.6) found candidate markupsafe==2.0.1 (constraint was >=0.9.2) found candidate mle-monitor==0.0.1 (constraint was ) found candidate more-itertools==8.12.0 (constraint was >=2.6) found candidate numpy==1.21.5 (constraint was >=1.17.3) found candidate pandas==1.3.5 (constraint was ) found candidate pickledb==0.9.2 (constraint was ) found candidate pillow==8.4.0 (constraint was ) found candidate plotext==4.1.3 (constraint was ) found candidate portend==3.1.0 (constraint was >=2.1.1) found candidate protobuf==3.19.1 (constraint was >=3.12.0) found candidate psutil==5.8.0 (constraint was ) found candidate pyasn1==0.4.8 (constraint was >=0.1.3,>=0.4.6,<0.5.0) found candidate pyasn1-modules==0.2.8 (constraint was >=0.2.1) found candidate pygments==2.10.0 (constraint was >=2.6.0,<3.0.0) found candidate python-dateutil==2.8.2 (constraint was >=2.7.3) found candidate pytz==2021.3 (constraint was >=2017.3) found candidate pyyaml==6.0 (constraint was ) found candidate requests==2.26.0 (constraint was >=2.18.0,<3.0.0dev) found candidate rich==10.16.1 (constraint was ) found candidate rsa==4.8 (constraint was >=3.1.4,<5) found candidate setuptools==60.1.0 (constraint was >=40.3.0) found candidate six==1.16.0 (constraint was >=1.11.0,>=1.5,>=1.9.0) found candidate smmap==5.0.0 (constraint was >=3.0.1,<6) found candidate telenium==0.5.0 (constraint was ) found candidate tempora==4.1.2 (constraint was >=1.8) found candidate typing-extensions==4.0.1 (constraint was >=3.7.4.3) found candidate urllib3==1.26.7 (constraint was >=1.21.1,<1.27) found candidate werkzeug==2.0.2 (constraint was >=0.12.2) found candidate ws4py==0.5.1 (constraint was >=0.4.2) found candidate zc.lockfile==2.0 (constraint was ) found candidate zipp==3.6.0 (constraint was >=3.1.0) Finding secondary dependencies: cherrypy==18.6.1 requires cheroot>=8.2.1, jaraco.collections, more-itertools, portend>=2.1.1, zc.lockfile plotext==4.1.3 requires - psutil==5.8.0 requires - google-auth==2.3.3 requires cachetools<5.0,>=2.0.0, pyasn1-modules>=0.2.1, rsa<5,>=3.1.4; python_version >= "3.6", setuptools>=40.3.0, six>=1.9.0 mako==1.1.6 requires MarkupSafe>=0.9.2 zipp==3.6.0 not in cache, need to check index Collecting zipp==3.6.0 Using cached zipp-3.6.0-py3-none-any.whl (5.3 kB) zipp==3.6.0 requires - certifi==2021.10.8 requires - google-cloud-core==2.2.1 requires google-api-core<3.0.0dev,>=1.21.0, google-auth<3.0dev,>=1.24.0 six==1.16.0 requires - requests==2.26.0 requires certifi>=2017.4.17, charset-normalizer~=2.0.0; python_version >= "3", idna<4,>=2.5; python_version >= "3", urllib3<1.27,>=1.21.1 pytz==2021.3 requires - charset-normalizer==2.0.9 requires - lark-parser==0.7.8 requires - pandas==1.3.5 requires numpy>=1.17.3; platform_machine != "aarch64" and platform_machine != "arm64" and python_version < "3.10", python-dateutil>=2.7.3, pytz>=2017.3 tempora==4.1.2 requires jaraco.functools>=1.20, pytz more-itertools==8.12.0 requires - ws4py==0.5.1 requires - telenium==0.5.0 requires CherryPy>=10.2.1, json-rpc>=1.10.3, Mako>=1.0.6, Werkzeug>=0.12.2, ws4py>=0.4.2 cachetools==4.2.4 requires - pygments==2.10.0 requires - rsa==4.8 requires pyasn1>=0.1.3 gitpython==3.1.24 requires gitdb<5,>=4.0.1, typing-extensions>=3.7.4.3; python_version < "3.10" jaraco.functools==3.5.0 requires more-itertools pickledb==0.9.2 requires - pyasn1-modules==0.2.8 requires pyasn1<0.5.0,>=0.4.6 markupsafe==2.0.1 requires - rich==10.16.1 requires colorama<0.5.0,>=0.4.0, commonmark<0.10.0,>=0.9.0, pygments<3.0.0,>=2.6.0 werkzeug==2.0.2 requires - zc.lockfile==2.0 requires setuptools googleapis-common-protos==1.54.0 requires protobuf>=3.12.0 google-crc32c==1.3.0 requires - numpy==1.21.5 requires - portend==3.1.0 requires tempora>=1.8 cheroot==8.5.2 requires jaraco.functools, more-itertools>=2.6, six>=1.11.0 setuptools==60.1.0 requires - typing-extensions==4.0.1 requires - pyasn1==0.4.8 requires - importlib-resources==5.4.0 requires zipp>=3.1.0; python_version < "3.10" google-api-core==2.3.2 requires google-auth<3.0dev,>=1.25.0, googleapis-common-protos<2.0dev,>=1.52.0, protobuf>=3.12.0, requests<3.0.0dev,>=2.18.0, setuptools>=40.3.0 google-resumable-media==2.1.0 requires google-crc32c<2.0dev,>=1.0 google-cloud-storage==1.43.0 requires google-api-core<3.0dev,>=1.29.0; python_version >= "3.6", google-auth<3.0dev,>=1.25.0; python_version >= "3.6", google-cloud-core<3.0dev,>=1.6.0; python_version >= "3.6", google-resumable-media<3.0dev,>=1.3.0; python_version >= "3.6", protobuf; python_version >= "3.6", requests<3.0.0dev,>=2.18.0, six gputil==1.4.0 requires - json-rpc==1.13.0 requires - commentjson==0.9.0 requires lark-parser<0.8.0,>=0.7.1 pillow==8.4.0 requires - protobuf==3.19.1 requires - colorama==0.4.4 requires - mle-monitor==0.0.1 requires commentjson, dotmap, GitPython, google-cloud-storage, gputil, numpy, pandas, pickledb, Pillow, plotext, psutil, pyyaml, rich dotmap==1.3.26 requires - jaraco.collections==3.4.0 requires jaraco.classes, jaraco.text gitdb==4.0.9 requires smmap<6,>=3.0.1 urllib3==1.26.7 requires - idna==3.3 requires - commonmark==0.9.1 requires - jaraco.classes==3.2.1 requires more-itertools jaraco.text==3.6.0 requires importlib-resources; python_version < "3.9", jaraco.functools python-dateutil==2.8.2 requires six>=1.5 smmap==5.0.0 requires - pyyaml==6.0 requires -
Result of round 6: stable, done
#
This file is autogenerated by pip-compile with python 3.8
To update, run:
#
pip-compile --annotation-style=line
# cachetools==4.2.4 # via google-auth certifi==2021.10.8 # via requests charset-normalizer==2.0.9 # via requests cheroot==8.5.2 # via cherrypy cherrypy==18.6.1 # via telenium colorama==0.4.4 # via rich commentjson==0.9.0 # via mle-monitor commonmark==0.9.1 # via rich dotmap==1.3.26 # via mle-monitor gitdb==4.0.9 # via gitpython gitpython==3.1.24 # via mle-monitor google-api-core==2.3.2 # via google-cloud-core, google-cloud-storage google-auth==2.3.3 # via google-api-core, google-cloud-core, google-cloud-storage google-cloud-core==2.2.1 # via google-cloud-storage google-cloud-storage==1.43.0 # via mle-monitor google-crc32c==1.3.0 # via google-resumable-media google-resumable-media==2.1.0 # via google-cloud-storage googleapis-common-protos==1.54.0 # via google-api-core gputil==1.4.0 # via mle-monitor idna==3.3 # via requests importlib-resources==5.4.0 # via jaraco.text jaraco.classes==3.2.1 # via jaraco.collections jaraco.collections==3.4.0 # via cherrypy jaraco.functools==3.5.0 # via cheroot, jaraco.text, tempora jaraco.text==3.6.0 # via jaraco.collections json-rpc==1.13.0 # via telenium lark-parser==0.7.8 # via commentjson mako==1.1.6 # via telenium markupsafe==2.0.1 # via mako mle-monitor==0.0.1 # via -r requirements.in more-itertools==8.12.0 # via cheroot, cherrypy, jaraco.classes, jaraco.functools numpy==1.21.5 # via mle-monitor, pandas pandas==1.3.5 # via mle-monitor pickledb==0.9.2 # via mle-monitor pillow==8.4.0 # via mle-monitor plotext==4.1.3 # via mle-monitor portend==3.1.0 # via cherrypy protobuf==3.19.1 # via google-api-core, google-cloud-storage, googleapis-common-protos psutil==5.8.0 # via mle-monitor pyasn1==0.4.8 # via pyasn1-modules, rsa pyasn1-modules==0.2.8 # via google-auth pygments==2.10.0 # via rich python-dateutil==2.8.2 # via pandas pytz==2021.3 # via pandas, tempora pyyaml==6.0 # via mle-monitor requests==2.26.0 # via google-api-core, google-cloud-storage rich==10.16.1 # via mle-monitor rsa==4.8 # via google-auth six==1.16.0 # v
Ok, not sure what you imply by "special-case the ones that don't work". Are you suggesting to try invoking the recipe with the specified version number but if it doesn't work try again without the version number? Because I believe can only tell whether it works or not by trying to install it.
I tried the forked repository with pyrebase
because I know by hand pyrebase has 19 dependencies and a place to start https://github.com/thisbejim/Pyrebase/blob/master/requirements.txt , so there might be a chance of catching a corner case.
p4a.fork = pdallair
requirements = python3,kivy==2.0.0,pyrebase
None of the unspecified dependencies were included in the apk :(
Did I miss something very basic?
The apk size compared to a hand build ref.apk
was:
-rw-r--r-- 1 bobf bobf 13841408 Jan 2 13:07 pyrebase-0.1-arm64-v8a-debug.apk
-rw-r--r-- 1 bobf bobf 25656823 Dec 18 10:16 ref.apk
The apk site-packages contain:
~/ex/pyrebase/bin/xxx/assets/_python_bundle/site-packages>ls -1
Kivy-2.0.0-py3.8.egg-info
Pyrebase-3.0.27.dist-info
_distutils_hack
android
certifi
certifi-2021.10.8.dist-info
distutils-precedence.pth
easy_install.pyc
jnius
jnius_config.pyc
kivy
pkg_resources
pyjnius-1.3.0-py3.8.egg-info
pyrebase
setup_sdist.pyc
setuptools
setuptools-51.3.3-py3.8.egg-info
six.pyc
sseclient
usr
Hey @RobertFlatt ! I'm glad you decided to give this a shot (although I do hope you haven't truly found a bug).
did you checkout fix/pip_no_deps
? I tried building an APK with your requirements list...
My output tells me that, using pip-compile
we were able to extract 15 more dependencies to be installed allong with pyrebase.
[INFO]: Compiling dependencies for: ['pyrebase']
[INFO]: -> running bash -c echo -e 'pyrebase' > requirements.in && pip-compile -v --dry-run --annotation-style=line && rm requirements.in
[INFO]: Requirements obtained from pip-compile: ['gcloud==0.17.0', 'googleapis-common-protos==1.54.0', 'httplib2==0.20.2', 'jws==0.1.3', 'oauth2client==3.0.0', 'protobuf==3.19.1', 'pyasn1==0.4.8', 'pyasn1-modules==0.2.8', 'pycryptodome==3.4.3', 'pyparsing==3.0.6', 'pyrebase==3.0.27', 'python-jwt==2.0.1', 'requests==2.11.1', 'requests-toolbelt==0.7.0', 'rsa==4.8', 'six==1.16.0']
[INFO]: Compiling dependencies for: ['pyrebase']
[INFO]: -> running bash -c echo -e 'pyrebase' > requirements.in && pip-compile -v --dry-run --annotation-style=line && rm requirements.in
[INFO]: Requirements obtained from pip-compile: ['gcloud==0.17.0', 'googleapis-common-protos==1.54.0', 'httplib2==0.20.2', 'jws==0.1.3', 'oauth2client==3.0.0', 'protobuf==3.19.1', 'pyasn1==0.4.8', 'pyasn1-modules==0.2.8', 'pycryptodome==3.4.3', 'pyparsing==3.0.6', 'pyrebase==3.0.27', 'python-jwt==2.0.1', 'requests==2.11.1', 'requests-toolbelt==0.7.0', 'rsa==4.8', 'six==1.16.0']
...
[INFO]: Expanded Requirements List: ['python3', 'kivy', 'gcloud', 'googleapis-common-protos', 'httplib2', 'jws', 'oauth2client', 'protobuf', 'pyasn1', 'pyasn1-modules', 'pycryptodome', 'pyparsing', 'pyrebase', 'python-jwt', 'requests', 'requests-toolbelt', 'rsa', 'six']
The contents of my _python_bundle/site-packages
directory:
(base) pdallair@ubuntu-vbox:~/dev/PycharmProjects/PythonForAndroid/TestApp$ ls -la .buildozer/android/platform/build-armeabi-v7a/dists/testapp__armeabi-v7a/_python_bundle/_python_bundle/site-packages
total 644
drwxrwxr-x 96 pdallair pdallair 4096 Jan 3 18:33 .
drwxrwxr-x 4 pdallair pdallair 4096 Jan 3 18:33 ..
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 android
-rw-rw-r-- 1 pdallair pdallair 179 Dec 27 14:01 android-1.0-py3.8.egg-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 bin
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 certifi
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 certifi-2021.10.8.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 cffi
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 cffi-1.13.2-py3.8.egg-info
-rwxrwxr-x 1 pdallair pdallair 126564 Jan 3 18:33 _cffi_backend.so
-rw-rw-r-- 1 pdallair pdallair 8731 Jan 3 18:32 CHANGELOG.md
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 chardet
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 chardet-3.0.4.dist-info
drwxrwxr-x 5 pdallair pdallair 4096 Jan 3 18:33 cheroot
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 cheroot-8.5.2.dist-info
drwxrwxr-x 7 pdallair pdallair 4096 Jan 3 18:33 cherrypy
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 CherryPy-18.6.1.dist-info
drwxrwxr-x 12 pdallair pdallair 4096 Jan 3 18:33 Crypto
drwxrwxr-x 12 pdallair pdallair 4096 Jan 3 18:33 Cython
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 Cython-0.29.15-py3.8.egg-info
-rw-rw-r-- 1 pdallair pdallair 594 Jan 3 18:33 cython.pyc
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 _distutils_hack
-rw-rw-r-- 1 pdallair pdallair 152 Dec 27 13:46 distutils-precedence.pth
-rw-rw-r-- 1 pdallair pdallair 340 Jan 3 18:33 easy_install.pyc
drwxrwxr-x 13 pdallair pdallair 4096 Jan 3 18:33 gcloud
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 gcloud-0.17.0-py3.8.egg-info
drwxrwxr-x 10 pdallair pdallair 4096 Jan 3 18:33 google
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 googleapis_common_protos-1.54.0.dist-info
-rw-rw-r-- 1 pdallair pdallair 1710 Jan 3 18:32 googleapis_common_protos-1.54.0-py3.10-nspkg.pth
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 httplib2
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 httplib2-0.20.2.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 idna
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 idna-2.10.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 importlib_resources
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 importlib_resources-5.4.0.dist-info
drwxrwxr-x 4 pdallair pdallair 4096 Jan 3 18:33 jaraco
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 jaraco.classes-3.2.1.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 jaraco.collections-3.4.0.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 jaraco.functools-3.5.0.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 jaraco.text-3.6.0.dist-info
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 jnius
-rw-rw-r-- 1 pdallair pdallair 2062 Jan 3 18:33 jnius_config.pyc
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 jsonrpc
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 json_rpc-1.13.0.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 jws
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 jws-0.1.3-py3.8.egg-info
drwxrwxr-x 18 pdallair pdallair 4096 Jan 3 18:33 kivy
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 Kivy-2.0.0-py3.8.egg-info
-rw-rw-r-- 1 pdallair pdallair 577 Jan 3 18:32 LICENSE
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 mako
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 Mako-1.1.6.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 markupsafe
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 MarkupSafe-2.0.1.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 mfpymake-1.2.2-py3.8.egg-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 more_itertools
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 more_itertools-8.12.0.dist-info
drwxrwxr-x 10 pdallair pdallair 4096 Jan 3 18:33 networkx
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 networkx-2.6.3.dist-info
drwxrwxr-x 15 pdallair pdallair 4096 Jan 3 18:33 numpy
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 numpy-1.18.0-py3.8.egg-info
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 oauth2client
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 oauth2client-3.0.0-py3.8.egg-info
drwxrwxr-x 4 pdallair pdallair 4096 Jan 3 18:33 pkg_resources
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 portend-3.1.0.dist-info
-rw-rw-r-- 1 pdallair pdallair 4602 Jan 3 18:33 portend.pyc
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 protobuf-3.19.1.dist-info
-rw-rw-r-- 1 pdallair pdallair 539 Jan 3 18:32 protobuf-3.19.1-py3.8-nspkg.pth
drwxrwxr-x 5 pdallair pdallair 4096 Jan 3 18:33 pyasn1
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pyasn1-0.4.8.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pyasn1_modules
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pyasn1_modules-0.2.8.dist-info
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 pycparser
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pycparser-2.14-py3.8.egg-info
-rw-rw-r-- 1 pdallair pdallair 3130 Jan 3 18:32 pycryptodome-3.6.3-py3.8.egg-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pyjnius-1.3.0-py3.8.egg-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pymake
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 pyparsing
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pyparsing-3.0.6.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pyrebase
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 Pyrebase-3.0.27.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 python_jwt
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 python_jwt-2.0.1.dist-info
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 pytz
-rw-rw-r-- 1 pdallair pdallair 25234 Dec 27 13:46 pytz-2019.3-py3.8.egg-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 pyximport
-rw-rw-r-- 1 pdallair pdallair 1928 Jan 3 18:32 README.md
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 requests
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 requests-2.25.0.dist-info
drwxrwxr-x 9 pdallair pdallair 4096 Jan 3 18:33 requests_toolbelt
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 requests_toolbelt-0.7.0.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 rsa
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 rsa-4.8.dist-info
-rw-rw-r-- 1 pdallair pdallair 1936 Jan 3 18:33 setup_sdist.pyc
drwxrwxr-x 6 pdallair pdallair 4096 Jan 3 18:33 setuptools
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 setuptools-51.3.3-py3.8.egg-info
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 share
-rw-rw-r-- 1 pdallair pdallair 1988 Dec 27 13:51 six-1.15.0-py3.8.egg-info
-rw-rw-r-- 1 pdallair pdallair 24864 Jan 3 18:33 six.pyc
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 sseclient
drwxrwxr-x 4 pdallair pdallair 4096 Jan 3 18:33 telenium
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 telenium-0.5.0.dist-info
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 tempora
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 tempora-4.1.2.dist-info
drwxrwxr-x 5 pdallair pdallair 4096 Jan 3 18:33 urllib3
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 urllib3-1.26.7.dist-info
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 usr
drwxrwxr-x 6 pdallair pdallair 4096 Jan 3 18:33 werkzeug
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 Werkzeug-2.0.2.dist-info
drwxrwxr-x 4 pdallair pdallair 4096 Jan 3 18:33 ws4py
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 ws4py-0.5.1.dist-info
drwxrwxr-x 3 pdallair pdallair 4096 Jan 3 18:33 zc
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 zc.lockfile-2.0.dist-info
-rw-rw-r-- 1 pdallair pdallair 519 Dec 27 14:04 zc.lockfile-2.0-py3.7-nspkg.pth
drwxrwxr-x 2 pdallair pdallair 4096 Jan 3 18:33 zipp-3.6.0.dist-info
-rw-rw-r-- 1 pdallair pdallair 6913 Jan 3 18:33 zipp.pyc
I use buildozer and the resulting apk is always pretty much the same size (changes by less that 1KB).
Did I miss something very basic?
yes
p4a.branch = fix/pip_no_deps
And it builds, I don't expect an exact size match.
-rw-r--r-- 1 bobf bobf 23516365 Jan 3 14:27 pyrebase-0.1-arm64-v8a-debug.apk
-rw-r--r-- 1 bobf bobf 25656823 Dec 18 10:16 ref.apk
Ran the app, my very basic test is to log into firebase, and that worked. :)
But the set of packages used is a little different. I can sort of explain why.
The good news is I didn't find a corner case. The bad news is I'm a skeptic (which is about me not about the code). But I'd recommend others try it, some success stories would help.
From the Buildozer log:
Usual defaults:
hostpython3, libffi, openssl, sdl2_image, sdl2_mixer, sdl2_ttf, sqlite3, python3, sdl2, setuptools, pycparser, six, cffi, pyjnius, android, kivy,
Generated for pyrebase:
pycryptodome, pyparsing, gcloud, pyrebase, requests, googleapis-common-protos, requests-toolbelt, python-jwt, jws, protobuf, rsa, oauth2client, pyasn1-modules, certifi, httplib2, pyasn1
pyrebase,requests,urllib3,chardet,idna,gcloud,oauth2client,requests-toolbelt,protobuf_cpp,python-jwt,pycryptodome,httplib2,pyparsing,pyasn1,pyasn1_modules,rsa,jwcrypto,cryptography, deprecated, wrapt
pyrebase,requests,gcloud,oauth2client,requests-toolbelt, python-jwt, pycryptodome,httplib2, pyparsing, pyasn1,pyasn1_modules,rsa
urllib3, chardet, protobuf_cpp, jwcrypto, cryptography, deprecated, wrapt
googleapis-common-protos, jws, protobuf
The bad news is I'm a skeptic (which is about me not about the code).
:laughing: I know what you mean. Haven't we all been traumatized after a merge and deploy disaster that we'd never forget?
But I'd recommend others try it, some success stories would help.
YES! My knowledge of mobile app development is very limited. I'm a newby. It'd be an honor to have bugs exposed by my senpais
FYI I wondered about backwards compatibility, so I built with the old requirements and the new p4a.
-rw-r--r-- 1 bobf bobf 25679914 Jan 4 08:36 pyrebase-0.1-arm64-v8a-debug.apk
-rw-r--r-- 1 bobf bobf 25656823 Dec 18 10:16 ref.apk
And it ran the same test.
Bottom line to get a PR approved we have to demonstrate to two developers: 1) This is a good thing 2) This won't break anything
The second is where you should put your effort, it is the hard one, as this PR impacts core functionality. So there is a huge downside to being wrong. You probably believe you are not wrong (!) but to every body else it is an unknown.
Think explaining why it works (and why the previous approach didn't), creating test cases, and perhaps optional behavior.
I'm not a developer, its not me you have to convince. Though I would be vocal if I saw an issue.
In case you didn't know there is a PR already and someone has been assigned to it (though I haven't heard from them for the past couple of days 🤷). As per the reviewer's request, I made a unit test for that covers more complex requirements. When I run make test
everything passes now. You're welcome to take a look.
Checklist
p4a.branch = develop
)Versions
Description
App works on my Ubuntu VM but not on my Android device. 3rd party python package (
telenium
in this case), encounters an error on import inmain.py
. Package is added torequirements
list inbuildozer.spec
. In fact, judging from the build output it is being addressed bybuildozer
to some degree. Judging from the python stacktrace however, the 3rd party package isn't able to import one of its own dependencies (werkzeug
in this case). This dependency is listed in theinstall_requires
list argument in the 3rd party package's setup.py. Therefore, shouldn't this dependency also automatically be installed bybuildozer
during the build process? Am I doing anything wrong here?After talking to someone on the Kivy support Google group, I was nudged to conclude that I needed to abide by the workaround of listing all the requirements of
telenium
and so on (recursively)... I did it and it works BUT why do I have to go through all this trouble? So, I looked a little deeper and I found this line. Why is the--no-deps
argument being used here? I manually removed this argument from my local python-for-android installation (under the .buildozer directory) and it seems to solve my problem without having to do this recursive and semi-manual gathering of indirect app requirements.I am not very experienced in desktop or mobile application/package building, so please pardon my ignorance. Is there a concrete reason why this argument is being used? Would removing it break any use cases or other parts of this package? Judging from some of the amount of answers I found which proposed the tedious "solution" (the listing countless requirements) to me, I'm pretty confident that there would be less user frustration if the
--no-deps
argument given topip
can be removed safely.Basically, I'm suggesting that it should be a python-for-android design requirement to make the
--requirements
argument usage, practically, 1:1 with normalpip install
usage. If there are indirect dependencies properly specified in our direct one's (liketelenium
in this case)setup.py
, I don't think a python-for-android user should have to specify them again. Many python packages don't have arequirements.txt
and so python-for-android shouldn't depend on it.Pardon me if I sound arrogant. This is a small problem with a functional workaround, as I've mentioned. However, as The Pragmatic Programmer book says early on "Don't live with broken windows" and I think this use case fits the metaphor.
main.py
buildozer.spec
Command:
Spec file:
Logs
Clean, Build and Deploy
https://drive.google.com/file/d/1o4lmjPBsVChc0LNxhS006GZ7aJxEgtfo/view?usp=sharing
Run
https://drive.google.com/file/d/1Kn4xAbKFld1vbE3yL54wT4l_Z29mRp5_/view?usp=sharing