Skip to content
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

Please provide a "all formats included" pip install option using setuptools extras_require #2609

Open
gdevenyi opened this issue Nov 13, 2024 · 4 comments
Labels

Comments

@gdevenyi
Copy link

gdevenyi commented Nov 13, 2024

pip/setuptools offers an "optional dependencies" feature via the [identifier] extras_require feature on existing pip packages
https://setuptools.pypa.io/en/latest/userguide/dependency_management.html#optional-dependencies

I see this feature is already used to enable the "testing" dependencies for visidata

I'd like to request a version of this which lists all the additional packages to enable other format support.

@frosencrantz
Copy link
Contributor

Some form of this would be useful. There is a related issue #2591 about giving instructions for install VisiData. I think this would be useful for quickly installing a fully loaded VisiData installation.

VisiData has a some esoteric formats, and it is not clear to that people would generally want all the formats. However, I think there is a bigger set than the default that could be included in a fuller installation that would be useful to many people.

It might be ok to provide an option to install all formats like you ask, but to me that would be less useful.

@gdevenyi
Copy link
Author

It might be ok to provide an option to install all formats like you ask, but to me that would be less useful.

I'm happy with a "recommended" list instead of an "all" list.

For me, this request arises from a lack of xlsx support in the default install.

@frosencrantz
Copy link
Contributor

There is a mapping of Python modules and supported format: https://github.com/saulpw/visidata/blob/develop/requirements.txt

There are about 50 modules that could be considered. I do not know what the "recommended" list should be. There are certain formats I think should be on the list, like Excel and web modules. There are others I would exclude like png and font formats. There is a lot of middle ground where I am less sure. I never use some of those formats, but I can see how these would be useful.

@frosencrantz
Copy link
Contributor

Another option that can be used with uv run, pipx run or any tool that supports PEP 723. It is possible to have one file script that lists all of its dependencies. So it would not be hard to create such a file from the requirements.txt.

I learned about this via a blog entry here: https://simonwillison.net/2024/Dec/19/one-shot-python-tools/.

I am rereading your initial comment and you mention that test has quite a few items, except it does not contain any of the Excel formats. Maybe adding that to the Excel modules to test would be useful overall. Or maybe that could be the basis for a larger group.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants