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

PyPI sdist package and conda-forge recipe #7

Open
oschwengers opened this issue Aug 23, 2022 · 7 comments
Open

PyPI sdist package and conda-forge recipe #7

oschwengers opened this issue Aug 23, 2022 · 7 comments

Comments

@oschwengers
Copy link

Hi @tweedge ,
thanks for this wonderful Python library! I'd like to use it in one of our Python bioinformatics applications (oschwengers/bakta).
As the main distribution channel of this software is Conda, I'd need unishox2-py3 to be available at conda-forge. I'd be happy to write a recipe for it based on your PyPI package.

However, I'd need an sdist package on PyPI in order create a recipe via Conda`s grayskull tool:

$ grayskull pypi unishox2-py3
#### Initializing recipe for unishox2-py3 (pypi) ####

Recovering metadata from pypi...
Traceback (most recent call last):
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/bin/grayskull", line 10, in <module>
    sys.exit(main())
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/__main__.py", line 193, in main
    generate_recipes_from_list(args.pypi_packages, args)
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/__main__.py", line 215, in generate_recipes_from_list
    recipe, config = create_python_recipe(
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/__main__.py", line 249, in create_python_recipe
    GrayskullFactory.create_recipe(
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/base/factory.py", line 31, in create_recipe
    GrayskullFactory.REGISTERED_STRATEGY[repo_type.lower()].fetch_data(
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/strategy/pypi.py", line 60, in fetch_data
    update_recipe(recipe, config, sections or ALL_SECTIONS)
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/strategy/pypi.py", line 470, in update_recipe
    metadata = get_metadata(recipe, config)
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/strategy/pypi.py", line 343, in get_metadata
    sdist_metadata, pypi_metadata = get_origin_wise_metadata(config)
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/strategy/pypi.py", line 227, in get_origin_wise_metadata
    pypi_metadata = get_pypi_metadata(config)
  File "/home/oliver/tmp/conda-forge-unishox2-py3/conda/lib/python3.10/site-packages/grayskull/strategy/pypi.py", line 270, in get_pypi_metadata
    raise AttributeError(f"There is no sdist package on pypi for {config.name}.")
AttributeError: There is no sdist package on pypi for unishox2-py3.

Also, would it be OK to mention you in the Conda package as the maintainer? Any help would be highly appreciated!
Best regards!

@tweedge
Copy link
Owner

tweedge commented Aug 31, 2022

Hi! I'll have a look into this :)

@tweedge
Copy link
Owner

tweedge commented Aug 31, 2022

So I have added a source distribution, but I'm still getting familiar with Conda. I am happy to be mentioned as a maintainer if you create a Conda package before me!

@oschwengers
Copy link
Author

Sorry, for the late reply!

I just opened a PR to @conda-forge: conda-forge/staged-recipes#20798

The PR template contains a couple of questions regarding statically linked 3rd-party libraries that might be used and contained. I wonder if you could maybe check my statements and amend them where necessary?

Thanksa lot for your support and best regards!

@oschwengers
Copy link
Author

@tweedge Unfortunately, I got stuck in the Windows CI tests. I'm neither a windows user nor do I have much experience with Python/C hybrid projects. Could you maybe have a look at this to figure out what's the issue here? Otherwise, I'd skip the Windows builds, but as a consequence, unishox-py3 would not be available for Windows.

@tweedge
Copy link
Owner

tweedge commented Nov 5, 2022

Howdy, the answers given in this PR looks pretty good! I think we might be able to check off "Package does not vendor other packages. (If a package uses the source of another package, they should be separate packages or the licenses of all packages need to be packaged)." as both projects use the same Apache 2.0 license, which is bundled.

Unfortunately I am also not a Windows user, so it might be best for us to accept the gap at this time :(

@oschwengers
Copy link
Author

OK, I skipped the builds for Win and arm64 systems and requested a review. Let's see what we get.

@oschwengers
Copy link
Author

Hi @tweedge , sorry fore the very late reply. There were a comment regarding different licenses: conda-forge/staged-recipes#20798 (comment)

Essentially, they ask if you could add the original Unishox2 license into your repo, because they differ due to different license holders (which is the case, see https://github.com/siara-cc/Unishox2/blob/72313797a9b305a3b36b697fc658b29490194de4/LICENSE at the very end: Copyright 2019 Siara Logics (cc)

If you would be willed to include the original license file as well, we might go ahead with conda-forge/staged-recipes#20798

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

No branches or pull requests

2 participants