KtorZ
15efeb3069
Remove unused code & data-type 'UseManifest'
...
If it's unused, it shall be gone. It obfuscate what functions are
doing and require managing extra complexity for no reason.
2023-09-13 17:17:32 -04:00
KtorZ
76ff09ba0e
Ensure that version resolution works offline
...
And so, even for unpinned package. In this case, we can't do a HEAD request. So we fallback by looking at what's available in the cache and using the most recently downloaded version from the cache. This is only a best effort as the most recently downloaded one may not be the actual latest. But common, this is a case where (a) someone didn't pin any version, (b) is trying to build on in an offline setup. We could possibly make that edge-case better but, let's see if anyone ever complains about it first.
2023-09-13 17:17:32 -04:00
KtorZ
87087a1811
Always check package status when version is not pinned
...
When the version isn't a git sha or a tag, we always check that we got
the last version of a particular dependency before building. This is
to avoid those awkward moments where someone try to use something from
the stdlib that is brand new, and despite using 'main' they get a
strange build failure regarding how it's not available.
An important note is that we don't actually re-download the package
when the case occurs; we merely check an HTTP ETag from a (cheap) 'HEAD'
request on the package registry. If the tag hasn't changed then that
means the local version is correct.
The behavior is completely bypassed if the version is specified using
a git sha or a tag, as here, we can assume that fetching it once it
enough (and that it can change). If a package maintainer force-pushed
a tag however, there may be discrepency and the only way around that
is to `rm -r ./build`.
2023-09-13 17:17:32 -04:00
KtorZ
3c3a7f2423
Define 'is_git_sha_or_version' to assert whether a version is 'immutable'
...
Best-effort to assert whether a version refers is a git sha digest or a tag. When it is, we
avoid re-downloading it if it's already fetched. But when it isn't, and thus refer to a branch,
we always re-download it. Note however that the download might be short-circuited by the
system-wide package cache, so a download doesn't actually mean a network request.
The package cache is however smart-enough to assert whether a package in the cache must be
re-downloaded (using HTTP ETag). So this is mostly about delegating the re-downloading logic to
the global packages cache.
2023-09-13 17:17:32 -04:00
KtorZ
65fb3a640a
Remove dead-code.
2023-09-13 17:17:32 -04:00
KtorZ
a72628a4dc
Auto-derive 'Debug' trait instance for types in deps
...
Actually useful to debug / troubleshoot things.
2023-09-13 17:17:32 -04:00
rvcas
437a95bfe8
fix: behave like rust with hyphens closes #722 closes #690
2023-08-31 18:00:21 -04:00
microproofs
baa6917af5
Fix: Change type map length assert to check for greater than equals instead of equals to argument length
2023-08-29 21:59:15 -04:00
rvcas
b075d85b40
chore: Release
2023-08-24 15:05:12 -06:00
rvcas
a7062ccb88
chore: fix versions
2023-08-24 15:04:19 -06:00
rvcas
747e057d05
fix: tags
2023-08-24 15:00:09 -06:00
KtorZ
2f0211a7b1
Bump all version manually because cargo workspaces didn't work.
2023-08-22 13:27:10 +02:00
microproofs
89c55a23fa
chore: Release
2023-08-19 20:17:00 -04:00
microproofs
084b900b2a
change: traverse_with_tree now has a boolean to determine when with is called
...
fix: Opaque types are now properly handled in code gen (i.e. code gen functions, in datums/redeemers, in from data casts)
chore: add specific nested opaque type tests to code gen
2023-08-19 20:07:37 -04:00
KtorZ
c1b8040ae2
Add helper for splitting a long line into multiple lines.
2023-08-19 13:39:39 -04:00
KtorZ
961e323c36
Enable iterating over validator's parameters with a callback
...
This is how we'll construct parameters interactively. We need to lookup the definition, and provide a data representation for it.
2023-08-19 13:39:39 -04:00
rvcas
690e41261e
chore: Release
2023-08-16 23:30:21 -04:00
Ariady Putra
8cf92ce8ed
`aiken new`: Try to get the latest tag of stdlib
2023-08-16 22:30:15 -04:00
microproofs
c95f43ae07
add one more test
2023-08-16 21:59:25 -04:00
microproofs
20aa54b5ca
fix: last test fixed
2023-08-16 21:59:25 -04:00
microproofs
2456801b17
fix list clauses with guards and add more tests
2023-08-16 21:59:25 -04:00
rvcas
6ecb3f08b0
chore: default stdlib on new is 1.5.0
2023-08-16 13:24:10 -04:00
microproofs
eda388fb29
test(aiken-lang): add a new test for list edge case in when clause patterns
2023-08-08 20:47:35 -04:00
microproofs
367dabafb5
fix: update last 2 tests for new recursion optimization
2023-08-07 19:06:00 -04:00
Pi Lanningham
f464eb3702
Cargo fmt + clippy, with latest rust
2023-08-07 19:00:39 -04:00
microproofs
90c7753201
update tests for new recursion optmization
2023-08-07 19:00:39 -04:00
microproofs
1d9878c5ee
fix: code gen tests now up to date using trace
...
fix: Formatter should take ErrorTerm and return "fail"
fix: fail with no reason should just return ErrorTerm
2023-08-07 12:02:44 -04:00
microproofs
624fdee9ea
keep traces in tests
2023-08-07 12:02:44 -04:00
microproofs
36c80f36c1
fix tests
2023-08-07 12:02:44 -04:00
microproofs
49a0a91103
fix tests again
2023-08-07 12:02:44 -04:00
microproofs
5aecb96668
constants are back. I had broke them when switching how data casting works
2023-08-07 12:02:44 -04:00
microproofs
4e3ced5b75
fix and clean up tests and handle
...
one edge case on rearrange clauses
2023-08-07 12:02:44 -04:00
microproofs
018453f6b1
fix expect on tuple type using the wrong internal type
2023-08-07 12:02:44 -04:00
microproofs
f03ed41e03
fix some unnecessary lambdas in assign
2023-08-07 12:02:44 -04:00
microproofs
03dd13dc7d
fixing list condition edge cases and clean up rearrange list clauses
2023-08-07 12:02:44 -04:00
microproofs
58b327e5b3
fixing bugs and edge cases
2023-08-07 12:02:44 -04:00
microproofs
55dd1a1a56
out with the old code and in with the air tree
2023-08-07 12:02:44 -04:00
microproofs
5bcc425f0f
feat: changed air expressions clause guard
...
and list clause guard to air statements
2023-08-07 12:02:44 -04:00
rvcas
be7a441205
fix(uplc): pair type formatting closes #680
2023-07-19 13:49:05 -04:00
rvcas
97acd6d7bd
chore: Release
2023-07-15 21:37:10 -04:00
rvcas
621017bd93
chore: Release
2023-07-14 10:55:13 -04:00
rvcas
e7c1b28b52
feat: add ability to reference validators in tests closes #632
2023-07-12 18:29:03 -04:00
rvcas
1ab1ff9a1f
feat: rename error to fail
2023-07-12 09:16:37 -04:00
rvcas
01be548752
chore: update stdlib version in new command relates to #672
2023-07-10 07:36:31 -04:00
rvcas
8a7df7f66b
test: add empty list test
2023-07-04 17:19:29 -04:00
KtorZ
49098d5a45
Bump miette to 5.9.0
...
No particular reason, but it's good to be up-to-date with our dependencies.
2023-07-04 16:51:59 -04:00
Pi Lanningham
c10f0e53df
cargo fmt
2023-07-01 16:17:10 -04:00
Pi Lanningham
4a8cb72708
Add a blueprint policy command
...
Computes the policy ID of a minting policy; added guards for blueprint address to check that it's not a minting policy; Wasn't 100% sure where the errors should live, so I'm happy to move them if there's objections
2023-07-01 16:17:10 -04:00
rvcas
90ff211205
chore: Release
2023-06-23 19:41:14 -04:00
rvcas
619b73d03e
feat: enhance new command
2023-06-23 19:40:11 -04:00
microproofs
db369da96e
feat: Make traces produced by expect dependent on
...
the value of the tracing flag.
2023-06-23 14:03:23 -04:00
microproofs
e1f788b628
chore: commit tests first
2023-06-19 21:43:38 -04:00
microproofs
e72a9f8e0b
chore: rearrange code gen test order
2023-06-14 13:12:49 -04:00
rvcas
85d82e5aec
chore: Release
2023-06-13 21:24:41 -04:00
microproofs
379c2fe2bf
chore: Release
2023-06-13 20:32:22 -04:00
microproofs
1e0f7ea0ab
fix: foldl test
2023-06-13 12:03:38 -04:00
microproofs
af36b5ac77
fixes:
...
fix: Issue where using var pattern in a when was passing the constr index instead of the constr
fix: Issue where expecting on a list had unexpected behaviors based on list length
2023-06-13 12:03:38 -04:00
microproofs
c5af6e0be3
chore: Release
2023-06-08 19:34:51 -04:00
rvcas
8d107b1293
fix(build): --uplc must use Program<Name> to pretty print
2023-06-07 16:25:59 -04:00
rvcas
cf6d04e95b
chore: some clippy warnings
2023-06-02 19:47:52 -04:00
rvcas
9c29f4f26b
fix: blueprints gen failing on List
...
closes #569
* added new methods to Definitions
it doesn't use expect
* lookup was failing for the special map/pair case
when resolving list generics
Co-authored-by: Pi <pi@sundaeswap.finance>
2023-06-02 17:53:10 -04:00
microproofs
6609ab335c
chore: add another test for field destructuring in a list
2023-06-02 13:00:09 -04:00
rvcas
cb9a140601
chore: Release
2023-06-02 00:34:07 -04:00
microproofs
6955f79035
chore: update changelog
...
fix: Minor improvement to record update to use empty list instead of the null list from a record fields list.
2023-06-01 12:22:42 -04:00
microproofs
deee50b77e
fix: just change `as_key`
...
Co-authored-by: Lucas Rosa <x@rvcas.dev>
2023-05-31 00:27:31 -04:00
microproofs
a6807f0bfb
fix: seems like definition lookups weren't working
...
Co-authored-by: Lucas Rosa <x@rvcas.dev>
2023-05-31 00:18:05 -04:00
microproofs
52a51acc69
fix: fix record update so it actually works
...
Created multiple tests of varying record updates
2023-05-30 20:23:12 -04:00
microproofs
e1e65d7695
typo
2023-05-30 17:28:52 -04:00
microproofs
a65821d5ab
fix: constrs that contain fields now work when passed as an arg to a function.
...
Convert acceptance test 22
Create test for passing constr as a function
2023-05-30 17:28:52 -04:00
microproofs
28a9152f09
add acceptance tests to 20
2023-05-25 22:54:53 -04:00
microproofs
f571665538
add test 18
2023-05-25 22:54:53 -04:00
rvcas
a124a16a61
feat(tests): implement a way to express that tests can fail
2023-05-25 16:54:53 -04:00
microproofs
6740107256
add acceptance test 17
2023-05-20 17:02:57 -04:00
microproofs
dda8c4de7a
adding more tests for code gen.
2023-05-20 15:29:13 -04:00
microproofs
8e60234562
chore: Release
2023-05-17 18:04:45 -04:00
rvcas
f2d8c8938c
chore: Release
2023-05-14 21:25:29 -04:00
microproofs
3356e2ecd0
fix: nested constrs with a single index was ignoring fields
2023-05-14 17:33:01 -04:00
microproofs
c3eab4cc2a
chore: fix up when tuple deconstruction test
...
add inline test for optimization tests
add some more builder functions
2023-05-11 18:06:46 -04:00
rvcas
e1a75391a1
chore: Release
2023-05-09 23:16:59 -04:00
microproofs
b36cf1c029
chore: refactor default functions in uplc_code_gen.
...
feat: Add an identity optimization to remove functions that return the argument only.
2023-05-08 16:15:09 -04:00
microproofs
d2dbae1cbf
fix:
...
Negative numbers now show up as a constant instead of 0 - that number
Expect on constructors without field maps no longer panics
Expect on constructors with discard as assigned field names now no longer throws free unique
2023-04-30 14:44:54 -04:00
microproofs
b1728b57b8
chore: Release
2023-04-28 17:11:56 -04:00
microproofs
7201163b77
fix: better function hoisting for code gen functions
...
mainly code gen function dependencies won't be hoisted to the top.
2023-04-28 17:05:46 -04:00
microproofs
0d0c96deda
commit validator changes and tests
2023-04-28 17:05:46 -04:00
microproofs
b050018a37
test fix: blueprint change
2023-04-25 02:06:56 -04:00
microproofs
ff87a4c60f
fix: "when bool is" was not properly assigning term to body when not a complex clause
...
Add some end to end tests to test uplc
2023-04-23 12:51:23 -04:00
microproofs
9bb1a88f23
fix: expect [] on a non-empty list now fails.
2023-04-21 17:39:21 -04:00
microproofs
0066765ae5
convert acceptance tests 9-10
2023-04-21 16:01:54 -04:00
microproofs
0b7d217bd0
convert acceptance test 8
2023-04-21 16:01:54 -04:00
KtorZ
2a8488d3c1
Fix css media query for newly introduced navigation.
2023-04-20 16:49:45 +02:00
KtorZ
6b1ed427e7
Some minor stylistic improvements on docs generation
...
- [x] Show links to prelude, builtins and stdlib
- [x] Remove project 'owner' in the header (only show repository)
- [x] Fix type annotation overflow on mobile
- [x] Remove the prewrap mode on mobile
2023-04-20 16:28:57 +02:00
microproofs
672a900243
chore: converted acceptance tests 5-7
2023-04-19 20:03:41 -04:00
microproofs
c2ee631d07
feat: new setup for the gen_uplc testing
...
* new test only module aiken_project::tests
* move TestProject to tests/mod.rs
* new tests go in gen_uplc.rs
2023-04-19 16:08:55 -04:00
microproofs
e4276d7f5a
move uplc tests to new location
2023-04-19 16:08:55 -04:00
microproofs
23a7e7e680
chore: convert acceptance test 5
...
Also constructors with no fields are now converted to a constant data term.
2023-04-19 16:08:55 -04:00
microproofs
022d557906
chore: convert acceptance test 4
2023-04-19 16:08:55 -04:00
microproofs
7da3ac2c99
chore: convert acceptance test 3
2023-04-19 16:08:55 -04:00
microproofs
7dd13f8d73
feat: add end to end tests to replace acceptance tests with strict uplc comparison.
...
Add acceptance tests 1,2, 6 as end to end tests
2023-04-19 16:08:55 -04:00
rvcas
3182dac908
chore: Release
2023-04-17 10:53:30 -04:00
rvcas
3d0fa1a5f6
chore: Release
2023-04-16 16:49:08 -04:00