mirror of
https://github.com/simonmichael/hledger.git
synced 2024-12-25 19:31:44 +03:00
First function with cassava
This commit is contained in:
parent
e92aeb151f
commit
0799383214
@ -54,6 +54,7 @@ import Safe
|
|||||||
import System.Directory (doesFileExist)
|
import System.Directory (doesFileExist)
|
||||||
import System.FilePath
|
import System.FilePath
|
||||||
import Text.CSV (parseCSV, CSV)
|
import Text.CSV (parseCSV, CSV)
|
||||||
|
import qualified Data.Csv as DSCV
|
||||||
import Text.Megaparsec hiding (parse)
|
import Text.Megaparsec hiding (parse)
|
||||||
import Text.Megaparsec.Char
|
import Text.Megaparsec.Char
|
||||||
import qualified Text.Parsec as Parsec
|
import qualified Text.Parsec as Parsec
|
||||||
@ -172,6 +173,10 @@ parseCsv path csvdata =
|
|||||||
"-" -> liftM (parseCSV "(stdin)") getContents
|
"-" -> liftM (parseCSV "(stdin)") getContents
|
||||||
_ -> return $ parseCSV path csvdata
|
_ -> return $ parseCSV path csvdata
|
||||||
|
|
||||||
|
parseCsv2 :: FilePath -> String -> IO (Either Parsec.ParseError CSV)
|
||||||
|
parseCsv2 = undefined
|
||||||
|
|
||||||
|
|
||||||
-- | Return the cleaned up and validated CSV data (can be empty), or an error.
|
-- | Return the cleaned up and validated CSV data (can be empty), or an error.
|
||||||
validateCsv :: Int -> Either Parsec.ParseError CSV -> Either String [CsvRecord]
|
validateCsv :: Int -> Either Parsec.ParseError CSV -> Either String [CsvRecord]
|
||||||
validateCsv _ (Left e) = Left $ show e
|
validateCsv _ (Left e) = Left $ show e
|
||||||
|
@ -110,7 +110,6 @@ library
|
|||||||
, base-compat-batteries >=0.10.1 && <0.11
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
, blaze-markup >=0.5.1
|
, blaze-markup >=0.5.1
|
||||||
, bytestring
|
, bytestring
|
||||||
, call-stack
|
|
||||||
, cmdargs >=0.10
|
, cmdargs >=0.10
|
||||||
, containers
|
, containers
|
||||||
, csv
|
, csv
|
||||||
@ -208,7 +207,6 @@ test-suite doctests
|
|||||||
, base-compat-batteries >=0.10.1 && <0.11
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
, blaze-markup >=0.5.1
|
, blaze-markup >=0.5.1
|
||||||
, bytestring
|
, bytestring
|
||||||
, call-stack
|
|
||||||
, cmdargs >=0.10
|
, cmdargs >=0.10
|
||||||
, containers
|
, containers
|
||||||
, csv
|
, csv
|
||||||
@ -307,7 +305,6 @@ test-suite easytests
|
|||||||
, base-compat-batteries >=0.10.1 && <0.11
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
, blaze-markup >=0.5.1
|
, blaze-markup >=0.5.1
|
||||||
, bytestring
|
, bytestring
|
||||||
, call-stack
|
|
||||||
, cmdargs >=0.10
|
, cmdargs >=0.10
|
||||||
, containers
|
, containers
|
||||||
, csv
|
, csv
|
||||||
@ -339,3 +336,103 @@ test-suite easytests
|
|||||||
build-depends:
|
build-depends:
|
||||||
semigroups ==0.18.*
|
semigroups ==0.18.*
|
||||||
default-language: Haskell2010
|
default-language: Haskell2010
|
||||||
|
|
||||||
|
test-suite hunittests
|
||||||
|
type: exitcode-stdio-1.0
|
||||||
|
main-is: hunittests.hs
|
||||||
|
other-modules:
|
||||||
|
Hledger
|
||||||
|
Hledger.Data
|
||||||
|
Hledger.Data.Account
|
||||||
|
Hledger.Data.AccountName
|
||||||
|
Hledger.Data.Amount
|
||||||
|
Hledger.Data.Commodity
|
||||||
|
Hledger.Data.Dates
|
||||||
|
Hledger.Data.Journal
|
||||||
|
Hledger.Data.Ledger
|
||||||
|
Hledger.Data.MarketPrice
|
||||||
|
Hledger.Data.Period
|
||||||
|
Hledger.Data.PeriodicTransaction
|
||||||
|
Hledger.Data.Posting
|
||||||
|
Hledger.Data.RawOptions
|
||||||
|
Hledger.Data.StringFormat
|
||||||
|
Hledger.Data.Timeclock
|
||||||
|
Hledger.Data.Transaction
|
||||||
|
Hledger.Data.TransactionModifier
|
||||||
|
Hledger.Data.Types
|
||||||
|
Hledger.Query
|
||||||
|
Hledger.Read
|
||||||
|
Hledger.Read.Common
|
||||||
|
Hledger.Read.CsvReader
|
||||||
|
Hledger.Read.JournalReader
|
||||||
|
Hledger.Read.TimeclockReader
|
||||||
|
Hledger.Read.TimedotReader
|
||||||
|
Hledger.Reports
|
||||||
|
Hledger.Reports.BalanceHistoryReport
|
||||||
|
Hledger.Reports.BalanceReport
|
||||||
|
Hledger.Reports.BudgetReport
|
||||||
|
Hledger.Reports.EntriesReport
|
||||||
|
Hledger.Reports.MultiBalanceReports
|
||||||
|
Hledger.Reports.PostingsReport
|
||||||
|
Hledger.Reports.ReportOptions
|
||||||
|
Hledger.Reports.ReportTypes
|
||||||
|
Hledger.Reports.TransactionsReports
|
||||||
|
Hledger.Utils
|
||||||
|
Hledger.Utils.Color
|
||||||
|
Hledger.Utils.Debug
|
||||||
|
Hledger.Utils.Parse
|
||||||
|
Hledger.Utils.Regex
|
||||||
|
Hledger.Utils.String
|
||||||
|
Hledger.Utils.Test
|
||||||
|
Hledger.Utils.Text
|
||||||
|
Hledger.Utils.Tree
|
||||||
|
Hledger.Utils.UTF8IOCompat
|
||||||
|
Text.Megaparsec.Custom
|
||||||
|
Text.Tabular.AsciiWide
|
||||||
|
Paths_hledger_lib
|
||||||
|
hs-source-dirs:
|
||||||
|
./.
|
||||||
|
tests
|
||||||
|
ghc-options: -Wall -fno-warn-unused-do-bind -fno-warn-name-shadowing -fno-warn-missing-signatures -fno-warn-type-defaults -fno-warn-orphans
|
||||||
|
build-depends:
|
||||||
|
Decimal
|
||||||
|
, Glob >=0.9
|
||||||
|
, HUnit
|
||||||
|
, ansi-terminal >=0.6.2.3
|
||||||
|
, array
|
||||||
|
, base >=4.8 && <4.12
|
||||||
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
|
, blaze-markup >=0.5.1
|
||||||
|
, bytestring
|
||||||
|
, cmdargs >=0.10
|
||||||
|
, containers
|
||||||
|
, csv
|
||||||
|
, data-default >=0.5
|
||||||
|
, deepseq
|
||||||
|
, directory
|
||||||
|
, extra
|
||||||
|
, filepath
|
||||||
|
, hashtables >=1.2.3.1
|
||||||
|
, hledger-lib
|
||||||
|
, megaparsec >=6.4.1
|
||||||
|
, mtl
|
||||||
|
, mtl-compat
|
||||||
|
, old-time
|
||||||
|
, parsec >=3
|
||||||
|
, parser-combinators >=0.4.0
|
||||||
|
, pretty-show >=1.6.4
|
||||||
|
, regex-tdfa
|
||||||
|
, safe >=0.2
|
||||||
|
, split >=0.1
|
||||||
|
, tabular >=0.2
|
||||||
|
, test-framework
|
||||||
|
, test-framework-hunit
|
||||||
|
, text >=1.2
|
||||||
|
, time >=1.5
|
||||||
|
, transformers >=0.2
|
||||||
|
, uglymemo
|
||||||
|
, utf8-string >=0.3.5
|
||||||
|
if (!impl(ghc >= 8.0))
|
||||||
|
build-depends:
|
||||||
|
semigroups ==0.18.*
|
||||||
|
default-language: Haskell2010
|
||||||
|
@ -49,6 +49,7 @@ dependencies:
|
|||||||
- cmdargs >=0.10
|
- cmdargs >=0.10
|
||||||
- containers
|
- containers
|
||||||
- csv
|
- csv
|
||||||
|
- cassava
|
||||||
- data-default >=0.5
|
- data-default >=0.5
|
||||||
- Decimal
|
- Decimal
|
||||||
- deepseq
|
- deepseq
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
--
|
--
|
||||||
-- see: https://github.com/sol/hpack
|
-- see: https://github.com/sol/hpack
|
||||||
--
|
--
|
||||||
-- hash: 3be7e8745a826dbfc9d0007b9b37c3962486573614267365e6dafb8f7079ece6
|
-- hash: fc9d50bfd8e455c344f6ba60fd05358537cb2f3a6bc968eca7e554364f4cc1fe
|
||||||
|
|
||||||
name: hledger
|
name: hledger
|
||||||
version: 1.10.99
|
version: 1.10.99
|
||||||
@ -118,7 +118,6 @@ library
|
|||||||
, base >=4.8 && <4.12
|
, base >=4.8 && <4.12
|
||||||
, base-compat-batteries >=0.10.1 && <0.11
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
, bytestring
|
, bytestring
|
||||||
, cassava
|
|
||||||
, cmdargs >=0.10
|
, cmdargs >=0.10
|
||||||
, containers
|
, containers
|
||||||
, csv
|
, csv
|
||||||
@ -172,7 +171,6 @@ executable hledger
|
|||||||
, base >=4.8 && <4.12
|
, base >=4.8 && <4.12
|
||||||
, base-compat-batteries >=0.10.1 && <0.11
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
, bytestring
|
, bytestring
|
||||||
, cassava
|
|
||||||
, cmdargs >=0.10
|
, cmdargs >=0.10
|
||||||
, containers
|
, containers
|
||||||
, csv
|
, csv
|
||||||
@ -228,7 +226,6 @@ test-suite test
|
|||||||
, base >=4.8 && <4.12
|
, base >=4.8 && <4.12
|
||||||
, base-compat-batteries >=0.10.1 && <0.11
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
, bytestring
|
, bytestring
|
||||||
, cassava
|
|
||||||
, cmdargs >=0.10
|
, cmdargs >=0.10
|
||||||
, containers
|
, containers
|
||||||
, csv
|
, csv
|
||||||
@ -283,7 +280,6 @@ benchmark bench
|
|||||||
, base >=4.8 && <4.12
|
, base >=4.8 && <4.12
|
||||||
, base-compat-batteries >=0.10.1 && <0.11
|
, base-compat-batteries >=0.10.1 && <0.11
|
||||||
, bytestring
|
, bytestring
|
||||||
, cassava
|
|
||||||
, cmdargs >=0.10
|
, cmdargs >=0.10
|
||||||
, containers
|
, containers
|
||||||
, criterion
|
, criterion
|
||||||
|
@ -86,7 +86,6 @@ dependencies:
|
|||||||
- cmdargs >=0.10
|
- cmdargs >=0.10
|
||||||
- containers
|
- containers
|
||||||
- csv
|
- csv
|
||||||
- cassava
|
|
||||||
- data-default >=0.5
|
- data-default >=0.5
|
||||||
- Decimal
|
- Decimal
|
||||||
- directory
|
- directory
|
||||||
|
Loading…
Reference in New Issue
Block a user