Skip to content

Conversation

@Bodigrim
Copy link
Collaborator

Currently Test.Tasty.Ingredients.ConsoleReporter.computeAlignment evaluation is extremely inefficient: firstly because data Maximum lacks strictness annotations, and secondly because foldTestTree operates not even over Maximum a, but over Int -> Maximum a.

The patch improves efficiency of computeAlignment and arguably makes its implementation simpler.

CC @martijnbastiaan for review.

Currently `Test.Tasty.Ingredients.ConsoleReporter.computeAlignment` evaluation
is extremely inefficient: firstly because `data Maximum` lacks strictness
annotations, and secondly because `foldTestTree` operates not even
over `Maximum a`, but over `Int -> Maximum a`.

The patch improves efficiency of `computeAlignment` and arguably makes
its implementation simpler.
Copy link
Collaborator

@VictorCMiraldo VictorCMiraldo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Thanks for the patch @Bodigrim

Copy link
Contributor

@martijnbastiaan martijnbastiaan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks much simpler!

@Bodigrim Bodigrim merged commit c6ea446 into master Sep 24, 2023
@Bodigrim Bodigrim deleted the stricter-computeAlignment branch September 24, 2023 13:54
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request Jan 29, 2025
Version 1.5.3
--------------

_2025-01-05_

* Console reporter: disable line wrapping
  ([#433](UnkindPartition/tasty#433)).
* Console reporter: force flushing of stdout after `showCursor`
  ([#436](UnkindPartition/tasty#436)).

Version 1.5.2
--------------

_2024-11-03_

* Partially revert [#393](UnkindPartition/tasty#393)
  to fix progress reporting outside of Emacs.
* Do not depend on `unbounded-delays` on `ppc64`, `s390x` and `riscv64`
  ([#371](UnkindPartition/tasty#371),
   [#422](UnkindPartition/tasty#422),
   [#423](UnkindPartition/tasty#423)).


Version 1.5.1
--------------

_2024-06-22_

* Performance improvements
  ([#389](UnkindPartition/tasty#389),
   [#390](UnkindPartition/tasty#390)).
* Progress reporting in Emacs: use `\r` instead of ANSI escape sequences
  ([#393](UnkindPartition/tasty#393)).
* Console reporter: fix unintended change to `foldHeading`
  ([#396](UnkindPartition/tasty#396)).
* Prune empty test subtrees from `TestTree`
  ([#403](UnkindPartition/tasty#403)).
* Add `instance Eq Timeout` and `instance Ord Timeout`
  ([#415](UnkindPartition/tasty#415)).
* Add ability to supply options for launchers and reporters at the top-level of test tree
  ([#417](UnkindPartition/tasty#417)).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants