p.singular_noun("pair_of_scissors") raises a TypeError
Opened this issue · 0 comments
paulannetts commented
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