313 Commits

Author SHA1 Message Date
Anatolios Laskaris
22d39f5b23
ci: Set avm client version to crate version (#368)
* Set version from Cargo.toml

* Fix crate link on release
0.31.7
2022-10-25 10:20:42 +03:00
renovate[bot]
bbc521ce53
fix(deps): update all non-major rust dependencies (#338)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0.31.6
2022-10-15 21:08:46 +03:00
renovate[bot]
fb32f33154
chore(deps): update rust crate pretty_assertions to v1 (#361)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0.31.5
2022-10-14 12:40:12 +03:00
Mike Voronov
8c3f9a3090
feat(interpreter-data): add interpreter version in data (#367) 0.31.4 2022-10-13 12:50:32 +03:00
Ivan Boldyrev
22fac9329e
feat(testing-framework): prevalidate AIR script (#365)
Try to parse the annotated AIR script with the standard parser to catch
to catch errors early with better error messages.

We do it in the `TestExecutor` only to make testing framwork parser
tests simplier.  For user experience, it doesn't matter.
0.31.3
2022-10-12 13:44:59 +07:00
Mike Voronov
a60b61e1a1
fix(execution-engine): save order between current generations (#366)
Co-authored-by: Valery Antopol <valery.antopol@gmail.com>
0.31.2
2022-10-12 04:29:31 +03:00
Ivan Boldyrev
651b569a13
feat(testing-framework): allow exclamation mark (#364)
While exclamation mark is legacy feature in the lambda parser, people
seem to use it anyway, getting errors not always easy to understand.
0.31.1
2022-10-11 21:52:49 +07:00
Mike Voronov
bf8aee7f15
fix(execution-engine): fix invalid iteration over stream (#362)
This PR is mostly a revertion of #357, that is needed to make stream work correctly in fold itrerations.

Closes #363.
0.31.0
2022-10-11 01:41:22 +03:00
Mike Voronov
eafdec5d86
fix(aquavm): temporary fix entire value in canon (#358) 0.30.15 2022-10-10 22:15:28 +03:00
Ivan Boldyrev
076045124c
feat(testing) Testing framework chapter 1, asserts and comments (#342)
* seq_result` -> `seq_ok`; add `seq_err`

`seq_ok` and `seq_err` are consistent with `ok` and `err`, but produce
results sequentially.

* Accept `;;` and longer comments in the sexp parser

Currently they are just dropped, and resulting AIR has different
character positions in the error messages.

* Add "map" assertion

Lookup result in a map by service's first argument.
0.30.14
2022-10-11 01:05:20 +07:00
Anatolios Laskaris
17a6409566
ci: Add registry to e2e (#359) 0.30.13 2022-10-10 18:48:13 +04:00
Mike Voronov
01bbca72c2
fix(air-parser): allow non used streams in validator (#360)
Validator checks that stream used in `canon` is populated by a value in a supplied script. This PR removes this check, because it's useful for code generation.
0.30.12
2022-10-10 15:51:03 +03:00
Mike Voronov
910f1665eb
fix(trace-handler): fix fold and canon compatibility (#357)
Fixes bug of traces divergence when `canon` is used inside `fold`.

Closes #356.
0.30.11
2022-10-09 12:56:12 +03:00
Mike Voronov
cd598c28ae
refactor(aquavm): improve readability of ap merger and handler (#354)
At the moment `Ap` state contains vector of generations, although the ap instruction itself allow to specify only one stream. It was done to support several streams in a result position in a future. But the current realization allows to handle empty vector that was implemented to support states for scalars and it turned out (for more info see #326) that states for scalars aren't actually needed.

Closes #355.
0.30.10
2022-10-07 14:38:29 +03:00
Mike Voronov
a8b227caf5
refactor(aquavm): getting rid of CallOutputValue in call merger (#353)
This PR refactors call merger of `TraceHandler`. Previously it requires `CallOutputValue` to determine a type of call output value (stream or scalar). And internally it checked correspondence between data result and call output type and return a error if they are not equal. Although execution engine component also had a match over these values and does nothing if they are not matched since `TraceHandler` did this job. This PR eliminate such behaviour and improve isolation of AquaVM modules.
0.30.9
2022-10-06 19:59:47 +03:00
Mike Voronov
c3aa8efa04
chore(tests): rename all *.clj files to *.air (#352) 0.30.8 2022-10-06 15:56:31 +03:00
Mike Voronov
ccbd3262a3
feat(aquavm): allow to set last instruction of fold (#349) 0.30.7 2022-10-01 23:41:30 +03:00
Valery Antopol
dd0c458339
fix: cannon treats ap with different generations as incompatible (#350)
Fixes #348.
0.30.6
2022-09-30 21:43:51 +03:00
Ivan Boldyrev
2e98712cb2
fix(execution-engine) Restricted stream bugfix (#337)
Use proper stream generation structures for call results merged from current data.

Closes #302.

Co-authored-by: vms <michail.vms@gmail.com>
0.30.5
2022-09-30 03:10:24 +07:00
Mike Voronov
8889291af8
fix(execution-engine): treat non-defined stream as empty in canon (#347)
This PR forces `canon` instruction to treat streams as empty, it's crucial for deterministic behaviour.

Closes #346.
0.30.4
2022-09-29 23:05:04 +03:00
Anatoly Laskaris
e6443df591
ci: Use new version format in E2E workflow (#345)
* Use new version format

* Test

* Lock version

* Cleanup
0.30.3
2022-09-29 17:14:40 +03:00
renovate[bot]
35a4fe4451
fix(deps): update rust crate clap to v4 (#344)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0.30.2
2022-09-29 03:45:06 +03:00
Ivan Boldyrev
4a2e8be178
refactor(parser): use AirPos type for AIR script position (#341)
Use a dedicated wrapper type for better type safety and self-documented code.
0.30.1
2022-09-29 00:16:37 +03:00
Mike Voronov
c85b2e2fbf
feat(execution-engine): change behaviour of fold over streams (#340)
feat(execution-engine): change behaviour of fold over streams

Change behaviour of fold over streams to make it more similar to pi-calculus channels/names (for more info see #333).

Closes #333.

BREAKING CHANGE:

The new stream behaviour is not compatible with old one, such as
```
(fold $stream iterator
   (seq
       (call ...)
       (next iterator)))
```
will never end after this change (for more info again see #333).
0.30.0
2022-09-28 22:03:54 +03:00
renovate[bot]
493b469257
chore(deps): update dependency typescript to v4.8.4 (#343)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0.29.3
2022-09-28 02:04:28 +03:00
Anatoly Laskaris
61cc3ffc2c
ci: Add Aquavm E2E (#324) 0.29.2 2022-09-20 18:25:55 +03:00
Ivan Boldyrev
b929614b4c
wasm-air-beautify WASM module (#325)
It provides a `beautify` method to output a "beautified"
(python-style formatted) AIR script.

The method returns a string or raises an exception.
0.29.1
2022-09-19 19:31:12 +07:00
Mike Voronov
20bb230a3a
Introduce never instruction (#335) 0.29.0 2022-09-19 14:36:46 +03:00
renovate[bot]
250b316682
Update dependency typescript to v4.8.3 (#322)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0.28.14
2022-09-19 14:20:03 +03:00
renovate[bot]
ad504bce8b
Update all non-major Rust dependencies (#330)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0.28.13
2022-09-19 14:07:34 +03:00
Mike Voronov
84e36747d8
fix(execution-engine): change position mappings in ap with canon streams (#332)
Fix sheme of mapping variables produced by applying `ap` to canonicalized streams.

Fixes #331.
0.28.12
2022-09-14 19:33:21 +03:00
Anatoly Laskaris
ca62bd6066
chore: release (#329) 0.28.11 2022-09-13 19:08:47 +03:00
renovate[bot]
40bb3c843f
Update all non-major Rust dependencies (#323)
* Update all non-major Rust dependencies

* bump fluence-app-service version

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Valery Antopol <valery.antopol@gmail.com>
0.28.10
2022-09-13 19:03:18 +03:00
Ivan Boldyrev
89355d9da3
style: Misc clippy fixes (#327)
* Add warn(rust_2018_idioms) to remaining crates
 air-beautifier, air-beautify and air-trace now have this lint too.

* Fix more warnings
0.28.9
2022-09-13 20:54:57 +07:00
Valery Antopol
204b2be44d
Bump avm-server version to 0.26.0 (#317) 0.28.8 2022-09-09 16:56:03 +03:00
Pavel
698dbbb263
AVM client: Replace any with generic JSON types (#320) 2022-09-09 16:41:30 +03:00
Anatoly Laskaris
7a146501a5
Use rust-toolchain to setup rust (#318) 0.28.7 2022-09-09 16:34:19 +03:00
renovate[bot]
a77fb3395c
Update all non-major Rust dependencies (#321) 0.28.6 2022-09-09 13:36:19 +03:00
Mike Voronov
a4011ef038
Introduce length functor (#314) 0.28.5 2022-09-08 16:58:04 +03:00
Mike Voronov
626796b299
fix clippy warnings (#319) 0.28.4 2022-09-08 16:32:28 +03:00
Pavel
a2f996dde2
Fix issue when undefined data in AVM client caused FJS to fail (#313) 0.28.3 2022-09-07 12:55:23 +03:00
renovate[bot]
b4195175db
Update all non-major Rust dependencies (#309)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Anatoly Laskaris <github_me@nahsi.dev>
0.28.2
2022-09-07 12:10:07 +03:00
Mike Voronov
2784d8a51f
bump wasm-bindgen (#316) 0.28.1 2022-09-07 11:38:49 +03:00
renovate[bot]
6a2d591721
Update dependency typescript to v4.8.2 (#312)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0.28.0
2022-09-07 11:32:46 +03:00
Anatoly Laskaris
f32f23b610
Temporarily ignore wasm-bindgen dependency bump (#311) 0.27.8 2022-09-06 11:01:41 +03:00
Mike Voronov
e5d9681beb
Fix fold over canon streams (#307) 0.27.7 2022-09-06 10:53:33 +03:00
Ivan Boldyrev
0ddcfb94ea
Bug: join behavior on CanonStream (#305)
The AquaVM returned an error instead of joining.

Resolves #304
0.27.6
2022-09-06 14:32:15 +07:00
renovate[bot]
66711c40f5
Configure Renovate (#288)
* Add renovate.json

* Update renovate config

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Anatoly Laskaris <github_me@nahsi.dev>
0.27.5
2022-09-06 09:38:45 +03:00
Ivan Boldyrev
619e8829a9
Get rid of unsafe code in the interpreter (#303)
* Get rid of unsafe code unless really necessary

* Add lint levels where appropriate

Some crates (air-beautifier, air-testing-framework) have lot of
rust_2018_idioms violations, that will be resolved later.
0.27.4
2022-09-06 00:03:30 +07:00
Mike Voronov
1cb6901caa
Populate restricted streams generations from data (#301) 0.27.3 2022-09-05 17:57:26 +03:00