KtorZ
2070576e46
New LSP quickfix for 'use let' warning.
2024-05-30 19:30:41 +02:00
KtorZ
649e5163fc
Fix parsing of single hex-digits.
2024-05-30 17:19:48 +02:00
KtorZ
5694d9f9cb
Introduce 'fail once' and alter behavior of 'fail' keyword for properties.
2024-05-30 17:18:50 +02:00
rvcas
2605dc6aa4
chore: update changelog
2024-05-23 16:44:50 -04:00
rvcas
3f46559dbe
chore: update changelog
2024-05-23 16:21:16 -04:00
microproofs
2c8abe4a69
update changelog
2024-05-23 16:15:30 -04:00
KtorZ
c48f15a957
revert #903 'feat: Emit keyword'
...
While we agree on the idea of having some ways of emitting events, the
design hasn't been completely fleshed out and it is unclear whether
events should have a well-defined format independent of the framework
/ compiler and what this format should be.
So we need more time discussing and agreeing about what use case we
are actually trying to solve with that.
Irrespective of that, some cleanup was also needed on the UPLC side
anyway since the PR introduced a lot of needless duplications.
2024-05-23 17:22:12 +02:00
KtorZ
5ce30b2632
Rename AList -> Pairs due to popular demand.
2024-05-23 16:45:40 +02:00
KtorZ
1ed4fa1c69
Show warning when ignoring modules + restyle warnings slightly
...
Fixes #916 .
2024-05-14 13:27:19 +02:00
KtorZ
81219cfbdd
Check for data-type serialisability after generic instantiation
...
Fixes #939 .
2024-05-14 10:58:58 +02:00
KtorZ
8c67be55ce
Fixes #921 : top-level Miller-loop needs not to be serialisable
...
This is a bit tricky, but in a similar way where we allow functions to
be returned by functions, this must also work for MillerLoopResult.
2024-05-10 13:52:23 +02:00
microproofs
30436a8a9c
update changelog
2024-05-06 15:17:01 -04:00
KtorZ
925a11be69
Check for args length when comparing types. Duh!
...
Fixes #917 .
2024-05-01 10:48:15 +02:00
rvcas
4f99c81dee
chore: update changelog
2024-04-12 21:43:28 -04:00
rvcas
23713ce6fa
chore: update changelog
2024-04-09 11:48:32 -04:00
rvcas
fdbe811bf1
chore: update changelog
2024-04-02 19:49:30 -04:00
rvcas
0ba6d23efa
chore: update changelog
2024-04-02 17:56:53 -04:00
rvcas
98bd61a0cd
chore: update changelog
2024-03-29 11:38:22 -04:00
rvcas
54a89d3e69
chore: update changelog
2024-03-25 22:05:25 -04:00
KtorZ
eee1d1bf1e
Fix release date for v1.0.25-alpha.
2024-03-22 16:07:29 +01:00
KtorZ
96387e3437
Fixes #767
...
Co-authored-by: @rvcas <x@rvcas.dev>
2024-03-22 16:05:32 +01:00
rvcas
80858387f6
chore: update changelog
2024-03-21 20:20:31 -04:00
microproofs
61936cb91e
fix(codegen): Add tracing when checking for a constr vs another primitive
2024-03-17 16:25:17 -04:00
rvcas
cc99eceda8
chore: update changelog
2024-03-12 08:10:33 -04:00
KtorZ
df898bf239
Rework monadic-bind into function backpassing.
...
This is more holistic and less awkward than having monadic bind working only with some pre-defined type. Backpassing work with _any_ function, and can be implemented relatively easily by rewriting the AST on-the-fly.
Also, it is far easier to explain than trying to explain what a monadic bind is, how its behavior differs from type to type and why it isn't generally available for any monadic type.
2024-03-11 00:16:22 +01:00
Matthias Benkort
ec18127191
Merge pull request #869 from aiken-lang/non-serialisable-types
...
Forbid non-serializable inhabitants in compound data-types.
2024-03-09 22:39:41 +01:00
KtorZ
80a9393db7
Add --include-dependencies to 'aiken docs'
...
Fixes #867 .
2024-03-09 22:35:38 +01:00
KtorZ
ee54266d1f
Forbid non-serializable inhabitants in compound data-types.
2024-03-09 22:25:51 +01:00
KtorZ
37627e3527
Fix indentation of pipelines.
2024-03-09 20:44:51 +01:00
microproofs
cf86a20256
update Changelog
2024-03-09 13:27:32 -05:00
KtorZ
22b86a5f82
Add --max-success for running more or less prop runs on demand.
2024-03-09 19:17:57 +01:00
KtorZ
d581183cc6
Fix formatter discarding nul bytes.
2024-03-09 18:59:35 +01:00
KtorZ
bbe7c0bc01
report prop test coverage labels on success.
2024-03-09 01:28:29 +01:00
KtorZ
d6cc9bdfbe
Allow implicit discard when right-hand side is Void.
...
This is the most intuitive/expected behavior. Otherwise, it forces a pointless let-binding to 'Void' or into a discard.
2024-03-09 01:28:29 +01:00
rvcas
d73f8fd6c2
chore: update changelog
2024-03-08 19:19:07 -05:00
rvcas
49ca7e1f75
chore: update changelog
2024-03-08 16:21:48 -05:00
microproofs
64f580bb82
one more change to the changelog
2024-03-08 12:19:18 -05:00
microproofs
9636a4de03
update changelog
2024-03-08 11:18:50 -05:00
KtorZ
4c97240900
Fill-in CHANGELOG about associativity.
2024-03-07 01:31:04 +01:00
KtorZ
bff822ea7f
Rework unit test report to leverage new reification
...
And also provide slightly better errors when traces, or trace-if-false operators are present.
2024-03-07 01:20:40 +01:00
KtorZ
c2bc5848dd
Fill-in CHANGELOG.
2024-03-03 21:09:17 +01:00
KtorZ
46c357df7b
Fix Int/BigInt pivot
...
We've been wrongly representing large ints as BigInt, causing them to
behave differently in the VM through builtins like 'serialise_data'.
Indeed, we expect anything that fits in 8 bytes to be encoded as Major
Type 0 or 1. But we were switching to encoding as Major type 6
(tagged, PosBigInt, NegBigInt) for much smaller values! Anything
outside of the range [-2^32, 2^32-1] would be treated as big int
(positive or negative).
Why? Because we checked whether a value i would fit in an i64, and if
it didn't we treated it as big int. But the reality is more subtle...
Fortunately, Rust has i128 and the minicbor library implements TryFrom
which enforces that the value fits in a range of [-2^64, 2^64 - 1], so
we're back on track easily.
2024-02-25 14:09:56 -05:00
microproofs
cf51b30045
update changelog
2024-02-07 11:48:52 -05:00
rvcas
b46206bfe2
chore: update changelog
2024-01-31 13:47:07 -05:00
microproofs
bcc2a0fd12
update changelog
2024-01-31 13:44:11 -05:00
microproofs
258c224e21
update changelog
2024-01-31 13:42:46 -05:00
rvcas
3a534271e7
chore: update changelog
2024-01-30 12:35:50 -05:00
microproofs
115ff61abe
update changelog again
2024-01-25 14:22:45 -05:00
rvcas
9d563612f3
chore: prep changelog for release
2024-01-24 20:40:53 -05:00
microproofs
4c00c9e7de
update changelog
2024-01-24 20:03:57 -05:00
microproofs
1431bec32f
update changelog
2024-01-24 19:50:52 -05:00
rvcas
25a837ab3f
feat: parser and check fixes
...
- do not erase sequences if the sole expression is an assignment
- emit parse error if an assignment is assigned to an assignment
- do not allow assignments in logical op chains
2024-01-19 14:32:21 -05:00
KtorZ
8a90e9eda0
Improve behavior and reporting of tests expected to fail
...
Fixes #786 .
2024-01-19 18:20:58 +01:00
KtorZ
858e45f3f3
Fill-in CHANGELOG.
2024-01-19 14:30:43 +01:00
KtorZ
0e2b8ae251
Bump pallas dependencies to include flat bigint patch
...
Fixes #796 .
2024-01-18 18:26:21 +01:00
rvcas
0a1e0d7bee
feat: remove flat-rs crate and use it through pallas_codec
2023-12-04 22:01:51 -05:00
rvcas
b17b7f287c
chore: update to pallas v0.20.0
2023-12-04 21:44:19 -05:00
rvcas
38e8255328
chore: update changelog
2023-12-04 21:04:55 -05:00
KtorZ
a23bc32fa2
Fill-in CHANGELOG.
2023-11-25 15:14:10 +01:00
microproofs
d2202a705c
update changelog
2023-10-25 18:59:44 -04:00
KtorZ
5f8e256050
Present aiken-lsp & fill-in CHANGELOG
2023-10-21 21:39:30 +02:00
microproofs
a08405c607
changelog additions
2023-10-17 12:36:13 -04:00
KtorZ
a524836c94
Add compiler version & system information to panic error message
...
So that we stop constantly asking people about it.
2023-10-06 14:46:11 +02:00
KtorZ
524d0dadf5
Add compiler's version to blueprint.
2023-10-06 14:17:55 +02:00
microproofs
8a1c824dd7
chore: add specific error for when the validator returns false
2023-10-04 11:08:22 -04:00
rvcas
78ff6cf178
chore: update changelog
2023-10-03 01:17:15 -04:00
microproofs
d131ec563b
update changelog
2023-09-29 22:07:19 -04:00
microproofs
4aa5bda9eb
update changelog
2023-09-29 19:37:44 -04:00
microproofs
3fc469b7c7
update changelog
2023-09-28 01:05:05 -04:00
microproofs
8e75007a5f
changelog: remove accidental duplicated Fixed
2023-09-25 21:16:19 -04:00
microproofs
38d15c677f
Update changelog
2023-09-25 21:16:19 -04:00
KtorZ
91d4cb9b12
Fix a date in the CHANGELOG for 0.17.0
2023-09-20 18:02:39 +02:00
microproofs
4650c64f6b
update changelog
2023-09-20 11:51:01 -04:00
KtorZ
f379039efc
Fix record shorthand causing parsing ambiguity in if/else expressions.
...
Fixes #735 .
2023-09-15 09:41:00 +02:00
KtorZ
06347c3efa
Add CHANGELOG entry.
2023-09-13 17:17:32 -04:00
KtorZ
8ba5946c32
Preserve escape sequence after formatting
...
Bumped into this randomly. We do correctly parse escape sequence, but
the format would simply but the unescaped string back on save. Now it
properly re-escapes strings before flushing them back. I also removed
the escape sequence for 'backspace' and 'new page' form feed as I
don't see any use case for those in an Aiken program really...
2023-09-08 12:12:15 +02:00
rvcas
1de7b2866a
feat(cli): add --deny to build, check, and docs
...
This is useful for CI, where people that may have
a stricter workflow want to force CI to fail if any warnings
are detected.
2023-09-06 17:19:44 -04:00
rvcas
dfe433ea46
fix: trim whitespace when loading hex strings from files closes #720
2023-08-31 18:22:09 -04:00
rvcas
097d1fa893
chore: update changelog
2023-08-31 18:01:52 -04:00
rvcas
a87a8a7b35
chore: update changelog
2023-08-31 17:41:36 -04:00
rvcas
747e057d05
fix: tags
2023-08-24 15:00:09 -06:00
KtorZ
d3fe241ccd
Wrap-up CHANGELOG
2023-08-22 13:14:35 +02:00
KtorZ
7883aff5f7
revert 619b73d03e
...
There's really no scenario where we want to generate boilerplate that
always end up being removed. In particular, the boilerplate breaks
tutorial as it generate conflicting validators in the blueprint.
The only argument in favor of the boilerplate is to serve as example
and show people some syntax reminder. However, this is better done in
the README or on the user manual directly.
2023-08-22 12:59:36 +02:00
microproofs
0eec4c188a
update changelog for v1.0.15
2023-08-19 20:11:24 -04:00
KtorZ
c6f764d2db
Refresh Cargo.lock & fill-in CHANGELOG.
2023-08-19 13:39:39 -04:00
rvcas
be20426329
chore: update changelog
2023-08-16 23:16:56 -04:00
rvcas
6d90c27587
chore: update changelog
2023-08-16 23:06:53 -04:00
rvcas
b138cb0ccd
chore: update changelog
2023-08-16 22:55:59 -04:00
logicalmechanism
050c41c8dc
tx simulate returns a vector of exbudgets now
2023-08-16 22:37:00 -04:00
microproofs
2f7784f31e
chore: update changelog
...
expecting a type on List<Data> from data now only checks that type is a list and not each element
2023-08-10 23:01:46 -04:00
microproofs
71a941e0b0
Update changelog
2023-08-07 12:11:39 -04:00
rvcas
77a627817b
chore: prepare changelog for release
2023-07-15 21:34:41 -04:00
rvcas
1b8e94fe32
feat: expect boolean sugar
2023-07-15 20:50:02 -04:00
rvcas
d009358266
chore: update changelog
2023-07-15 20:08:16 -04:00
rvcas
dbb6d302bd
chore: update changelog
2023-07-14 10:54:55 -04:00
rvcas
e7c1b28b52
feat: add ability to reference validators in tests closes #632
2023-07-12 18:29:03 -04:00
rvcas
0b65c20e31
chore: update changelog
2023-07-12 09:16:37 -04:00
rvcas
5318c94892
chore: update changelog
2023-07-11 18:59:11 -04:00
rvcas
265af44b86
chore: update changelog
2023-07-09 23:33:40 -04:00
KtorZ
93b33df3ef
Fill-in CHANGELOG.
2023-07-06 16:10:46 -04:00
KtorZ
6d7aec804c
Update CHANGELOG.md
2023-07-05 18:58:21 +02:00
microproofs
67c072a1a9
test: add acceptance test 86
...
fix: prevent mutual recursion for expect type code gen functions
2023-07-04 12:24:25 -04:00
Pi Lanningham
12674c8c4c
Added description to changelog
...
Closes #610
2023-07-01 16:17:10 -04:00
rvcas
619b73d03e
feat: enhance new command
2023-06-23 19:40:11 -04:00
rvcas
d633129ddf
fix: clearer unused var warning closes #579
2023-06-23 19:04:54 -04:00
rvcas
697de40376
chore: update changelog
2023-06-23 18:41:58 -04:00
microproofs
8b3504e9a1
fix: `expect _ = ...` not including the cast from data logic if the type is data and right hand has a type annotation
2023-06-23 18:39:12 -04:00
microproofs
226556bdd6
fix: builtins using the incorrect data to type conversion when used as a function param.
2023-06-23 14:31:19 -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
dbfa08a5a7
fix: issue with tuple clause
...
It was not consuming the next case if there was no condition being checked in the clause.
Now it properly always consumes the next clause unless last clause.
2023-06-23 12:36:15 -04:00
microproofs
24f5c4de6b
fix: the final clause of a when expecting another clause afterwards in nested list cases.
...
fix: all elements were being destructured in tuple clauses even if not used
2023-06-19 21:43:38 -04:00
KtorZ
41b2bf1c7e
Fill-in CHANGELOG.
2023-06-17 17:21:43 +02:00
rvcas
bf09c155fc
chore: update changelog
2023-06-13 21:06:24 -04:00
rvcas
44e066f907
feat: add a panic hook, present issue link
2023-06-13 20:30:43 -04:00
microproofs
b79437f596
update changelog
2023-06-13 12:03:38 -04:00
rvcas
22d491bb88
chore: update changelog
2023-06-13 00:24:04 -04:00
microproofs
9fe4aab599
chore: changelog v1.0.8-alpha
2023-06-08 19:33:27 -04:00
KtorZ
919bf6f350
Complete CHANGELOG
...
Fixes #592
Fixes #578
2023-06-08 16:39:03 +02:00
microproofs
0c4e7ed9da
typo in changelog
2023-06-07 22:39:54 -04:00
microproofs
1256bd5617
push codegen fixes to changelog
2023-06-07 22:38:22 -04:00
rvcas
8d107b1293
fix(build): --uplc must use Program<Name> to pretty print
2023-06-07 16:25:59 -04:00
KtorZ
0afc3aba13
Fix operator precedences, in particular |>
...
Fixes #571 .
2023-06-06 17:17:47 +02:00
rvcas
d3ffafd9c7
chore: update changelog
2023-06-02 00:07:49 -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
rvcas
26a607eb00
fix: bad parsing of comments at end of file closes #551
2023-05-30 11:07:39 -04:00
rvcas
c3b8ff0009
chore: update changelog
2023-05-30 10:39:49 -04:00
microproofs
c2904d15ba
chore: prepare changelog for release
2023-05-17 18:01:14 -04:00
microproofs
173154e406
fix: (code gen): expect type now properly tracks constructor dependency.
...
This was specific to code gen generated functions.
2023-05-17 17:56:01 -04:00
microproofs
6b58d643de
update changelog
2023-05-16 16:29:12 -04:00
rvcas
83d9172073
chore: add next section to changelog
2023-05-14 22:07:45 -04:00
rvcas
327ff71af0
chore: prepare changelog for release
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2023-05-14 21:24:35 -04:00
microproofs
f448cd111c
update changelog
2023-05-14 18:32:01 -04:00
microproofs
3356e2ecd0
fix: nested constrs with a single index was ignoring fields
2023-05-14 17:33:01 -04:00
microproofs
252f829825
forgot one addition to changelog
2023-05-11 18:16:48 -04:00
microproofs
98ae94f443
changelog update
2023-05-11 18:12:07 -04:00
rvcas
ce7bdea7be
chore: update changelog
2023-05-09 23:16:27 -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
42ad45ee41
chore: prepare changelog for release
2023-04-28 17:07:27 -04:00
microproofs
332ce266da
changelog update
2023-04-28 17:05:46 -04:00
microproofs
537bcf176a
chore: changelog update
2023-04-25 14:10:07 -04:00
rvcas
baa2cef6c4
feat(playground): impl clone for some errors
2023-04-24 17:13:20 -04:00
rvcas
c9a762a13c
fix: we weren't including the name unused var warning
2023-04-20 16:53:56 -04:00
KtorZ
4269cf20b0
Fix erroneous "aiken new" command's output instructions
...
Fixes #505 .
2023-04-20 14:38:48 +02:00
microproofs
672a900243
chore: converted acceptance tests 5-7
2023-04-19 20:03:41 -04:00
rvcas
092c2cecc1
chore: prepare changelog for release
2023-04-17 10:52:37 -04:00
rvcas
e3f2fb5393
fix: need to return deserialization error here
2023-04-17 10:50:40 -04:00
rvcas
b67d876f61
chore: update changelog
2023-04-16 20:44:13 -04:00
rvcas
e0056e3acd
chore: prepare changelog for release
2023-04-16 16:48:23 -04:00
rvcas
98c61ca151
feat(aiken-lang): anonymous functions
...
@MartinSchere noticed a weird error
where an unknown variable wasn't being reported
the type checker was incorrectly scoping
arguments for anonymous function definitions.
Luckily his compilation failed due to a FreeUnique
error during code gen which is good. But this may
have been the source of other mysterious FreeUnique
errors.
I also noticed that anonymous function allowed
arguments with the same name to be defined.
`fn(arg, arg)`
This now returns an error.
2023-04-16 16:38:43 -04:00