Changelog for morley-0.7.0
Unreleased
0.7.0
- !237
The
option (nat %foo)
is now accepted syntax. The%foo
is ignored. - !241
Derive
Show
instance forVoid_
. - !238
NoExplicitDefaultEntryPoint
is now GHC-understandable constraint, for previous behaviour with nice error message useForbidExplicitDefaultEntryPoint
.CanHaveEntryPoints
is made stricter, now it returns true only for Michelson sum types. If that's a problem for you, consider usingShouldHaveEntryPoints
wrapper.- Added pseudo
Empty
type.
- !219
Various entrypoints-related updates.
- Integrational tests now carry
TAddress
as a reference to contract. Make sure that parameters of the originated contracts are clear; e.g. origination ofconsumer
contract may require explicit type annotation to specify parameter type. If you passed a reference to the originated contract toView
constructor, consider usingmkView
instead or applyingcallingDefTAddress
to the reference. - Generally it is encouraged to use
TAddress
instead ofAddress
where it is used to refer to a contract. fromContractAddr
renamed tofromContractRef
.Default
instances for{Some,}EntryPointCall
are removed, use one of explicit versions:epcPrimitive
,epcCallRootUnsafe
.- Reworked
FutureContract
type.
- Integrational tests now carry
0.6.0
- !127 Limit annotations' allowed characters
- !184
Fix
LAMBDA
instruction type converter bug - !173
!197
Add support for lightweight entrypoints in Lorentz, as well as in
the interpreter runner and morley executable.
Support entrypoint references in
SELF
instruction. Minor refactorings related to entrypoints. - !201
- Add entrypoint argument to methods in testing eDSL. Preserve the existing type of
lCall
and deprecate it. - Deprecate
Lorentz.TestScenario
.
- Add entrypoint argument to methods in testing eDSL. Preserve the existing type of
- !208
Resolve an ambiguity within integrational and unit interpreters
by renaming interpreter in
Michelson.Runtime
toexecutor
. - !180
Remove
coerce_
in favor of more safe variants. Migration guide: pick one of the functions from 'Lorentz.Coercions' module. In most cases you need one of the following ones:checkedCoerce_
coerceWrap
/coerceUnwrap
forcedCoerce_
(aka oldcoerce_
- this variant provides the least safety).
- !180
Type arguments of
coerceWrap
andcoerceUnwrap
are flipped. This change concerns you if you used type application on these functions.
0.5.0
- Require
morley-prelude
to be ≥ 0.3.0 to make Hackage happy. - !156 Consider annotations in PACK and UNPACK.
0.4.0
- Implemented most of Babylon changes: new instructions, elimination of
big_map
restructions, new restrictions for thecontract
type, partial support for entrypoints. Some instructions have been removed/deprecated. - Many updates of helper data types for upgradeable contracts:
UParam
andUStore
. - Michelson printer can produce pretty output, not just one line.
- Added utilities for contract processing and analysis: optimizer, string transformer, errors transformer, analyzer.
- Added
tasty
helpers to the testing engine. - Added annotations to typed representation and Lorentz.
- Added automatic documentation generator.
- Modified standard errors in Lorentz: now they are based on
CustomError
. - Added unpacking from readable representation.
- Removed
parameter
andstorage
aliases, they were not very useful and complicated the code. - Extended cryptographic types and
Address
to work with other curves (tz2 and tz3 addresses). - Made it nearly impossible to generate dead code (which is illegal in Michelson) using Lorentz.
- Various bug fixes.
0.3.0.1
- Update maintainer.
0.3.0
- TM-68 Lorentz DSL which allows one to write contracts directly in Haskell. May be moved to a separate package later.
- TM-132 Names for contracts in integrational tests.
- TM-35
PACK
andUNPACK
instructions. - TM-27 Proper handling of
FAILWITH
. - TM-44 TM-124 Reorganization of modules.
- Bug fixes.
0.2.0.1
- Update documentation and metadata.
0.2.0
Initial release.
- Typechecker and interpreter for Michelson.
- Morley extensions:
- syntax sugar
- let-blocks
- inline assertions
- EDSL for unit testing and integrational testing