nteract/papermill

Python parameter with `None | ` union type is logged as unknown

Open

#806 opened on Sep 5, 2024

View on GitHub
 (0 comments) (0 reactions) (0 assignees)Python (5,381 stars) (402 forks)batch import
bughelp wanted

Description

🐛 Bug

# template.ipynb parameters block
foo: None|str = None
$ papermill -p foo BAR ...
Passed unknown parameter: foo

Expected: this warning not to show up, foo should be recognized as a valid parameter.

Also note:

  • Despite the warning, the above example still properly injects the parameter value
  • Optional[str] does not suffer from this issue, just type union style
  • str|None (change the type order) produces the same warning log

papermill version == 2.6.0

Contributor guide