Changelog for toolshed-0.13.0.0
2010-11-18 Dr. Alistair Ward <toolshed at functionalley dot eu>
0.9.0.0
* First version of the package.
0.10.0.0
* Created "src/ToolShed/" sub-directory & then modified module-names accordingly.
* Removed the module "Pair", and relocated its only function to the sole caller in the package "Bridge".
* Added a makefile.
* Qualified identifiers used in error-messages.
0.10.0.1
* Tested with ghc-7.0.1, & conditionally replaced use of the package 'parallel' with 'deepseq', in the module "TimePure".
0.10.1.0
* Added 'ToolShed.Arithmetic.nCr', "ToolShed.Options" and "ToolShed.Package".
0.10.2.0
* Renamed package from 'ToolShed' to 'toolshed', for compatibility with Debian's ".deb"-format.
0.11.0.0
* Added manually controlled "llvm" flag to "toolshed.cabal".
* Removed the module "ToolShed.Package", for which 'Distribution.Package.PackageIdentifier' is a suitable alternative.
* Added 'NOINLINE' pragma to each function in module "Unsafe".
* Relocated 'mean' and 'nCr' from "ToolShed.Arithmetic", to the package "factory".
* Added function 'ListPlus.groupComparing'.
* Changed identifier for type-parameters, to better reflect its role.
* Relocated the remaining rather pointless functions from the module "ToolShed.Arithmetic" and deleted it.
* Added module "ToolShed.Defaultable", and derived class 'ToolShed.Options.Options' from it.
0.11.1.0
* Added functions 'merge' and 'mergeBy' to module "ToolShed.ListPlus" and exported a new type-synonym 'ToolShed.ListPlus.ChunkLength'.
* Uploaded to <http://hackage.haskell.org/packages/hackage.html>.
0.12.0.0
* Added module "ToolShed.TimeAction" to measure the CPU-seconds required for an IO-action.
* Added module "Pair".
0.12.0.1
* Removed unnecessary type-context 'Ord' from 'ToolShed.ListPus.mergeBy' and reimplemented 'ToolShed.ListPus.merge' in terms of 'ToolShed.ListPus.mergeBy'.
* Added 'ToolShed.ListPlus.runLengthEncode' and 'ToolShed.ListPlus.runLengthDecode'.
0.13.0.0
* Removed module "ToolShed.Unsafe".
* Renamed:
"ToolShed.ListPlus" to "ToolShed.Data.List"
"ToolShed.Pair" to "ToolShed.Data.Pair"
"ToolShed.TimeAction" to "ToolShed.System.TimeAction"
"ToolShed.TimePure" to "ToolShed.System.TimePure"
* Migrated 'ToolShed.Data.List.RunLengthCode' and associated functions, into a new module "ToolShed.Data.List.Runlength".
* Migrated 'ToolShed.Data.List.Splits' and associated functions, into a new module "ToolShed.Data.List.Splits".
* Replaced function 'ToolShed.Data.List.groupComparing' with the more useful 'ToolShed.Data.List.equalityBy', which can be used with either 'Data.List.groupBy' or 'Data.List.nubBy'.
* Added instances of 'ToolShed.SelfValidate.SelfValidator' for 'Data.Maybe.Maybe' '(,)', 'Data.Set.Set', 'Data.Map.Map' and 'Data.Array.IArray.Array'.
* Added instance of 'ToolShed.Defaultable.Defaultable' for '(,)'.
* Added functions 'ToolShed.Data.List.showListWith', 'ToolShed.Data.List.permutations', 'ToolShed.Data.List.gatherBy', 'ToolShed.Data.List.findConvergenceBy', 'ToolShed.Data.List.findConvergence', 'ToolShed.Data.List.gather'.
* Added module "ToolShed.System.File".
* Added module "ToolShed.System.Random".
* Added method 'ToolShed.SelfValidate.getErrors', and supporting functions 'ToolShed.SelfValidate.getFirstErrors' and 'ToolShed.SelfValidate.extractErrors'.
* Create module "ToolShed.Arbitrary.*".
* Added "Main", "ToolShed.Test.QuickChecks" and "ToolShed.Test.Data.List" to facilitate testing.
* Removed 'ToolShed.Data.Pair.both'.
* Replaced "System" with "System.Environment" and "System.Exit".
* Removed dependency on "haskell98".