Skip to content

Change default behavior of group-dependencies-name and optional-dependencies-name #1109

@RobPasMue

Description

@RobPasMue

See:

optional-dependencies-name:
description: |
Any valid install targets/extras defined in the ``pyproject.toml`` file, or the suffix
of a requirement file. Multiple targets can be specified as a comma-separated
list (space-separated for poetry-based projects). The associated dependencies are installed
before building the documentation. Default value is ``doc``.
default: 'doc'
required: false
type: string
group-dependencies-name:
description: |
Any valid dependency groups defined in the ``pyproject.toml`` file. Multiple
targets can be specified as a comma-separated list. The associated dependencies
are installed before running the documentation build. Default value is ``''``
in which case the action will not use dependency groups.
default: ''
required: false
type: string

The problem is that if a user defines only group-dependencies-name and does not have the optional dependencies for docs.. (i.e. they do not ship the doc target), the workflow fails..

The workflow currently tries to install the optional dependencies target (i.e. by default, doc) no matter what.

We are asking our repos to move away from optional dependencies to groups.. and when they do so, I would expect them to eventually remove the "doc" target.. but in no case I would expect our actions to continue to use the optional-dependency target if the group was defined.

My proposal:

  • Change both defaults to empty
  • If both of them are kept empty by users, then we default inside our action to the current behavior: optional-dependencies-name=doc
  • If any of them have content, that's the one we take.
  • If both of them have content, so be it. We continue to use both of them

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions