Skip to content

Conversation

@T-Dynamos
Copy link
Member

@T-Dynamos T-Dynamos commented Dec 13, 2025

Closes #3274

Package resolution is performed using the hostpython's pip via the --dry-run option.

Example

requirements = python3,
    kivy==master,
    materialyoucolor,
    materialshapes,
    exceptiongroup,
    asyncgui,
    asynckivy,
    android,
    pillow==11.0.0,
    pycairo,
    https://github.com/kivymd/KivyMD/archive/master.zip,
    trio,
    openai

Output:
image

@T-Dynamos T-Dynamos changed the title [WIP] toolchain: auto resolve deps toolchain: auto resolve deps Dec 13, 2025
@T-Dynamos T-Dynamos changed the title toolchain: auto resolve deps toolchain: auto resolve deps Dec 13, 2025
@T-Dynamos T-Dynamos force-pushed the minor-fixes branch 7 times, most recently from 87f16ae to 7152f01 Compare December 20, 2025 11:40
Copy link
Member

@AndreMiras AndreMiras left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome work, looks good overall, pretty clear and nice feature thank you!
I just have a few remarks and concerns I'd like to discuss.

  1. It would be nice to have at least some basic unit tests for is_wheel_platform_independent() (that one should be relatively easy) and process_python_modules() (that one is more tricky, but let's try to have at least some basic coverage). I noticed the code currently bypasses the new logic when recipe_build_order is a Mock - having proper tests would let us remove that workaround.
  2. Have we thought of having a --no-auto-resolve or something like that for reproducible builds?
  3. A bit tricky to integration test, I imagine that would mean having an app build with the requirements list not fully defined/pinned and test it runtime, but then we have some build reproducibility concerns. Do you have some ideas for how to make sure your changes don't get broken later on without us realising?

@T-Dynamos T-Dynamos marked this pull request as draft January 23, 2026 17:45
@T-Dynamos
Copy link
Member Author

@AndreMiras

A bit tricky to integration test, I imagine that would mean having an app build with the requirements list not fully defined/pinned and test it runtime, but then we have some build reproducibility concerns. Do you have some ideas for how to make sure your changes don't get broken later on without us realising?

I think an integration test would be overkill here. The modules list is highly variable, and all of this work is handled by pip itself.

@T-Dynamos T-Dynamos marked this pull request as ready for review January 23, 2026 19:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Python 3.14 Android build failures: _remote_debugging_module and SDL2 bootstrap (pyconfig.h missing)

2 participants