forked from typelevel/cats
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
move Map and Set instances into alleycats #2
Merged
LukaJCB
merged 13 commits into
LukaJCB:add-sorted-instances
from
kailuowang:LukaJCB-add-sorted-instances
Oct 26, 2017
Merged
move Map and Set instances into alleycats #2
LukaJCB
merged 13 commits into
LukaJCB:add-sorted-instances
from
kailuowang:LukaJCB-add-sorted-instances
Oct 26, 2017
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Remove Edmund Noble as maintainer and author
* Links "LawTesting.md" in FAQ and TypeClasses pages * Rewrites law testing title in FAQ
* moved alleycats in * address feedback / removed duplicated class
* Add CommutativeApply and Applicative and an instance for Validated[CommutativeSemigroup, ?] * Make Future a CommutativeApplicative * Revert "Make Future a CommutativeApplicative" This reverts commit 0cd4eb9. * Add unordered traversal for Sets * Test commutativeApply instances + Nested + Tuple2K instances * Add unordered traversal for Map * Fix priority for Nested instances * Fix priority for Tuple2K instances * Move methods to typeclass * Deduplicate Applicative instance * Try out new typeclasses * Add UnorderedFoldable and UnorderedTraverse and move traversal functions there * Remove Set from Foldable docs * Add extra ref law * Revert "Add UnorderedFoldable and UnorderedTraverse and move traversal functions there" This reverts commit d308cf7. * Revert "Remove Set from Foldable docs" This reverts commit 0ffbc55.
* Initial version of Parallel * Add Either/Validated Parallel instance * Break up syntax for parallel * Add Parallel syntax tests * Add Tuple syntax for Parallel * Add ParallelTests * Fix Parallel law * Add more tests * Add Parallel Kleisli instance * Add instances for OptionT and EitherT to nested * Add law tests for parallel OptionT and EitherT * Make EitherT instance forward to Validated * Add Kleisli lawTest * Add WriterT instance * Add more tests * Add scaladoc * Add ApplicativeError instance for MonadError and Parallel * Add Test that actually hits the implicated ApplicativeError instance * Fix mixup * Move appError instance to Parallel companion object * Fix apperror test * Add sequential roundtrip law * Add ZipNEL and ZipNEV and Parallel instances * Add law for testing that pure is consistent across Parallel pairs * Add Parallel Serializable tests * Add EitherT Parallel instance that doesn't require a Parallel Instance for M * Add ZipVector + Parallel instance * Add ZipVector test * Add scaladoc to ApplicativeError and change order of type parameters * Add Parallel#identity function * Add identity instances for Future and Id * Simplify parAp2 implementation * Refactor Parallel * Add applicativeError instace method * Reverse applicativeError and remove redundant .apply * Simplify further * Add FailFastFuture + Parallel instance * Shorten wait times * Add ZipStream and OneAnd instance * Convert traits to abstract classes * Add consistency test for zip stream * Add Applicative test for Applicative[OneAnd] * Add parAp test * Add ZipList and lawtest all Zip* instances * Add ZipList consistency test * Add NonEmptyParallel * Add test cases for ParNonEmptyTraverse * Update scaladoc * Remove FailFastFuture and all Zip* instances * Rename methods in NonEmptyParallel * optimize AppError * Add parFlatTraverse and sequence * Add isomorphic functor law * Fix law test parameters
…into LukaJCB-add-sorted-instances
Thank you so much @kailuowang! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Luka, I was trying to move Instances for
Map
andSet
to alleycats and I realized that it's probably easier to do it together with this Sorted Instances. Because I found out that there are quite a few reference to the Set and Map instances in cats.core. So it makes sense to do the move Set/Map instance and add SortedSet/Map instances in one go, this way we can just replace every tests incore
to use SortedSet or SortedMap instead.So this is a PR over your branch for the move Set/Map part ( but didn't replace their reference in tests yet). This PR also contains a merge of the latest master branch.
Let me know if you think this would be a good idea.