What is the best practice for releasing python packages with a base version and a full version?

58 Views Asked by At

I'm developing a Python package where I wish to have a 'base' version and a 'full' version. The base version will have the bare bones stuff whereas the 'full' version will have extra functionality. My package structure looks something like this:

my_package/
  pyproject.toml
  src/
    base/
      __init__.py
      module1.py
    full/
      __init__.py
      module2.py

I was hoping I could use extras to handle this but I can't figure out how to conditionally include modules conditioned on extras, i.e. pip install my_package vs. pip install my_package[full].

0

There are 0 best solutions below