Helped extra-ghci-libraries find its way to .cabal files.
Bump Cabal version number to 1.20.0.1
Included targets in cabal's bash-completion.

When commpleting for cabal build/repl/test/bench, this completes the possible
targets depending on their types.  This is a temporary workaround, the
definitive solution would be to include those targets in cabal itself, via
``--list-options''.
Allow template-haskell to be upgradable again

This partly reverts 65e9b88bc849e76040ed7947591ea7172cd02db5
which marked `template-haskell` non-upgradable. However, since are now
able to fix-up wrong .cabal meta-data on Hackage, previous `template-haskell`
releases have been augmented by proper version bounds so that it's now
safe again to let the Cabal solver handle reinstalling `template-haskell`

See also #1811, #667, #1761, and #1444

(cherry picked from commit 65ae95c191b19ec1884a4d80afbdaba9c3d477d1 / #1934)
Merge branch 'master' of github.com:haskell/cabal
cabal's bash-cmpl: handling execs and improvements

Now handling executables:
	- completing run target
	- completing executables on build target

Improvements:
	- removed false positives on completion
Print full build log instead of only the last 10 lines

(cherry picked from commit f00dc68ef7f6836705554dcd21d02630fe4a0ccb)
Treat all flags of a package as interdependent.

There was an open bug that could cause conflict sets to be
computed incorrectly if flags were involved in the conflict
set. Incorrectly computed conflict sets can lead to the solver not
finding solutions even though they actually exist.

Because I decided that computing flag dependencies correctly is tricky
and probably not worth the effort, we're now treating all flags (of a
package) as mutually dependent. This means that if any flag choice ends
up in a conflict set, then it's as if all flag choices (of the same
package) are in that conflict set. This is potentially slower for
packages having many flags, but it should at least be correct, because
it's conservative.

(cherry picked from commit 3f7775684f1fadba7b3dd86c144909a811970d8e)
Remove an unnecessary 'createDirectoryIfMissing' call.
(cherry picked from commit 5c46e7853a09a484698064824b7bf72c5c761993)
Don't attempt to rename dist if it is already named correctly

(cherry picked from commit e0c9fec8ec0815f973f9044d409e2b5d5d64aa47)
Revert "Remove an unnecessary 'createDirectoryIfMissing' call."

This call turned out to be neccesary after all.

This reverts commit a46df9dbfe14df0df60c8cc401221c4128ad675e.
Document 'cabal test --show-details=streaming'
Merge pull request #1965 from mietek/issue-1964

Document 'cabal test --show-details=streaming' (#1964)
Bump cabal-install version number to 1.20.0.3
Merge branch '1.20'

Post cabal-install-1.20.0.3 release.

Conflicts:
	Cabal/Cabal.cabal
	Cabal/Makefile
	cabal-install/cabal-install.cabal
Merge branch 'master' of github.com:haskell/cabal
Fixed botched merge
Remove duplicate definition of simplifyVar

A duplicate definition was somehow added while merging and was causing
build failures.
Add new `BinaryLiterals` extension

See also ghc/ghc@1c0b5fdc9f2b6ea8166cc565383d4cd20432343c for more details
Fix dead link to parsing paper