diff --git a/Zip.hs b/Zip.hs
--- a/Zip.hs
+++ b/Zip.hs
@@ -17,6 +17,8 @@
 import System.Console.GetOpt
 import Control.Monad ( when )
 import Control.Applicative ( (<$>) )
+import Data.Version ( showVersion )
+import Paths_zip_archive ( version )
 
 data Flag 
   = Quiet 
@@ -45,7 +47,9 @@
   progname <- getProgName
   let header = "Usage: " ++ progname ++ " [OPTION...] archive files..."
   (opts, args) <- case getOpt Permute options argv of
-      (o, _, _)      | Version `elem` o -> putStrLn "version 0.1.1.4" >> exitWith ExitSuccess
+      (o, _, _)      | Version `elem` o -> do
+        putStrLn ("version " ++ showVersion version)
+        exitWith ExitSuccess
       (o, _, _)      | Help `elem` o    -> error $ usageInfo header options
       (o, (a:as), [])                   -> return (o, a:as)
       (_, _, errs)                      -> error $ concat errs ++ "\n" ++ usageInfo header options
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,15 @@
+zip-archive 0.3.0.2
+
+  * Fix test suite so it runs on Windows.
+  * Zip executable: get version from cabal `Paths_zip_archive` (#27).
+
+zip-archive 0.3.0.1
+
+  * Set `eVersionMadeBy` to 0 (default) in `toEntry`, since we are
+    setting external attributes to 0.  See jgm/pandoc#2822.
+    Only to `eVersionMadeBy` to UNIX if we actually read file
+    attributes on a UNIX system.
+
 zip-archive 0.3
 
   * Support preservation of file modes on Posix (Dan Aloni, #26).
diff --git a/tests/test-zip-archive.hs b/tests/test-zip-archive.hs
--- a/tests/test-zip-archive.hs
+++ b/tests/test-zip-archive.hs
@@ -107,6 +107,7 @@
   assertEqual "contents of test-temp/dir1/hi" hiMsg hi
   assertEqual "contents of test-temp/dir1/dir2/hello" helloMsg hello
 
+#ifndef _WINDOWS
 testExtractFilesWithPosixAttrs :: Test
 testExtractFilesWithPosixAttrs = TestCase $ do
   createDirectory "test-temp/dir3"
@@ -121,3 +122,4 @@
   fm <- fmap fileMode $ getFileStatus "test-temp/dir3/hi"
   assertEqual "file modes" perms (intersectFileModes perms fm)
   assertEqual "contents of test-temp/dir3/hi" hiMsg hi
+#endif
diff --git a/zip-archive.cabal b/zip-archive.cabal
--- a/zip-archive.cabal
+++ b/zip-archive.cabal
@@ -1,5 +1,5 @@
 Name:                zip-archive
-Version:             0.3.0.1
+Version:             0.3.0.2
 Cabal-Version:       >= 1.10
 Build-type:          Custom
 Synopsis:            Library for creating and modifying zip archives.
@@ -51,6 +51,7 @@
   Hs-Source-Dirs:    .
   Build-Depends:     base >= 4.2 && < 5, directory >= 1.1, bytestring >= 0.9.0,
                      zip-archive
+  Other-Modules:     Paths_zip_archive
   Ghc-Options:       -Wall
   Default-Language:  Haskell98
 
