O(n) Convert a String into a ByteString
For applications with large numbers of string literals, pack can be a bottleneck.
O(n) Convert a String into a Text.
Subject to fusion. Performs replacement on invalid scalar values.
O(n) Convert a String into a Text. Subject to fusion. Performs replacement on invalid scalar values.
O(n) Convert a '[Word8]' into a ByteString.
For applications with large numbers of string literals, pack can be a bottleneck. In such cases, consider using packAddress (GHC only).
Utility to help managing Makefiles for Haskell projects, a cabal lint which can check the other-modules and build-deps sections in your cabal files, and a quick command that can show the direct package dependencies of a set of Haskell source files. See the README in the repo for more information: https://github.com/JakeWheat/package-o-tron.
This program is meant as a tool for suggesting version change of libraries. It tries to match official Package Versioning Policy.
See http://www.haskell.org/haskellwiki/Package_versioning_policy for details.
This version works by inspecting new/removed exported modules or entities. It doesn't currently check the types of exported elements.
> package-vt module-ver-1.hs module-ver-2.hs
If you unpack modules with cabal unpack you can use the following form:
> # unpack modules
> cabal unpack package-1
> cabal unpack package-2
> package-vt module-1/module.cabal module-2/module.cabal
O(n). Construct a new ByteString from a CString. The resulting ByteString is an immutable copy of the original CString, and is managed on the Haskell heap. The original CString must be null terminated.
O(n). Construct a new ByteString from a CStringLen. The resulting ByteString is an immutable copy of the original CStringLen. The ByteString is a normal Haskell value and will be managed on the Haskell heap.
This provides a library and command line tool for checking if the upper bounds in your package's dependency list excludes the newest package available. The code was originally available only as a web interface at http://packdeps.haskellers.com/, but is now available for standalone use as well.
The command line tool has an incredibly simple interface: simply pass it a list of cabal files, and it will tell you what dependencies- if any- are restricted.
Generation and traversal of highly compressed directed acyclic word graphs.
(Deprecated) Packed Strings.
Fast byte serializer and unserializer
This simple CLI tool allows to find out which of the packages listed as build-depends in a Cabal package description file are redundant.
packunused works by taking advantage of GHC's -ddump-minimal-imports feature which creates .import files for each compiled module containing a minimal set of explicit import declarations. These .import files together with Cabal's generated package configuration meta-data is analyzed by packunused to detect potentially redundant package dependencies.
In order to use packunused you have to configure the package as usual. See the example session below:
> cabal clean
> rm *.imports
> cabal configure -O0 --disable-library-profiling
> cabal build --ghc-option=-ddump-minimal-imports
The -O0 --disable-library-profiling options are just to speed up compilation. In some cases you might want to pass additional options to the configure step, such as --enable-benchmark or --enable-tests.
When run, packunused prints a report to standard output listing its findings for each component built. The following is an example for the packunused package itself, with a redundant dependency added for demonstration on purpose:
> detected package components
> - executable(s): packunused
> (component names suffixed with '*' are not configured to be built)
> The following package depencencies seem redundant:
> - criterion-0.6.2.0-9dd4d764629a47662168743b2dfda9bc
Show more results