Skip to content

Release v2.0.1#189

Merged
smol-ninja merged 117 commits intoreleasefrom
main
Oct 15, 2025
Merged

Release v2.0.1#189
smol-ninja merged 117 commits intoreleasefrom
main

Conversation

@smol-ninja
Copy link
Member

No description provided.

andreivladbrg and others added 30 commits January 31, 2025 17:35
* test: use mainnet address in fork testing

* script: remove virtual modifier from run script

* build: ignore fork tests for non optimized profiles
test(fork): initialize default contract in fork setup
test(fork): use deployed factory admin

* test: load factoryAdmin in Fork setUp

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>

---------

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
* refactor: separate out parameters struct for Merkle Instant and Merkle Lockups
refactor: refactor shape and camapign name as bytes32 in Merkle campaign constructor arguments

* chore: contract inheritance

* test: deploy factory locally for fork tests

* refactor: create param struct for merkle contracts

* refactor: rename CreateParams to ConstructorParams

refactor: remove aggregateAmount and recipientCount from ConstructorParams

* refactor: say params instead of constructorParams

docs: add natspec for missing params

---------

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
* refactor: rename defaultFee to minimumFee

* chore: polish events and comments

Co-authored-by: Paul Razvan Berg <paul.razvan.berg@gmail.com>

---------

Co-authored-by: Paul Razvan Berg <paul.razvan.berg@gmail.com>
* feat: MerkleVCA contract

refactor: separate out parameters struct for Merkle Instant and Merkle Lockups
refactor: refactor shape and camapign name as bytes32 in Merkle campaign constructor arguments

chore: contract inheritance

test: deploy factory locally for fork tests

feat: merkle vca contract

feat: add CreateMerkleVCA run script
refactor: rename schedule to _vestingSchedule in MerkleVCA
feat: add SablierMerkleVCA in prepare-artifacts bash script
refactor: replace internal variables with private in non-abstract contracts

refactor: 7 days claim window post vesting unlock
fix: set sacrificedAmount to 0 in refundSacrificedAmount function
refactor: error name

feat: revert claim if vesting start time is in future
feat: revert createMerkleVCA if either of vesting times is zero

test: integration tests for createMerkleVCA

fix: calculate claimable amount only if blocktime is in the vesting range
test: add merkleVCA integration tests

test: integration tests

test: fork tests for merkleVCA

test: remove Vars struct from merkle instant contructor test

refactore: rename sacrifiedAmount to forgoneAmount

* chore: use minimum fee

* refactor: move input checks to merkleVCA constructor

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>

* refactor: pre declare the blockTimestamp in _claim

chore: use named args in transfer function
chore: correct prepare artifacts interface

* andrei's feedback

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>

* feat: revert vca if expiry is zero

* docs: explanatory comment about cast

test: rename dir to tokens
small polishes

* test: fix fork tests

* docs: correct notice natspec

---------

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
* refactor: add multiple factories

refactor: update deployment scripts to deploy all factories

feat: add initial minimumfee in factories

test: update tests accordingly

test: fix fork setUp

* build: update prepare artifacts script

* chore: remove ISablierMerkleFactory
docs: add natspecs over SablierMerkleFactoryBase
test: remove redundant lines from Base test
chore: use Merkle Factory contracts instead of Merkle Factories contracts
chore: remove redundant imports
test(fork): load factory admin in individual contracts
test(integration): add missing SetMinimumFee_Integration_Test tests
test(integration): use non-default fee value in SetMinimumFee_Integration_Test tests

---------

Co-authored-by: smol-ninja <shubhamy2015@gmail.com>
* test(refactor): move all constants into CONSTANT contract

test: remove redundant functions from Defaults

test: remove Defaults contract

fix bugs

* test: move functions from Integration to Base

test: rename function params with "_"

* test: revert param names with underscore

---------

Co-authored-by: andreivladbrg <andreivladbrg@gmail.com>
* feat: get stream ids associated with airdrop claim

rename claimedStreamIds to claimedStreams

* docs: use CEI terminology in explanatory comments

---------

Co-authored-by: andreivladbrg <andreivladbrg@gmail.com>
* refactor: integrate evm-utils and bump lockup version

* test: change JULY_1_2024 to FEB_1_2025

