Commit Graph

2235 Commits

Author SHA1 Message Date
d0cd
c373b898c4
Merge pull request #2427 from AleoHQ/feat/group-to-coordinate
[Feature] Support `to_x_coordinate` for `group`s.
2023-06-28 11:32:57 -04:00
Pranav Gaddamadugu
1fbb228092 Add comment 2023-06-28 10:09:33 -04:00
Pranav Gaddamadugu
8062693f3d Support method calls for group coordinates 2023-06-23 21:03:11 -04:00
Pranav Gaddamadugu
8b4552efd5 Fix implementation 2023-06-23 20:35:42 -04:00
Pranav Gaddamadugu
9b7a4ba456 WIP associated function syntax for group::to_*_coordinate 2023-06-23 20:22:03 -04:00
collin
80b0976276 chore(leo): bump version for new release 2023-06-23 17:19:25 -07:00
d0cd
07d26ea43f
[Feature] Casting via the as operator. (#2426)
* Revert "Revert WIP"

This reverts commit 5cce8b4a0e.

* Update tyc

* Add parse, compile, and execute tests

* Regen expectations
2023-06-23 17:09:15 -07:00
dependabot[bot]
1025bd965d
Bump itertools from 0.10.5 to 0.11.0 (#2424)
Bumps [itertools](https://github.com/rust-itertools/itertools) from 0.10.5 to 0.11.0.
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.10.5...v0.11.0)

---
updated-dependencies:
- dependency-name: itertools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-23 17:07:51 -07:00
Pranav Gaddamadugu
5cce8b4a0e Revert WIP 2023-06-23 10:24:10 -04:00
Pranav Gaddamadugu
ccb4c0f38f Implement type checking for cast expressions 2023-06-23 10:10:10 -04:00
Pranav Gaddamadugu
c80f9c317c Handle cast expressions in SSA and CodeGen passes 2023-06-23 09:36:40 -04:00
Pranav Gaddamadugu
9677682580 Support CastExpressions in the parser 2023-06-23 00:24:01 -04:00
Pranav Gaddamadugu
72c6dcd343 Add CastExpression to the AST 2023-06-23 00:15:59 -04:00
Pranav Gaddamadugu
6ef4779925 Add the as symbol 2023-06-22 23:57:09 -04:00
Collin Chin
4a0ee1d9d8
[Feature] implement block.height command (#2420)
* implement initial block.height

* commit.height parsing and code generation

* patch self.caller tests

* add error for self.caller in a finalize context

* fix test
2023-06-20 16:36:11 -07:00
collin
7741f5b0c4 chore(leo): bump version for new release 2023-06-15 22:38:02 -07:00
collin
f5867a4fe4 chore(leo): bump version for new release 2023-06-15 22:26:19 -07:00
Collin Chin
e5ae160d1a
Implement new hash and commit functions (#2415)
* refactor hash -> hash_to_field

* refactor commit -> commit_to_field

* implement commit_to_address

* implement hash_to_address

* update hash and commit examples

* implement hash_to_scalar

* update tests

* implement bhp hash to integer variants

* implement bhp pedersen and poseidon integer variants

* Update compiler/passes/src/type_checking/checker.rs

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* Update compiler/passes/src/type_checking/checker.rs

Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* fix pedersen hash type checks

---------

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
2023-06-15 19:55:03 -07:00
Collin Chin
d83c4be330
Implement Mapping::get_or_use (#2413)
* get_or_init -> get_or_use

* use mapping get_or_use in examples

* fix codegen for Mapping::get_or_use

* fix tests for Mapping::get_or_use

* fix warnings, update snarvm rev

* bump circle rust img v1.70

* fix codegen

* update snarkvm rev and regen tests

* Update compiler/parser/src/parser/expression.rs

Co-authored-by: d0cd <pranavsaig@gmail.com>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* Delete program.json

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* Delete program.json

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

---------

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: d0cd <pranavsaig@gmail.com>
2023-06-13 12:09:33 -07:00
dependabot[bot]
e5df1278bf
Bump serde from 1.0.163 to 1.0.164
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.163 to 1.0.164.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.163...v1.0.164)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-08 10:59:19 +00:00
Collin Chin
4e71f60cb4
Implement additional features to the "group" element type (#2394)
* add new hash and commit symbols

* pedersen commitment methods return fields

* use snarkvm rev a451d91, impl commit_to_group.bhp256

* implement bhp commit to group variants

* implement bhp hash_to_group variants

* implement pedersen commit_to_group and hash_to_scalar variants

* implement poseidon hash_to_group and hash_to_scalar variants

* remove hash_many symbol

* fix tests

* regen test expectations
2023-06-07 13:09:08 -07:00
dependabot[bot]
72bf5acaf6
Bump tempfile from 3.5.0 to 3.6.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.5.0 to 3.6.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.5.0...v3.6.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-07 10:59:50 +00:00
dependabot[bot]
5ac1589280
Bump regex from 1.8.3 to 1.8.4 (#2406)
Bumps [regex](https://github.com/rust-lang/regex) from 1.8.3 to 1.8.4.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.8.3...1.8.4)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 11:39:40 -07:00
collin
52dfc097c5 chore(leo): bump version for new release 2023-05-31 20:37:17 -07:00
Collin Chin
42d97d3d89
implement group::GEN Leo syntax (#2401)
* implement group::GEN Leo syntax

* revert unrelated test changes

* move new errors to bottom of file to keep previous error codes consistent
2023-05-31 16:05:56 -07:00
dependabot[bot]
2569c3195c
Bump regex from 1.8.2 to 1.8.3 (#2396)
Bumps [regex](https://github.com/rust-lang/regex) from 1.8.2 to 1.8.3.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.8.2...1.8.3)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-30 20:33:37 -07:00
Collin Chin
ed734e878e
Bump/snarkvm v0.11.4 (#2399) 2023-05-30 19:50:01 -07:00
dependabot[bot]
c639735f47
Bump criterion from 0.4.0 to 0.5.0
Bumps [criterion](https://github.com/bheisler/criterion.rs) from 0.4.0 to 0.5.0.
- [Changelog](https://github.com/bheisler/criterion.rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bheisler/criterion.rs/compare/0.4.0...0.5.0)

---
updated-dependencies:
- dependency-name: criterion
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-24 10:59:58 +00:00
Collin Chin
2e1a9fc979 chore(leo): bump version for new release 2023-05-23 15:02:30 -07:00
dependabot[bot]
30518e0e50
Bump regex from 1.8.1 to 1.8.2 (#2391)
Bumps [regex](https://github.com/rust-lang/regex) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.8.1...1.8.2)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-23 11:36:33 -07:00
collin
1c5de6fb80 bump snarkvm v0.11.2 2023-05-12 14:42:15 -07:00
dependabot[bot]
36c94ac62d
Bump serde from 1.0.162 to 1.0.163 (#2378)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.162 to 1.0.163.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.162...v1.0.163)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-12 14:12:12 -07:00
d0cd
d0c29ce8e0
[Update] snarkvm 0.11.0 (#2377)
* Remove gates from tests

* Remove Finalize test namespace

* Remove gates from examples

* Remove gates from compiler

* Regen expectations

* Add test that gates is allowed as a standard field of a record

* Update Rust version in CI

* Add check for MAX_MAPPINGS
2023-05-10 21:32:37 -07:00
dependabot[bot]
6a5e48c225
Bump serde from 1.0.160 to 1.0.162
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.160 to 1.0.162.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.160...1.0.162)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-05 10:57:56 +00:00
dependabot[bot]
a083bac720
Bump regex from 1.8.0 to 1.8.1
Bumps [regex](https://github.com/rust-lang/regex) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/commits/1.8.1)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 10:59:53 +00:00
dependabot[bot]
1a6b6a2eeb
Bump regex from 1.7.3 to 1.8.0
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.3 to 1.8.0.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/commits)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-21 10:57:59 +00:00
collin
85821b524e chore(leo): bump version for new release 2023-04-19 18:02:15 -07:00
Pranav Gaddamadugu
4b64fbe03a Fix error message 2023-04-18 17:22:59 -07:00
Pranav Gaddamadugu
98574495ff Update check 2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
6a660c4ceb Remove gates check 2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
581a671e31 Update maximum number of transitions 2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
a613f35c07 Check that finalize block does not return a value 2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
0b99135962 Update Mapping::get_or to Mapping::get_or_init 2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
76693533b0 Update code gen for Mapping::set 2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
e2749eebb9 Update snarkVM dep 2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
f9851e1b97 Add support for associated methods on mappings 2023-04-18 17:08:09 -07:00
Pranav Gaddamadugu
cff63e9918 Address feedback; remove leo-core 2023-04-18 17:08:09 -07:00
Pranav Gaddamadugu
7bef7c401f Regen expectations 2023-04-18 17:08:09 -07:00
Pranav Gaddamadugu
be3c58cf53 Update codegen 2023-04-18 16:59:32 -07:00
Pranav Gaddamadugu
1a129ac375 Add test framework for finalize contexts 2023-04-18 16:59:32 -07:00
Pranav Gaddamadugu
a0b00ac78c Update examples; fmt 2023-04-18 16:59:07 -07:00
Pranav Gaddamadugu
bb5c793bb3 Fix code gen 2023-04-18 16:53:27 -07:00
Pranav Gaddamadugu
8426f824ff Fix passes 2023-04-18 16:53:27 -07:00
Pranav Gaddamadugu
da7537344b Rename Mapping::put to Mapping::set 2023-04-18 16:37:45 -07:00
Pranav Gaddamadugu
aeab0c59ec Disallow records in finalize contexts 2023-04-18 16:37:45 -07:00
Pranav Gaddamadugu
d4eb6441d7 Enable warnings in compiler output 2023-04-18 16:37:45 -07:00
Pranav Gaddamadugu
37fe6f5bb1 Enable warnings for failing tests 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
ebe7f7ab00 DCE marks mapping core operations as necessary 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
4870b5badf Fix deprecation warning for increment/decrement statements 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
4f27c92f15 Remove Increment, Decrement statements from AST 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
4ee06d4342 Deprecate increment and decrement in language 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
30c9800e01 Check that mapping operations are invoked within a finalize block 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
15187edfcf Add codegen for core mapping ops 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
defb657e5a Implement tyc for mapping operations 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
10875c7edb Add core mapping functions to AST 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
34fb0d1815 Add tyc for core functions 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
d4230705e0 Remove CoreInstruction; leaving leo_core as a placeholder 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
0bc04791b6 Add CoreFunction to AST 2023-04-18 16:21:40 -07:00
Pranav Gaddamadugu
cbd0663fa7 Add comment 2023-04-12 17:41:54 -07:00
Collin Chin
68eabc38ae simplify logic 2023-04-12 15:52:10 -07:00
Collin Chin
09aa6ce63a fix dependency nits 2023-04-12 15:41:57 -07:00
Pranav Gaddamadugu
59f418f5d0 Fix issue in codegen 2023-04-12 12:38:44 -07:00
Pranav Gaddamadugu
64548699a9 Fmt 2023-04-12 12:38:43 -07:00
Pranav Gaddamadugu
98bbcacebb Update compiler test framework 2023-04-12 12:38:43 -07:00
Pranav Gaddamadugu
acc358bbb4 Update build config 2023-04-12 12:38:43 -07:00
Pranav Gaddamadugu
77ee8910a0 Refactor CompilerOptions 2023-04-12 12:38:43 -07:00
Pranav Gaddamadugu
d26a5f693d DCE eliminates expr statements that are not function calls 2023-04-12 12:38:43 -07:00
d0cd
c55ec9894e
Merge pull request #2347 from AleoHQ/fix/issue-2346
[Fix] Fixes variable renaming for inlined functions.
2023-04-12 12:27:54 -07:00
d0cd
d039543c47
Merge pull request #2344 from AleoHQ/fix/issue-2343
[Fix] Fix parsing for negative `scalar`, `field`, and `group` literals.
2023-04-12 08:47:49 -07:00
Pranav Gaddamadugu
e460ce1c8e Support negative group literals 2023-04-11 10:44:26 -07:00
Pranav Gaddamadugu
0f8838c870 Fix bug 2023-04-11 10:11:08 -07:00
dependabot[bot]
5ea92392e5
Bump serde from 1.0.159 to 1.0.160
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.159 to 1.0.160.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.159...v1.0.160)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-11 10:59:01 +00:00
Pranav Gaddamadugu
b193d511ca Update test and regen expectations 2023-04-09 19:58:08 -07:00
Pranav Gaddamadugu
9181b23347 Fix parser 2023-04-09 19:53:29 -07:00
Pranav Gaddamadugu
fd22fb9ec4 Fix bug 2023-04-05 09:13:37 -07:00
Pranav Gaddamadugu
2b010b6992 Update snarkVM to 0.9.15, aleo to 0.3.6 2023-03-31 19:50:35 -07:00
d0cd
c74772cfac
Merge pull request #2328 from AleoHQ/fix/issue-2324
[Fix] Fixes unwrapping panic when unwrapping `lookup_struct` in `ProgramVisitor::visit_function`
2023-03-31 16:06:51 -07:00
d0cd
5cc6a06e2d
Merge pull request #2329 from AleoHQ/fix/issue-2325
[Fix] Panic: called Option::unwrap() on a Err value (Literal::Integer to Value)
2023-03-31 16:05:33 -07:00
d0cd
3aba61a1c8
Merge pull request #2332 from AleoHQ/dependabot/cargo/testnet3/tempfile-3.5.0
Bump tempfile from 3.4.0 to 3.5.0
2023-03-31 10:03:58 -07:00
d0cd
9934d329f9
Merge pull request #2330 from AleoHQ/dependabot/cargo/testnet3/serde-1.0.159
Bump serde from 1.0.158 to 1.0.159
2023-03-31 10:03:33 -07:00
Pranav Gaddamadugu
61cf227f58 Fmt 2023-03-31 10:02:33 -07:00
d0cd
8996002055
Merge pull request #2326 from AleoHQ/dependabot/cargo/testnet3/regex-1.7.3
Bump regex from 1.7.2 to 1.7.3
2023-03-31 10:00:50 -07:00
Pranav Gaddamadugu
2646b7b28b Fix bug 2023-03-31 09:58:25 -07:00
Pranav Gaddamadugu
e3ce9c785a Address feedback 2023-03-31 09:54:57 -07:00
dependabot[bot]
08c203103f
Bump tempfile from 3.4.0 to 3.5.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/Stebalien/tempfile/releases)
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/NEWS)
- [Commits](https://github.com/Stebalien/tempfile/commits)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-29 11:00:43 +00:00
dependabot[bot]
c88dceb565
Bump serde from 1.0.158 to 1.0.159
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.158 to 1.0.159.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.158...v1.0.159)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-28 11:00:03 +00:00
Pranav Gaddamadugu
ee3e225f92 Fix bug 2023-03-27 10:09:12 -07:00
dependabot[bot]
bce4755dac
Bump regex from 1.7.2 to 1.7.3
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.7.2...1.7.3)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-27 11:01:02 +00:00
Pranav Gaddamadugu
8adc6c76b8 Fmts and clippies 2023-03-26 23:18:03 -07:00
dependabot[bot]
ef2c730410
Bump regex from 1.7.1 to 1.7.2
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.1 to 1.7.2.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.7.1...1.7.2)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-22 11:00:44 +00:00