Commit Graph

392 Commits

Author SHA1 Message Date
Ivan Boldyrev
e0f6fa1b4d
Run tests with sanitizers (#274)
As `wasm32-wasi` target doesn't seem to support sanitizers, we are to
execute tests with native code.  The feature `test_with_native_code` is
introduced for that.

Closes #247.
2022-06-10 12:28:40 +07:00
Ivan Boldyrev
56609c276f
Set an empty subtrace on a fold lore absent in trace (#270)
In the `FoldFSM` and related functions.

Closes #222
2022-06-01 22:00:05 +07:00
Ivan Boldyrev
1c70a3d17d
Make clippy happier by resolving some warnings (#271)
1. Use $crate inside macros.
2. Remove unused lifetime.
3. Use write! instead of String::push_str + format! to reduce allocation.
2022-05-31 18:44:45 +07:00
Ivan Boldyrev
1c0ff2c979
air-beautifier lib and air-beautify binary (#266)
The `air-beautify` util takes an AIR script input with Lisp-like syntax
and transforms it into experimental indentation-based syntax.

Closing #184.
2022-05-20 21:07:22 +07:00
Ivan Boldyrev
3c23ab735c
Refactor call triplets (#269)
Older grammar allowed some variabilty in triple format.  Now, the only
format allowed is:

  `peer_id (service_id function_name)`

As less errors can happen during parsing of the triplet, the code was
simplified further .

Closes #267.
2022-05-19 19:59:08 +07:00
vms
99d7aa0d93 Fix Display impl for next 2022-05-19 09:53:32 +03:00
Mike Voronov
24f0d66bed
Rename subtree to subgraph (#265)
Intially, a fold instruction was designed based on idea that its iterable can't expand,
so AIR was considered as a subtree. But after introducing recursive streams in #225, it's
no more a subtree, but a subgraph.
2022-05-17 15:53:33 +03:00
Ivan Boldyrev
dbd42cdf3d Fix Display of Fail::Literal
The error message was displayed without quotes.
2022-05-17 15:35:37 +07:00
Ivan Boldyrev
ec3d3a4e6f Fix Display of Value::LastError with lambda
There was a small typo in the `fn display_last_error`.

Closes #263
2022-05-17 12:57:27 +07:00
Ivan Boldyrev
dcfa51c756 Use pooled AVMRunner for tests
Use pooled `avm::server::AVMRunner` instances of
air_iterpreter_server.wasm to reduce tests' running time.  It avoids
repeated WASM loading and compilation.

On my hardware, `cargo test --release` execution time (precompiled)
decreases from almost 6 minutes to 1.5 minutes.
2022-05-16 13:16:28 +07:00
Mike Voronov
da95089513
Update readme (#260)
Co-authored-by: boneyard93501 <4523011+boneyard93501@users.noreply.github.com>
2022-05-14 17:12:48 +03:00
Valery Antopol
74ddf26b6a
update faas (#259) 2022-04-26 16:54:24 +03:00
Mike Voronov
b23f1076ea
Add developer notes about PR reviewing (#255) 2022-04-26 16:22:15 +03:00
Valery Antopol
44c87097c7
remove patch (#258) 2022-04-26 13:29:16 +03:00
Valery Antopol
298d796c09
update faas & app-service (#257) 2022-04-26 13:12:10 +03:00
Pavel
f175b31ffd
Pass updated RunParameters to AquaVM (#256) 2022-04-25 17:36:42 +03:00
Mike Voronov
3f510e1581
Improve scope error handling (#251) 2022-04-21 18:01:06 +03:00
Mike Voronov
7e0c87d72a
Introduce %ttl% (#253) 2022-04-21 11:44:18 +03:00
Mike Voronov
490791b177
introduce %timestamp% (#250) 2022-04-20 23:05:37 +03:00
Mike Voronov
5c2b9d442b
Expose max memory size (#242) 2022-04-20 20:21:07 +03:00
Mike Voronov
69a42cf111
Introduce new for non iterable scalars (#248) 2022-04-20 11:43:46 +03:00
Pavel
c2bfad7f79
Marine-js stage 2: move avm-related helpers to appropriate package (#239) 2022-04-18 15:38:19 +03:00
Mike Voronov
06d275ea16
Improve non iterable scalar scoping (#243) 2022-04-15 22:25:03 +03:00
Mike Voronov
f1600075d8
set stack limit to 50 MiB (#244) 2022-04-15 18:22:42 +03:00
Valery Antopol
5f0e295073
update faas (#240) 2022-04-07 00:18:49 +03:00
Valery Antopol
7f3b44fb9b
bump faas version (#235)
* bump faas version

* bump avm-server-version
2022-03-25 21:53:15 +03:00
Mike Voronov
262beec170
use Rust 2022-02-24 in CI (#233) 2022-03-15 20:45:15 +03:00
Mike Voronov
c4249e0118
add a list of changes to the next hardfork (#232) 2022-03-14 15:58:31 +03:00
Mike Voronov
b29883e990
Refactor tests (#231) 2022-03-10 16:06:43 +03:00
Mike Voronov
914ad74516
Make fold by streams truly deterministic (#228) 2022-03-10 01:32:07 +03:00
Mike Voronov
a64a4fc0a6
support empty array literal in fold (#230) 2022-03-07 13:50:08 +03:00
Mike Voronov
c00b453a48
Remove RefCell from streams (#227) 2022-03-03 19:09:48 +03:00
Mike Voronov
9ae79f44ff
bump version to 0.21 (#226) 2022-02-26 00:54:11 +03:00
Mike Voronov
cc54e4c383
Introduce recursive streams (#225) 2022-02-25 23:55:40 +03:00
Mike Voronov
ac050abc8a
Fix ap trace handler behaviour (#224) 2022-02-25 10:24:28 +03:00
Valery Antopol
39da1c98bb
Use js marine runtime instead of wasm-bindgen (#209) 2022-02-18 19:04:40 +03:00
Mike Voronov
78a2bc9d58
Fix tetraplets json path (#220) 2022-02-18 18:00:42 +03:00
Mike Voronov
f994ce73c8
Check scalars in lamda were defined in script (#218) 2022-02-17 23:39:01 +03:00
Mike Voronov
1ca121cf93
fix data handling in Ap (#217) 2022-02-17 13:37:36 +03:00
Mike Voronov
9fb085b6d6
Check call arguments at the beggining (#215) 2022-02-16 23:34:15 +03:00
Mike Voronov
3219570006
switch to marine without mem limits (#213) 2022-01-31 18:46:15 +03:00
Mike Voronov
4f90f194c7
Implement scalars in lambda for streams (#212) 2022-01-26 17:16:59 +03:00
Mike Voronov
58aef82b1e
Add API for returning interpreter memory size (#210) 2022-01-26 13:37:22 +03:00
Mike Voronov
6df4e470d3
Bump AquaVM to 0.20.0 (#208) 2021-12-29 21:24:03 +03:00
Mike Voronov
401d8c06fa
Fix bug with empty arrays in match (#207) 2021-12-29 20:01:49 +03:00
Mike Voronov
e6193ea4de
Implement fail with scalars (#205) 2021-12-29 19:51:18 +03:00
Pavel
91021d8b40
AVM client: move embedded wasm into a separate file (#200) 2021-12-28 17:43:54 +03:00
Mike Voronov
63160dd0f0
Refactor last error (#202) 2021-12-28 16:59:55 +03:00
Mike Voronov
c1ff7c0688
Print instruction on trace errors (#201) 2021-12-26 22:52:00 +03:00
Mike Voronov
bde7193747
bump avm-server (#199) 2021-12-21 14:33:20 +03:00