Skip to content

Bump LanguageExt.Core from 3.4.15 to 4.4.0#908

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/nuget/LanguageExt.Core-4.4.0
Closed

Bump LanguageExt.Core from 3.4.15 to 4.4.0#908
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/nuget/LanguageExt.Core-4.4.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 16, 2022

Copy link
Copy Markdown
Contributor

Bumps LanguageExt.Core from 3.4.15 to 4.4.0.

Release notes

Sourced from LanguageExt.Core's releases.

Fixes and improvements release

This release puts out the 4.3.* beta changes:

And contains a number of contributed improvements:

And a number of contributed bug fixes:

Thanks to all those who contributed. I am still super busy with other projects right now, and I don't always get to PRs as quickly as I would like, but It's always appreciated.

Any problems, please report in the Issues.

Refactored Error type + Eff and Aff applicative functors

There have been a number of calls on the Issues page for a ValidationAsync monad, which although it's a reasonable request (and I'll get to it at some point I'm sure), when I look at the example requests, it seems mostly the requestors want a smarter error handling story in general (especially for the collection of multiple errors).

The error-type that I'm building most of the modern functionality around (in Fin, Aff, and Eff for example) is the struct type: Error. It has been designed to handle both exceptional and expected errors. But the story around multiple errors was poor. Also, it wasn't possible to carry additional information with the Error, it was a closed-type other than ability to wrap up an Exception - so any additional data payloads was cumbersome and ugly.

Extending the struct type to be more featureful was asking for trouble, as it was already getting pretty messy.

Error refactor

So, I've bitten the bullet and refactored Error into an abstract record type.

Error sub-types

There are a few built-in sub-types:

  • Exceptional - An unexpected error
  • Expected - An expected error
  • ManyErrors - Many errors (possibly zero)

These are the key base-types that indicate the 'flavour' of the error. For example, a 'user not found' error isn't something exceptional, it's something we expect to happen. An OutOfMemoryException however, is exceptional - it should never happen, and we should treat it as such.

Most of the time we want sensible handling of expected errors, and bail out completely for something exceptional. We also want to protect ourselves from information leakage. Leaking exceptional errors via public APIs is a sure-fire way to open up more information to hackers than you would like. The Error derived types all try to protect against this kind of leakage without losing the context of the type of error thrown.

When Exceptional is serialised, only the Message and Code component is serialised. There's no serialisation of the inner Exception or its stack-trace. It is also possible to construct an Exceptional message with an alternative message:

... (truncated)

Commits

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [LanguageExt.Core](https://github.com/louthy/language-ext) from 3.4.15 to 4.4.0.
- [Release notes](https://github.com/louthy/language-ext/releases)
- [Changelog](https://github.com/louthy/language-ext/blob/main/version-2-release-notes.md)
- [Commits](https://github.com/louthy/language-ext/commits/v4.4.0)

---
updated-dependencies:
- dependency-name: LanguageExt.Core
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot requested a review from a team as a code owner November 16, 2022 20:02
@dependabot dependabot Bot added .NET Pull requests that update .net code dependencies Pull requests that update a dependency file labels Nov 16, 2022
@dependabot @github

dependabot Bot commented on behalf of github Dec 21, 2023

Copy link
Copy Markdown
Contributor Author

Superseded by #952.

@dependabot dependabot Bot closed this Dec 21, 2023
@dependabot dependabot Bot deleted the dependabot/nuget/LanguageExt.Core-4.4.0 branch December 21, 2023 21:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .net code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants