packages feed

dataframe-lazy 2.2.0.0 → 2.3.0.0

raw patch · 2 files changed

+13/−13 lines, 2 filesdep ~dataframe-coredep ~dataframe-csvdep ~dataframe-operationsPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: dataframe-core, dataframe-csv, dataframe-operations, dataframe-parquet, dataframe-parsing

API changes (from Hackage documentation)

- DataFrame.Typed.Lazy: aggregate :: forall (keys :: [Symbol]) (cols :: [Type]) (aggs :: [Type]). TAgg keys cols aggs -> TypedLazyGrouped keys cols -> TypedLazyDataFrame (Append (GroupKeyColumns keys cols) (Reverse aggs))
+ DataFrame.Typed.Lazy: aggregate :: forall (keys :: [Symbol]) (cols :: [(Symbol, Type)]) (aggs :: [(Symbol, Type)]). TAgg keys cols aggs -> TypedLazyGrouped keys cols -> TypedLazyDataFrame (Append (GroupKeyColumns keys cols) (Reverse aggs))
- DataFrame.Typed.Lazy: data TypedLazyDataFrame (cols :: [Type])
+ DataFrame.Typed.Lazy: data TypedLazyDataFrame (cols :: [(Symbol, Type)])
- DataFrame.Typed.Lazy: derive :: forall (name :: Symbol) a (cols :: [Type]). (KnownSymbol name, Columnable a, AssertAbsent name cols) => TExpr cols a -> TypedLazyDataFrame cols -> TypedLazyDataFrame (Snoc cols (Column name a))
+ DataFrame.Typed.Lazy: derive :: forall (name :: Symbol) a (cols :: [(Symbol, Type)]). (KnownSymbol name, Columnable a, AssertAbsent name cols) => TExpr cols a -> TypedLazyDataFrame cols -> TypedLazyDataFrame (Snoc cols '(name, a))
- DataFrame.Typed.Lazy: filter :: forall (cols :: [Type]). TExpr cols Bool -> TypedLazyDataFrame cols -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: filter :: forall (cols :: [(Symbol, Type)]). TExpr cols Bool -> TypedLazyDataFrame cols -> TypedLazyDataFrame cols
- DataFrame.Typed.Lazy: fromDataFrame :: forall (cols :: [Type]). TypedDataFrame cols -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: fromDataFrame :: forall (cols :: [(Symbol, Type)]). TypedDataFrame cols -> TypedLazyDataFrame cols
- DataFrame.Typed.Lazy: fromTypedDataFrame :: forall (cols :: [Type]). TypedDataFrame cols -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: fromTypedDataFrame :: forall (cols :: [(Symbol, Type)]). TypedDataFrame cols -> TypedLazyDataFrame cols
- DataFrame.Typed.Lazy: fullOuterJoin :: forall (key :: Symbol) (left :: [Type]) (right :: [Type]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (FullOuterJoinSchema '[key] left right)
+ DataFrame.Typed.Lazy: fullOuterJoin :: forall (key :: Symbol) (left :: [(Symbol, Type)]) (right :: [(Symbol, Type)]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (FullOuterJoinSchema '[key] left right)
- DataFrame.Typed.Lazy: groupBy :: forall (keys :: [Symbol]) (cols :: [Type]). (AllKnownSymbol keys, AssertAllPresent keys cols) => TypedLazyDataFrame cols -> TypedLazyGrouped keys cols
+ DataFrame.Typed.Lazy: groupBy :: forall (keys :: [Symbol]) (cols :: [(Symbol, Type)]). (AllKnownSymbol keys, AssertAllPresent keys cols) => TypedLazyDataFrame cols -> TypedLazyGrouped keys cols
- DataFrame.Typed.Lazy: innerJoin :: forall (key :: Symbol) (left :: [Type]) (right :: [Type]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (InnerJoinSchema '[key] left right)
+ DataFrame.Typed.Lazy: innerJoin :: forall (key :: Symbol) (left :: [(Symbol, Type)]) (right :: [(Symbol, Type)]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (InnerJoinSchema '[key] left right)
- DataFrame.Typed.Lazy: leftJoin :: forall (key :: Symbol) (left :: [Type]) (right :: [Type]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (LeftJoinSchema '[key] left right)
+ DataFrame.Typed.Lazy: leftJoin :: forall (key :: Symbol) (left :: [(Symbol, Type)]) (right :: [(Symbol, Type)]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (LeftJoinSchema '[key] left right)
- DataFrame.Typed.Lazy: rightJoin :: forall (key :: Symbol) (left :: [Type]) (right :: [Type]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (RightJoinSchema '[key] left right)
+ DataFrame.Typed.Lazy: rightJoin :: forall (key :: Symbol) (left :: [(Symbol, Type)]) (right :: [(Symbol, Type)]). (KnownSymbol key, AssertAllPresent '[key] left, AssertAllPresent '[key] right, AssertKeyTypesMatch '[key] left right) => TypedLazyDataFrame left -> TypedLazyDataFrame right -> TypedLazyDataFrame (RightJoinSchema '[key] left right)
- DataFrame.Typed.Lazy: run :: forall (cols :: [Type]). KnownSchema cols => TypedLazyDataFrame cols -> IO (TypedDataFrame cols)
+ DataFrame.Typed.Lazy: run :: forall (cols :: [(Symbol, Type)]). KnownSchema cols => TypedLazyDataFrame cols -> IO (TypedDataFrame cols)
- DataFrame.Typed.Lazy: scanCsv :: forall (cols :: [Type]). Schema -> Text -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: scanCsv :: forall (cols :: [(Symbol, Type)]). Schema -> Text -> TypedLazyDataFrame cols
- DataFrame.Typed.Lazy: scanParquet :: forall (cols :: [Type]). Schema -> Text -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: scanParquet :: forall (cols :: [(Symbol, Type)]). Schema -> Text -> TypedLazyDataFrame cols
- DataFrame.Typed.Lazy: scanSeparated :: forall (cols :: [Type]). Char -> Schema -> Text -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: scanSeparated :: forall (cols :: [(Symbol, Type)]). Char -> Schema -> Text -> TypedLazyDataFrame cols
- DataFrame.Typed.Lazy: select :: forall (names :: [Symbol]) (cols :: [Type]). (AllKnownSymbol names, AssertAllPresent names cols) => TypedLazyDataFrame cols -> TypedLazyDataFrame (SubsetSchema names cols)
+ DataFrame.Typed.Lazy: select :: forall (names :: [Symbol]) (cols :: [(Symbol, Type)]). (AllKnownSymbol names, AssertAllPresent names cols) => TypedLazyDataFrame cols -> TypedLazyDataFrame (SubsetSchema names cols)
- DataFrame.Typed.Lazy: sortBy :: forall (cols :: [Type]). [(Text, SortOrder)] -> TypedLazyDataFrame cols -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: sortBy :: forall (cols :: [(Symbol, Type)]). [(Text, SortOrder)] -> TypedLazyDataFrame cols -> TypedLazyDataFrame cols
- DataFrame.Typed.Lazy: take :: forall (cols :: [Type]). Int -> TypedLazyDataFrame cols -> TypedLazyDataFrame cols
+ DataFrame.Typed.Lazy: take :: forall (cols :: [(Symbol, Type)]). Int -> TypedLazyDataFrame cols -> TypedLazyDataFrame cols

Files

dataframe-lazy.cabal view
@@ -1,6 +1,6 @@ cabal-version:      3.4 name:               dataframe-lazy-version:            2.2.0.0+version:            2.3.0.0 synopsis:           Lazy query engine for the dataframe ecosystem. description:     The lazy/streaming query engine: relational-algebra plans, optimizer,@@ -45,13 +45,13 @@                         attoparsec >= 0.12 && < 0.16,                         bytestring >= 0.11 && < 0.14,                         containers >= 0.6.7 && < 0.10,-                        dataframe-core >= 2.1 && < 2.2,-                        dataframe-core >= 2.1 && < 2.2,-                        dataframe-csv >= 2.2 && < 2.3,-                        dataframe-csv >= 2.2 && < 2.3,-                        dataframe-operations >= 2.1 && < 2.2,-                        dataframe-parquet >= 1.4 && < 1.5,-                        dataframe-parsing >= 2.1 && < 2.2,+                        dataframe-core >= 2.2 && < 2.3,+                        dataframe-core >= 2.2 && < 2.3,+                        dataframe-csv >= 2.3 && < 2.4,+                        dataframe-csv >= 2.3 && < 2.4,+                        dataframe-operations >= 2.2 && < 2.3,+                        dataframe-parquet >= 1.5 && < 1.6,+                        dataframe-parsing >= 2.2 && < 2.3,                         directory >= 1.3.0.0 && < 2,                         filepath >= 1.4 && < 2,                         Glob >= 0.10 && < 1,
src/DataFrame/Typed/Lazy.hs view
@@ -21,13 +21,13 @@ import qualified DataFrame.Typed.Lazy as TL import DataFrame.Typed (Column) -type Schema = '[Column \"id\" Int, Column \"name\" Text, Column \"score\" Double]+type Schema = '[ '(\"id\", Int), '(\"name\", Text), '(\"score\", Double)]  main = do     let query = TL.scanCsv \@Schema \"data.csv\"               & TL.filter (TL.col \@\"score\" TL..>. TL.lit 0.5)               & TL.select \@'[\"id\", \"name\"]-    df <- TL.run query   -- TypedDataFrame '[Column \"id\" Int, Column \"name\" Text]+    df <- TL.run query   -- TypedDataFrame '[ '(\"id\", Int), '(\"name\", Text)]     print df @ -}@@ -91,7 +91,7 @@ import DataFrame.Typed.Types  -- | A lazy query with compile-time schema tracking.-newtype TypedLazyDataFrame (cols :: [Type]) = TLD {_unTLD :: LazyDataFrame}+newtype TypedLazyDataFrame (cols :: [(Symbol, Type)]) = TLD {_unTLD :: LazyDataFrame}  instance Show (TypedLazyDataFrame cols) where     show (TLD ldf) = "TypedLazyDataFrame { " ++ show ldf ++ " }"@@ -140,7 +140,7 @@     (KnownSymbol name, C.Columnable a, AssertAbsent name cols) =>     TExpr cols a ->     TypedLazyDataFrame cols ->-    TypedLazyDataFrame (Snoc cols (Column name a))+    TypedLazyDataFrame (Snoc cols '(name, a)) derive (TExpr expr) (TLD ldf) =     TLD (L.derive (T.pack (symbolVal (Proxy @name))) expr ldf) @@ -153,7 +153,7 @@ select (TLD ldf) = TLD (L.select (DataFrame.Typed.Schema.symbolVals @names) ldf)  -- | A typed lazy grouped query.-newtype TypedLazyGrouped (keys :: [Symbol]) (cols :: [Type]) = TLG+newtype TypedLazyGrouped (keys :: [Symbol]) (cols :: [(Symbol, Type)]) = TLG     { _unTLG :: ([T.Text], LazyDataFrame)     }