-
Notifications
You must be signed in to change notification settings - Fork 92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature request: support for PDM package manager #191
Comments
Thanks for suggesting @OldaKodym. We're always keeping an eye on the ML development ecosystem to help ClearML users streamline their work with their favorite tools. We'll pin this to our roadmap. Having this here will help push it forward as more users support this request 😃 |
@ainoam Cool, thanks for the response! In the meantime, it would be great if there was general support for pyproject.toml-based build process instead of always using The things is I can actually get it to work if I want the agent to build a local module using the pyproject.toml, by doing the following:
But it feels quite hacky. It would be nice to have an option similar to running Task.force_requirements_env_freeze() that would allow me to specify the pyproject.toml file instead of requirements file. |
@OldaKodym clearml-agent/docs/clearml.conf Line 78 in 95dde6c
Just configure the agent to use poetry as package manager and it will ignore the "installed packages" and use the pyproject.toml inside the repo (and of course update back for visibility) |
@ainoam The issue is that poetry is, surprisingly, not PEP 621 compliant (uses [tool.poetry] instead of standard [project] table), so the poetry build frontend cannot be used to install actual PEP-compliant pyproject.toml files that all the other tools use. I can do that with any other build frontend including pip, but not poetry and therefore, not with clearml-agent. Basically, the option to run pip build frontend with pyproject.toml file will enable installing projects built with any PEP-compliant build backend like pdm, hatch and any others. I believe this enables quite a few use cases, with the added benefit of compatibility with standard tools like pip(env) and setuptools. |
Thanks for the detailed information @OldaKodym. |
@ainoam the basic frontend interface is similar. Running |
PDM is a modern package manager that works similarly to poetry but in my experience its way faster for larger distribution like pytorch and it also supports additional nifty stuff like centralized package caches.
Beyond the amazing stuff you guys are already putting out there, are you considering adding other package managers that gain a significant userbase?
The text was updated successfully, but these errors were encountered: