Issues with the command "boa build" with --pyproject-recipes
onurbingol opened this issue · 0 comments
onurbingol commented
Hello,
Previously, a way to include recipe.yaml data in pyproject.toml was shared (reference: #345 (comment))
I think this is a great method to reuse the build variables, as many of us still build the wheels along with the conda packages.
I am afraid I stumbled on a couple of issues
- When using python < 3.11, boa is supposed to import another TOML library, toml, but instead it raises a
ModuleNotFound
error (tested on Py v3.8). It looks like the code is there on render.py (https://github.com/mamba-org/boa/blob/main/boa/core/render.py#L178), but it won't check forModuleNotFound
exception. - Would it be possible to add support for tomli? It looks like many packages use
tomli
instead oftoml
, and according to their comparison, tomli is faster than toml. It feels like when it comes to faster, it suits to boa's purpose as well. - This might be a bit complex to explain, but let's say I have the following snippet from pyptoject.toml
[build-system]
build-backend = "setuptools.build_meta"
requires = [
"setuptools",
"wheel"
]
[project]
name = "abc-xyz"
description = " I am the example!"
license = { file = "LICENSE" }
readme = "README.md"
classifiers = [
"Programming Language :: Python :: 3",
"Operating System :: OS Independent"
]
requires-python = ">=3.8"
dynamic = ["version"]
[tool.setuptools.dynamic]
version = { file = "VERSION" }
[tool.boa.package]
name = "{{ pyproject.project.name }}"
version = "{{ pyproject.project.version }}"
In this situation, where version is set to dynamic and read from a file named VERSION, the version field under tool.boa.package is not populated from the variable {{ pyproject.project.version }}
. Do you think there is a way to make this working?
Thanks in advance!