frogbot
frogbot copied to clipboard
Python PEP 517/518 support
Is your feature request related to a problem? Please describe.
Frogbot incorrectly assumes that projects with a pyproject.toml file are using the poetry package manager.
Describe the solution you'd like to see
Frogbot would ideally support other build backends that can be specified in pyproject.toml files. Projects with a pyproject.toml file that specify a non-poetry build backend, e.g. setuptools.build_meta should be interpreted following the specification for declaring Python project metadata. Support for other build backends like flit could be added as special cases, but most projects appear to be converging to the standard specification linked above. e.g. old flit style vs new flit style.
[build-system]
build-backend = 'setuptools.build_meta'
requires = ['setuptools']
Additional context
PEP 517 and PEP 518 outline a "build-system independent format" for projects. Common python packaging tools like setuptools have added support for this feature.
Hello @bphillips-exos,
We appreciate your usage of Frogbot! We would like to acknowledge that the issue you have raised is indeed on our roadmap for upcoming development.
We will keep you informed by providing a link to the corresponding pull request once it has been created. This way, you can easily track its progress.
Thank you for bringing this to our attention, and please feel free to reach out if you have any further questions or concerns.
Best regards, Eyal Delarea
@bphillips-exos, Adding to @EyalDelarea's reply above, we plan to start implementing this next week and would love to get your feedback as soon as this is resolved. We'll keep you posted here.
Thank you both for the info, we'd be happy to try out and share feedback on this feature when it's ready.
Hey @bphillips-exos,
I wanted to apologize for the delay, as we originally planned to address this issue right after you opened it. Rest assured, we'll keep you informed about the progress until it gets resolved.
Thank you for your patience.
Hi @EyalDelarea, Do you know if this issue is still ongoing? I have a similar scenario where a "jf audit" command incorrectly assumes all pyproject.toml files are poetry projects. Thanks for your help!
Hi @EyalDelarea, Ran into this problem as well, where Frogbot keeps failing requiring poetry when it is not used at all in the pyproject.toml. Even trying to get around it by adding a step in the workflow, to install poetry first, doesn't work, as things fail further requiring [tool.poetry] inside pyproject.toml and then dependencies etc. So, asking teams to use such a workaround, doesn't seem like a good idea.
We found a workaround for our case by setting JF_PATH_EXCLUSIONS: "*pyproject.toml*".
It might not work for everyone.
Sharing, as it still could help those with similar setup.
I have the same problem as described above with a pyproject.toml that only includes a section for [tool.black] but not [tool.poetry]. For now, the workaround given by @imranzunzani works. Thanks!
Hi @EyalDelarea, do you have an update when the fix for pyproject and other build tools will be added?