libfuse/python-fuse

Add sdist to GH-generated artifacts

sdelafond opened this issue · 5 comments

See discussion in #63.

Basically, you just need:

  1. python -m build --sdist invoked in workflow
  2. result included in final artifact?

That's what I was expecting indeed, thanks for confirming.

I'm working on it on this PR:

is it possible (or reasonable) to fix setup.py (or a like), so that sdist build doesn't require build deps?

Run python -m build --sdist
* Creating venv isolated environment...
* Installing packages in isolated environment... (setuptools >= 40.8.0)
* Getting build dependencies for sdist...
Usage:
  pkg-config [OPTION?]

Help Options:
Traceback (most recent call last):
  File "/home/runner/.local/lib/python3.8/site-packages/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
    main()
  File "/home/runner/.local/lib/python3.8/site-packages/pyproject_hooks/_in_process/_in_process.py", line 335, in main
    json_out['return_val'] = hook(**hook_input['kwargs'])
  File "/home/runner/.local/lib/python3.8/site-packages/pyproject_hooks/_in_process/_in_process.py", line 287, in get_requires_for_build_sdist
    return hook(config_settings)
  File "/tmp/build-env-62tvjmuj/lib/python3.8/site-packages/setuptools/build_meta.py", line 328, in get_requires_for_build_sdist
    return self._get_build_requires(config_settings, requirements=[])
  File "/tmp/build-env-62tvjmuj/lib/python3.8/site-packages/setuptools/build_meta.py", line 295, in _get_build_requires
  -h, --help                              Show help options
    self.run_setup()
  File "/tmp/build-env-62tvjmuj/lib/python3.8/site-packages/setuptools/build_meta.py", line 487, in run_setup
    super().run_setup(setup_script=setup_script)
  File "/tmp/build-env-62tvjmuj/lib/python3.8/site-packages/setuptools/build_meta.py", line 311, in run_setup
    exec(code, locals())
  File "<string>", line 62, in <module>
NameError: name 'cflags' is not defined

Application Options:
  --version                               output version of pkg-config

Yeah that'd make sense. Some of the legacy code in setup.py is pretty awful anyway.