Lightning-AI / Lightning-AI/pytorch-lightning

Lightning CLI should use fail_untyped=True

Open
#18,285 4 comments 1 reaction 1 assignee View on GitHub

@cristianregep is already working on this.

Since Dec 29, 2023.

3rd party breaking change help wanted lightningcli refactor
Dominant language
Python
Stars
31.4k
Forks
3.8k
Avg merge
6d 7h
Merged PRs (30d)
6

Description

### Outline & Motivation

Use fail_untyped=True here https://github.com/Lightning-AI/lightning/blob/97020bf8d7a88ca5195534b8585a5ef53f1ce6cb/src/lightning/pytorch/cli.py#L135 and here https://github.com/Lightning-AI/lightning/blob/97020bf8d7a88ca5195534b8585a5ef53f1ce6cb/src/lightning/pytorch/cli.py#L139

### Pitch

I have spent quite a bit of time with the same issue described here https://github.com/Lightning-AI/lightning/issues/15741 . The person there also reported spending "several days". I finally figured it out when I created an isolated example with just jsonargparse which told me _"Types as a string and `from __future__ import annotations` is currently not supported"_ . That was because CLI has fail_untyped=True by default . I do believe it would be better to have that as default to ease debugging. If not by default, maybe allow users to set that themselves.

I do know that from version 4.22 of jsonargparse this specific example is no longer an issue https://github.com/omni-us/jsonargparse/issues/120 , but my point is more about the general principle of having fail_untyped=True

### Additional context

_No response_

cc @justusschock @awaelchli @borda @carmocca @mauvilsa

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.