haskell / happy

The Happy parser generator for Haskell
Other
273 stars 85 forks source link

Happy refactoring (happy-1.21): either move forward or take it back #255

Closed andreasabel closed 9 months ago

andreasabel commented 9 months ago

ATTN: @Ericson2314 @int-index

happy-1.21 included large refactorings, was released in October 2021 but then unreleased shortly after. It is soon that this is two years ago.

Unfortunately, in the current state, with refactorings applied but a boot-strapping problem persisting, master is not releasable. This also means that fixing issues is stalled, as the fate of those fixes would be unknown.

I only see two options now:

  1. Either finish to work done in 2021 to bring it to a releasable state.
  2. Or take this work back and bring master back into a releasable state based on the happy-1.20 code.

Since I am mostly interested in the stability of happy, I don't care much which path is taken. However, I think that something has to happen soon.

int-index commented 9 months ago

I've lost all context by now. What would it take to make happy releasable without reverting the refactorings?

andreasabel commented 9 months ago

I think the context can be recovered by starting here:

int-index commented 9 months ago

OK. This really is an issue with Cabal, but we can work around it. We need a custom script to generate release tarballs with Bootstrapped.hs pre-generated from Bootstrapped.ly. I'll try to do it and see how well it works.

andreasabel commented 9 months ago

Note that currently (1.20) one has to make sdist to make a custom tarball as well. (Plain cabal sdist does not generate a boot-strappable tarball.) Maybe something similiar can be put in place for 1.21.

Ericson2314 commented 9 months ago

Yeah you are right @andreasabel, this has dragged on long enough.

int-index commented 5 months ago

See https://github.com/haskell/happy/issues/238#issuecomment-1925340557