getmoto / py-partiql-parser

Python Parser for PartiQL
MIT License
7 stars 3 forks source link

0.5.2: create temporary directory trashes pep517 build #20

Closed kloczek closed 6 months ago

kloczek commented 7 months ago

Look like thee are some missing bits in pyproject.toml because create temporary directory before start build trashes pep157 based build

+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting build dependencies for wheel...
error: Multiple top-level packages discovered in a flat-layout: ['SPECPARTS', 'py_partiql_parser'].

To avoid accidental inclusion of unwanted files or directories,
setuptools will not proceed with this build.

If you are trying to create a single distribution with multiple packages
on purpose, you should not rely on automatic discovery.
Instead, consider the following options:

1. set up custom discovery (`find` directive with `include` or `exclude`)
2. use a `src-layout`
3. explicitly set `py_modules` or `packages` with a list of names

To find more information, look for "package discovery" on setuptools docs.

ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel

In this case during rpm packaging process has been created temporary SPECPARTS directory.

bblommers commented 6 months ago

Hi @kloczek, can you post the reproducible steps that lead to this error? Just running that build command works fine for me locally (Ubuntu, Linux 6.5.0-26-generic, Python 3.10.12, build==1.2.1)

kloczek commented 6 months ago

clone repo in git tree mkdit temp; python3 -sBm build -w --no-isolation.

bblommers commented 6 months ago

Ah, gotcha - should have read your initial report more carefully.

This should be fixed with the latest (0.5.4), but let me know if you run into any other issues.

kloczek commented 6 months ago

Tested and it works now 😋 Thank you 😄

BTW is it possible to start making github releases?🤔 On create github release entry is created email notification to those whom have set in your repo the web UI Watch->Releases. gh release can contain additional comments (li changelog) or additional assets like release tar balls (by default it contains only assets from git tag) however all those part are not obligatory. In simplest variant gh release can be empty because subiekt of the sent email contains git tag name.

I'm asking because my automation process uses those email notifications by trying to make preliminary automated upgrades of building packages, which allows saving some time on maintaining packaging procedures. Probably other people may be interested to be instantly informed about release new version as well.

Documentation and examples of generate gh releases: https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository https://cli.github.com/manual/gh_release_upload/ https://github.com/jbms/sphinx-immaterial/pull/282 https://github.com/marketplace/actions/github-release https://pgjones.dev/blog/trusted-plublishing-2023/ https://github.com/jbms/sphinx-immaterial/issues/281#issuecomment-1700933026 tox target to publish on pypi and make gh release https://github.com/jaraco/skeleton/blob/928e9a86d61d3a660948bcba7689f90216cc8243/tox.ini#L42-L58

bblommers commented 6 months ago

Sure @kloczek! That should happen automatically now with a58a378390c64cb45e69b9a5278108403b54dfd9