1-*-change-log-*-
2
33.2.0.0 Herbert Valerio Riedel <hvr@gnu.org> April 2020
4	* `v2-build` (and other `v2-`prefixed commands) now accept the
5	  `--benchmark-option(s)` flags, which pass options to benchmark executables
6	  (analogous to how `--test-option(s)` works). (#6209)
7	* Add solver optimization to skip a version of a package if it does not resolve
8	  any conflicts encountered in the last version, controlled by flag
9	  '--fine-grained-conflicts'. (#5918)
10	* `cabal v2-exec` doesn't fail in clean package (#6479)
11	* Show full ABI hash for installed packages in solver log (#5892)
12	* Create incoming directory even for empty packages (#4130)
13	* Start GHCi with `main-is` module in scope (#6311)
14	* Implement `--benchmark-options` for `v2-bench` (#6224)
15	* Fix store-dir in ghc env files generated by `cabal install --lib
16	  --package-env` (#6298)
17	* `cabal v2-run` works with `.lhs` files (#6134)
18	* `subdir` in source-repository-package accepts multiple entries (#5472)
19
203.0.1.0 Herbert Valerio Riedel <hvr@gnu.org> April 2020
21	* Create store incoming directory
22	  ([#4130](https://github.com/haskell/cabal/issues/4130))
23	* `fetchRepoTarball` output is not marked
24	  ([#6385](https://github.com/haskell/cabal/pull/6385))
25	* Update `setupMinCabalVersionConstraint` for GHC-8.8
26	  ([#6217](https://github.com/haskell/cabal/pull/6217))
27	* Implement `cabal install --ignore-project`
28	  ([#5919](https://github.com/haskell/cabal/issues/5919))
29	* `cabal install executable` solver isn't affected by default
30	  environment contents
31	  ([#6410](https://github.com/haskell/cabal/issues/6410))
32	* Use `lukko` for file locking
33	  ([#6345](https://github.com/haskell/cabal/pull/6345))
34	* Use `hackage-security-0.6`
35	  ([#6388](https://github.com/haskell/cabal/pull/6388))
36	* Other dependency upgrades
37
383.0.0.0 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> August 2019
39	* `v2-haddock` fails on `haddock` failures (#5977)
40	* `v2-run` works when given `File.lhs` literate file. (#6134)
41	* Parse comma-separated lists for extra-prog-path, extra-lib-dirs, extra-framework-dirs,
42	  and extra-include-dirs as actual lists. (#5420)
43	* `v2-repl` no longer changes directory to a randomized temporary folder
44	  when used outside of a project. (#5544)
45	* `install-method` and `overwrite-policy` in `.cabal/config` now actually work. (#5942)
46	* `v2-install` now reports the error when a package fails to build. (#5641)
47	* `v2-install` now has a default when called in a project (#5978, #6014, #6092)
48	* '--write-ghc-environment-files' now defaults to 'never' (#4242)
49	* Fix `sdist`'s output when sent to stdout. (#5874)
50	* Allow a list of dependencies to be provided for `repl --build-depends`. (#5845)
51	* Legacy commands are now only accessible with the `v1-` prefixes, and the `v2-`
52	  commands are the new default. Accordingly, the next version of Cabal will be
53	  the start of the 3.x version series. (#5800)
54	* New solver flag: '--reject-unconstrained-dependencies'. (#2568)
55	* Ported old-style test options to the new-style commands (#5455).
56	* Improved error messages for cabal file parse errors. (#5710)
57	* Removed support for `.zip` format source distributions (#5755)
58	* Add "simple project" initialization option. (#5707)
59	* Add '--minimize-conflict-set' flag to try to improve the solver's
60	  error message, but with an increase in run time. (#5647)
61	* v2-test now succeeds when there are no test suites. (#5435)
62	* Add '--lib', '--exe', and '--libandexe' shorthands to init. (#5759)
63	* init now generates valid `Main.lhs` files. (#5577)
64	* Init improvements: add flag '--application-dir', and when creating
65	  a library also create a MyLib.hs module. (#5740)
66	* Add support for generating test-suite via cabal init. (#5761)
67	* Increase `max-backjumps` default from 2000 to 4000.
68	* Make v2-install/new-install-specific flags configurable in
69	  ~/.cabal/config
70	* Add --installdir and --install-method=copy flags to v2-install
71	  that make it possible to copy the executable instead of symlinking it
72	* --symlink-bindir no longer controls the symlinking directory of
73	  v2-install (installdir controls both symlinking and copying now)
74	* Default to non-interactive init.
75	* Add --test-wrapper that allows a prebuild script to set the test environment.
76	* Add filterTestFlags: filter test-wrapper for Cabal < 3.0.0.
77	* Cabal now only builds the minimum of a package for `v2-install` (#5754, #6091)
78
792.4.1.0 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> November 2018
80	* Add message to alert user to potential package casing errors. (#5635)
81	* new-clean no longer deletes dist-newstyle/src with `-s`. (#5699)
82	* 'new-install' now warns when failing to symlink an exe (#5602)
83	* Extend 'cabal init' support for 'cabal-version' selection (#5567)
84	* 'new-sdist' now generates tarballs with file modification
85	  times from a date in 2001. Using the Unix epoch caused
86	  problems on Windows. (#5596)
87	* Register monolithic packages installed into the store due to a
88	  build-tool dependency if they also happen to contain a buildable
89	  public lib. (#5379,#5604)
90	* Fixed a Windows bug where cabal-install tried to copy files
91	  after moving them (#5631).
92	* 'cabal v2-repl' now works for indefinite (in the Backpack sense) components. (#5619)
93	* Set data dir environment variable for tarballs and remote repos (#5469)
94	* Fix monolithic inplace build tool PATH (#5633)
95	* 'cabal init' now supports '-w'/'--with-compiler' flag (#4936, #5654)
96	* Fix ambiguous --builddir on new-install (#5652)
97	* Allow relative --storedir (#5662)
98	* Respect --dry on new-install (#5671)
99	* Warn when new-installing zero exes (#5666)
100	* Add 'pkg-cabal-sha256' field to plan.json (#5695)
101	* New v2-build flag: '--only-configure'. (#5578)
102	* Fixed a 'new-install' failure that manifested when it
103	  encountered remote source dependencies in a project. (#5643)
104	* New 'v2-[build,configure' flag: '--write-ghc-environment-files'
105	  to control the generation of .ghc.environment files. (#5711)
106
1072.4.0.0 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> September 2018
108	* Bugfix: "cabal new-build --ghc-option '--bogus' --ghc-option '-O1'"
109	  no longer ignores all arguments except the last one (#5512).
110	* Add the following option aliases for '-dir'-suffixed options:
111	  'storedir', 'logsdir', 'packagedir', 'sourcedir', 'outputdir' (#5484).
112	* 'new-run' now allows the user to run scripts that use a special block
113	  to define their requirements (as in the executable stanza) in place
114	  of a target. This also allows the use of 'cabal' as an interpreter
115	  in a shebang line.
116	* Add aliases for the "new-" commands that won't change when they
117	  lose their prefix or are eventually replaced by a third UI
118	  paradigm in the future. (#5429)
119	* 'outdated' now accepts '--project-file FILE', which will look for bounds
120	  from the new-style freeze file named FILE.freeze. This is only
121	  available when `--new-freeze-file` has been passed.
122	* 'new-repl' now accepts a '--build-depends' flag which accepts the
123	  same syntax as is used in .cabal files to add additional dependencies
124	  to the environment when developing in the REPL. It is now usable outside
125	  of projects. (#5425, #5454)
126	* 'new-build' now treats Haddock errors non-fatally. In addition,
127	  it attempts to avoid trying to generate Haddocks when there is
128	  nothing to generate them from. (#5232, #5459)
129	* 'new-run', 'new-test', and 'new-bench' now will attempt to resolve
130	  ambiguous selectors by filtering out selectors that would be invalid.
131	  (#4679, #5461)
132	* 'new-install' now supports installing libraries and local
133	  components. (#5399)
134	* Drop support for GHC 7.4, since it is out of our support window
135	  (and has been for over a year!).
136	* 'new-update' now works outside of projects. (#5096)
137	* Extend `plan.json` with `pkg-src` provenance information. (#5487)
138	* Add 'new-sdist' command (#5389). Creates stable archives based on
139	  cabal projects in '.zip' and '.tar.gz' formats.
140	* Add '--repl-options' flag to 'cabal repl' and 'cabal new-repl'
141	  commands. Passes its arguments to the invoked repl, bypassing the
142	  new-build's cached configurations. This assures they don't trigger
143	  useless rebuilds and are always applied within the repl. (#4247, #5287)
144	* Add 'v1-' prefixes for the commands that will be replaced in the
145	  new-build universe, in preparation for it becoming the default.
146	  (#5358)
147	* 'outdated' accepts '--v1-freeze-file' and '--v2-freeze-file'
148	  in the same spirit.
149	* Completed the 'new-clean' command (#5357). The functionality is
150	  equivalent to old-style clean, but for nix-style builds.
151	* Ensure that each package selected for a build-depends dependency
152	  contains a library (#5304).
153	* Support packages from local tarballs in the cabal.project file.
154	* Default changelog generated by 'cabal init' is now named
155	  'CHANGELOG.md' (#5441).
156	* Align output of 'new-build' command phases (#4040).
157	* Add suport for specifying remote VCS dependencies via new
158	  'source-repository-package' stanzas in 'cabal.project' files
159	  (#5351).
160
1612.2.0.0 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> March 2018
162	* '--with-PROG' and '--PROG-options' are applied to all packages
163	and not local packages only (#5019).
164	* Completed the 'new-update' command (#4809), which respects nix-style
165	cabal.project(.local) files and allows to update from
166	multiple repositories when using overlays.
167	* Completed the 'new-run' command (#4477). The functionality is the
168	same of the old 'run' command but using nix-style builds.
169	Additionally, it can run executables across packages in a project.
170	Tests and benchmarks are also treated as executables, providing a
171	quick way to pass them arguments.
172	* Completed the 'new-bench' command (#3638). Same as above.
173	* Completed the 'new-exec' command (#3638). Same as above.
174	* Added a preliminary 'new-install' command (#4558, nonlocal exes
175	part) which allows to quickly install executables from Hackage.
176	* Set symlink-bindir (used by new-install) to .cabal/bin by default on
177	.cabal/config initialization (#5188).
178	* 'cabal update' now supports '--index-state' which can be used to
179	roll back the index to an earlier state.
180	* '--allow-{newer,older}' syntax has been enhanced. Dependency
181	relaxation can be now limited to a specific release of a package,
182	plus there's a new syntax for relaxing only caret-style (i.e. '^>=')
183	dependencies (#4575, #4669).
184	* New config file field: 'cxx-options' to specify which options to be
185	passed to the compiler when compiling C++ sources specified by the
186	'cxx-sources' field. (#3700)
187	* New config file field: 'cxx-sources' to specify C++ files to be
188	compiled separately from C source files. Useful in conjunction with the
189	'cxx-options' flag to pass different compiler options to C and C++
190	source files. (#3700)
191	* Use [lfxtb] letters to differentiate component kind instead of
192	opaque "c" in dist-dir layout.
193	* 'cabal configure' now supports '--enable-static', which can be
194	used to build static libaries with GHC via GHC's `-staticlib`
195	flag.
196	* 'cabal user-config now supports '--augment' which can append
197	additional lines to a new or updated cabal config file.
198	* Added support for '--enable-tests' and '--enable-benchmarks' to
199	'cabal fetch' (#4948).
200	* Misspelled package-names on CLI will no longer be silently
201	case-corrected (#4778).
202	* 'cabal new-configure' now backs up the old 'cabal.project.local'
203	file if it exists (#4460).
204	* On macOS, `new-build` will now place dynamic libraries into
205	`store/lib` and aggressively shorten their names in an effort to
206	stay within the load command size limits of macOSs mach-o linker.
207	* 'new-build' now checks for the existence of executables for
208	build-tools and build-tool-depends dependencies in the solver
209	(#4884).
210	* Fixed a spurious warning telling the user to run 'cabal update'
211	when it wasn't necessary (#4444).
212	* Packages installed in sandboxes via 'add-source' now have
213	their timestamps updated correctly and so will not be reinstalled
214	unncecessarily if the main install command fails (#1375).
215	* Add Windows device path support for copyFile, renameFile. Allows cabal
216	new-build to use temporary store path of up to 32k length
217	(#3972, #4914, #4515).
218	* When a flag value is specified multiple times on the command
219	line, the last one is now preferred, so e.g. '-f+dev -f-dev' is
220	now equivalent to '-f-dev' (#4452).
221	* Removed support for building cabal-install with GHC < 7.10 (#4870).
222	* New 'package *' section in 'cabal.project' files that applies
223	options to all packages, not just those local to the project.
224	* Paths_ autogen modules now compile when `RebindableSyntax` or
225	`OverloadedStrings` is used in `default-extensions`.
226	[stack#3789](https://github.com/commercialhaskell/stack/issues/3789)
227	* getDataDir` and other `Paths_autogen` functions now work correctly
228	when compiling a custom `Setup.hs` script using `new-build` (#5164).
229
2302.0.0.1 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> December 2017
231	* Support for GHC's numeric -g debug levels (#4673).
232	* Demoted 'scope' field version check to a warning (#4714).
233	* Fixed verbosity flags getting removed before being passed to
234	'printPlan' (#4724).
235	* Added a '--store-dir' option that can be used to configure the
236	location of the build global build store (#4623).
237	* Turned `allow-{newer,older}` in `cabal.project` files into an
238	accumulating field to match CLI flag semantics (#4679).
239	* Improve success message when `cabal upload`ing documentation
240	(#4777).
241	* Documentation fixes.
242
2432.0.0.0 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> August 2017
244	* See http://coldwa.st/e/blog/2017-09-09-Cabal-2-0.html
245	for more detailed release notes.
246	* Removed the '--root-cmd' parameter of the 'install' command
247	(#3356).
248	* Deprecated 'cabal install --global' (#3356).
249	* Changed 'cabal upload' to upload a package candidate by default
250	(#3419). Same applies to uploading documentation.
251	* Added a new 'cabal upload' flag '--publish' for publishing a
252	package on Hackage instead of uploading a candidate (#3419).
253	* Added optional solver output visualisation support via the
254	tracetree package. Mainly intended for debugging (#3410).
255	* Removed the '--check' option from 'cabal upload'
256	(#1823). It was replaced by package candidates.
257	* Fixed various behaviour differences between network transports
258	(#3429).
259	* The bootstrap script now works correctly when run from a Git
260	clone (#3439).
261	* Removed the top-down solver (#3598).
262	* The '-v/--verbosity' option no longer affects GHC verbosity
263	(except in the case of '-v0'). Use '--ghc-options=-v' to enable
264	verbose GHC output (#3540, #3671).
265	* Changed the default logfile template from
266	'.../$pkgid.log' to '.../$compiler/$libname.log' (#3807).
267	* Added a new command, 'cabal reconfigure', which re-runs 'configure'
268	with the most recently used flags (#2214).
269	* Added the '--index-state' flag for requesting a specific
270	version of the package index (#3893, #4115).
271	* Support for building Backpack packages.  See
272	https://github.com/ezyang/ghc-proposals/blob/backpack/proposals/0000-backpack.rst
273	for more details.
274	* Support the Nix package manager (#3651).
275	* Made the 'template-haskell' package non-upgradable again (#4185).
276	* Fixed password echoing on MinTTY (#4128).
277	* Added a new solver flag, '--allow-boot-library-installs', that allows
278	any package to be installed or upgraded (#4209).
279	* New 'cabal-install' command: 'outdated', for listing outdated
280	version bounds in a .cabal file or a freeze file (#4207).
281	* Added qualified constraints for setup dependencies. For example,
282	--constraint="setup.bar == 1.0" constrains all setup dependencies on
283	bar, and --constraint="foo:setup.bar == 1.0" constrains foo's setup
284	dependency on bar (part of #3502).
285	* Non-qualified constraints, such as --constraint="bar == 1.0", now
286	only apply to top-level dependencies. They don't constrain setup or
287	build-tool dependencies. The new syntax --constraint="any.bar == 1.0"
288	constrains all uses of bar.
289	* Added a technical preview version of the 'cabal doctest' command
290	(#4480).
291
2921.24.0.2 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> December 2016
293	* Adapted to the revert of a PVP-noncompliant API change in
294	Cabal 1.24.2.0 (#4123).
295	* Bumped the directory upper bound to < 1.4 (#4158).
296
2971.24.0.1 Ryan Thomas <ryan@ryant.org> October 2016
298	* Fixed issue with passing '--enable-profiling' when invoking
299	Setup scripts built with older versions of Cabal (#3873).
300	* Fixed various behaviour differences between network transports
301	(#3429).
302	* Updated to depend on the latest hackage-security that fixes
303	various issues on Windows.
304	* Fixed 'new-build' to exit with a non-zero exit code on failure
305	(#3506).
306	* Store secure repo index data as 01-index.* (#3862).
307	* Added new hackage-security root keys for distribution with
308	cabal-install.
309	* Fix an issue where 'cabal install' sometimes had to be run twice
310	for packages with build-type: Custom and a custom-setup stanza
311	(#3723).
312	* 'cabal sdist' no longer ignores '--builddir' when the package's
313	build-type is Custom (#3794).
314
3151.24.0.0 Ryan Thomas <ryan@ryant.org> March 2016
316	* If there are multiple remote repos, 'cabal update' now updates
317	them in parallel (#2503).
318	* New 'cabal upload' option '-P'/'--password-command' for reading
319	Hackage password from arbitrary program output (#2506).
320	* Better warning for 'cabal run' (#2510).
321	* 'cabal init' now warns if the chosen package name is already
322	registered in the source package index (#2436).
323	* New 'cabal install' option: '--offline' (#2578).
324	* Accept 'builddir' field in cabal.config (#2484)
325	* Read 'builddir' option from 'CABAL_BUILDDIR' environment variable.
326	* Remote repos may now be configured to use https URLs. This uses
327	either curl or wget or, on Windows, PowerShell, under the hood (#2687).
328	* Install target URLs can now use https e.g. 'cabal install
329	https://example.com/foo-1.0.tar.gz'.
330	* Automatically use https for cabal upload for the main
331	hackage.haskell.org (other repos will use whatever they are
332	configured to use).
333	* Support for dependencies of custom Setup.hs scripts
334	(see http://www.well-typed.com/blog/2015/07/cabal-setup-deps/).
335	* 'cabal' program itself now can be used as an external setup
336	method. This fixes an issue when Cabal version mismatch caused
337	unnecessary reconfigures (#2633).
338	* Improved error message for unsatisfiable package constraints
339	(#2727).
340	* Fixed a space leak in 'cabal update' (#2826).
341	* 'cabal exec' and 'sandbox hc-pkg' now use the configured
342	compiler (#2859).
343	* New 'cabal haddock' option: '--for-hackage' (#2852).
344	* Added a warning when the solver cannot find a dependency (#2853).
345	* New 'cabal upload' option: '--doc': upload documentation to
346	hackage (#2890).
347	* Improved error handling for 'sandbox delete-source' (#2943).
348	* Solver support for extension and language flavours (#2873).
349	* Support for secure repos using hackage-security (#2983).
350	* Added a log file message similar to one printed by 'make' when
351	building in another directory (#2642).
352	* Added new subcommand 'init' to 'cabal user-config'. This
353	subcommand creates a cabal configuration file in either the
354	default location or as specified by --config-file (#2553).
355	* The man page for 'cabal-install' is now automatically generated
356	(#2877).
357	* The '--allow-newer' option now works as expected when specified
358	multiple times (#2588).
359	* New config file field: 'extra-framework-dirs' (extra locations
360	to find OS X frameworks in). Can be also specified as an argument
361	for 'install' and 'configure' commands (#3158).
362	* It's now possible to limit the scope of '--allow-newer' to
363	single packages in the install plan (#2756).
364	* Full '--allow-newer' syntax is now supported in the config file
365	(that is, 'allow-newer: base, ghc-prim,  some-package:vector')
366	(#3171).
367	* Improved performance of '--reorder-goals' (#3208).
368	* Fixed space leaks in modular solver (#2916, #2914).
369	* Made the solver aware of pkg-config constraints (#3023).
370	* Added a new command: 'gen-bounds' (#3223). See
371	http://softwaresimply.blogspot.se/2015/08/cabal-gen-bounds-easy-generation-of.html.
372	* Tech preview of new nix-style isolated project-based builds.
373	Currently provides the commands (new-)build/repl/configure.
374
3751.22.9.0 Ryan Thomas <ryan@ryant.org> March 2016
376	* Include Cabal-1.22.8.0
377
3781.22.8.0 Ryan Thomas <ryan@ryant.org> February 2016
379	* Only Custom setup scripts should be compiled with '-i -i.'.
380	* installedCabalVersion: Don't special-case Cabal anymore.
381	* Bump the HTTP upper bound. See #3069.
382
3831.22.7.0 Ryan Thomas <ryan@ryant.org> December 2015
384	* Remove GZipUtils tests
385	* maybeDecompress: bail on all errors at the beginning of the
386	stream with zlib < 0.6
387	* Correct maybeDecompress
388
3891.22.6.0 Ryan Thomas <ryan@ryant.org> June 2015
390	* A fix for @ezyang's fix for #2502. (Mikhail Glushenkov)
391
3921.22.5.0 Ryan Thomas <ryan@ryant.org> June 2015
393	* Reduce temporary directory name length, fixes #2502. (Edward Z. Yang)
394
3951.22.4.0 Ryan Thomas <ryan@ryant.org> May 2015
396	* Force cabal upload to always use digest auth and never basic auth.
397	* Add dependency-graph information to `printPlan` output
398	* bootstrap.sh: fixes linker matching to avoid cases where tested
399	linker names appear unexpectedly in compiler output (fixes #2542)
400
4011.22.3.0 Ryan Thomas <ryan@ryant.org> April 2015
402	* Fix bash completion for sandbox subcommands - Fixes #2513
403	(Mikhail Glushenkov)
404	* filterConfigureFlags: filter more flags (Mikhail Glushenkov)
405
4061.22.2.0 Ryan Thomas <ryan@ryant.org> March 2015
407	* Don't pass '--{en,dis}able-profiling' to old setup exes.
408	* -Wall police
409	* Allow filepath 1.4
410
4111.22.0.0 Johan Tibell <johan.tibell@gmail.com> January 2015
412	* New command: user-config (#2159).
413	* Implement 'cabal repl --only' (#2016).
414	* Fix an issue when 'cabal repl' was doing unnecessary compilation
415	(#1715).
416	* Prompt the user to specify source directory in 'cabal init'
417	(#1989).
418	* Remove the self-upgrade check (#2090).
419	* Don't redownload already downloaded packages when bootstrapping
420	(#2133).
421	* Support sandboxes in 'bootstrap.sh' (#2137).
422	* Install profiling and shared libs by default in 'bootstrap.sh'
423	(#2009).
424
4251.20.2.0 Ryan Thomas <ryan@ryant.org> February 2016
426	* Only Custom setup scripts should be compiled with '-i -i.'.
427	* installedCabalVersion: Don't special-case Cabal anymore.
428
4291.20.1.0 Ryan Thomas <ryan@ryant.org> May 2015
430	* Force cabal upload to always use digest auth and never basic auth.
431	* bootstrap.sh: install network-uri before HTTP
432
4331.20.0.5 Johan Tibell <johan.tibell@gmail.com> December 2014
434	* Support random 1.1.
435	* Fix bootstrap script after network package split.
436	* Support network-2.6 in test suite.
437
4381.20.0.3 Johan Tibell <johan.tibell@gmail.com> June 2014
439	* Don't attempt to rename dist if it is already named correctly
440	* Treat all flags of a package as interdependent.
441	* Allow template-haskell to be upgradable again
442
4431.20.0.2 Johan Tibell <johan.tibell@gmail.com> May 2014
444	* Increase max-backjumps to 2000.
445	* Fix solver bug which led to missed install plans.
446	* Fix streaming test output.
447	* Tweak solver heuristics to avoid reinstalls.
448
4491.20.0.1 Johan Tibell <johan.tibell@gmail.com> May 2014
450	* Fix cabal repl search path bug on Windows
451	* Include OS and arch in cabal-install user agent
452	* Revert --constraint flag behavior in configure to 1.18 behavior
453
4541.20.0.0 Johan Tibell <johan.tibell@gmail.com> April 2014
455	* Build only selected executables
456	* Add -j flag to build/test/bench/run
457	* Improve install log file
458	* Don't symlink executables when in a sandbox
459	* Add --package-db flag to 'list' and 'info'
460	* Make upload more efficient
461	* Add --require-sandbox option
462	* Add experimental Cabal file format command
463	* Add haddock section to config file
464	* Add --main-is flag to init
465
4661.18.2.0 Ryan Thomas <ryan@ryant.org> February 2016
467	* Only Custom setup scripts should be compiled with '-i -i.'.
468	* installedCabalVersion: Don't special-case Cabal anymore.
469
4701.18.1.0 Ryan Thomas <ryan@ryant.org> May 2015
471	* Force cabal upload to always use digest auth and never basic auth.
472	* Merge pull request #2367 from juhp/patch-2
473	* Fix bootstrap.sh by bumping HTTP to 4000.2.16.1
474
4751.18.0.7 Johan Tibell <johan.tibell@gmail.com> December 2014
476	* Support random 1.1.
477	* Fix bootstrap script after network package split.
478	* Support network-2.6 in test suite.
479
4801.18.0.5 Johan Tibell <johan.tibell@gmail.com> July 2014
481	* Make solver flag resolution more conservative.
482
4831.18.0.4 Johan Tibell <johan.tibell@gmail.com> May 2014
484	* Increase max-backjumps to 2000.
485	* Fix solver bug which led to missed install plans.
486	* Tweak solver heuristics to avoid reinstalls.
487
4880.14.0 Andres Loeh <andres@well-typed.com> April 2012
489	* Works with ghc-7.4
490	* Completely new modular dependency solver (default in most cases)
491	* Some tweaks to old topdown dependency solver
492	* Install plans are now checked for reinstalls that break packages
493	* Flags --constraint and --preference work for nonexisting packages
494	* New constraint forms for source and installed packages
495	* New constraint form for package-specific use flags
496	* New constraint form for package-specific stanza flags
497	* Test suite dependencies are pulled in on demand
498	* No longer install packages on --enable-tests when tests fail
499	* New "cabal bench" command
500	* Various "cabal init" tweaks
501
5020.10.0 Duncan Coutts <duncan@community.haskell.org> February 2011
503	* New package targets: local dirs, local and remote tarballs
504	* Initial support for a "world" package target
505	* Partial fix for situation where user packages mask global ones
506	* Removed cabal upgrade, new --upgrade-dependencies flag
507	* New cabal install --only-dependencies flag
508	* New cabal fetch --no-dependencies and --dry-run flags
509	* Improved output for cabal info
510	* Simpler and faster bash command line completion
511	* Fix for broken proxies that decompress wrongly
512	* Fix for cabal unpack to preserve executable permissions
513	* Adjusted the output for the -v verbosity level in a few places
514
5150.8.2 Duncan Coutts <duncan@community.haskell.org> March 2010
516	* Fix for cabal update on Windows
517	* On windows switch to per-user installs (rather than global)
518	* Handle intra-package dependencies in dependency planning
519	* Minor tweaks to cabal init feature
520	* Fix various -Wall warnings
521	* Fix for cabal sdist --snapshot
522
5230.8.0 Duncan Coutts <duncan@haskell.org> Dec 2009
524	* Works with ghc-6.12
525	* New "cabal init" command for making initial project .cabal file
526	* New feature to maintain an index of haddock documentation
527
5280.6.4 Duncan Coutts <duncan@haskell.org> Nov 2009
529	* Improve the algorithm for selecting the base package version
530	* Hackage errors now reported by "cabal upload [--check]"
531	* Improved format of messages from "cabal check"
532	* Config file can now be selected by an env var
533	* Updated tar reading/writing code
534	* Improve instructions in the README and bootstrap output
535	* Fix bootstrap.sh on Solaris 9
536	* Fix bootstrap for systems where network uses parsec 3
537	* Fix building with ghc-6.6
538
5390.6.2 Duncan Coutts <duncan@haskell.org> Feb 2009
540	* The upgrade command has been disabled in this release
541	* The configure and install commands now have consistent behaviour
542	* Reduce the tendency to re-install already existing packages
543	* The --constraint= flag now works for the install command
544	* New --preference= flag for soft constraints / version preferences
545	* Improved bootstrap.sh script, smarter and better error checking
546	* New cabal info command to display detailed info on packages
547	* New cabal unpack command to download and untar a package
548	* HTTP-4000 package required, should fix bugs with http proxies
549	* Now works with authenticated proxies.
550	* On Windows can now override the proxy setting using an env var
551	* Fix compatibility with config files generated by older versions
552	* Warn if the hackage package list is very old
553	* More helpful --help output, mention config file and examples
554	* Better documentation in ~/.cabal/config file
555	* Improved command line interface for logging and build reporting
556	* Minor improvements to some messages
557
5580.6.0 Duncan Coutts <duncan@haskell.org> Oct 2008
559	* Constraint solver can now cope with base 3 and base 4
560	* Allow use of package version preferences from hackage index
561	* More detailed output from cabal install --dry-run -v
562	* Improved bootstrap.sh
563
5640.5.2 Duncan Coutts <duncan@haskell.org> Aug 2008
565	* Suport building haddock documentaion
566	* Self-reinstall now works on Windows
567	* Allow adding symlinks to excutables into a separate bindir
568	* New self-documenting config file
569	* New install --reinstall flag
570	* More helpful status messages in a couple places
571	* Upload failures now report full text error message from the server
572	* Support for local package repositories
573	* New build logging and reporting
574	* New command to upload build reports to (a compatible) server
575	* Allow tilde in hackage server URIs
576	* Internal code improvements
577	* Many other minor improvements and bug fixes
578
5790.5.1 Duncan Coutts <duncan@haskell.org> June 2008
580	* Restore minimal hugs support in dependency resolver
581	* Fix for disabled http proxies on Windows
582	* Revert to global installs on Windows by default
583
5840.5.0 Duncan Coutts <duncan@haskell.org> June 2008
585	* New package dependency resolver, solving diamond dep problem
586	* Integrate cabal-setup functionality
587	* Integrate cabal-upload functionality
588	* New cabal update and check commands
589	* Improved behavior for install and upgrade commands
590	* Full Windows support
591	* New command line handling
592	* Bash command line completion
593	* Allow case insensitive package names on command line
594	* New --dry-run flag for install, upgrade and fetch commands
595	* New --root-cmd flag to allow installing as root
596	* New --cabal-lib-version flag to select different Cabal lib versions
597	* Support for HTTP proxies
598	* Improved cabal list output
599	* Build other non-dependent packages even when some fail
600	* Report a summary of all build failures at the end
601	* Partial support for hugs
602	* Partial implementation of build reporting and logging
603	* More consistent logging and verbosity
604	* Significant internal code restructuring
605
6060.4 Duncan Coutts <duncan@haskell.org> Oct 2007
607	* Renamed executable from 'cabal-install' to 'cabal'
608	* Partial Windows compatibility
609	* Do per-user installs by default
610	* cabal install now installs the package in the current directory
611	* Allow multiple remote servers
612	* Use zlib lib and internal tar code and rather than external tar
613	* Reorganised configuration files
614	* Significant code restructuring
615	* Cope with packages with conditional dependencies
616
6170.3 and older versions by Lemmih, Paolo Martini and others 2006-2007
618	* Switch from smart-server, dumb-client model to the reverse
619	* New .tar.gz based index format
620	* New remote and local package archive format
621