infinity icon indicating copy to clipboard operation
infinity copied to clipboard

Running infinity cli with click >8.2.1 fails with TypeError: Secondary flag is not valid for non-boolean flag

Open wirthual opened this issue 2 months ago • 3 comments

System Info

As seen in #649

Workaround: Pin click to <8.3.0

Full error message infinity_emb v2 --help /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/torch/onnx/_internal/registration.py:159: OnnxExporterWarning: Symbolic function 'aten::scaled_dot_product_attention' already registered for opset 14. Replacing the existing function with new function. This is unexpected. Please report it on https://github.com/pytorch/pytorch/issues. warnings.warn( ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ /home/akk/micromamba/envs/infinity077/bin/infinity_emb:7 in │ │ │ │ 4 if __name__ == '__main__': ╭──────────── locals ─────────────╮ │ │ 5 │ if sys.argv[0].endswith('.exe'): │ sys = │ │ │ 6 │ │ sys.argv[0] = sys.argv[0][:-4] ╰─────────────────────────────────╯ │ │ ❱ 7 │ sys.exit(cli()) │ │ 8 │ │ │ │ /media/data4/yh/git/infinity/libs/infinity_emb/infinity_emb/cli.py:413 in cli │ │ │ │ 410 │ │ │ ) │ │ 411 │ │ │ │ │ 412 │ │ │ sys.argv.insert(1, "v2") │ │ ❱ 413 │ tp() │ │ 414 │ │ 415 │ │ 416 if __name__ == "__main__": │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:338 in __call__ │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:321 in __call__ │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:360 in get_command │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:342 in get_group │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:496 in get_group_from_info │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:590 in get_command_from_info │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:566 in get_params_convertors_ctx_param_name_from_function │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/main.py:900 in get_click_param │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/typer/core.py:427 in __init__ │ │ │ │ /home/akk/micromamba/envs/infinity077/lib/python3.12/site-packages/click/core.py:2793 in __init__ │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ TypeError: Secondary flag is not valid for non-boolean flag.

Information

  • [ ] Docker + cli
  • [x] pip + cli
  • [ ] pip + usage of Python interface

Tasks

  • [x] An officially supported CLI command
  • [ ] My own modifications

Reproduction

Install infinity with click 8.3.0

infinity v2 --help

wirthual avatar Oct 31 '25 14:10 wirthual

Should we bump the deps?

michaelfeil avatar Nov 03 '25 02:11 michaelfeil

Pin them to <=8.1.8?

wirthual avatar Nov 03 '25 03:11 wirthual

I think you are right, bumping typer helps.

Typer 0.12.5 with click==8.3.0 raises this error, when bumping typer to the latest version(0.20.0), the error is gone.

wirthual avatar Nov 05 '25 02:11 wirthual