fthomas / fthomas/refined

Represent validation errors as data

Open
#14 4 comments 1 reaction 0 assignees View on GitHub
enhancement
Dominant language
Scala
Stars
1.7k
Forks
152
Avg merge
1h 20m
Merged PRs (30d)
6

Description

`refine` currently returns an `Either[String, A]`. `String` is an awful type for errors and should probably be replaced by a dedicated error type like `RefinementError`.

``` scala
case class RefinementError(msg: String)
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at the refine API and trace its callers to determine how the current Either[String, A] error value is used. Replace the string error representation with the proposed dedicated error type, and confirm that affected callers and behavior remain consistent.

Written by the indexing model from the issue text.

Assessment

Tech stack
scala
Domain
backend
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.