diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,2 +1,5 @@
+## 0.4.3 [2020.06.16]
+* Make `showDot` display non-ASCII characters without quoting them.
+
 ## 0.4.2
 * Fixed build with GHC 7.10
diff --git a/Text/Dot.hs b/Text/Dot.hs
--- a/Text/Dot.hs
+++ b/Text/Dot.hs
@@ -1,5 +1,3 @@
-{-# LANGUAGE CPP #-}
-
 -- |
 -- Module: Text.Dot
 -- Copyright: Andy Gill
@@ -37,14 +35,15 @@
         , netlistGraph
         ) where
 
-#if !(MIN_VERSION_base(4,8,0))
-import Control.Applicative
-#endif
-import Control.Monad
-import Data.Char
+import           Control.Applicative
+import           Control.Monad
+
+import           Data.Char
 import qualified Data.Map as M
 import qualified Data.Set as S
 
+import           Prelude
+
 -- data DotGraph = DotGraph [GraphElement]
 
 data NodeId = NodeId String
@@ -153,9 +152,9 @@
 showAttrs [] = ""
 showAttrs xs = "[" ++ showAttrs' xs ++ "]"
     where
-        -- never empty list
         showAttrs' [a]    = showAttr a
         showAttrs' (a:as) = showAttr a ++ "," ++ showAttrs' as
+        showAttrs' []     = error "The list should never be empty"
 
 showAttr :: (String, String) -> String
 showAttr (name,val) = name ++ "=\""   ++ foldr showsDotChar "" val ++ "\""
@@ -163,7 +162,9 @@
 showsDotChar :: Char -> ShowS
 showsDotChar '"'  = ("\\\"" ++)
 showsDotChar '\\' = ("\\\\" ++)
-showsDotChar x    = showLitChar x
+showsDotChar x
+  | isPrint x     = showChar x
+  | otherwise     = showLitChar x
 
 
 -- | 'netlistGraph' generates a simple graph from a netlist.
diff --git a/dotgen.cabal b/dotgen.cabal
--- a/dotgen.cabal
+++ b/dotgen.cabal
@@ -1,8 +1,8 @@
 Name:                dotgen
-Version:             0.4.2
+Version:             0.4.3
 Synopsis:            A simple interface for building .dot graph files.
 Description:         This package provides a simple interface for building .dot graph files,
-                     for input into the dot and graphviz tools. 
+                     for input into the dot and graphviz tools.
                      It includes a monadic interface for building graphs.
 homepage:            https://github.com/ku-fpg/dotgen
 bug-reports:         https://github.com/ku-fpg/dotgen/issues
@@ -14,20 +14,33 @@
 Stability:           alpha
 build-type:          Simple
 extra-source-files:  CHANGELOG.md, README.md
-Cabal-Version:       >= 1.8
+tested-with:         GHC == 7.0.4
+                   , GHC == 7.2.2
+                   , GHC == 7.4.2
+                   , GHC == 7.6.3
+                   , GHC == 7.8.4
+                   , GHC == 7.10.3
+                   , GHC == 8.0.2
+                   , GHC == 8.2.2
+                   , GHC == 8.4.4
+                   , GHC == 8.6.5
+                   , GHC == 8.8.3
+                   , GHC == 8.10.1
+Cabal-Version:       >= 1.10
 
 source-repository head
   type:                git
-  location:            git://github.com/ku-fpg/dotgen
+  location:            https://github.com/ku-fpg/dotgen
 
 Flag devel
   Description:         Enable full development tree
   Default:             False
 
-Library 
+Library
   Build-Depends:       base >= 3 && < 5,
                        containers
   Exposed-Modules:     Text.Dot
+  default-language:    Haskell2010
   ghc-options:         -Wall
 
 -- Trivial (build) test framework
@@ -37,7 +50,8 @@
   else
     buildable: False
   build-depends:       base   >= 3 && < 5,
-                       dotgen == 0.4.2
+                       dotgen
   hs-source-dirs:      test
   Main-is:             DotTest.hs
+  default-language:    Haskell2010
   ghc-options:         -Wall
diff --git a/test/DotTest.hs b/test/DotTest.hs
--- a/test/DotTest.hs
+++ b/test/DotTest.hs
@@ -94,5 +94,7 @@
                      (\ a -> [succ a `mod` 10,pred a `mod` 10])
                      [ (n,n) | n <- [0..9] :: [Int] ]
                      
+        _ <- box "touché"
+        _ <- box "eight characters: кирилица"
         
         return ()
