jaraco/inflect

p.singular_noun("pair_of_scissors") raises a TypeError

Aperta

#222 aperta il 30 ott 2024

 (8 commenti) (0 reazioni) (0 assegnatari)Python (125 fork)github user discovery
bughelp wanted

Metriche repository

Star
 (1082 stelle)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

This seems to be a regression sometime between v6.0.4 and 7.4.0 with a simple repro step.

Reproed on MacOS Python 3.11, 3.9, confirms v6.0.4 works as expected, as long as pydantic dependency is <v2.

import inflect
p = inflect.engine()
p.singular_noun("pair of scissors")

Expected behaviour: Returns "pair of scissors"

Actual behaviour: TypeError: sequence item 0: expected str instance, bool found

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/paulannetts/.pyenv/versions/3.9.18-test/lib/python3.9/site-packages/inflect/__init__.py", line 2597, in singular_noun
    sing = self._sinoun(word, count=count, gender=gender)
  File "/Users/paulannetts/.pyenv/versions/3.9.18-test/lib/python3.9/site-packages/inflect/__init__.py", line 3233, in _sinoun
    return self._handle_long_compounds(words, count=1) or word
  File "/Users/paulannetts/.pyenv/versions/3.9.18-test/lib/python3.9/site-packages/inflect/__init__.py", line 3037, in _handle_long_compounds
    return next(solutions, None)
  File "/Users/paulannetts/.pyenv/versions/3.9.18-test/lib/python3.9/site-packages/inflect/__init__.py", line 3027, in <genexpr>
    " ".join(
TypeError: sequence item 0: expected str instance, bool found

Guida contributor