It seems like somewhere along the line, the intention of 9b2c441 was lost (to have stack new --force indicate that overwriting files is ok). Maybe --bare without --force should require that the current directory is empty?
Currently stack init --solver cannot be used with a specific resolver.
It just uses the GHC on your path and provides a compiler resolver
corresponding to that GHC and all deps are extra deps.
Instead, we want to be able to use a specific snapshot and only deps not
matching the snapshot should be extra deps. This commit is a step towards
1) '--solver' is now a switch which can be used along with a resolver.
'stack init --resolver lts-2.22 --solver' will now be a valid init
2) Snapshot selector now returns the snapshot with least number of
dependency errors as a partial match. This snapshot is to be used
by the solver.
Note that the solver is not yet changed to work on an existing
snapshot. That will come in a future commit.
3) We now report an explicit error when the specified resolver does not
have a compiler compatible with the package dependencies.
4) Note a behavior change for the 'stack init --resolver' command. Earlier it
used to write the stack.yaml file even if it did not successully resolve all
packages. Now it will fail in that case and suggest '--solver' to
resolve the extra dependencies.
5) Separate the snapshot selection interface from the snapshot
dependency check interface.
6) Some error message reporting changes.