inflect icon indicating copy to clipboard operation
inflect copied to clipboard

p.singular_noun("pair_of_scissors") raises a TypeError

Open paulannetts opened this issue 1 year ago • 1 comments

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

paulannetts avatar Oct 30 '24 15:10 paulannetts

That does seem like a bug. I'm slightly surprised that case isn't covered by a unit test. Perhaps it's not because "pair of scissors" isn't a plural noun, so calling singular_noun on it is unsupported. I welcome you or others to step up and investigate the underlying cause and propose a solution.

jaraco avatar Dec 28 '24 16:12 jaraco

This is still affecting my use case — running large-scale NER pipelines with compound biomedical terms triggers this bug.

PR #228 seems to address the root cause. Would be great to have this reviewed and merged if possible. Thanks!

norths7ar avatar Jun 04 '25 12:06 norths7ar