holidays 0.2.0.0 → 0.3.0.0
raw patch · 14 files changed
+42/−29 lines, 14 filesdep ~basePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base
API changes (from Hackage documentation)
Files
- CHANGELOG.md +3/−0
- holidays.cabal +5/−5
- src/Holidays.hs +8/−7
- src/Holidays/Base.hs +2/−1
- src/Holidays/DateFinder.hs +2/−1
- src/Holidays/DateTransform.hs +1/−1
- tst/Main.hs +7/−6
- tst/Test/Holidays.hs +2/−2
- tst/Test/Holidays/Germany.hs +2/−1
- tst/Test/Holidays/Mozambique.hs +2/−1
- tst/Test/Holidays/Namibia.hs +2/−1
- tst/Test/Holidays/SouthAfrica.hs +2/−1
- tst/Test/Holidays/UnitedKingdom.hs +2/−1
- tst/Test/Holidays/UnitedStates.hs +2/−1
CHANGELOG.md view
@@ -10,3 +10,6 @@ - new Holiday data type - use "holidayKey" for a textual description - new countries supported: MOZ++## **0.3.0.0** - 2025-08-20+- default language is Haskell2010
holidays.cabal view
@@ -1,7 +1,7 @@-cabal-version: 3.8+cabal-version: 3.0 name: holidays-version: 0.2.0.0+version: 0.3.0.0 synopsis: Library for country public holidays description: Library for country public holidays. Provides a small EDSL to describe holidays for a country.@@ -13,7 +13,7 @@ maintainer: danielc777888@gmail.com extra-doc-files: CHANGELOG.md -tested-with: GHC == 9.4.8+tested-with: GHC == 9.8.1 source-repository head type: git@@ -22,11 +22,11 @@ common common ghc-options: -Wall build-depends:- base ^>=4.17.2.1,+ base ^>=4.19.0.0, containers ^>=0.7, text ^>=2.1, time >=1.4 && <2- default-language: GHC2021+ default-language: Haskell2010 library import: common
src/Holidays.hs view
@@ -12,16 +12,16 @@ ) where -import Data.Set qualified as S+import qualified Data.Set as S import Data.Time import Holidays.Base import Holidays.DateTransform-import Holidays.Germany qualified as DEU-import Holidays.Mozambique qualified as MOZ-import Holidays.Namibia qualified as NAM-import Holidays.SouthAfrica qualified as ZAF-import Holidays.UnitedKingdom qualified as GBR-import Holidays.UnitedStates qualified as USA+import qualified Holidays.Germany as DEU+import qualified Holidays.Mozambique as MOZ+import qualified Holidays.Namibia as NAM+import qualified Holidays.SouthAfrica as ZAF+import qualified Holidays.UnitedKingdom as GBR+import qualified Holidays.UnitedStates as USA {- | Returns a set of public holidays based on the country code (ISO_3166_1_Alpha_3) and a specific year.@@ -51,3 +51,4 @@ apply (hs, transforms) year = let validDays = filter (validDay . holidayValue) $ map (\d -> d year) hs -- apply year and filter out invalid days in foldr (\d ds -> S.insert (foldr (\t d' -> t ds d') d transforms) ds) S.empty validDays -- apply transforms to valid days+
src/Holidays/Base.hs view
@@ -8,7 +8,7 @@ validDay, ) where -import Data.Text qualified as T+import qualified Data.Text as T import Data.Time -- | 3-letter country codes.@@ -39,3 +39,4 @@ -- | Day is valid if its not a nullDate validDay :: Day -> Bool validDay = not . (nullDay ==)+
src/Holidays/DateFinder.hs view
@@ -34,7 +34,7 @@ ) where import Data.Maybe-import Data.Set qualified as S+import qualified Data.Set as S import Data.Time import Data.Time.Calendar.Easter@@ -165,3 +165,4 @@ | otherwise = d where d' = holidayValue d+
src/Holidays/DateTransform.hs view
@@ -4,7 +4,7 @@ DateTransform, ) where -import Data.Set qualified as S+import qualified Data.Set as S import Data.Time import Holidays.Base import Holidays.DateFinder
tst/Main.hs view
@@ -1,11 +1,11 @@ module Main where -import Test.Holidays.Germany qualified as DEU-import Test.Holidays.Mozambique qualified as MOZ-import Test.Holidays.Namibia qualified as NAM-import Test.Holidays.SouthAfrica qualified as ZAF-import Test.Holidays.UnitedKingdom qualified as GBR-import Test.Holidays.UnitedStates qualified as USA+import qualified Test.Holidays.Germany as DEU+import qualified Test.Holidays.Mozambique as MOZ+import qualified Test.Holidays.Namibia as NAM+import qualified Test.Holidays.SouthAfrica as ZAF+import qualified Test.Holidays.UnitedKingdom as GBR+import qualified Test.Holidays.UnitedStates as USA import Test.Tasty main :: IO ()@@ -19,3 +19,4 @@ propTests :: TestTree propTests = testGroup "Holidays property based tests" [DEU.propTests, GBR.propTests, MOZ.propTests, NAM.propTests, USA.propTests, ZAF.propTests]+
tst/Test/Holidays.hs view
@@ -3,9 +3,9 @@ day, ) where -import Data.Set qualified as S+import qualified Data.Set as S import Data.Time-import Holidays qualified as H+import qualified Holidays as H import Test.Tasty import Test.Tasty.QuickCheck as QC
tst/Test/Holidays/Germany.hs view
@@ -6,7 +6,7 @@ ) where import Data.List-import Data.Set qualified as S+import qualified Data.Set as S import Holidays import Test.Holidays import Test.Tasty@@ -47,3 +47,4 @@ propTests :: TestTree propTests = countryPropTests "DEU" regions+
tst/Test/Holidays/Mozambique.hs view
@@ -6,7 +6,7 @@ ) where import Data.List-import Data.Set qualified as S+import qualified Data.Set as S import Holidays import Test.Holidays import Test.Tasty@@ -43,3 +43,4 @@ hday "armed_forces_day" . sep 25, hday "day_of_peace_and_reconciliation" . oct 4, hday "family_day" . christmasDay -}+
tst/Test/Holidays/Namibia.hs view
@@ -6,7 +6,7 @@ ) where import Data.List-import Data.Set qualified as S+import qualified Data.Set as S import Holidays import Test.Holidays import Test.Tasty@@ -51,3 +51,4 @@ propTests :: TestTree propTests = countryPropTests "NAM" []+
tst/Test/Holidays/SouthAfrica.hs view
@@ -6,7 +6,7 @@ ) where import Data.List-import Data.Set qualified as S+import qualified Data.Set as S import Holidays import Test.Holidays import Test.Tasty@@ -51,3 +51,4 @@ propTests :: TestTree propTests = countryPropTests "ZAF" []+
tst/Test/Holidays/UnitedKingdom.hs view
@@ -6,7 +6,7 @@ ) where import Data.List-import Data.Set qualified as S+import qualified Data.Set as S import Holidays import Test.Holidays import Test.Tasty@@ -42,3 +42,4 @@ propTests :: TestTree propTests = countryPropTests "GBR" []+
tst/Test/Holidays/UnitedStates.hs view
@@ -6,7 +6,7 @@ ) where import Data.List-import Data.Set qualified as S+import qualified Data.Set as S import Holidays import Test.Holidays import Test.Tasty@@ -34,3 +34,4 @@ propTests :: TestTree propTests = countryPropTests "USA" []+