Skip to content
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

Deprecate methods of Value #2450

Open
13 of 28 tasks
danieldietrich opened this issue Jul 17, 2019 · 4 comments · May be fixed by #2557
Open
13 of 28 tasks

Deprecate methods of Value #2450

danieldietrich opened this issue Jul 17, 2019 · 4 comments · May be fixed by #2557

Comments

@danieldietrich
Copy link
Member

danieldietrich commented Jul 17, 2019

  • Mark Value methods as @Deprecated Value will not be deprecated. My initial plan was to introduce io.vavr.Iterable instead but that is not a good idea. The name would be ambiguous because there exists java.lang.Iterable. Instead we will just deprecate and move the Value methods mentioned below.
  • Move 'undeprecated' copies to io.vavr.collections.Traversable:
    • exists
    • forAll
    • collect
    • contains
    • peek
    • isLazy
    • isEmpty
  • Move 'undeprecated' copies to io.vavr.control.* Note: it isn't intended to move the conversion methods mentioned below to Future, since the conversion method are blocking calls.
    • get
    • getOr*
    • toEither
    • toOption
    • toTry
    • toValidation
  • Remove methods:
    • isAsync
    • isSingleValued
    • isTraversableAgain (Iterator will not extend Value)
    • out
    • stderr
    • stdout
    • corresponds
    • eq
    • getOrNull() resp. orNull() does not make sense in the presence of primitive generics. E.g. having an Option<int> opt, calling int i = opt.getOrNull() would be fatal.
  • Re-implement spliterator on controls and collections
  • Future.fold seems to be broken, currently it takes an Iterable.
@googl3r
Copy link

googl3r commented Oct 8, 2019

Hello, Why the interface Value is deprecated now ?

@danieldietrich
Copy link
Member Author

It is the development branch and not released. I had in mind to re-implement big parts of Vavr. But I do not have the time to do that. I will undeprecate all the things by time. It is important not to break the existing Vavr version.

@googl3r
Copy link

googl3r commented Oct 9, 2019

Thank you, i cloned the repo to understand the code and then try to contribute.

@danieldietrich
Copy link
Member Author

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants