Changelog for lorentz-0.10.0
Unreleased
0.10.0
- !774
- Added support for
BLS12-381crypto primitives (types, instructions, arithmetics). - Now it is possible to use
intinstruction for newtypes overNatural.
- Added support for
- !786
- !791
- Add new Edo instructions:
pairGetandpairUpdate.
- Add new Edo instructions:
- !755
Restricted
FAILWITHonly to packable values, exceptCONTRACTs - !759
- Add
UnitErrorArgandNoErrorArgto be used withErrorArginstance.UnitErrorArgis preferred to()NoErrorArgallows failing with just a string instead of apair string unit.
- Add
- !764
- Added
Nevertype, deprecatedEmptytype.
- Added
0.9.1
- !781
- Replaced mixins and dependency on
basewithbase-noprelude.
- Replaced mixins and dependency on
- !751
- Add new Edo instruction:
LEVEL.
- Add new Edo instruction:
- !741
- Add new Edo instructions:
SHA3andKECCAK.
- Add new Edo instructions:
0.9.0
- !731
Added
GenericStrategy-ies for compatibility with LIGO. - !712 Add lenses for Lorentz contract config.
- !684
- Simplify working with autodoc in contracts (breaking change).
finalizeParamCallingDocis now applied automatically when lorentz'Contractis used, no need to call it manually.
0.8.0
- !671
- Add
TypeHasDocinstances forTAddressandFutureContract. - Add a generic
instance DocItem (DEntrypoint ep). In case of getting overlapping instances, you have to implementEntrypointKindHasDocinstead. - Some error messages in doc tests are improved.
- Some bugfixes for anchors.
- Cases with contract logic residing outside of entrypoints are now better handled.
- Add
- !665
Improve
StorageContainsto work for polymorphic case (when field is marked withIdentity). - !679
Add
dupLNamed. - !672
- Add
Packed,TSignatureandHashtypes. packandunpacknow work withPackedinstead ofByteString(for the sake of better type-safety). Either usePackedtype, orpackRaw/unpackRawinstructions.checkSignaturenow works withPackedandTSignature.blake2band other hashing instructions now work withHash.- If necessary, coersions can be used to switch between the mentioned types and raw
ByteString.
- Add
- !667
- Modify representation of extended lambdas (arbitrary code used as lambdas is now packed into right-hand combs, not left-hand ones).
- Add
applicatemacro.
- !630
Use
:in all library instructions instead of&. - !652
Update the
ContractRegistryto be able to not require contract name for all its commands when there is only one contract. - !640
Change
StoreSubmapOpsto contain no optional methods.
0.7.1
0.7.0
- !629
All
UStoremodules has been moved to the morley-upgradeable repository. Now you have to include that repository to your build and importLorentz.UStore. - !610
Remove
Lorentz.TestScenario. - !585
Add
HasAnnotationinstance forChainId.
0.6.2
- !589
Add
annOptionsmethod inHasAnnotationwhich can be used to customize the generated annotations of a type.- Add helper functions to use with
annOptions.
- Add helper functions to use with
- !591
Add
dupTop2.
0.6.1
- !533
Add
entrypointDoc,typeDoc, anderrorDocquasiquotes which help generating typeclass instances.
0.6.0
- !558
Added a new
wrapOneto wrap a value in a constructor with a single field, because it has the advantage of having an input stack that does not depend on a type family. - !528
The generated documentation now contains a sample value of each entrypoint.
- Allow modification of sample value via
mkDEntrypointExample.
- Allow modification of sample value via
- !493
Add support for root entrypoint.
- A contract can now specify whether or not the root annotation should be generated and which name it should use.
selfandcontractinstructions are able to call the root entrypoint.
0.5.0
- !530
Field annotation are now generated for sum-type in
parameterandstorage.- It also ensures that it will not generate field annotations that would introduce extra entrypoints.
- !371
Make
view_argument accept 2 arguments rather than a pair. - !486
Add
customGenericto deriveGenericinstances with a custom tree structure and, consequently,IsoValueinstances with such a structure. - !483 Add a way to generate field annotations for entrypoint parameter.
- !470
Move
Lorentz.Testand Hedgehog generators to a new package:cleveland. - !357
Remove deprecated
Lorentz.Storemodule and deprecated custom error functionality.
0.4.0
- !449
- Improve
Lorentz.Test.Integrationalinterface. - Remove
IntegrationalValidator,SuccessValidator,validate,composeValidators,composeValidatorsList,expectAnySuccess. - Add
unexpectedInterpreterError,attempt,catchExpectedError. - Change type of
expect*/tExpect*/lExpect*functions. They now returnIntegrationalScenarioinstead ofSuccessValidator/Bool. - Rename
ValidationErrortoTestError - Replace
TestError'sUnexpectedExecutorErrorconstructor withInterpreterErrorandUnexpectedInterpreterError.
- Improve
- !432
Add
whenNoneto Lorentz. - !398
Add
StoreHasEntrypointclass to conveniently use entrypoints as lambdas stored intobig_map(s) to make use of lazy evaluation. - !409
- Add hedgehog support
- !303
- Functions for working with
UStorefrom Haskell world (e.g.fillUStore) now have a different constraint. UStoretemplates are now documented and thus may require instance of the respective typeclass.
- Functions for working with
0.3.0
- !417 Change the license to MIT.
- !360
- Add
compileLorentzWithOptionsfunction that accepts optional Michelson optimizer configuration and string transformer function. ChangedcompileLorentzto call the optimizer with the default configuration. - Add
Lorentz.Contractdata type as a wrapper forLorentz.ContractCodeandLorentz.CompilationOptions. Require that all contracts are wrapped in this data type.
- Add
- !354
- Add
constructStackfunction that constructs a datatype from fields on the stack. - Add
deconstructfunction that deconstructs a datatype to its fields on the stack.
- Add
- !358
Removed deprecated
STEPS_TO_QUOTAinstruction. - !337
Added
comment,commentAroundFunandcommentAroundStmtto generate comments in Michelson code.
0.2.0
- !346
Added
docStorageandcontractGeneralDefault. - !306
Deprecated
mapMigrationCodein favor ofMapLorentzInstr. - !326
Updated contract registry (
Lorentz.ContractRegistry):- Now it can print initial storage apart from contract and documentation.
- Some extra fields were added to
ContractInfo. - Logic is captured in the
runContractRegistryfunction. - If you don't specify output file, we will use a file with name constructed from contract name. Pass
-if you wantstdout.
- !245 Added
HasTypeAnninstance forFutureContract arg. - !294
- Added
Paths_*modules toautogen-modulesin cabal files. Removed-O0 - from default GHC options. Please set
ghc-optionsin yourstack.yamlorcabal.project.local.
- Added
- !271 Renamed 'Contract' to 'ContractCode', and appended "Code" to the names of two functions: 'convertContract' and 'printTypedContract'
- !267
- Retain type annotations in entrypoints derivation.
- Remove overlappable
HasTypeAnninstance defined for nearly each type. AdddefaultgetTypeAnnmethod definition instead and manually defineHasTypeAnninstance for each type instead (trivially). When you create a new data type withIsoValueinstance, you usually have to deriveHasTypeAnnas well.
0.1.0
Initial release extracted from the morley package.