Skip to content

Releases: CMTA/RuleEngine

v2.0.4

16 Dec 08:39
53e12a6
Compare
Choose a tag to compare
  • Fix a bug present in the Conditional Transfer rule and the corresponding test.
  • Config file:
    Set Solidity version to 0.8.27 in config file
    Set EVM version to Cancun
  • Add events for the following rules : whitelist/blacklist and sanctionList rules
  • Some improvements in testing
    Integration test with CMTAT: set the CMTAT version to v2.5.1
  • Access control: The default admin has by default all the roles for the RuleEngine and the different rules

git clone https://github.com/CMTA/RuleEngine
git checkout v2.0.4
forge install
forge build
cd lib/CMTAT
npm install

v2.0.3

10 Sep 07:21
9a35496
Compare
Choose a tag to compare
  • Small optimization in WhitelistWrapper; add a break in a loop
  • Set Solidity version to 0.8.26 in config file
  • Add constant VERSION

The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout v2.0.3
forge install
forge build

v2.0.2

17 Jun 09:49
24f69f7
Compare
Choose a tag to compare
  • Create abstract contract ruleWhitelistCommon to contain code shared between ruleWhitelist & ruleWhitelistWrapper
  • Split ADDRESS_LIST_ROLE in two distinct roles : ADDRESS_LIST_ADD_ROLE && ADDRESS_LIST_REMOVE_ROLE

The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout v2.0.2
forge install
forge build

v2.0.1

11 Jun 08:49
061f26c
Compare
Choose a tag to compare

Add a new rule WhitelistWrapper
This rule can be used to restrict transfers from/to only addresses inside a group of whitelist rules managed by different operators.

`The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout v2.0.1
forge install
forge build

v2.0.0

15 May 12:17
a5516c9
Compare
Choose a tag to compare
  • Implement the new architecture for the RuleEngine, with ValidationRule and OperationRule
  • Add the rule ConditionalTransfer as an Operation rule
  • Add the rule Blacklist as a Validation rule
  • Whitelist and blacklist rules share a part of their code.
  • Upgrade the library CMTAT to the version v2.4.0
  • Fix a minor bug when rules are deleted with clearRules

The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout v2.0.0
forge install
forge build

v1.0.2.1

06 May 08:02
8315b54
Compare
Choose a tag to compare
v1.0.2.1 Pre-release
Pre-release

The release v1.0.2 contains a minor bug:

When using setRules and clearRules, the rules currently present in the array are not set to "False" in the map.

As a result, a removed rule can not be added again since we use the map to check if a rule is already present

The release v1.0.2.1 fixes that by setting the removed rules to "False" in the map.

This bug doesn't affect how the RuleEngine works with the CMTAT, since in this case, only the array is used.

This patch is not audited. If you think that it is not a issue for your usage, you should prefer the use of the version 1.0.2 which is audited.

v1.0.3

22 Nov 15:49
ddaaaae
Compare
Choose a tag to compare
  • Upgrade the library CMTAT to the vesion v2.3.1
  • Use custom errors instead of revert message
  • Add the rule SanctionList
  • Upgrade OpenZeppelin to the version v5.0.0
  • Add github workflow with Foundry
The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout v1.0.3
forge install
forge build

v1.0.2

09 Jun 13:10
85ba3da
Compare
Choose a tag to compare

This release contains a minor bug, described here: v1.0.2.1

The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout v1.0.2
forge install
forge build
  • Set optimizer run to 200
  • Update the documentation

1.0.2-rc.0

23 May 13:21
53d1ffd
Compare
Choose a tag to compare
1.0.2-rc.0 Pre-release
Pre-release

The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout 1.0.2-Beta
forge install

The release 1.0.2 contains mainly the different fixes and improvements related to the audit performed on the version 1.0.1.

Documentation

  • Update the documentation for the release
  • Add slither report
  • Install hardhat in order to generic docgen documentation

General modifications

  • Upgrade the library CMTAT to the latest version 2.3-Beta (pull/28)
    • In RuleEngine, ruleLength is changed to rulesCount()
  • Add the gasless suport / MetaTx module (pull/27)
  • RuleWhitelist: update RuleWhitelist to use code from IEIP1404Wrapper (pull/29)

Audit report

This version also includes improvements suggested by the audit report, addressing the following findings:

General

  • CVF-10: use a floating pragma for the version (pull/25)
  • CVF2, CVF-6: remove the function kill for the contracts RuleEngine and Whitelist (pull/17)

RuleEngine

  • CVF-1 / removeRule: add an additional argument with the rule index hint (pull/23)
  • CVF-7, CVF-8, CVF-9: check for duplicate rule (pull/20)

Whitelist

  • CVF-3: use a local variable for iterate inside a loop (pull/18/)
  • CVF-4, CVF-5: remove useless conditional statement (pull/19/)
  • CVF-15, CVF-16, CVF-17: improve readibility (pull/24)

1.0.1

22 Jan 17:21
7b76518
Compare
Choose a tag to compare

1.0.1 - 20230122

Installation
The release does not include the .git folder, which does not allow installing dependencies.
The easiest solution is to clone the project and perform a git checkout on the version tag

git clone https://github.com/CMTA/RuleEngine
git checkout 1.0.1
forge install