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

add the applicable new (version 9.10) GHC flags to normaliseGhcArgs (backport #10014) #10106

Merged
merged 2 commits into from
Jun 12, 2024

Conversation

mergify[bot]
Copy link
Contributor

@mergify mergify bot commented Jun 12, 2024

Relevant issue #9729 (blocked by this PR)

Overview

This PR is concerned with updating the Distribution.Simple.Program.GHC module to include flags added since (inclusively) 9.2 into normalizeGHCArgs and remove flags that have since removed in renderGhcOptions.

The file didn't seem to be updated since ghc 8.10. I hope to address that in this PR.

Actionable flags, as far as I can tell, are (see commit message):

  • -fdiagnostics-as-json (changes the format GHC outputs its diagnostics)
  • -fprint-error-index-lists=<always|never|auto> (changes the way GHC displays compile time)
  • -fbreak-points (enables/disables break-points in GHCi)
  • -dipe-stats (dumps information about which info tables have IPE
    information)
  • -ffamily-application-cache (only changes the speed of the compiler)
  • -fprint-redundant-promotion-ticks
  • -fshow-error-context
  • -funoptimized-core-for-interpreter (only applies to GHCi)

For a diff of flags between GHC 8.10 and 9.10, see #10014 (comment)

QA notes

  • cabal-install with GHC 9.8 and newer must not list the cabal equivalent of the GHC split-objs flag, before GHC 9.8 it must list it

  • changing either of the flags:

    • -fdiagnostics-as-json
    • -fprint-error-index-lists
    • -fbreak-points
    • -dipe-stats
    • -ffamily-application-cache
    • -fprint-redundant-promotion-ticks
    • -fshow-error-context
    • -funoptimized-core-for-interpreter

    must not cause recompilation


Template Α: This PR modifies behaviour or interface

Include the following checklist in your PR:

  • Patches conform to the coding conventions.
  • Any changes that could be relevant to users have been recorded in the changelog.
  • n/a The documentation has been updated, if necessary.
  • Manual QA notes have been included.
  • Tests have been added. (Ask for help if you don’t know how to write them! Ask for an exemption if tests are too complex for too little coverage!)

This is an automatic backport of pull request #10014 done by [Mergify](https://mergify.com).

…10014)

* add the applicable new (versions 9.2 - 9.10) GHC flags to normaliseGhcArgs

Actionable flags are:
- fdiagnostics-as-json (changes the format GHC outputs its diagnostics)
- fprint-error-index-lists (changes the way GHC displays compile time)
- fbreak-points (enables/disables break-points in GHCi)
- dipe-stats (dumps information about which info tables have IPE
  information)
- ffamily-application-cache (only changes the speed of the compiler)
- fprint-redundant-promotion-ticks
- show-error-context
- unoptimized-core-for-interpreter (only applies to GHCi)

* [chore] correct the flag names and add a FUTUREWORK

(cherry picked from commit be10be8)

# Conflicts:
#	Cabal/src/Distribution/Simple/Program.hs
@mergify mergify bot added the conflicts label Jun 12, 2024
Copy link
Contributor Author

mergify bot commented Jun 12, 2024

Cherry-pick of be10be8 has failed:

On branch mergify/bp/3.12/pr-10014
Your branch is up to date with 'origin/3.12'.

You are currently cherry-picking commit be10be836.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   Cabal/src/Distribution/Simple/Program/GHC.hs
	new file:   changelog.d/pr-10014

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   Cabal/src/Distribution/Simple/Program.hs

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@ulysses4ever ulysses4ever added squash+merge me Tell Mergify Bot to squash-merge and removed conflicts labels Jun 12, 2024
@mergify mergify bot merged commit a147f1b into 3.12 Jun 12, 2024
53 checks passed
@mergify mergify bot deleted the mergify/bp/3.12/pr-10014 branch June 12, 2024 23:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport squash+merge me Tell Mergify Bot to squash-merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants