I can’t follow up all discussions in this huge thread, but I saw people show their preference on a dependency table rather than dependency list.
However, we need to support multiple specifiers for the same package, in which case a table doesn’t work well. For example:
[whatever-dependency-group-table]
test = [
"pytest>=7; python_version >= '3.7'",
"pytest<7; python_version < '3.7'",
]
In poetry, that would be a nested array as field value:
[whatever-dependency-group-table.test]
pytest = [
{version = ">=7", python_version = ">='3.7'"},
{version = "<7", python_version = "<'3.7'"},
]
But that makes the schema more complex IMO.