syncMyMoodle
syncMyMoodle copied to clipboard
whl package does not include an executable
The whl package does only include side packages and no executable.
$ tree
.
└── lib
└── python3.10
└── site-packages
├── syncmymoodle
│ ├── debug.py
│ ├── __init__.py
│ ├── __main__.py
│ └── __pycache__
│ ├── debug.cpython-310.opt-1.pyc
│ ├── debug.cpython-310.pyc
│ ├── __init__.cpython-310.opt-1.pyc
│ ├── __init__.cpython-310.pyc
│ ├── __main__.cpython-310.opt-1.pyc
│ └── __main__.cpython-310.pyc
└── syncMyMoodle-0.0.3.dist-info
├── LICENSE
├── METADATA
├── RECORD
├── top_level.txt
└── WHEEL
Step to reproduce:
- build whl package
- install whl package
python -m build --wheel --no-isolation
python -m installer --destdir=test dist/*.whl
I am not sure what you are missing. syncmymoodle like most python packages does not have a binary executable and in the shown directory structure every file required to run smm seems to be present.
Please clarify, otherwise this will be closed
I have execute the install command listed above. But the executable is missing. Sadly I am not familiar enough with python, to be able to say, why this happen. I have try to follow the arch package guidelines for pythons wheel format, witch is used by this project. see https://wiki.archlinux.org/title/Python_package_guidelines#Standards_based_(PEP_517)
I was able to workaround this issues by installing manual the __main__.py
and ignore the package system of python.
see https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=sync-my-moodle-git#n28.
But this avoid that pycache can be used.
Ah yes to packaging tools this is just a library and has no entrypoints. On the v2 Branch I have declared a proper entrypoint though I have not touched that branch in months sadly.
However with your current setup you should still be able to call it like python3 -m syncmymoodle
.