Changelog for cauldron-0.9.0.1
Revision history for cauldron
0.9.0.1
- compat with GHC 9.8.4.
0.9.0.0
- breaking change:
SomeRecipe
type hidden. - breaking change:
recipe
now produces aCauldron
, not aSomeRecipe
. - breaking change:
withRecipe
is nowlookup
and works onCauldron
s. - breaking change:
withRecipeCallstack
gone. Uselookup
. - breaking change:
IsList
instance forCauldron
has changed itsItem
type. - breaking change: the
bean
field ofRecipe
is now calledbare
. - new (|=|) and (䷱) operators.
0.8.1.0
-
Add
Cauldron.Managed.runManaged
. -
Monoid
andSemigroup
instances forManaged
, like the ones from the managed library. -
Export
Cauldron.Args.Args
fromCauldron
. This should make some IDE messages clearer.
0.8.0.0
-
doc and test changes.
-
re-export
arg
from Cauldron. -
breaking change:
MissingDependenciesError
now includes all the missing dependencies. -
breaking change:
DoubleDutyBeansError
is now a NonEmpty instead of a Map. -
Managed now has a MonadFail instance, like the one from the managed library.
0.7.0.0
- Remove dependency on algebraic-graphs, copying those parts of the code that we used.
- Remove
cookTree
andcookNonEmpty
. - Added
nest
. cook
is now "typed": we pass the type of the bean we want to extract.RecipeError
->CookingError
.- Renamed
PrimaryBean
toFinishedBean
. - Renamed
SecondaryBean
toAggregateBean
. - Now the
Constructor
s don't depend directly onSecondaryBean
/AggregateBean
. There is aPrimaryBean
/FinishedBean
that points to theSecondaryBean
/AggregateBean
, andConstructor
s depend on that. - Rename
collapseToPrimaryBeans
tocollapseBeans
. - Rename
removeSecondaryBeans
toremoveAggregates
.
0.6.1.0
ioEff
added toCauldron
.- New module
Cauldron.Builder
.
0.6.0.0
-
Remove sop-core dependency, incorporate just the needed functionality into the library.
Also make the internals of the library less dependent on n-ary tuples. Now they are more of an added layer for convenience.
-
The
cook
family of functions don't return aDependencyGraph
anymore. Instead, the graph can be obtained at any moment usinggetDependencyGraph
, even for non-wireableCauldron
s. -
BoiledBeans
is now justBeans
and has its own module. -
A new
Cauldron.Args
module which defines theArgs
applicative. -
The way of creating
Constructor
s has been overhauled.Packer
andpack
are gone, along withvalue
,eff
and similar functions. The oldRegs
type is gone.To create
Constructor
s, now we should useval
andeff
along withwire
. -
The
Bean
record is now calledRecipe
. There's also aSomeRecipe
that hides the bean type parameter. -
New
ToRecipe
typeclass that helps treating singleConstructor
s as recipes-without-decos. -
The
Decos
type is now just aSeq
of constructors of the same type. -
New
allowDepCycles
Fire
. -
Now
DependencyGraph
renders all the dependencies, even those that are ignored during plan construction to allow for dependency cycles. -
New
Monoid
instance forDependencyGraph
. -
BadBeans
is nowRecipeError
. It has now anException
instance and a pretty function. -
exportToDot
is nowwriteAsDot
and accepts aRecipeError
to highlight problematic nodes. -
Now
Constructor
s andRecipe
s keep track of theCallStack
of when they were created. This is used by errors to print the relevant code locations. Because now we have code locations,PathToCauldron
is no longer useful and has been removed.
0.4.0.0
exportToDot
takes a new parameter to configure how to print the steps. Before, only the TyCon was printed. Now, the full type is printed by default.
0.3.1.0
- Now the
MissingDependencies
only includes keys with actual missing dependencies.
0.3.0.0
- Add
cookNonEmpty
andcookTree
for cooking hierarchies of 'Cauldron's. - Rename
addLast
toaddOuter
andaddFirst
toaddInner
. - Add a copy of the
Managed
type from "managed". - Change the nomenclature of the
pack-
related functions. - Add the
Packer
type. - Add
Fire
type to customize the handling of dependency cycles.
0.2.0.0
-
Decorators are no longer
Endo
s. They just take the decorated entity as a regular parameter. -
Remove the applicative wrappers.
-
Allow effectful constructors.
0.1.0.0 -- YYYY-mm-dd
- First version. Released on an unsuspecting world.