hledger-iadd 1.3.21 → 1.3.22
raw patch · 6 files changed
+36/−20 lines, 6 filesdep ~brickdep ~hledger-libdep ~vtyPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: brick, hledger-lib, vty
API changes (from Hackage documentation)
- Brick.Widgets.Edit.EmacsBindings: editContentsL :: Lens (Editor n) (Editor n) (TextZipper Text) (TextZipper Text)
+ Brick.Widgets.Edit.EmacsBindings: editContentsL :: forall n f. Functor f => (TextZipper Text -> f (TextZipper Text)) -> Editor n -> f (Editor n)
Files
- ChangeLog.md +6/−0
- README.md +1/−1
- hledger-iadd.cabal +11/−11
- src/DateParser.hs +12/−7
- src/main/Main.hs +3/−1
- tests/DateParserSpec.hs +3/−0
ChangeLog.md view
@@ -1,3 +1,9 @@+# 1.3.22 [2025-09-17]++ - feature: Add more abbreviations for weekdays ("m", "mo", ...)+ - dependencies: Require hledger-lib 1.50+ - dependencies: Bump brick, vty and megaparsec+ # 1.3.21 [2024-04-20] - dependencies: Bump brick and vty versions
README.md view
@@ -34,7 +34,7 @@ The easiest method would be [stack]: Install the [stack] program and type: - stack install --resolver=lts hledger-iadd-1.3.14+ stack install --resolver=lts hledger-iadd-1.3.21 This downloads and builds `hledger-iadd` and all it's Haskell dependencies. After that, it copys the resulting binary to
hledger-iadd.cabal view
@@ -1,5 +1,5 @@ name: hledger-iadd-version: 1.3.21+version: 1.3.22 synopsis: A terminal UI as drop-in replacement for hledger add description: This is a terminal UI as drop-in replacement for hledger add. .@@ -62,9 +62,9 @@ , Data.Time.Ext default-language: Haskell2010 build-depends: base >= 4.14 && < 5- , hledger-lib >= 1.33 && < 1.34- , brick >= 2.1 && < 2.4- , vty >= 6.1 && < 6.3+ , hledger-lib >= 1.50 && < 1.51+ , brick >= 2.1 && < 2.10+ , vty >= 6.1 && < 6.5 , text , microlens , microlens-th@@ -73,7 +73,7 @@ , transformers >= 0.3 , time >= 1.5 , vector- , megaparsec >= 7.0 && <9.7+ , megaparsec >= 7.0 && <9.8 , containers , optparse-applicative , directory@@ -89,9 +89,9 @@ default-language: Haskell2010 build-depends: base >= 4.14 && < 5 , hledger-iadd- , hledger-lib >= 1.33 && <1.34- , brick >= 2.1 && < 2.4- , vty >= 6.1 && < 6.3+ , hledger-lib >= 1.50 && <1.51+ , brick >= 2.1 && < 2.10+ , vty >= 6.1 && < 6.5 , text , microlens , microlens-th@@ -105,7 +105,7 @@ , xdg-basedir , unordered-containers , free >= 4.12.4- , megaparsec >= 7.0 && <9.7+ , megaparsec >= 7.0 && <9.8 ghc-options: -threaded -Wall -fdefer-typed-holes -fno-warn-name-shadowing test-suite spec@@ -119,7 +119,7 @@ default-language: Haskell2010 build-depends: base >= 4.14 && < 5 , hledger-iadd- , hledger-lib >= 1.33 && <1.34+ , hledger-lib >= 1.50 && <1.51 , text , transformers >= 0.3 , time >= 1.5@@ -128,7 +128,7 @@ , QuickCheck , quickcheck-instances , free >= 4.12.4- , megaparsec >= 7.0 && <9.7+ , megaparsec >= 7.0 && <9.8 , text-zipper >= 0.10 build-tool-depends: hspec-discover:hspec-discover ==2.* ghc-options: -threaded -Wall -fdefer-typed-holes -fno-warn-name-shadowing
src/DateParser.hs view
@@ -187,9 +187,14 @@ relativeDays :: [Parser (Day -> Day)] relativeDays = map try [ addDays 1 <$ string "tomorrow"+ , addDays 1 <$ string "tom" , id <$ string "today"+ , id <$ string "tod" , addDays (-1) <$ string "yesterday" , addDays (-1) <$ string "yest"+ , addDays (-1) <$ string "yes"+ , addDays (-1) <$ string "ye"+ , addDays (-1) <$ string "y" ] weekDays :: [Parser (Day -> Day)]@@ -200,13 +205,13 @@ flattenedDays :: [(Int, Text)] flattenedDays = concatMap (\(i, xs) -> fmap (i,) xs) days days :: [(Int, [Text])]- days = [ (1, ["monday", "mon"])- , (2, ["tuesday", "tues", "tue"])- , (3, ["wednesday", "wed"])- , (4, ["thursday", "thur"])- , (5, ["friday", "fri"])- , (6, ["saturday", "sat"])- , (7, ["sunday", "sun"])+ days = [ (1, ["monday", "m", "mo", "mon"])+ , (2, ["tuesday", "tu", "tue", "tues"])+ , (3, ["wednesday", "w", "we", "wed"])+ , (4, ["thursday", "th", "thu", "thur"])+ , (5, ["friday", "f", "fr", "fri"])+ , (6, ["saturday", "sa", "sat"])+ , (7, ["sunday", "su", "sun"]) ] -- | Computes a relative date by the given weekday
src/main/Main.hs view
@@ -528,7 +528,9 @@ let path = runIdentity $ optLedgerFile opts journalContents <- T.readFile path - runExceptT (HL.parseAndFinaliseJournal HL.journalp HL.definputopts path journalContents) >>= \case+ let hlIopts = HL.definputopts++ runExceptT (HL.parseAndFinaliseJournal (HL.journalp hlIopts) hlIopts path journalContents) >>= \case Left err -> hPutStrLn stderr err >> exitFailure Right journal -> do let edit = editorText EditorName (txt . T.concat) (Just 1) ""
tests/DateParserSpec.hs view
@@ -108,6 +108,7 @@ it "literally yesterday" $ do parseGerman 2018 10 18 "yesterday" `shouldBe` Right (fromGregorian 2018 10 17) parseGerman 2018 10 18 "yest" `shouldBe` Right (fromGregorian 2018 10 17)+ parseGerman 2018 10 18 "yes" `shouldBe` Right (fromGregorian 2018 10 17) it "literally today" $ do parseGerman 2018 10 18 "today" `shouldBe` Right (fromGregorian 2018 10 18)@@ -118,6 +119,8 @@ it "literally monday" $ do parseGerman 2018 10 18 "monday" `shouldBe` Right (fromGregorian 2018 10 15) parseGerman 2018 10 18 "mon" `shouldBe` Right (fromGregorian 2018 10 15)+ parseGerman 2018 10 18 "mo" `shouldBe` Right (fromGregorian 2018 10 15)+ parseGerman 2018 10 18 "m" `shouldBe` Right (fromGregorian 2018 10 15) it "literally tuesday" $ do parseGerman 2018 10 18 "tuesday" `shouldBe` Right (fromGregorian 2018 10 16)