packages feed

libmpd 0.9.0.1 → 0.9.0.2

raw patch · 9 files changed

+90/−58 lines, 9 filesdep +data-default-classdep −data-defaultdep ~bytestringdep ~containersdep ~timePVP: minor bump suggested

API additions: PVP suggests at least a minor version bump

Dependencies added: data-default-class

Dependencies removed: data-default

Dependency ranges changed: bytestring, containers, time, utf8-string

API changes (from Hackage documentation)

+ Network.MPD: MUSICBRAINZ_RELEASETRACKID :: Metadata

Files

LICENSE view
@@ -1,4 +1,13 @@-Copyright (c) 2012,2014 Joachim Fasting+Copyright (c) 2005-2009 Ben Sinclair+Copyright (c) 2007-2015 Joachim Fasting+Copyright (c) 2009 Daniel Schoepe+Copyright (c) 2010 Andrzej Rybczak+Copyright (c) 2011-2014 Simon Hengel+Copyright (c) 2012 Niklas Haas+Copyright (c) 2014 Matvey Aksenov+Copyright (c) 2014 Wieland Hoffmann+Copyright (c) 2014 Tim Heap+Copyright (c) 2014 Tobias Brandt  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the
changelog.md view
@@ -28,7 +28,7 @@     - `LsResult` replaces `EntryType` (nandykins)     - hspec based testing added to the test-suite     - More extensive parser testing-    - 'MPDError' now has an 'Exception' instance+    - `MPDError` now has an `Exception` instance     - Lower bound on Cabal bumped to 1.10  * v0.7.2, 2012-02-13@@ -50,69 +50,69 @@       most notably the parser improvements have been removed for now.     - Support for GHC 7     - Removed support for building against the deprecated base 3 package-    - Added an `Enum' instance for `Metadata'-    - Removed the `old_base' flag+    - Added an `Enum` instance for `Metadata`+    - Removed the `old_base` flag  * v0.5.0, 2010-09-08-	- Moved extensions to Network.MPD.Commands.Extensions-	These might be removed in a later version-	- Non-blocking `idle'-	- The API is closer to the MPD spec, by untangling functionality-	- Better MPD API coverage-	- Improved parser implementation, now runs in constant space-	- Constructors of the `Subsystem' type have been renamed-	- Passwords can be changed using `setPassword'-	- The connection handle can be accessed via `getHandle'-	- The version of the MPD server is available via `getVersion'-	- Added support for connecting via unix sockets+    - Moved extensions to Network.MPD.Commands.Extensions+      These might be removed in a later version+    - Non-blocking `idle`+    - The API is closer to the MPD spec, by untangling functionality+    - Better MPD API coverage+    - Improved parser implementation, now runs in constant space+    - Constructors of the `Subsystem` type have been renamed+    - Passwords can be changed using `setPassword`+    - The connection handle can be accessed via `getHandle`+    - The version of the MPD server is available via `getVersion`+    - Added support for connecting via unix sockets  * v0.4.2, 2010-08-31-	- Only depend on QuickCheck when building the test target+    - Only depend on QuickCheck when building the test target  * v0.4.1, 2010-03-26-	- Fix building test and coverage targets+    - Fix building test and coverage targets  * v0.4.0, 2010-03-26-	- New maintainer: Joachim Fasting <joachim.fasting@gmail.com>-	- Support QuickCheck 2-	- Better MPD api support-	Should be mostly compatible with mpd 0.16-	- Separated operations on current playlist from those on specific-	playlists-	- Fixed password sending-	- Several minor fixes and cleanups+    - New maintainer: Joachim Fasting \<joachim.fasting@gmail.com\>+    - Support QuickCheck 2+    - Better MPD api support+      Should be mostly compatible with mpd 0.16+    - Separated operations on current playlist from those on specific+      playlists+    - Fixed password sending+    - Several minor fixes and cleanups  * v0.3.1, 2008-09-14-	- Now reconnects if MPD closes the connection.+    - Now reconnects if MPD closes the connection.  * v0.3.0, 2008-05-06-	- UTF-8 support (now depends on utf8-string package).-	- Fixed corruption by `show' of command parameters.-	- Tidied up `Query' interface.-	- Moved StringConn out of Network.MPD to the tests directory.+    - UTF-8 support (now depends on utf8-string package).+    - Fixed corruption by `show` of command parameters.+    - Tidied up `Query` interface.+    - Moved StringConn out of Network.MPD to the tests directory.  * v0.2.1, 2008-04-14-	- Cleaned up libmpd.cabal.+    - Cleaned up libmpd.cabal.  * v0.2.0, 2008-04-14-	- A connection stub for testing purposes.-	- QuickCheck tests for parsing.-	- Partial unit test coverage.-	- Many bug fixes.-	- Precise error handling.-	- Parsing improvements.-	- Code coverage generation.-	- Cabal 1.2 support.-	- Uniform command names.+    - A connection stub for testing purposes.+    - QuickCheck tests for parsing.+    - Partial unit test coverage.+    - Many bug fixes.+    - Precise error handling.+    - Parsing improvements.+    - Code coverage generation.+    - Cabal 1.2 support.+    - Uniform command names.  * v0.1.3, 2007-10-02-	- Bugfixes.+    - Bugfixes.  * v0.1.2, 2007-09-29-	- Changed name to libmpd.+    - Changed name to libmpd.  * v0.1.1, 2007-09-28-	- Missing files added to the source distribution.+    - Missing files added to the source distribution.  * v0.1, 2007-09-28-	- Initial public release.+    - Initial public release.
libmpd.cabal view
@@ -1,12 +1,17 @@ Name:               libmpd-Version:            0.9.0.1+Version:            0.9.0.2 Synopsis:           An MPD client library. Description:        A client library for MPD, the Music Player Daemon. Category:           Network, Sound  License:            MIT License-file:       LICENSE-Copyright:          Ben Sinclair 2005-2009, Joachim Fasting 2012-2014+Copyright:          Ben Sinclair 2005-2009, Joachim Fasting 2007-2015,+                    Daniel Schoepe 2009, Andrzej Rybczak 2010,+                    Simon Hengel 2011-2014, Niklas Haas 2012,+                    Matvey Aksenov 2014, Wieland Hoffmann 2014,+                    Tim Heap 2014, Tobias Brandt 2014+ Author:             Ben Sinclair  Maintainer:         Joachim Fasting <joachifm@fastmail.fm>@@ -42,13 +47,19 @@       , mtl >= 2.0 && < 3       , old-locale >= 1 && < 2       , text >= 0.11 && < 2-      , time >= 1.1 && < 2          -- Additional dependencies-      , data-default >= 0.4 && < 1+      , data-default-class >= 0.0.1 && < 1       , network >= 2.1 && < 3-      , utf8-string >= 0.3.1 && < 1+      , utf8-string >= 0.3.1 && < 1.1 +    if impl(ghc >= 7.10.0)+        Build-Depends:+            time >= 1.5 && <1.6+    else+        Build-Depends:+            time >= 1.1 && <1.5+     Exposed-Modules:         Network.MPD       , Network.MPD.Applicative@@ -89,7 +100,6 @@       , Network.MPD.Applicative.Internal       , Network.MPD.Util -    ghc-prof-options:   -auto-all -prof     ghc-options:        -Wall  Test-Suite specs@@ -113,7 +123,7 @@       , time          -- Additional dependencies-      , data-default+      , data-default-class       , network       , utf8-string 
src/Network/MPD/Commands/Arg.hs view
@@ -60,7 +60,7 @@ instance MPDArg String where     -- We do this to avoid mangling     -- non-ascii characters with 'show'-    prep x = Args ['"' : x ++ "\""]+    prep x = Args ['"' : addSlashes x ++ "\""]  instance MPDArg ByteString where     prep = prep . UTF8.toString@@ -75,3 +75,11 @@ instance MPDArg Int instance MPDArg Integer instance MPDArg Bool where prep = Args . return . showBool+instance MPDArg Double++addSlashes :: String -> String+addSlashes = concatMap escapeSpecial+    where specials = "\\\""+          escapeSpecial x+              | x `elem` specials = ['\\', x]+              | otherwise = [x]
src/Network/MPD/Commands/CurrentPlaylist.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE OverloadedStrings, FlexibleContexts #-}  {- | Module      : Network.MPD.Commands.CurrentPlaylist
src/Network/MPD/Commands/Parse.hs view
@@ -108,6 +108,7 @@         readMeta "MUSICBRAINZ_ALBUMID" = Just MUSICBRAINZ_ALBUMID         readMeta "MUSICBRAINZ_ALBUMARTISTID" = Just MUSICBRAINZ_ALBUMARTISTID         readMeta "MUSICBRAINZ_TRACKID" = Just MUSICBRAINZ_TRACKID+        readMeta "MUSICBRAINZ_RELEASETRACKID" = Just MUSICBRAINZ_RELEASETRACKID         readMeta _ = Nothing  -- | A helper that runs a parser on a string and, depending on the
src/Network/MPD/Commands/Types.hs view
@@ -38,7 +38,7 @@  import           Network.MPD.Commands.Arg (MPDArg(prep), Args(Args)) -import           Data.Default+import           Data.Default.Class  import qualified Data.Map as M import           Data.Time.Clock (UTCTime)@@ -113,6 +113,7 @@               | MUSICBRAINZ_ALBUMID               | MUSICBRAINZ_ALBUMARTISTID               | MUSICBRAINZ_TRACKID+              | MUSICBRAINZ_RELEASETRACKID               deriving (Eq, Enum, Ord, Bounded, Show)  instance MPDArg Metadata
src/Network/MPD/Core.hs view
@@ -36,7 +36,6 @@ import           Network (PortID(..), withSocketsDo, connectTo) import           System.IO (Handle, hPutStrLn, hReady, hClose, hFlush) import           System.IO.Error (isEOFError, tryIOError, ioeGetErrorType)-import qualified System.IO.UTF8 as U import           Text.Printf (printf) import qualified GHC.IO.Exception as GE @@ -45,7 +44,6 @@ import           Data.ByteString.Char8 (ByteString, isPrefixOf, break, drop, dropWhile) import qualified Data.ByteString.Char8 as B import qualified Data.ByteString.UTF8 as UTF8- -- -- Data types. --@@ -169,7 +167,7 @@         send' = MPD $ gets stHandle >>= maybe (throwError NoMPD) go          go handle = (liftIO . tryIOError $ do-            unless (null str) $ U.hPutStrLn handle str >> hFlush handle+            unless (null str) $ B.hPutStrLn handle (UTF8.fromString str) >> hFlush handle             getLines handle [])                 >>= either (\err -> modify (\st -> st { stHandle = Nothing })                                  >> throwError (ConnectionError err)) return
src/Network/MPD/Util.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE OverloadedStrings, CPP #-} -- | Module    : Network.MPD.Util -- Copyright   : (c) Ben Sinclair 2005-2009, Joachim Fasting 2010 -- License     : MIT (see LICENSE)@@ -16,7 +16,12 @@ import           Control.Arrow  import           Data.Time.Format (ParseTime, parseTime, FormatTime, formatTime)++#if MIN_VERSION_time(1,5,0)+import           Data.Time.Format (defaultTimeLocale)+#else import           System.Locale (defaultTimeLocale)+#endif  import qualified Prelude import           Prelude hiding        (break, take, drop, dropWhile, read)