kensho-technologies/graphql-compiler

Remove cached-property dependency

Closed this issue · 0 comments

I think we should remove our dependency on cached-property, for a few reasons:

  • We use a very minimal piece of functionality we can easily replicate and improve upon ourselves.
  • It isn't type-hinted, and the open issue for it is over a year old with no activity: pydanny/cached-property#172
  • The lack of type hints means that we have to always suppress mypy's disallow_untyped_decorators rule. It also means that @cached_property properties return type Any, which makes mypy even less useful.
  • @cached_property doesn't inherit from @property, causing a number of other type issues. Here's the tracking issue for it, which has also been inactive in many years: pydanny/cached-property#26