Skip to content

pyproject.toml - "Bug Tracker" example is not best #1183

Closed
@CarlFK

Description

@CarlFK

Root of this: PyPi uses key names as human readable link text. (maybe fine, maybe not, but not what this is about.)

This issue is about:
This example in packaging tutorials is valid but not best:

"Bug Tracker" = "https://github.com/pypa/sampleproject/issues"
https://packaging.python.org/en/latest/tutorials/packaging-projects/#configuring-metadata

Toml spec says:
Quoted keys follow the exact same rules as either basic strings or literal strings and allow you to use a much broader set of key names. Best practice is to use bare keys except when absolutely necessary.
https://toml.io/en/v1.0.0#keys

Packaging docs:

urls
    type: table with keys and values of strings
A table of URLs where the key is the URL label and the value is the URL itself.

https://packaging.python.org/en/latest/specifications/declaring-project-metadata/#urls

The use case for quoted keys is: pretty link text on PyPi.
Here is an example in the wild:
https://pypi.org/project/ddb-cache/

There are 2 ways of making the example better:

  1. Follow toml best practice, remove the spacy key and use "Issues" (without quotes).
  2. Keep the example as is, add a note explaining the violation of toml best practice. (PyPi uses the key...)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions