Hey there! Just wanted to report that the CLI is currently completely broken for anyone attempting to install either the original main or the nightly branch via pipx or source.
The problem:
Due to unpinned dependencies (click, typer), the following major issues occur:
Errors encountered:
make_metavar() crash from click:
TypeError: Parameter.make_metavar() missing 1 required positional argument: 'ctx'
- Caused by new versions of
click (8.1.x+)
- Typer is calling this incorrectly in older versions
- Breaks CLI output (e.g.,
--help)
_expand_args crash when downgrading click:
AttributeError: module 'click.utils' has no attribute '_expand_args'
- Caused when downgrading
click to older versions
- Nightly branch expects this newer internal method
click._bashcomplete import error:
ModuleNotFoundError: No module named 'click._bashcomplete'
- Happens when trying to use
typer==0.3.2 with click==8.1.x
click._bashcomplete was removed in later Click versions
- Code typo in
config.py:
super.__init__(**kwargs) # ← invalid
Should be:
super().__init__(**kwargs)
- This typo exists in the
nightly branch at:
ducklingscript/cli/utils/config.py:19
Suggested fix:
- Pin
click==8.0.4
- Pin
typer==0.4.2 or refactor for latest
- Fix the
super() typo
- Add version pins to
pyproject.toml or requirements.txt to prevent this long-term
Repro steps:
pipx install ducklingscript # or from nightly branch
duckling --help # crashes every time
Tried patching click and typer manually, but one version always breaks the other.
Thanks for the cool little project, and hope this helps others get quacking again!
Hey there! Just wanted to report that the CLI is currently completely broken for anyone attempting to install either the original
mainor thenightlybranch viapipxor source.The problem:
Due to unpinned dependencies (
click,typer), the following major issues occur:Errors encountered:
make_metavar()crash fromclick:click(8.1.x+)--help)_expand_argscrash when downgradingclick:clickto older versionsclick._bashcompleteimport error:typer==0.3.2withclick==8.1.xclick._bashcompletewas removed in later Click versionsconfig.py:Should be:
nightlybranch at:ducklingscript/cli/utils/config.py:19Suggested fix:
click==8.0.4typer==0.4.2or refactor for latestsuper()typopyproject.tomlorrequirements.txtto prevent this long-termRepro steps:
Tried patching
clickandtypermanually, but one version always breaks the other.Thanks for the cool little project, and hope this helps others get quacking again!