beeware / briefcase

Tools to support converting a Python project into a standalone native application.
https://briefcase.readthedocs.io/
BSD 3-Clause "New" or "Revised" License
2.48k stars 353 forks source link

Add documentation for document type `extension` field #1771

Closed rmartin16 closed 1 month ago

rmartin16 commented 2 months ago

Describe the bug

When document types are configured for an app, the extension field is required but not documented.

For instance:

[tool.briefcase.app.podium.document_type.deck]
description = "Podium Slide Deck"
extension = "podium"
icon = "src/podium/resources/podium-deck"
url = 'https://beeware.org/project/projects/applications/podium/'

Steps to reproduce

See #1770 for example of what happens when extension isn't configured.

Expected behavior

The need and purpose of extension is documented.

The difference between this extension field and the extension specified in the name of the table isn't immediately clear...so, these differences may need to be understood to properly document this. Additionally, it's also possible one should be falling back to another in the code.

Screenshots

No response

Environment

Logs

See #1770.

Additional context

No response

freakboy3742 commented 2 months ago

For anyone looking into this: https://github.com/beeware/podium is probably the only usage of this feature in practice; it's entirely possible the explicit extension attribute is an oversight, and it should be using the toml tag as the extension.

AfiMaameDufie commented 1 month ago

Hi @freakboy3742 , I am looking into this now.