mirror of
https://github.com/ilyakooo0/haskell.nix.git
synced 2024-09-20 03:18:00 +03:00
48b8674f5f
- Added the ability to generate coverage reports for packages and projects. - Outputs mix and tix information, as well as a HTML report. - Added the "doCoverage" module option that allows users to choose packages to enable coverage for. - Added a "doCoverage" flag to the component builder that outputs HPC information when coverage is enabled. - Added the "overrideModules" library function to make it more ergonomic fo users to enable coverage on existing projects. - Modified the "check" builder to also output ".tix" files (if they exist). This information is required to generate the coverage report. - Added a test for coverage.
5.4 KiB
5.4 KiB
This file contains a summary of changes to Haskell.nix and nix-tools
that will impact users.
Sep 8, 2020
- Added the ability to generate coverage reports for packages and projects.
- Added the
doCoverage
module option that allows users to choose packages to enable coverage for. - Added a
doCoverage
flag to the component builder that outputs HPC information when coverage is enabled. - Added test for coverage.
July 21, 2020
- Removed
components.all
, usesymlinkJoin
on components.exes orshellFor
if you need a shell. - Added
components
argument toshellFor
.
July 21, 2020
- Added GHC 8.8.4 and replaced 8.8.3 in tests and as the ghc used to build nix-tools for stack projects.
July 20, 2020
- Changed
haskell-nix.roots
andp.roots
to single derivations.
July 8, 2020
- Removed
sources.nixpkgs-default
, usesources.nixpkgs
instead. - Removed
./nixpkgs
directory, use(import ./. {}).sources
or./nix/sources.nix
instead. - Removes V1 interface for details on how to fix old code see: https://github.com/input-output-hk/haskell.nix/issues/709
- Removed defaultCompilerNixName.
- cabalProject, cabalProject', hackage-project and hackage-package
now require a
compiler-nix-name
argument. haskell-nix.tool
and.tools
now require acompiler-nix-name
argument. New functionsp.tool
andp.tools
(where p is a project) do not. LikeshellFor { tools = ... }
they will use the compiler nix name from the project (including stack projects where it is derived from the resolver).haskell-nix.alex
andhaskell-nix.happy
have been removed. Usep.tool "alex" "3.2.5"
orshellFor { tools = { alex = "3.2.5"; } }
.haskell-nix.nix-tools
->haskell-nix.nix-tools.ghc883
(it includes the hpack exe now).haskell-nix.cabal-install
->p.tool "cabal" "3.2.0.0"
orshellFor { tools = { cabal = "3.2.0.0"; } }
haskell-nix.haskellNixRoots
->haskell-nix.roots ghc883
orp.roots
June 25, 2020
- Haddock docs are now built in their own derivation when needed (not as part
of the component build).
They should build automatically when something (such as
shellFor
) attempts to accesses the.doc
attribute of component.
December 27, 2019
- Fix overlays/bootstrap.nix to provide LLVM 6, not LLVM 5, to ghc-8.6.X compilers.
November 18, 2019
- Changed the
cleanSourceHaskell
to accept an attrset ofsrc
and (optional)name
parameters. This allows you to keep the source derivation name constant, so that your builds are always cached. Usage ofcleanSourceHaskell
will need to be updated.
October 12, 2019
shellFor
no longer setsCABAL_CONFIG
by default. This avoids surprising users, but means that Cabal may select a plan which is different to your Haskell.nix package set. If you would like the old behaviour, useshellFor { exactDeps = true; }
.
August 9, 2019
- Add the
haskellLib.collectComponents
function.
June 21, 2019
- Add
ghcWithPackages
andghcWithHoogle
to hsPkgs (documentation. - Benchmark components can now build successfully.
- Reduced the closure bloat of nix-tools, and added closure size limit to CI.
- Added more reference documentation and set up auto-generated documentation for Module Options.
- Miscellaneous bug fixes.
June 7, 2019
- Several additions to the documentation.
- More information about getting nix-tools, Haskell.nix, pinning.
- Updates the stack-to-nix and cabal-to-nix guides.
- Adds a section on development environments.
- Adds a little information about cross compilation.
- Adds a (partially complete) reference section (command line manuals, library reference).
- Symlinks the changelog into the documentation pages.
May 29, 2019
- Added
shellFor
function to package set.
May 28, 2019
- Added
snaphots
andhaskellPackages
attributes to the Haskell.nix top-level.
May 22, 2019
- Add the
cleanSourceHaskell
utility function to the Haskell.nix top-level.
May 21, 2019
- Add the
callCabalProjectToNix
function, which uses "import from derivation" (IFD) so that nix-tools doesn't need to be run manually. - The
hackage.nix
update process has changed, so that Cabal index state hashes are also included in the generated repo.
May 20, 2019
- Remove Travis CI in favour of Buildkite.
May 17, 2019
- Add the
callStackToNix
function, which uses "import from derivation" (IFD) so thatstack-to-nix
doesn't need to be run manually.
Mar 15, 2019
-
overlays
was renamed toextras
in #79 to prevent confusion between the notion of Nix overlays.Therefore
plan-pkgs
andstack-pkgs
as generated byplan-to-nix
andstack-to-nix
will exposeextras
instead ofoverlay
. SimilarlymkStackPkgSet
,mkPkgSet
andmkCabalProjectPkgSet
take apkg-def-extras
instead ofpkg-def-overlay
argument. If you are usingiohk-nix
, theiohk-overlay
was parameter was renamed toiohk-extras
.