test: remove unneeded deployment of mocks
test: import only StdCheats

---------

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
docs: added badge and twitter link
* feat: implement chainlink oracle

refactor: change the minimum fee to USD price instead of wei

build: set ffi true
test: add a python script to fetch prices
test: add fork tests for the price feeds
test: add a mock price feed contract
test: add a contract to store the addresses

test: update tests accordingly

* test: rename price feed testing contract

* feat: implement setMinimumFeeToZero function

* feat: check if the chainlink price feed return zero price

test: update tests accordingly

* build: use public rpc for all chain expect mainnet and sepolia

test: remove python script
test: fork chains at specific block numbers

* ci: remove python step

* build: remove zksync rpc

* remove unneeded function

* refactor: rename event

* test: add calculate minimum fee in wei tests

* feat: add maximum fee in factory

* test: fix failing tests

* various fixes and polishes

* remove additional space

* refactor: rename price feed to oracle

refactor: remove price check in _setOracle
refactor: rename params

* fix bulloak check

* refactor: change setMinimumFeeToZero to lowerMinimumFee

* feat: add oracle address in the create events

* perf: cover cases when oracle decimals are not 8

refactor: remove tests and move contract to scripts
refactor: remove initial minimum fee contract

* remove redundant import

* shub feedback

Co-authored-by: smol-ninja <shubhamy2015@gmail.com>

* polish comments

* refactor: rename function

* polish docs

---------

Co-authored-by: smol-ninja <shubhamy2015@gmail.com>
* feat: transfer tokens to recipient if claim time exceeds vesting endtime in merkle lockup
docs: add notes in claim natspecs
feat: add a new Claim event in merkle lockup interface
test: fuzz start time in merkle lockup
test: use ranged streams as default streams for integration tests

perf: use schedule in memory
docs: polish natspecs

test(fork): assertEq for expected lockup stream

test(fork): move hasClaimed assert outside if block
test(claim): re order tree branches
test: don't use variable names in tree branches
chore: set max-line-length rule to 128

test: polish comment

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>

* bump lockup

---------

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
* short circuit for 2 if conditions

* script: refactor scripts

* tests: refactor chainlink PR tests

* revert some changes

* script: add initialMinimumFee in Base script
test: add BaseScript_Test
test: revert changes in create script

* refactor test name

* move campaignType back to minimumFeeInWei.t.sol

* andrei's suggestion about resetCustomFee.t.sol

* use assertNotEq in resetCustomFee

* use assertNotEq in setCustomFee

* test: revert multichain fork tests removal

chore: rename file
docs: improve explanatory comments

* test: say chainlink oracle instead of price feed

* tests: polish chainlink oracle tests

---------

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
build: use public rpc
test: move base contracts in Base_Test
test: implement Merkle_Fork_Test and move common logic
* docs: refactor SECURITY doc

* docs: smol polish

---------

Co-authored-by: Paul Razvan Berg <prberg@proton.me>
smol-ninja and others added 27 commits July 15, 2025 15:38
* feat: add validity start time for claim signature

* test: polish

* test: add VALID_FROM constant

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>

---------

Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
* feat: getter in factory

test: the new getter

* refactor: move checks from constructor to factory

feat: add compute functions for LL and Instant

* fix: error name

* chore: polish comments

* bring back variable in LT event

rename check function

* refactor: rename _calculateTotalPercentage to _calculateTrancheTotals
perf: calculate totalDuration inside _calculateTrancheTotals

---------

Co-authored-by: smol-ninja <shubhamy2015@gmail.com>
* docs: update ens subname in license

* chore: use plural for ens subname
* build: bump solhint

* test: fix lockup deployment
script: fix target dirs in prepare-artifacts
* build: bump evm-utils for deployments

* use npm package
build: update supported chains
build: update package version
* build: update bun lockfile

* script(solidity): add factory as run input and update token address
test(fork): use deployed addresses

* ci: add routemesh variable
chore: update routemesh url

* fix fork test

* test(fork): add lockup v3.0 address
docs: update forge install comands
Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
* bump version to 2.0.1

* build: bump lockup dep
@smol-ninja smol-ninja merged commit 077c6b9 into release Oct 15, 2025
24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants