Commit Graph

721 Commits

Author SHA1 Message Date
Harendra Kumar
32390c592e Add a finalizer action in Fold type
This was needed especially for concurrent fold combinators. A fold
combinator that uses concurrent folds needs to wait for the concurrent
folds to finish before it can finish. The finalizing action in folds can
deallocate any resources allocated by the "initial" action and also wait
for folds that it has initialized.

This complicates fold combinators in general. We can potentially
introduce a type for non-failing parsers and support finalization only
in those. The current use cases can be covered by that. Parsers do not
support scanning, which is not required in the use cases where we need
finalization (there is no known use case).
2023-11-18 23:51:09 +05:30
Harendra Kumar
a11fe00965 Fix warnings for GHC 9.6 and 9.8 2023-11-03 01:44:25 +05:30
Harendra Kumar
104bfc3a3f Update dependency versions 2023-10-31 13:32:39 +05:30
Adithya Kumar
8e04e4b988 Add Serialize instance for tuple 2023-10-01 12:55:11 +05:30
Adithya Kumar
bd8c8cb1b8 Add tests for TH derivation with recordSyntaxWithHeader is enabled
- Add roundtrip tests for nested records
- Add compatibility tests
2023-09-27 08:18:14 +05:30
Adithya Kumar
60a71dcbb5 Use more expressive notation for deriveSerializeWith 2023-09-14 22:20:59 +05:30
Adithya Kumar
4f00d1f54a Split the Serialize.roundtrip test into reusable parts 2023-09-14 17:41:21 +05:30
Adithya Kumar
5f67528761 Add a more robust offset ignoring tests in Serialize
This is meant to catch any serialized absolute offsets
2023-09-14 17:41:21 +05:30
Adithya Kumar
5ba608affc Update the Scientific tests in Unicode.Parser 2023-09-12 01:00:29 +05:30
Adithya Kumar
9c67608ffa Add Serialize instance for Integer 2023-09-12 01:00:29 +05:30
Adithya Kumar
3043a3f699 Add Serialize instance for (Array a) 2023-09-12 01:00:29 +05:30
Adithya Kumar
b675912c27 Test the encoding and decoding functions in the roundtrip 2023-09-12 01:00:29 +05:30
Adithya Kumar
21fd670143 Add tests for the constructorTagAsString option in Serialize.TH 2023-09-12 01:00:29 +05:30
Adithya Kumar
13f91aad8c Change the API and update doc of a few APIs in Serialize.TH 2023-09-06 15:09:08 +05:30
Adithya Kumar
9f7b45dcf4 Use a configuration to control functionality of deriveSerializeWith 2023-09-06 15:09:08 +05:30
Adithya Kumar
9479709551 Add Serialize test for datatype with functional parameters 2023-09-01 08:01:58 +05:30
Adithya Kumar
5381715f97 Change the functionality of deriveSerailizeWith 2023-09-01 08:01:58 +05:30
Adithya Kumar
50fc60cb50 Add serialize size checks for constant size datatypes 2023-08-30 14:07:33 +05:30
Adithya Kumar
1d0e20c9d3 Add a test checking the size in the roundtrip serialization tests 2023-08-30 14:07:33 +05:30
Adithya Kumar
5fef84310e Remove Serailize.Size and change the signature of Serialize.size 2023-08-30 14:07:33 +05:30
Harendra Kumar
7bc450d725 Pass the array size to deserialize for bound check 2023-08-21 16:28:02 +05:30
Harendra Kumar
f7f42e0242 Improve "size" op performance in Serialize
By using tail-recursive traversal of the structures.
2023-08-21 01:45:06 +05:30
Adithya Kumar
2e53b60161 Increase memory for limit-build-mem on the Serialize test-suite 2023-08-18 23:07:50 +05:30
Adithya Kumar
041be85bb8 Limit number of tests in large quick check properties 2023-08-18 23:07:50 +05:30
Adithya Kumar
4997b47fe1 Add a recursive ADT to the Serialize test-suite 2023-08-18 23:07:50 +05:30
Adithya Kumar
c4343a47f7 Abstact size and simplify the CPP statement in Unbox tests 2023-08-18 23:07:50 +05:30
Adithya Kumar
dbf9fe89f1 Add common Serialize deriving tests 2023-08-18 23:07:50 +05:30
Adithya Kumar
c4794aab93 Add tests for the Serialize template haskell deriving 2023-08-18 23:07:50 +05:30
Ranjeet Ranjan
2e8c9ac1fd
Rename unsafeIndex in Array module to getIndexUnsafe (#2540) 2023-08-18 15:44:47 +05:30
Ranjeet Ranjan
e6051b17cc
Re-export entire submodules from Producer (#2514) 2023-08-11 15:14:25 +05:30
Ranjeet Ranjan
c256c3223e
Re-export entire submodules from MutArray (#2509) 2023-08-11 14:58:40 +05:30
Ranjeet Ranjan
96eebafafe Add window prefix to combinators in Fold.Window module (#2517) 2023-08-11 10:17:59 +05:30
Ranjeet Ranjan
8b55b1a03e
Re-export entire submodules from Array (#2510) 2023-08-11 10:15:51 +05:30
Ranjeet Kumar Ranjan
cd523f5177 Move Data.Ring.Unboxed to Data.Ring 2023-08-10 13:40:05 +05:30
Ranjeet Ranjan
be2b3d1bdc
Re-export entire submodules from Streamly.Internal.Data.Fold (#2505)
Co-authored-by: Harendra Kumar <harendra@composewell.com>
2023-08-09 23:08:10 +05:30
Ranjeet Kumar Ranjan
d304fb842a Hide Internal StreamD submodules 2023-08-03 17:47:07 +05:30
Adithya Kumar
88448b6b77 Add common TH derived tests similar to the Generic derived tests 2023-08-03 13:31:45 +05:30
Adithya Kumar
63407dc47d Add a template haskell test suite 2023-08-03 13:31:45 +05:30
Adithya Kumar
2241afafb6 Abstract the Unbox deriving process in Unbox tests 2023-08-03 13:31:45 +05:30
Adithya Kumar
1339893885 Move the Serialize tests into its own module 2023-08-03 13:31:45 +05:30
Ranjeet Ranjan
9bf458f682
Merge Data.Parser.ParserD test cases to Data.Parser (#2458)
Co-authored-by: Harendra Kumar <harendra@composewell.com>
2023-08-02 15:54:24 +05:30
Ranjeet Ranjan
3fb676b98b
Correct Internal Array module names (#2478) 2023-07-29 00:00:34 +05:30
Harendra Kumar
b085507aec Add a faster, custom impl of double parser 2023-07-28 18:12:19 +05:30
Adithya Kumar
df5d1518d3 Non-Functional renaming changes in the array APIs
- Add pinned version of chunksOf
- Add documentation to pinned combinators
- Use the combinators with "pinned*" prefix over "*As" suffix
- Reduce the use of PinnedState
2023-07-28 00:51:14 +05:30
Adithya Kumar
3a3436c393 Use the pinned prefix over pinned suffix in array combinators
- Remove withNewArrayUnsafePinned (asPtrUnsafe can be used)
- Deprecate newPinned
2023-07-28 00:51:14 +05:30
Ranjeet Kumar Ranjan
aaa11613b2 Use non-threaded runtime for network tests on windows 2023-07-27 18:12:07 +05:30
Ranjeet Kumar Ranjan
efe0be398c Add benchmarks and property test for double Parser 2023-07-26 17:37:05 +05:30
Adithya Kumar
58b86c5281 Add a typeclass for serializing variable length types 2023-07-25 17:00:50 +05:30
Ranjeet Ranjan
eea1e0f634
Use all config options in Data.Stream.Concurrent tests (#1928)
Co-authored-by: Harendra Kumar <harendra@composewell.com>
2023-07-25 15:29:21 +05:30
Ranjeet Ranjan
afcc8ea59f
Implement double Parser (#2278)
Co-authored-by: Harendra Kumar <harendra@composewell.com>
Co-authored-by: Adithya Kumar <adithya@composewell.com>
2023-07-24 18:34:01 +05:30