Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft: Add POC for HLS loading multiple components on startup #2009

Closed
wants to merge 1 commit into from

Conversation

fendor
Copy link
Collaborator

@fendor fendor commented Jul 9, 2021

Powered by hie-bios.

A prototype implementation for loading multiple components on startup using the WIP hie-bios interface: haskell/hie-bios#301

The main feature is the usage of cabal show-build-info, from here: haskell/cabal#7478
To test out this PR, you have to install the linked cabal executable from source.
NB: currently cabal only supports loading projects where the build-type is Simple.

For debugging, take a look at the result of cabal build all in your project, which currently must succeed for show-build-info to succeed.

@fendor
Copy link
Collaborator Author

fendor commented Jul 9, 2021

cc @OliverMadine as this PR touches your GSoC afaict and takes care of haskell/hie-bios#269

@OliverMadine OliverMadine mentioned this pull request Jul 9, 2021
16 tasks
@jneira
Copy link
Member

jneira commented Jul 10, 2021

so it could be converted to draft?

@fendor
Copy link
Collaborator Author

fendor commented Jul 10, 2021

Ah yes please, on gitlab the prefix works :/

@jneira jneira marked this pull request as draft July 10, 2021 18:36
@isovector
Copy link
Collaborator

Your CI appears to be blocked by #2016

@pepeiborra
Copy link
Collaborator

@OliverMadine have you had a chance to test this PoC? @fendor have you played any further with this?

@fendor
Copy link
Collaborator Author

fendor commented Aug 21, 2021

Will expand on this soon, as s-b-i has changed significantly since this iteration.

@OliverMadine
Copy link
Collaborator

OliverMadine commented Aug 21, 2021

@OliverMadine have you had a chance to test this PoC? @fendor have you played any further with this?

Somewhat but I haven't got anything working yet.

@fendor Would it be possible to make a PR to just get everything in place for loading multiple components? I.e 'load a list of components' in HLS even if hie-bios only uses singleton lists for each component for the time being? I'm not sure how possible this is, I'm still looking over these PRs.

@fendor
Copy link
Collaborator Author

fendor commented Aug 22, 2021

Should be possible, what types do you care about?

@OliverMadine
Copy link
Collaborator

OliverMadine commented Aug 22, 2021

Should be possible, what types do you care about?

I'm suggesting we separate the work of 'loading multiple components' and 'getting multiple components to load' into different PRs.

I should've been more clear since this is more than just getting types in place, but I guess it should include the changes to CradeAction to use a NonEmpty (and then everything involving loading that non-empty List).

@fendor
Copy link
Collaborator Author

fendor commented Sep 19, 2022

Surpassed by @wz1000's work

@fendor fendor closed this Sep 19, 2022
@pepeiborra
Copy link
Collaborator

Surpassed by @wz1000's work

What work do you mean?

@fendor
Copy link
Collaborator Author

fendor commented Sep 20, 2022

Afaik, wz1000 implemented multiple home units support for GHC 9.4 and has patches for cabal and hie-bios that need to be upstreamed eventually. In any way, this PR has aged quite a bit anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants