rvcas
ff25fbd970
chore: acceptance tests v3 syntax
2024-08-26 15:56:49 -04:00
rvcas
b57f840cad
chore: use correct arguments in gift card validators
2024-08-26 15:45:37 -04:00
rvcas
c87f459ce7
chore: convert gift card tutorial to v3
2024-08-26 15:41:01 -04:00
KtorZ
3521a8c921
Start adjusting acceptance tests to the new Plutus V3 syntax.
2024-08-25 17:12:36 +02:00
KtorZ
af9a785d65
Provide default annotation to validators (incl. fallback)
...
Without that, we may encounter weird error messages when writing
validators without an explicit `else`. Since we automatically fill it
with a `fail`; without annotation, it unifies to a generic parameter.
The existing check that would look for the body being an error term is
ill-advised as it doesn't work as soon as one adds tracing, or make
the validator a parameterized validator. Plus, it may simply trigger
the wrong behavior as one can now annotate a validator with _whatever_
and get pass the type-checker by plucking a `fail` keyword as body.
2024-08-25 17:12:11 +02:00
KtorZ
1198d7a5ae
Adjust hello world example to new Plutus V3 syntax.
2024-08-25 16:29:24 +02:00
KtorZ
0c9ea196be
Format uplc crate
2024-08-25 16:20:45 +02:00
KtorZ
e9edd20c21
Fix gen_uplc tests revolving around validators.
...
Fucking hell.
I got rid of the 'opaque_value_in_datum' test since it is no longer
relevant (we now forbid the presence of opaque types in the ABI).
2024-08-25 16:20:09 +02:00
KtorZ
52a39629b7
Add UPLC test for always_true mint validator.
...
Mainly to have a trivial example with just the validator boilerplate code.
2024-08-25 16:20:08 +02:00
KtorZ
8c2fdf9ad4
Use dot to separate purpose from validator name in blueprint
...
The rationale is two folds:
1. It's more consistent with how we already separate the validator
name from its module.
2. Because `_` may be present in Aiken's validator's name, it is hard
to read and I am afraid it could potentially conflict later on. So
it's better to use a separator that cannot appear in validator
names.
2024-08-25 16:20:08 +02:00
KtorZ
ed55f03aa2
Fix remaining blueprint test.
...
Probably an oversight when we reworked them.
2024-08-25 16:20:08 +02:00
KtorZ
442010d056
Fix generation of fallback validator
...
This must only happen in case all other validator succeed; otherwise
we might generate invalid validators.
2024-08-25 16:20:08 +02:00
rvcas
73522296aa
chore: accept updated snapshot
2024-08-25 16:20:08 +02:00
rvcas
ff1464b462
feat: annotated data for option datum
2024-08-25 16:20:08 +02:00
rvcas
d8723c5497
feat: use __fallback in bluprint for the else
2024-08-25 16:20:07 +02:00
rvcas
4589c51cd3
feat: enforcement that spend first arg is option
2024-08-25 16:20:07 +02:00
rvcas
c57009bf99
chore: fix some tests that now correctly fail due to arity checks
2024-08-25 16:20:07 +02:00
KtorZ
c706d6072d
Fix few blueprint generation tests
...
Some remains invalid, in particular:
- We need to handle the annotated Data case, which we still parse
correctly but do nothing about any longer.
- There's also a strange behavior with opaque type turned public?
2024-08-25 16:20:07 +02:00
KtorZ
f9acbd3bcb
DRY handlers generation from validator
2024-08-25 16:20:07 +02:00
KtorZ
047f422d0d
remove v2 script contexts acceptance tests.
...
V2 is dead. Long live V3.
2024-08-25 16:20:07 +02:00
KtorZ
6a6bf6f65f
Handle (though discard) first script purpose argument of publish and propose.
2024-08-25 16:20:07 +02:00
KtorZ
5943d94c6c
Finish re-working machine errors display.
2024-08-25 16:20:06 +02:00
KtorZ
fe205e360f
Update remaining script context e2e tests.
2024-08-25 16:20:06 +02:00
KtorZ
7ec3f2e8df
DRY builtins types creation to ensure proper consistency.
2024-08-25 16:20:06 +02:00
rvcas
5b61a75088
feat: handler withdraw purpose
2024-08-25 16:20:06 +02:00
rvcas
be7c0c8012
fix: withdraw kinda
2024-08-25 16:20:06 +02:00
microproofs
f86d550ca0
Fix type for mint scriptinfo
2024-08-25 16:20:06 +02:00
rvcas
3aa9e0c4b7
chore: run fmt on mint
2024-08-25 16:20:05 +02:00
rvcas
3fac7002d4
feat: switch mint to new def
2024-08-25 16:20:05 +02:00
microproofs
953ee6b5d1
Fix ordering for ScriptInfo type
2024-08-25 16:20:05 +02:00
rvcas
b9456b5946
fix: wrap_validator_condition needs to happen earlier
2024-08-25 16:20:05 +02:00
rvcas
e174532bfd
chore: add more redacted values to machine errors
2024-08-25 16:20:05 +02:00
rvcas
79099675d4
fix: free unique on purpose arg
2024-08-25 16:20:05 +02:00
rvcas
c2c4bddfb3
feat: new check for valid purpose names
2024-08-25 16:20:05 +02:00
KtorZ
5cf0a4d294
Fix validator arity check
...
For now, this panics, but ideally, we should return a "unknown
purpose" error when we cannot map the name to an arity.
2024-08-25 16:20:04 +02:00
KtorZ
823492c27b
Adjust v3 script context end-to-end tests to work with new syntax.
2024-08-25 16:20:04 +02:00
KtorZ
972e9bd763
Define ScriptPurpose & ScriptContext types in prelude, fix codegen new v3 wrapper.
2024-08-25 16:20:04 +02:00
rvcas
03a348040b
chore: convert hello_world to v3
2024-08-25 16:20:04 +02:00
rvcas
90d75d4a13
fix: redeemer could be missing
2024-08-25 16:20:04 +02:00
rvcas
00b8a39236
fix: private type leaks
2024-08-25 16:20:04 +02:00
rvcas
79840248c0
fix: more parse errors in some tests
2024-08-25 16:20:04 +02:00
rvcas
f94e40daf4
fix: more test and issues with scoping/names
2024-08-25 16:20:03 +02:00
rvcas
cf3180996a
fix: map fallback name if present to else
2024-08-25 16:20:03 +02:00
rvcas
00907c2bcc
fix: format snapshot tests
2024-08-25 16:20:03 +02:00
rvcas
7f26db401c
feat: handler implicit some and none
2024-08-25 16:20:03 +02:00
rvcas
6b8be61b6e
test: new snapshots for parsing v3 validators
2024-08-25 16:20:03 +02:00
rvcas
0d8d80e5a7
feat: transform TypedValidator in a function of handlers
2024-08-25 16:20:03 +02:00
rvcas
466a4f0b39
feat: adjust blueprint stuff to be aware of handlers
2024-08-25 16:20:02 +02:00
rvcas
471bbe2175
feat: append validator name to handlers
2024-08-25 16:20:02 +02:00
rvcas
b984f0455a
feat: return a vec instead of Option
2024-08-25 16:20:02 +02:00