diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,17 @@
+0.10.0.0:
+
+  Updated packages to support building with ghc 8.6 (increase base
+  and containers limit).
+
+  The reason for the version bump is that there has been some
+  internal build cleanup and removal of un-needed imports (thanks to
+  weeder), which was done a while ago and I now forget whether there
+  were any changes due to imported instances, so it is safer to
+  increase the minor version number. There has been *no* change to
+  functionality.
+
+  Default stack.yaml file is now ghc 8.4, and added a ghc 8.2 version.
+
 0.9.2.1:
 
   Updated the minimum base package to 4.5.0.0 (GHC 7.4.1), and removed
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -25,8 +25,8 @@
 being used for its access to Travis.
 
 I attempt to keep Swish buildable on recent GHC versions - at present
-back to GHC 7.4 - but it is done on a best-effort basis, so is not
-guaranteed.
+back to GHC 7.4 although not actually tested on such - but it is done
+on a best-effort basis, so is not guaranteed.
 
 # Aim
 
@@ -45,7 +45,7 @@
 
 # License
 
-[GPL V2](https://bitbucket.org/doug_burke/swish/src/tip/LICENSE)
+[LGPL V2.1](https://bitbucket.org/doug_burke/swish/src/tip/LICENSE)
 
 # Haskell and the Semantic Web 
 
@@ -71,11 +71,16 @@
 
 ## With stack
 
+Swish is available as part of the stackage curated package set (at
+least it is available in lts-11.1 to lts-12.2, the latest version
+at the time of writing).
+
 There are several stack configuration files, for different GHC
 versions:
 
     % cd swish
     % stack install
+    % STACK_YAML=stack-8.2.yaml stack install
     % STACK_YAML=stack-8.0.yaml stack install
     % STACK_YAML=stack-7.10.yaml stack install
     % STACK_YAML=stack-7.8.yaml stack install
diff --git a/src/Swish/Datatype.hs b/src/Swish/Datatype.hs
--- a/src/Swish/Datatype.hs
+++ b/src/Swish/Datatype.hs
@@ -72,7 +72,6 @@
 -- import Swish.Utils.ShowM (ShowM(..))
 
 import Control.Applicative ((<$>))
-import Control.Monad (join)
 
 import Data.Maybe (isJust, catMaybes)
 
@@ -253,7 +252,7 @@
     where
       dtmap = tvalMap dtv
       val   = mapL2V dtmap str
-      can   = join $ fmap (mapV2L dtmap) val
+      can   = mapV2L dtmap =<< val
 
 -- |DatatypeMap consists of methods that perform lexical-to-value
 --  and value-to-canonical-lexical mappings for a datatype.
diff --git a/src/Swish/QName.hs b/src/Swish/QName.hs
--- a/src/Swish/QName.hs
+++ b/src/Swish/QName.hs
@@ -51,7 +51,6 @@
 import Data.String (IsString(..))
 
 import Network.URI (URI(..), URIAuth(..), parseURIReference)
-import Network.URI.Ord ()
 
 import System.Directory (canonicalizePath)
 import System.FilePath (splitFileName)
diff --git a/src/Swish/RDF/Formatter/Internal.hs b/src/Swish/RDF/Formatter/Internal.hs
--- a/src/Swish/RDF/Formatter/Internal.hs
+++ b/src/Swish/RDF/Formatter/Internal.hs
@@ -86,7 +86,6 @@
 import Data.Word
 
 import Network.URI (URI)
-import Network.URI.Ord ()
 
 findPrefix :: URI -> M.Map a URI -> Maybe a
 findPrefix u = M.lookup u . M.fromList . map swap . M.assocs
diff --git a/src/Swish/RDF/Parser/N3.hs b/src/Swish/RDF/Parser/N3.hs
--- a/src/Swish/RDF/Parser/N3.hs
+++ b/src/Swish/RDF/Parser/N3.hs
@@ -149,7 +149,6 @@
 import Data.Word (Word32)
 
 import Network.URI (URI(..), parseURIReference)
-import Network.URI.Ord ()
 
 import Text.ParserCombinators.Poly.StateText
 
diff --git a/src/Swish/RDF/Parser/Turtle.hs b/src/Swish/RDF/Parser/Turtle.hs
--- a/src/Swish/RDF/Parser/Turtle.hs
+++ b/src/Swish/RDF/Parser/Turtle.hs
@@ -114,7 +114,6 @@
 import Data.Word (Word32)
 
 import Network.URI (URI(..), parseURIReference)
-import Network.URI.Ord ()
 
 import Text.ParserCombinators.Poly.StateText
 
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -1,4 +1,4 @@
 flags: {}
 packages:
 - '.'
-resolver: lts-11.1
+resolver: lts-12.2
diff --git a/swish.cabal b/swish.cabal
--- a/swish.cabal
+++ b/swish.cabal
@@ -1,10 +1,10 @@
 Name:               swish
-Version:            0.9.2.1
+Version:            0.10.0.0
 Stability:          experimental
 License:            LGPL-2.1
 License-file:       LICENSE 
 Author:             Graham Klyne - GK@ninebynine.org
-Copyright:          (c) 2003, 2004 G. Klyne; 2009 Vasili I Galchin; 2011, 2012, 2013, 2014, 2015, 2016, 2017 Doug Burke; All rights reserved.
+Copyright:          (c) 2003, 2004 G. Klyne; 2009 Vasili I Galchin; 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Doug Burke; All rights reserved.
 Maintainer:         dburke@cfa.harvard.edu
 Category:           Semantic Web
 Synopsis:           A semantic web toolkit. 
@@ -90,19 +90,19 @@
 
 Library
    Build-Depends:
-      base >= 4.5 && < 4.12,
-      containers >= 0.5 && < 0.6,
+      base >= 4.5 && < 4.13,
+      containers >= 0.5 && < 0.7,
       directory >= 1.0 && < 1.4,
       filepath >= 1.1 && < 1.5,
       -- Early versions of hashable 1.2 are problematic
       hashable (>= 1.1 && < 1.2) || (>= 1.2.0.6 && <1.3),
       intern >= 0.8 && < 1.0,
       mtl >= 2 && < 3,
+      -- old-locale is only needed if time < 1.5           
       old-locale == 1.0.*, 
       polyparse >= 1.6 && <= 1.12,
-      semigroups >= 0.5 && < 0.19,
       text >= 0.11 && < 1.3,
-      -- I don't think 1.9.0 will work and it was quicly replaced
+      -- I don't think 1.9.0 will work and it was quickly replaced
       -- so do not support it           
       time (>= 1.1 && < 1.9) || (>= 1.9.1 && < 1.10)
 
@@ -112,6 +112,19 @@
      build-depends: network-uri < 2.6
                     , network >= 2.4 && < 2.6
 
+   if impl(ghc < 8.0.0)
+     ghc-options:
+        -Wall -fno-warn-orphans
+     build-depends: semigroups >= 0.16 && < 0.19
+   else
+     ghc-options:
+        -Wall -fno-warn-orphans -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances
+
+
+   -- if flag(developer)
+   --    ghc-options: -Werror
+   --    ghc-prof-options: -auto-all
+
    Hs-Source-Dirs: src/
    Other-Modules:  Swish.RDF.Formatter.Internal
 
@@ -171,17 +184,6 @@
       Swish.Utils.ListHelpers
       Swish.VarBinding
 
-   if impl(ghc < 8.0.0)
-     ghc-options:
-        -Wall -fno-warn-orphans
-   if impl(ghc >= 8.0.0)
-     ghc-options:
-        -Wall -Wcompat -fno-warn-orphans
-
-   -- if flag(developer)
-   --    ghc-options: -Werror
-   --    ghc-prof-options: -auto-all
-
 Test-Suite test-builtinmap
    type:       exitcode-stdio-1.0
    Hs-Source-Dirs: tests/
@@ -361,6 +363,7 @@
       base,
       containers,
       HUnit,
+      -- old-locale is only needed if time < 1.5           
       old-locale,
       swish,
       test-framework,
