A few lint fixes to get started
authorJaseem Abid <jaseemabid@gmail.com>
Wed, 18 Feb 2015 20:28:51 +0000 (01:58 +0530)
committerJaseem Abid <jaseemabid@gmail.com>
Wed, 18 Feb 2015 20:31:31 +0000 (02:01 +0530)
- Making `GHC -Wall` and hlint happy.
- Renaming length to len, to not shadow prelude function
- Remove unused import

src/Main.hs
src/Tracker.hs

index 482b433cb12122ce99fcb2063599874c28a4b3ba..015c3238734282dd785b0201d2f634b1e6e2fb09 100644 (file)
@@ -8,7 +8,6 @@ import qualified Metainfo as MInfo
 import qualified Tracker as T
 import qualified Text.ParserCombinators.Parsec as Parsec
 import qualified Peer as P
-import qualified Data.Map as M
 import Data.Functor
 
 printError :: Parsec.ParseError -> IO ()
@@ -30,14 +29,15 @@ parse _ = exit
 
 main :: IO ()
 main = do
-  args <- getArgs
-  torrentStr <- parse args
-  case Benc.decode torrentStr of
-   Right d -> case MInfo.mkMetaInfo d of
-               Nothing -> putStrLn "parse error"
-               Just m -> do
-                 let length = MInfo.lengthInBytes (MInfo.info m)
-                 body <- BC.pack <$> T.connect (MInfo.announce m) (T.prepareRequest d genPeerId length)
-                 print (P.getPeers (P.getPeerResponse body))
-   Left e -> printError e
-  putStrLn "done"
+    args <- getArgs
+    torrentStr <- parse args
+    case Benc.decode torrentStr of
+      Right d ->
+          case MInfo.mkMetaInfo d of
+            Nothing -> putStrLn "parse error"
+            Just m -> do
+              let len = MInfo.lengthInBytes (MInfo.info m)
+              body <- BC.pack <$> T.connect (MInfo.announce m) (T.prepareRequest d genPeerId len)
+              print (P.getPeers (P.getPeerResponse body))
+      Left e -> printError e
+    putStrLn "done"
index 68cf28c731f2818c291fbc0482961fc3fccea183..c52368309512ed82285bdbbb798605c33a65420d 100644 (file)
@@ -20,7 +20,7 @@ type Url = String
 -- "%124Vx%9a%bc%de%f1%23Eg%89%ab%cd%ef%124Vx%9a"
 urlEncode :: BC.ByteString -> String
 urlEncode bs = concatMap (encode . BC.unpack) (U.splitN 2 bs)
-  where encode b@(c1 : c2 : []) = let c =  chr (read ("0x" ++ b))
+  where encode b@[c1, c2] = let c =  chr (read ("0x" ++ b))
                                   in
                                    escape c c1 c2
         encode _ = ""
@@ -39,13 +39,13 @@ peerHash :: String -> BC.ByteString
 peerHash = B16.encode . SHA1.hash . BC.pack
 
 prepareRequest :: Benc.BVal -> String -> Integer -> String
-prepareRequest (Benc.Bdict d) peer_id length =
+prepareRequest (Benc.Bdict d) peer_id len =
   let p = [("info_hash", urlEncode (infoHash d)),
            ("peer_id", urlEncode (peerHash peer_id)),
            ("port", "6881"),
            ("uploaded", "0"),
            ("downloaded", "0"),
-           ("left", show length),
+           ("left", show len),
            ("compact", "1"),
            ("event", "started")]
   in