Skip to content
Snippets Groups Projects
  1. Jul 12, 2023
  2. Jul 07, 2023
  3. Jun 21, 2023
    • Ben Gamari's avatar
      configure: Bump version to 9.8 · c1865854
      Ben Gamari authored
      Bumps Haddock submodule
      c1865854
    • Bartłomiej Cieślar's avatar
      Add support for deprecating exported items (proposal #134) · 711b1d24
      Bartłomiej Cieślar authored and Ben Gamari's avatar Ben Gamari committed
      
      This is an implementation of the deprecated exports proposal #134.
      The proposal introduces an ability to introduce warnings to exports.
      This allows for deprecating a name only when it is exported from a specific
      module, rather than always depreacting its usage. In this example:
      
          module A ({-# DEPRECATED "do not use" #-} x) where
          x = undefined
          ---
          module B where
          import A(x)
      
      `x` will emit a warning when it is explicitly imported.
      
      Like the declaration warnings, export warnings are first accumulated within
      the `Warnings` struct, then passed into the ModIface, from which they are
      then looked up and warned about in the importing module in the `lookup_ie`
      helpers of the `filterImports` function (for the explicitly imported names)
      and in the `addUsedGRE(s)` functions where they warn about regular usages
      of the imported name.
      
      In terms of the AST information, the custom warning is stored in the
      extension field of the variants of the `IE` type (see Trees that Grow for
      more information).
      
      The commit includes a bump to the haddock submodule added in MR #28
      
      Signed-off-by: default avatarBartłomiej Cieślar <bcieslar2001@gmail.com>
      711b1d24
    • Sylvain Henry's avatar
    • Sylvain Henry's avatar
      a897dc13
    • Sylvain Henry's avatar
      Fix some recompilation avoidance tests · fab2ad23
      Sylvain Henry authored
      fab2ad23
    • Sylvain Henry's avatar
      Stg: return imported FVs · f84ff161
      Sylvain Henry authored
      This is used to determine what to link when using the interpreter.
      For now it's only used by the JS interpreter but it could easily be used
      by the native interpreter too (instead of extracting names from compiled BCOs).
      f84ff161
    • Sylvain Henry's avatar
      Don't use getKey · 3249cf12
      Sylvain Henry authored
      3249cf12
    • Sylvain Henry's avatar
      JS: implement TH support · 4d356ea3
      Sylvain Henry authored
      
      - Add ghc-interp.js bootstrap script for the JS interpreter
      - Interactively link and execute iserv code from the ghci package
      - Incrementally load and run JS code for splices into the running iserv
      
      Co-authored-by: default avatarLuite Stegeman <stegeman@gmail.com>
      4d356ea3
    • Finley McIlwaine's avatar
      Fix associated data family doc structure items · 8185b1c2
      Finley McIlwaine authored and Ben Gamari's avatar Ben Gamari committed
      Associated data families were being given their own export DocStructureItems,
      which resulted in them being documented separately from their classes in
      haddocks. This commit fixes it.
      8185b1c2
    • Finley McIlwaine's avatar
      Memory usage fixes for Haddock · 3d1d42b7
      Finley McIlwaine authored and Ben Gamari's avatar Ben Gamari committed
      - Do not include `mi_globals` in the `NoBackend` backend. It was only included
        for Haddock, but Haddock does not actually need it. This causes a 200MB
        reduction in max residency when generating haddocks on the Agda codebase
        (roughly 1GB to 800MB).
      
      - Make haddock_{parser,renamer}_perf tests more accurate by forcing docs to
        be written to interface files using `-fwrite-interface`
      
      Bumps haddock submodule.
      
      Metric Decrease:
          haddock.base
      3d1d42b7
  4. Jun 20, 2023
  5. Jun 19, 2023
    • Gergő Érdi's avatar
      Add `IfaceWarnings` to represent the `ModIface`-storable parts · 0cbc3ae0
      Gergő Érdi authored and Marge Bot's avatar Marge Bot committed
      of a `Warnings GhcRn`.
      
      Fixes #23516
      0cbc3ae0
    • Finley McIlwaine's avatar
      IPE data compression · cb9e1ce4
      Finley McIlwaine authored
      IPE data resulting from the `-finfo-table-map` flag may now be
      compressed by configuring the GHC build with the
      `--enable-ipe-data-compression` flag. This results in about a 20%
      reduction in the size of IPE-enabled build results.
      
      The compression library, zstd, may optionally be statically linked by
      configuring with the `--enabled-static-libzstd` flag (on non-darwin
      platforms)
      
      libzstd version 1.4.0 or greater is required.
      cb9e1ce4
  6. Jun 18, 2023
  7. Jun 17, 2023
    • Andrei Borzenkov's avatar
      Type/data instances: require that variables on the RHS are mentioned on the LHS (#23512) · 800aad7e
      Andrei Borzenkov authored and Marge Bot's avatar Marge Bot committed
      GHC Proposal #425 "Invisible binders in type declarations" restricts the
      scope of type and data family instances as follows:
      
        In type family and data family instances, require that every variable
        mentioned on the RHS must also occur on the LHS.
      
      For example, here are three equivalent type instance definitions accepted before this patch:
      
        type family F1 a :: k
        type instance F1 Int = Any :: j -> j
      
        type family F2 a :: k
        type instance F2 @(j -> j) Int = Any :: j -> j
      
        type family F3 a :: k
        type instance forall j. F3 Int = Any :: j -> j
      
      - In F1, j is implicitly quantified and it occurs only on the RHS;
      - In F2, j is implicitly quantified and it occurs both on the LHS and the RHS;
      - In F3, j is explicitly quantified.
      
      Now F1 is rejected with an out-of-scope error, while F2 and F3 continue to be accepted.
      800aad7e
    • Diego Diverio's avatar
      Update documentation to actually display code correctly · 7af99a0d
      Diego Diverio authored and Marge Bot's avatar Marge Bot committed
      7af99a0d
    • Diego Diverio's avatar
      Update examples · 1f515bbb
      Diego Diverio authored and Marge Bot's avatar Marge Bot committed
      1f515bbb
    • Diego Diverio's avatar
      Update text · 2469a813
      Diego Diverio authored and Marge Bot's avatar Marge Bot committed
      2469a813
Loading