diff --git a/CabalMeta.hs b/CabalMeta.hs
--- a/CabalMeta.hs
+++ b/CabalMeta.hs
@@ -8,6 +8,10 @@
   , vendor_dir
   , unstablePackages
   , diskPath
+#ifdef TEST
+  , asList
+  , packages
+#endif
   ) where
 
 import Shelly hiding (tag)
diff --git a/cabal-meta.cabal b/cabal-meta.cabal
--- a/cabal-meta.cabal
+++ b/cabal-meta.cabal
@@ -1,5 +1,5 @@
 name:            cabal-meta
-version:         0.4
+version:         0.4.0.1
 license:         BSD3
 license-file:    LICENSE
 author:          Greg Weber <greg@gregweber.info>
@@ -21,7 +21,7 @@
         cpp-options:     -DGHC7
     else
         build-depends:   base            >= 4        && < 4.3
-    build-depends: shelly >= 0.9
+    build-depends: shelly >= 0.9 && < 1.0
                  , text, system-filepath
                  -- , file-location
     extensions: OverloadedStrings 
@@ -35,7 +35,7 @@
         cpp-options:     -DGHC7
     else
         build-depends:   base            >= 4        && < 4.3
-    build-depends: shelly >= 0.9
+    build-depends: shelly >= 0.9 && < 1.0
                  , text, system-filepath, system-fileio
                  -- , file-location
 
@@ -50,10 +50,11 @@
   hs-source-dirs: .
   type:           exitcode-stdio-1.0
 
-  build-depends: shelly >= 0.9
+  build-depends: shelly >= 0.9 && < 1.0
                , hspec >= 1.3, unix, base, text, system-filepath
                -- , file-location
-  extensions: OverloadedStrings 
+  extensions: OverloadedStrings , CPP
+  cpp-options: -DTEST
 
 source-repository head
   type:     git
diff --git a/test/main.hs b/test/main.hs
--- a/test/main.hs
+++ b/test/main.hs
@@ -5,6 +5,7 @@
 import Data.Text.Lazy ()
 import System.IO
 import Filesystem.Path.CurrentOS hiding (fromText, (</>))
+import Data.List (sort)
 
 main :: IO ()
 main = hspec $
@@ -15,4 +16,4 @@
       return (ps, d)
 
     let localize = (\p-> toTextIgnore $ wd </> fromText p)
-    concatMap asList (packages psources) `shouldBe` [localize "test/child/grandchild", "top-package", "sphinx", "-fone-one-beta", "child-package"]
+    sort (concatMap asList (packages psources)) `shouldBe` sort [localize "test/child/grandchild", "top-package", "sphinx", "-fone-one-beta", "child-package"]
