Skip to content

Binary distributions such as wheels include Cython and C sources #250

@musicinmybrain

Description

@musicinmybrain

Long story short

Binary distributions such as wheels include Cython and C sources (_frozenlist.pyx and _frozenlist.c).

Expected behaviour

These should not be included in the binary distributions since they do not provide any value, and the C source is quite large.

Actual behaviour

Both _frozenlist.pyx and _frozenlist.c are included in binary distributions.

Steps to reproduce

$ python3 -m venv _e
$ . _e/bin/activate
(_e) $ pip install frozenlist
(_e) $ ls -l _e/lib64/python*/site-packages/frozenlist/
total 816
-rw-rw-r--. 1 ben ben 311481 Dec  6 18:56 _frozenlist.c
-rwxrwxr-x. 1 ben ben 499872 Dec  6 18:56 _frozenlist.cpython-310-aarch64-linux-gnu.so
-rw-rw-r--. 1 ben ben   2983 Dec  6 18:56 _frozenlist.pyx
-rw-rw-r--. 1 ben ben   2391 Dec  6 18:56 __init__.py
-rw-rw-r--. 1 ben ben   1486 Dec  6 18:56 __init__.pyi
drwxrwxr-x. 1 ben ben     48 Dec  6 18:56 __pycache__
-rw-rw-r--. 1 ben ben      6 Dec  6 18:56 py.typed

Your environment

This is totally independent of platform.

Suggested fix

Either add to setup(…) in setup.py:

    exclude_package_data={"": ["*.pyx", "*.c"]},

or, since this is currently the only package data, set

    include_package_data=False,

Neither will affect the source distribution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions