Skip to content

Consider migrate the cache system to hls-graph #4240

Open
@soulomoon

Description

@soulomoon

Instead of scattering the cache system between hls-graph and ghcide. There might be a better idea, we can migrate the cache system to hls-graph. Since the scattering leads to some hard debugging bugs like #4185 #4093, although they've been solved.

But it is hard, It would require us to make a very good abstract of the current handling logic. And reimplement the following in hls-graph:

  • garbage collector is in ghcide. There are special treatment for special keys.
  • We have two fields in shakeExtra that's in the cache system. dirtykeys and state. And monitering is happening in ghcide.
  • data Value v that wrap FileVersion and PositionDelta.
  • specially treatment of special keys in estimateFileVersionUnsafely
  • lastValueIO and it is entangling with PositionMapping

But we can take steps to do it too.

Metadata

Metadata

Assignees

No one assigned

    Labels

    status: in discussionNot actionable, because discussion is still ongoing or there's no decision yettype: enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions