- rename
WeakenN
toSWChain
- export previous
SWChain
internalsweakenN
andstrengthenN
for magical strongweak chaining (!)- no need to write
weaken . weaken . weaken
whenweakenN @3
will do!
- no need to write
- add
WeakenN
andSWN
for chaining weakenings - clarify instance design: even zero-invariant coercible newtypes aren't allowed to recursively weaken their inner type!
- rename
Weak
toWeakened
, to separate fromWeak :: Strength
- update rerefined dependency
- update rerefined dependency
- fix
Strengthen [a]
instance reversing list - support GHC 9.4 - GHC 9.8
- no longer use
Validation
: failures now must wrap explicitly instead of being implicitly collated - fix some bounds (
text
lower bound was too low) - various tweaks
- bump meta/dependencies
- replaced refined1 with rerefined
- simplify failures
- tests: relax hspec upper bound
- add instances for
Refined1 p f a
; use refined1 library instead of refined (pending upstream)
- allow text-2.0
- refactor strengthening code, rename some definitions
- use NeAcc instead of NonEmpty for strengthening failures
- add
DerivingVia
wrapper for generic instances (likeGenerically
)
- redesign some instances to avoid the decomposer style
- alter
Identity
,Const
instances - remove
Maybe
instance
- alter
- expand sized vector instance
- support GHC 9.4
- update refined (polykind predicate)
- switch to associated type family for
Weak
insideWeaken
-Strengthen
now hasWeaken
as a superclass- I'm fairly confident that things make more sense this way - we get to remove an open type family, improve type inference, and prevent users from writing potentially dangerous instances. For that, a bit of asymmetry is welcome.
- better document generic derivers
- clarify instance design, provide more decomposer instances
- various refactoring
Initial Hackage release (dependency issues prevented uploading).
- fix field indexing in generic errors
- add unsafe strengthening
- add property and error tests
Initial release.
- basic instances (lists, numerics)
- generic derivations
- super explicit errors