fatiando / pooch

A friend to fetch your data files
https://www.fatiando.org/pooch
Other
630 stars 76 forks source link

Exclude doc/ from wheel #423

Open penguinpee opened 5 months ago

penguinpee commented 5 months ago

The automatic discovery adds doc/ to the wheel triggered by the presence of conf.py in that directory.

penguinpee commented 5 months ago

Alternatively, disabling namespaces also works: find = {namespaces = false} instead of find {}.

leouieda commented 5 months ago

Thanks for that @penguinpee. We're discussing changing our packaging practices to remove all of these from our built packages here: https://github.com/fatiando/community/issues/154

carlosal1015 commented 4 months ago

Here https://archlinux.org/packages/extra/any/python-pooch/files same error

error: failed to commit transaction (conflicting files)
python-pooch: /usr/lib/python3.12/site-packages/doc/conf.py exists in filesystem (owned by python-codepy)
penguinpee commented 4 months ago

Here https://archlinux.org/packages/extra/any/python-pooch/files same error

error: failed to commit transaction (conflicting files)
python-pooch: /usr/lib/python3.12/site-packages/doc/conf.py exists in filesystem (owned by python-codepy)

In your case the file is already claimed by codepy. I looked at the sdist from PyPI and codepy is making the same mistake by using packages=find_namespace_packages() in setup.py, which adds doc as a top level module with conf.py in it.

That should be reported to codepy upstream. For now you could apply this PR as a patch to pooch allowing you to get on with the installation.

carlosal1015 commented 4 months ago

I will do it, many thanks for the feedback.