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

Publish enum_tools at conda-forge? #59

Closed
1kastner opened this issue Feb 22, 2022 · 5 comments
Closed

Publish enum_tools at conda-forge? #59

1kastner opened this issue Feb 22, 2022 · 5 comments
Assignees
Labels
enhancement New feature or request

Comments

@1kastner
Copy link
Contributor

1kastner commented Feb 22, 2022

I would like to use enum_tools for a conda package which I plan to publish at conda-forge. One of my dependencies is your module. As you already made enum_tools available at your own conda channel, would you mind adding conda-forge as an additional channel?

The general issue is that with our own personal channels, we will end up with a long chain of additional channels. Now it is conda-build -c conda-forge -c domdfcoding my-recipe for me when building my package on my own channel. But the next person who depends on my work would need to add my personal channel as well, making this chain longer and longer. This is not good practice. Some interesting background knowledge is available at https://github.com/conda-forge/staged-recipes#6-do-all-of-my-packages-dependencies-have-to-be-in-conda-forge-already.

Quick side note: This is only necessary because I need enum_tools for the user installation (otherwise the decorators would not be defined). If it was only a dependency for the development installation (as layed out in #50), this step could be skipped.

Alternative: A possible workaround would be to define my own wrapper for your library, checking whether it is installed and if it is not available, just make the decorators a no-op. This is by far not my favorite solution.

@domdfcoding
Copy link
Owner

Hi @1kastner, sorry for the wait.

I can absolutely do that. Does your package make use of the Sphinx integration (enum_tools.autoenum) or just the other parts (documentation and custom_enums)? autoenum depends on sphinx-toolbox, so I'd have to add sphinx-toolbox and its dependencies to conda-forge too (that's not a problem, it'll just take time).

@1kastner
Copy link
Contributor Author

1kastner commented Feb 26, 2022

Thank you very much for the answer. I use the autoenum feature for the sphinx documentation including the decorators for documentation. I am sorry for the additional effort. It is not time-critical but it would make the user installation process easier. I am glad that you consider my proposition.

@1kastner
Copy link
Contributor Author

1kastner commented Apr 6, 2022

Hi @domdfcoding, could you shorty comment on how the process of moving the dependencies of enum_tools to conda-forge is going? And, do you think it is reasonable to have two different packages there, one with and one without sphinx-tools? That could result in a similar setup like matplotlib and matplotlib-base. Then, maybe I could already start to use the decorator enum_tools.documentation.document_enum. Thank you very much for your effort!

@1kastner
Copy link
Contributor Author

1kastner commented Apr 6, 2022

By the way, a proposed recipe for enum_tools without the optional dependencies can be found at conda-forge/staged-recipes#18124 (comment)

@1kastner
Copy link
Contributor Author

Thank you very much for your effort and patience! It is great to see the package online on conda-forge!

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

No branches or pull requests

2 participants