The change itself makes sense to me, non-accumulating semantics seem like
a much better default.I strongly agree with this. The current behaviour seems deeply strange, and the proposer offers evidence that it messes up users.As to deprecation, how about this:
- In the first release, GHC continues with the current behaviour, but *if* it finds an old file (of any kind, even in the wrong format) it emits a warning (before attempting to read it) saying
I am reading in the existing tix file, and will add hpc info from this run to the existing data in that file. GHC 9.12 will cease looking for an existing tix file. If you positively want to add hpc info to the current tix file, use `-fread-tix-file`
- In the next release, it stops reading the file
That is not onerous to implement, but it gives due warning. Moreover, you can respond right away by saying `-fno-read-tix-file` or `-fread-tix-file` to avoid the warning.Simon saysI don't think a deprecation warning resolves the concernThat's true of all deprecation warnings -- there will always be users who ignore them. But we have done our duty by, well, warning them.Simon_______________________________________________On Thu, 25 Jan 2024 at 06:06, Moritz Angermann <moritz.angermann@gmail.com> wrote:Dear Committee members,_______________________________________________In Proposal #612, David Binder suggests changing the semantics from `-fhpc` to auto-ingestexisting .tix files for accumulation, towards _not_ auto-ingesting them and instead overwritingthe .tix file with the coverage of the latest run.I agree with his assessment that the current behaviour easily leads to unexpected surprises. He suggests adding a flag --read-tix-file= to control this behaviour and defaulting that to _no_, with a grace and deprecation period prior informing the user that the currently accumulating feature will change in a future GHC release.Adding the flag to control this behaviour is fairly uncontroversial I hope, however I'd like you to. Weight in on the default. Should we change the default behaviour, or only add the flag?I'd recommend changing the default to --read-tix-file=no after a deprecation period.Best,Moritz
ghc-steering-committee mailing list
ghc-steering-committee@haskell.org
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
ghc-steering-committee mailing list
ghc-steering-committee@haskell.org
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee