Skip to content

effectie v2.3.0#692

Merged
kevin-lee merged 1 commit into
mainfrom
prepare-to-release
Dec 14, 2025
Merged

effectie v2.3.0#692
kevin-lee merged 1 commit into
mainfrom
prepare-to-release

Conversation

@kevin-lee

Copy link
Copy Markdown
Owner

effectie v2.3.0

2.3.0 - 2025-12-14

New Features

  • Add OnNonFatal[F[*]] (Add OnNonFatal[F[*]] #684)

    OnNonFatal[F[*]] is to do something when F[A] actually contains an error.

    e.g.)

    val fa: F[A] = ...
    
    OnNonFatal[F].onNonFatalWith(fa) {
      case SomeError(ex) => effectOf(println("ERROR!"))
    }
    
    // It prints out `ERROR!` if fa contains an error.
    // If not, it does nothing.
  • Add syntax for OnNonFatal[F[*]] (Add syntax for OnNonFatal[F[*]] #689)

    import effectie.syntax.all._
    
    val fa: F[A] = ...
    
    fa.onNonFatalWith {
      case SomeError(ex) => effectOf(println("ERROR!"))
    }
    
    // It prints out `ERROR!` if fa contains an error.
    // If not, it does nothing.

Changes

  • Update CanRestart to take F[A] as a by-name parameter (Update CanRestart to take F[A] as a by-name parameter #685)

    From

    trait CanRestart[F[*]] {
      def restartWhile[A](fa: F[A])(p: A => Boolean): F[A]
    
      def restartUntil[A](fa: F[A])(p: A => Boolean): F[A]
    
      def restartOnError[A](fa: F[A])(maxRetries: Long): F[A]
    
      def restartOnErrorIfTrue[A](fa: F[A])(p: Throwable => Boolean): F[A]
    }

    To

    trait CanRestart[F[*]] {
      def restartWhile[A](fa: => F[A])(p: A => Boolean): F[A]
    
      def restartUntil[A](fa: => F[A])(p: A => Boolean): F[A]
    
      def restartOnError[A](fa: => F[A])(maxRetries: Long): F[A]
    
      def restartOnErrorIfTrue[A](fa: => F[A])(p: Throwable => Boolean): F[A]
    }

@kevin-lee kevin-lee added this to the v2-m5 milestone Dec 14, 2025
@kevin-lee kevin-lee self-assigned this Dec 14, 2025
@github-actions github-actions Bot added pr PR release Release v2 Effectie v2 labels Dec 14, 2025
@codecov

codecov Bot commented Dec 14, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.32%. Comparing base (cd058d7) to head (0eb6b54).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main     #692   +/-   ##
=======================================
  Coverage   94.32%   94.32%           
=======================================
  Files          86       86           
  Lines         582      582           
  Branches       15       15           
=======================================
  Hits          549      549           
  Misses         33       33           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@kevin-lee kevin-lee merged commit c3eded5 into main Dec 14, 2025
15 checks passed
@kevin-lee kevin-lee deleted the prepare-to-release branch December 14, 2025 01:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr PR release Release v2 Effectie v2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant