diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,11 @@
 # Change Log
 All notable changes to this project will be documented in this file.
 
+## [0.2.1] - 2015-09-16
+### Fixed
+- Include data files for golden tests in Cabal package.
+- Support for ghc-7.8.
+
 ## [0.2] - 2015-09-14
 ### Added
 - Rudimentary parser for `GraphQL` which successfully parses the sample file
@@ -10,6 +15,9 @@
 - Many optional data types in `GraphQl` didn't need to be wrapped in a `Maybe`.
 - Some `newtype`s became type synonyms for easier parsing.
 
-## [0.1] - 2015-09-12
+## 0.1 - 2015-09-12
 ### Added
 - Data types for the GraphQL language.
+
+[0.2.1]: https://github.com/jdnavarro/graphql-haskell/compare/v0.2...v0.2.1
+[0.2]: https://github.com/jdnavarro/graphql-haskell/compare/v0.1...v0.2
diff --git a/Data/GraphQL/Parser.hs b/Data/GraphQL/Parser.hs
--- a/Data/GraphQL/Parser.hs
+++ b/Data/GraphQL/Parser.hs
@@ -1,12 +1,17 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE OverloadedStrings #-}
 {-# LANGUAGE LambdaCase #-}
 module Data.GraphQL.Parser where
 
 import Prelude hiding (takeWhile)
+
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative ((<$>), (<*>), (*>), (<*), (<$), pure)
+import Data.Monoid (Monoid, mempty)
+#endif
 import Control.Applicative ((<|>), empty, many, optional)
 import Control.Monad (when)
 import Data.Char
-
 import Data.Text (Text, pack)
 import Data.Attoparsec.Text
   ( Parser
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,7 @@
 # Haskell GraphQL
 
 [![Hackage Version](https://img.shields.io/hackage/v/graphql.svg)](https://hackage.haskell.org/package/graphql)
+[![Build Status](https://img.shields.io/travis/jdnavarro/graphql-haskell.svg)](https://travis-ci.org/jdnavarro/graphql-haskell)
 
 For now this only provides the data types to represent the GraphQL AST,
 but the idea is to be a Haskell port of
diff --git a/graphql.cabal b/graphql.cabal
--- a/graphql.cabal
+++ b/graphql.cabal
@@ -1,5 +1,5 @@
 name:                graphql
-version:             0.2
+version:             0.2.1
 synopsis:            Haskell GraphQL implementation
 description:
   This package provides a rudimentary parser for the
@@ -14,8 +14,10 @@
 category:            Web
 build-type:          Simple
 cabal-version:       >=1.10
-tested-with:         GHC == 7.10
+tested-with:         GHC == 7.8.4, GHC == 7.10.2
 extra-source-files:  README.md CHANGELOG.md stack.yaml
+data-files:          tests/data/*.graphql
+                     tests/data/*.graphql.golden
 
 library
   default-language:    Haskell2010
diff --git a/tests/data/kitchen-sink.graphql b/tests/data/kitchen-sink.graphql
new file mode 100644
--- /dev/null
+++ b/tests/data/kitchen-sink.graphql
@@ -0,0 +1,38 @@
+# Copyright (c) 2015, Facebook, Inc.
+# All rights reserved.
+#
+# This source code is licensed under the BSD-style license found in the
+# LICENSE file in the root directory of this source tree. An additional grant
+# of patent rights can be found in the PATENTS file in the same directory.
+
+query queryName($foo: ComplexType, $site: Site = MOBILE) {
+  whoever123is: node(id: [123, 456]) {
+    id , # Inline test comment
+    ... on User @defer {
+      field2 {
+        id ,
+        alias: field1(first:10, after:$foo,) @include(if: $foo) {
+          id,
+          ...frag
+        }
+      }
+    }
+  }
+}
+
+mutation likeStory {
+  like(story: 123) @defer {
+    story {
+      id
+    }
+  }
+}
+
+fragment frag on Friend {
+  foo(size: $size, bar: $b, obj: {key: "value"})
+}
+
+{
+  unnamed(truthy: true, falsey: false),
+  query
+}
diff --git a/tests/data/kitchen-sink.graphql.golden b/tests/data/kitchen-sink.graphql.golden
new file mode 100644
--- /dev/null
+++ b/tests/data/kitchen-sink.graphql.golden
@@ -0,0 +1,1 @@
+Document [DefinitionOperation (Query "queryName" [VariableDefinition (Variable "foo") (TypeNamed (NamedType "ComplexType")) Nothing,VariableDefinition (Variable "site") (TypeNamed (NamedType "Site")) (Just (ValueEnum "MOBILE"))] [] [SelectionField (Field "whoever123is" "node" [Argument "id" (ValueList (ListValue [ValueInt 123,ValueInt 456]))] [] [SelectionField (Field "" "id" [] [] []),SelectionInlineFragment (InlineFragment (NamedType "User") [Directive "defer" []] [SelectionField (Field "" "field2" [] [] [SelectionField (Field "" "id" [] [] []),SelectionField (Field "alias" "field1" [Argument "first" (ValueInt 10),Argument "after" (ValueVariable (Variable "foo"))] [Directive "include" [Argument "if" (ValueVariable (Variable "foo"))]] [SelectionField (Field "" "id" [] [] []),SelectionFragmentSpread (FragmentSpread "frag" [])])])])])]),DefinitionOperation (Mutation "likeStory" [] [] [SelectionField (Field "" "like" [Argument "story" (ValueInt 123)] [Directive "defer" []] [SelectionField (Field "" "story" [] [] [SelectionField (Field "" "id" [] [] [])])])]),DefinitionFragment (FragmentDefinition "frag" (NamedType "Friend") [] [SelectionField (Field "" "foo" [Argument "size" (ValueVariable (Variable "size")),Argument "bar" (ValueVariable (Variable "b")),Argument "obj" (ValueObject (ObjectValue [ObjectField "key" (ValueString "value")]))] [] [])])]
diff --git a/tests/golden.hs b/tests/golden.hs
--- a/tests/golden.hs
+++ b/tests/golden.hs
@@ -1,6 +1,10 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE OverloadedStrings #-}
 module Main where
 
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative ((<$>), (<*>), pure)
+#endif
 import Control.Monad ((>=>))
 import Data.Attoparsec.Text (parseOnly)
 import Data.ByteString.Lazy.Char8 as B8
@@ -8,14 +12,14 @@
 import Test.Tasty (defaultMain)
 import Test.Tasty.Golden (goldenVsString)
 
+import Paths_graphql (getDataFileName)
 import Data.GraphQL.Parser (document)
 
 main :: IO ()
 main = defaultMain
-     $ goldenVsString "kitchen-sink.graphql"
-                      "./tests/data/kitchen-sink.graphql.golden"
-                      (parse "./tests/data/kitchen-sink.graphql")
+   =<< goldenVsString "kitchen-sink.graphql"
+   <$> getDataFileName "tests/data/kitchen-sink.graphql.graphql.golden"
+   <*> (parse <$> getDataFileName "tests/data/kitchen-sink.graphql")
   where
     parse = fmap (parseOnly document) . TIO.readFile
         >=> pure . either B8.pack (flip B8.snoc '\n' . B8.pack . show)
-
