Skip to content

Commit

Permalink
Version Packages
Browse files Browse the repository at this point in the history
  • Loading branch information
PJColombo committed Sep 4, 2022
1 parent 3a12afb commit 30280e7
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 39 deletions.
37 changes: 0 additions & 37 deletions .changeset/curvy-maps-search.md

This file was deleted.

2 changes: 1 addition & 1 deletion packages/evmcrispr-terminal/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"version": "0.2.0",
"private": true,
"dependencies": {
"@1hive/evmcrispr": "0.6.0",
"@1hive/evmcrispr": "0.7.0",
"@chakra-ui/react": "^1.8.8",
"@emotion/react": "^11",
"@emotion/styled": "^11",
Expand Down
39 changes: 39 additions & 0 deletions packages/evmcrispr/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# @1hive/evmcrispr

## 0.7.0

### Minor Changes

- 05b03b6: This version comprises a complete refactoring, restructuring and abstraction of the library and the formalization of the evmcl language (now call cas11) by applying computer programming theory concepts.

The functionality (commands and helpers) has been move to separated modules and the library is now a set of composable parsers that scan the cas11 scripts producing an AST (Abstract Syntax Tree) structure which is later processed by an interpreter (the evmcrispr).

## New features

- New `switch <network name or id>` command that allows you to dynamically switch the chain at any point of the script.

- New `load <module> [as <alias>]` command that allows you import modules containing a set of commands and helpers. At the moment there are two modules:

- `std`: core module which is not required to import. It contains the following:
- Commands: `load`, `exec`, `set` and `switch`.
- Helpers: `@date`, `@get`, `@id`, `@ipfs`, `@me`, `@token` and `@token.balance`.

- `aragonos`: aragon module which contains the following:
- Commands: `act`, `connect`, `forward`, `grant`, `install`, `new-dao`, `new-token`, `revoke` and `upgrade`.
- Helpers: `@aragonEns`.

- New read-only method call operator `<contractAddress>::<method>(<args>)`. It also supports chainable calls. Example: `token-manager::token()::decimals()`.

- `@calc()` helper has been deprecated in favor of native arithmetic expression operations that supports priority parenthesis. Example: `set $var1 (@token.balance(DAI, @me) * (5 - myContract::aMethodReturningNumber()))`.

* Complete support of nested expression structures (e.g. arrays, block command expressions, call expressions, helper expressions, etc).

* Support to recursive `connect` commands that allows you to define DAO-to-DAO operations scripts and have access to different organizations apps inside a scope.

* The `forward` command is back. It allows you to customize the forward path by not having to define it in the `connect` command. This can be helpful when creating scripts that will be send through a forwarding path compose of apps from different DAOs.

* Option arguments can now be used in-between commands. Example `my-command --anOpt 1e18 anotherArg --anotherOpt 1e18 anotherArg`.

* Improved and enhanced error handling logic that displays the location (line and column number) and type of the failed expression along with the error message.

* Error recovering logic implemented: parsers scan the whole script looking for the maximum amount of errors possible.
2 changes: 1 addition & 1 deletion packages/evmcrispr/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@1hive/evmcrispr",
"version": "0.6.0",
"version": "0.7.0",
"codename": "branchy syntax",
"license": "GPL-3.0",
"description": "A library that encapsulates actions in EVM scripts for DAOs",
Expand Down

0 comments on commit 30280e7

Please sign in to comment.