narwhals-dev / narwhals

Lightweight and extensible compatibility layer between Polars, pandas, cuDF, Modin, and more!
https://narwhals-dev.github.io/narwhals/
MIT License
218 stars 31 forks source link

[Enh]: Use a dependency manager for the project #339

Open ELC opened 4 days ago

ELC commented 4 days ago

We would like to learn about your use case. For example, if this feature is needed to adopt Narwhals in an open source project, could you please enter the link to it below?

No response

Please describe the purpose of the new feature or describe the problem to solve.

It is common in the python ecosystem to use a library to handle dependencies, specially when dealing with heavy packages like the ones used in the data space.

The following are some of the most popular packages for this purpose:

star-history-2024626 (1)

My impressions:

Suggest a solution if possible.

My personal preference is to go with PDM or Pipenv.

UV seems promising but is too new to my taste at the moment and will be worth having a deeper look in a couple of month.

I would highly encourage against using mamba / conda since those are usually not used in enterprise apps plus there are licensing issues with the Anaconda license change a couple of years back.

If you have tried alternatives, please describe them below.

No response

Additional information that may help us understand your needs.

No response

MarcoGorelli commented 2 days ago

thanks for the suggestion - I think we don't need to lock dependencies here, because we're testing different versions of packages in CI