alexwl / haskell-code-explorer

Web application for exploring and understanding Haskell codebases
MIT License
509 stars 20 forks source link

Find references across packages #11

Open pwaller opened 5 years ago

pwaller commented 5 years ago

Hi again!

A feature request, or a confused user request :)

The project I'm looking at has a structure like:

MyProjectFoo/MyProjectFoo.cabal
MyProjectFoo/bar/bar.cabal

I've indexed these separately, and loaded them all into one server instance. If I'm looking at MyProjectFoo, then it finds references to symbols defined in bar.

However, if I'm looking at a symbol in bar and find all references to that symbol, it only seems to find those in bar (and not references coming from the top level project MyProjectFoo).

My goal is to be able to look at a symbol defined in bar and discover the references in other projects. Is this possible?

Thanks!

alexwl commented 5 years ago

Currently, the "find references" feature works only inside one package (unlike "go to definition").

Cross-package "find references" is definitely useful and it's quite easy to implement (there's no need to modify the code that uses GHC API).

I will work on it this week.

alexwl commented 5 years ago

Cross-package "find references" is in master. Public server https://haskell-code-explorer.mfix.io now supports this feature.

You just need to update and restart haskell-code-server (there's no need to reindex packages) to be able to find references across packages.