Skip to content

Drop support for GHC 9.0 #4419

Drop support for GHC 9.0

Drop support for GHC 9.0 #4419

Triggered via pull request November 20, 2023 10:24
Status Success
Total duration 49s
Artifacts

hlint.yml

on: pull_request
Hlint check run
38s
Hlint check run
Fit to window
Zoom out
Zoom in

Annotations

14 warnings
Hlint check run
The following actions uses node12 which is deprecated and will be forced to run on node16: rwe/actions-hlint-setup@v1, rwe/actions-hlint-run@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Hlint check run: exe/Wrapper.hs#L1
Warning in module Main: Use module export list ▫︎ Found: "module Main where" ▫︎ Perhaps: "module Main (\n module Main\n ) where" ▫︎ Note: an explicit list is usually better
Hlint check run: ghcide/session-loader/Development/IDE/Session.hs#L621
Warning in loadSessionWithOptions in module Development.IDE.Session: Use map ▫︎ Found: "zip (map fst $ concatMap toFlagsMap all_targets) (repeat hieYaml)" ▫︎ Perhaps: "map (, hieYaml) (map fst $ concatMap toFlagsMap all_targets)" ▫︎ Note: may require `{-# LANGUAGE TupleSections #-}` adding to the top of the file
Hlint check run: ghcide/session-loader/Development/IDE/Session.hs#L838
Suggestion in newComponentCache in module Development.IDE.Session: Redundant $ ▫︎ Found: "setSessionDynFlags $ df" ▫︎ Perhaps: "setSessionDynFlags df"
Hlint check run: ghcide/session-loader/Development/IDE/Session/Diagnostics.hs#L1
Warning in module Development.IDE.Session.Diagnostics: Use module export list ▫︎ Found: "module Development.IDE.Session.Diagnostics where" ▫︎ Perhaps: "module Development.IDE.Session.Diagnostics (\n module Development.IDE.Session.Diagnostics\n ) where" ▫︎ Note: an explicit list is usually better
Hlint check run: ghcide/session-loader/Development/IDE/Session/Diagnostics.hs#L88
Warning in parseMultiCradleErr in module Development.IDE.Session.Diagnostics: Use drop1 ▫︎ Found: "drop 1" ▫︎ Perhaps: "drop1"
Hlint check run: ghcide/src/Development/IDE/Core/Compile.hs#L76
Warning in module Development.IDE.Core.Compile: Use fewer imports ▫︎ Found: "import Development.IDE.Core.FileStore ( resetInterfaceStore )\nimport Development.IDE.Core.FileStore ( shareFilePath )\n" ▫︎ Perhaps: "import Development.IDE.Core.FileStore\n ( resetInterfaceStore, shareFilePath )\n"
Hlint check run: ghcide/src/Development/IDE/Core/Compile.hs#L95
Warning in module Development.IDE.Core.Compile: Use fewer imports ▫︎ Found: "import GHC ( ForeignHValue, GetDocsFailure(..), parsedSource )\nimport qualified GHC as G\nimport GHC ( ModuleGraph )\nimport GHC ( GhcException(..) )\n" ▫︎ Perhaps: "import qualified GHC as G\nimport GHC\n ( ForeignHValue,\n GetDocsFailure(..),\n parsedSource,\n ModuleGraph,\n GhcException(..) )\n"
Hlint check run: ghcide/src/Development/IDE/Core/Compile.hs#L292
Suggestion in captureSplicesAndDeps in module Development.IDE.Core.Compile: Move guards forward ▫︎ Found: "[moduleName mod |\n n <- concatMap (uniqDSetToList . bcoFreeNames) $ bc_bcos bcos,\n Just mod <- [nameModule_maybe n],\n not (isWiredInName n),\n moduleUnitId mod `elem` home_unit_ids]" ▫︎ Perhaps: "[moduleName mod |\n n <- concatMap (uniqDSetToList . bcoFreeNames) $ bc_bcos bcos,\n not (isWiredInName n),\n Just mod <- [nameModule_maybe n],\n moduleUnitId mod `elem` home_unit_ids]"
Hlint check run: ghcide/src/Development/IDE/Core/Compile.hs#L343
Suggestion in captureSplicesAndDeps in module Development.IDE.Core.Compile: Redundant bracket ▫︎ Found: "do let dflags = hsc_dflags hsc_env\n simpl_expr <- simplifyExpr dflags hsc_env ds_expr\n let tidy_expr = tidyExpr emptyTidyEnv simpl_expr\n prepd_expr <- corePrepExpr dflags hsc_env tidy_expr\n lintInteractiveExpr \"hscCompileExpr\" hsc_env prepd_expr\n let iNTERACTIVELoc\n = G.ModLocation\n {ml_hs_file = Nothing,\n ml_hi_file = panic \"hscCompileCoreExpr':ml_hi_file\",\n ml_obj_file = panic \"hscCompileCoreExpr':ml_obj_file\",\n ml_hie_file = panic \"hscCompileCoreExpr':ml_hie_file\"}\n let ictxt = hsc_IC hsc_env\n (binding_id, stg_expr, _, _) <- myCoreToStgExpr\n (hsc_logger hsc_env) (hsc_dflags hsc_env) ictxt\n (icInteractiveModule ictxt) iNTERACTIVELoc prepd_expr\n bcos <- byteCodeGen\n hsc_env (icInteractiveModule ictxt) stg_expr [] Nothing\n let needed_mods\n = mkUniqSet\n [moduleName mod |\n n <- concatMap (uniqDSetToList . bcoFreeNames) $ bc_bcos bcos,\n Just mod <- [nameModule_maybe n],\n not (isWiredInName n),\n moduleUnitId mod `elem` home_unit_ids]\n home_unit_ids = [homeUnitId_ dflags]\n mods_transitive = getTransitiveMods hsc_env needed_mods\n mods_transitive_list\n = map (Compat.installedModule (homeUnitId_ dflags))\n $ nonDetEltsUniqSet mods_transitive\n moduleLocs <- readIORef (hsc_FC hsc_env)\n lbs <- getLinkables\n [toNormalizedFilePath' file |\n installedMod <- mods_transitive_list,\n let ifr\n = fromJust $ lookupInstalledModuleEnv moduleLocs installedMod\n file\n = case ifr of\n InstalledFound loc _ -> fromJust $ ml_hs_file loc\n _ -> panic \"hscCompileCoreExprHook: module not found\"]\n let hsc_env' = loadModulesHome (map linkableHomeMod lbs) hsc_env\n fv_hvs <- loadDecls (hscInterp hsc_env') hsc_env' srcspan bcos\n let hval\n = (expectJust \"hscCompileCoreExpr'\"\n $ lookup (idName binding_id) fv_hvs)\n modifyIORef'\n var\n (flip\n extendModuleEnvList\n [(mi_module $ hm_iface hm, linkableHash lb) |\n lb <- lbs, let hm = linkableHomeMod lb])\n return hval" ▫︎ Perhaps: "do let dflags = hsc_dflags hsc_env\n simpl_expr <- simplifyExpr dflags hsc_env ds_expr\n let tidy_expr = tidyExpr emptyTidyEnv simpl_expr\n prepd_expr <- corePrepExpr dflags hsc_env tidy_expr\n lintInteractiveExpr \"hscCompileExpr\" hsc_env prepd_expr\n let iNTERACTIVELoc\n = G.ModLocation\n {ml_hs_file = Nothing,\n ml_hi_file = panic \"hscCompileCoreExpr':ml_hi_file\",\n ml_obj_file = panic \"hscCompileCoreExpr':ml_obj_file\",\n ml_hie_file = panic \"hscCompileCoreExpr':ml_hie_file\"}\n let ictxt = hsc_IC hsc_env\n (binding_id, stg_expr, _, _) <- myCoreToStgExpr\n (hsc_logger hsc_env) (hsc_dflags hsc_env) ictxt\n (icInteractiveModule ictxt) iNTERACTIVELoc prepd_expr\n bcos <- byteCodeGen\n hsc_env (icInteractiveModule ictxt) stg_expr [] Nothing\n let needed_mods\n = mkUniqSet\n [moduleName mod |\n n <- concatMap (uniqDSetToList . bcoFreeNames) $ bc_bcos bcos,\n Just mod <- [nameModule_maybe n],\n not (isWiredInName n),\n moduleUnitId mod `elem` home_unit_ids]\n home_unit_ids = [homeUnitId_ dflags]\n mods_transitive = getTransitiveMods hsc_env needed_mods\n mods_transitive_list\n = map (Compat.installedModule (homeUnitId_ dflags))\n $ nonDetEltsUniqSet mods_transitive\n moduleLocs <- readIORef (hsc_FC hsc_env)\n lbs <- getLinkables\n [toNormalizedFilePath' file |\n installedMod <- mods_transitive_list,\n let ifr\n = fromJust $ lookupInstalledModuleEnv moduleLocs installedMod\n file\n = case ifr of\n InstalledFound loc _ -> fromJust $ ml_hs_file loc\n _ -> panic \"hscCompileCoreExprHook: module not found\"]\n let hsc_env' = loadModulesHome (map linkableHomeMod lbs) hsc_env\n fv_hvs <- loadDecls (hscInterp hsc_env') hsc_env' srcspan bcos\n let hval\n = expectJust \"hscCompileCoreExpr'\"\n $ lookup (idName binding_id) fv_hvs\n modifyIORef'\n var\n (flip\n extendModuleEnvList\n [(mi_module $ hm_iface hm, linkableHash lb) |\n lb <- lbs, let hm = linkableHomeMod lb])\n return hval"
Hlint check run: ghcide/src/Development/IDE/Core/Compile.hs#L598
Suggestion in mkHiFileResultCompile in module Development.IDE.Core.Compile: Redundant bracket ▫︎ Found: "if isOtherUnfolding (realIdUnfolding v) then\n (setIdUnfolding v noUnfolding)\nelse\n v" ▫︎ Perhaps: "if isOtherUnfolding (realIdUnfolding v) then\n setIdUnfolding v noUnfolding\nelse\n v"
Hlint check run
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Hlint check run
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Hlint check run
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/