Commit Graph

139 Commits

Author SHA1 Message Date
rvcas
c7cd89d127 chore: fix fmt 2024-03-04 13:03:07 -05:00
KtorZ
df3baa082e Remove 'seed' arg from 'with_project' to FinishedTests event
Also polish a bit the output of tests, move test result to stdout to allow filtering out warnings by redirecting stderr to /dev/null.
2024-03-04 18:43:51 +01:00
KtorZ
900b73b21a cargo fmt --all 2024-03-03 21:05:43 +01:00
KtorZ
7a2537432a Accept an optional --seed parameter for check, otherwise default to random.
Also, show the seed on failure.
2024-03-03 20:36:01 +01:00
KtorZ
30841fe000 Rework generate_raw to avoid need to intern in prop tests
Also, this commit makes `apply_term` automatically re-intern the
  program since it isn't safe to apply any term onto a UPLC program. In
  particular, terms that introduce new let-bindings (via lambdas) will
  mess with the already generated DeBruijn indices.

  The problem doesn't occur for pure constant terms like Data. So we
  still have a safe and fast version 'apply_data' when needed.
2024-03-03 19:33:27 +01:00
rvcas
d18caaeecb feat(cli): support mainnet address output
closes #832
2024-02-27 21:55:18 -05:00
microproofs
982eff449e chore: Release 2024-01-31 13:48:20 -05:00
Kuly14
81e93b4309 Introduce cli aliases for check and build subcommands 2024-01-30 12:32:17 -05:00
rvcas
3a7a0c1971 chore: remove unused deps 2024-01-30 12:28:18 -05:00
microproofs
8584adc1b7 chore: Release 2024-01-25 15:10:11 -05:00
rvcas
defd36ad8c chore: Release 2024-01-25 11:07:32 -05:00
rvcas
589bb9a4b3 chore: change how we depend on pallas 2024-01-24 21:26:48 -05:00
KtorZ
3d131a5d09 Fix CLI docs for traces. 2024-01-19 14:30:16 +01:00
KtorZ
e67d5863a1 Introduce 'compact' trace level verbosity
For now, it only shows the span start. We'll change that in the next commit to show a line number and a column.
2024-01-19 14:30:15 +01:00
KtorZ
d27ea98a8f Rework tracing arguments to --keep-traces & --trace-level
This allows for a more fine-grained control over how the traces are showed. Now users can instrument the compiler to preserve only their user-defined traces, or the only the compiler, or all, or none. We also want to add another trace level on top of that: 'compact' to only show line numbers; which will work for both user-defined and/or compiler-generated traces.
2024-01-19 14:30:15 +01:00
microproofs
86146ae7f4 adding codegen traces 2024-01-19 14:30:14 +01:00
KtorZ
0e2b8ae251 Bump pallas dependencies to include flat bigint patch
Fixes #796.
2024-01-18 18:26:21 +01:00
Niels Mündler
7b452c21f0 Fix formatting 2023-12-29 22:57:10 -05:00
Niels Mündler
4c60be368e Add command line option to shrink uplc 2023-12-29 22:57:10 -05:00
rvcas
2647e4aae6 chore: Release 2023-12-04 22:14:03 -05:00
rvcas
b17b7f287c chore: update to pallas v0.20.0 2023-12-04 21:44:19 -05:00
rvcas
d5820bb20a fix: restore printing of some error messages
We rely on some errors to just bubble up and get printed.
By matching on result at the top level like this we blocked some
error messages from being able to be printed. For me this showed up
when `cargo run -- new thing/thing` printed nothing even when there
was an existing `thing` folder. It has already been the pattern for
sometime for some subcommands to handle calling process::exit(1) in
situations where it needs to handle error reporting more specially. It
may seem lame, hacky, or repetitive but it's easy to maintain and read.
2023-11-27 21:48:56 -05:00
KtorZ
40c0fa7d77 Add --watch flag to the 'build' and 'docs' commands too. 2023-11-25 15:14:09 +01:00
KtorZ
6c039708c3 Rework 'watch_project' to reuse 'with_project'
Also removed the 'clear' flag to do it by default instead of clogging
  the terminal view.

  This now works pretty nicely, and the logic is back under
  `aiken_project`.
2023-11-25 14:48:22 +01:00
KtorZ
777d30b8ac Rework 'with_project' to avoid early process exit. 2023-11-25 13:26:24 +01:00
Pi Lanningham
d04094560b Add an example usage in the check command
Feel free to do this differently, I just implemented it because i'm actually using it heh
2023-11-24 08:37:54 +01:00
Pi Lanningham
5068da3a17 Refactor into cargo-project
Rather than have this logic in the aiken binary, this provides a generic
mechanism to do "something" on file change events.  KtorZ is going to
handle wiring it up to the CLI in the best way for the project.

I tried to write some tests for this, but it's hard to isolate the
watcher logic without wrestling with the borrow checker, or overly
neutering this utility.
2023-11-24 08:37:54 +01:00
Pi Lanningham
771f6d1601 Formatting and check 2023-11-24 08:37:54 +01:00
Pi Lanningham
689a41ded4 Implement a basic watch command
This adds the following command
```
aiken watch
```

There are some open questions to answer, though:
- I really like the ergonomics of `aiken watch`; but it also makes sense
  as a flag to `aiken check` or `aiken build` etc.; should we just
  support the flag, the command, or both?
- Right now I duplicated the with_project method, because it forces
  process::exit(1); Should we refactor this, and if so, how?
- Are there other configuration options we want?
2023-11-24 08:37:53 +01:00
microproofs
49bd4ba33d chore: Release 2023-10-25 19:00:03 -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
d56d5180cf Move compile-time build info to aiken-project
So that we can use it as part of the blueprints.
2023-10-06 14:08:47 +02:00
microproofs
fb6cbbec8b chore: Release 2023-09-29 22:08:09 -04:00
microproofs
82ceb5b696 chore: Release 2023-09-29 19:39:28 -04:00
waalge
dbd4fe2aab fix rust version 2023-09-28 13:30:34 -04:00
waalge
37ec2b121b rev 2023-09-28 13:30:34 -04:00
waalge
3c11c95e01 insert into rust 2023-09-28 13:30:34 -04:00
KtorZ
ee4001d2c8 chore: Release 2023-09-20 18:03:46 +02:00
rvcas
1dea348a2e chore: rust rover error 2023-09-13 21:29:05 -04:00
KtorZ
5381762e50 Rework logs around dependency fetching. 2023-09-13 17:17:32 -04: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
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
379368c530 Fix clippy. 2023-08-22 13:30:30 +02:00
KtorZ
2f0211a7b1 Bump all version manually because cargo workspaces didn't work. 2023-08-22 13:27:10 +02:00
KtorZ
780a61e3e8 Release 1.0.16-alpha
aiken@1.0.16-alpha

Generated by cargo-workspaces
2023-08-22 13:18:48 +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
89c55a23fa chore: Release 2023-08-19 20:17:00 -04:00