bcd4beb5e7
Make explicit the validity of the empty set in MerkleProof.sol ( #5142 )
2024-08-07 09:34:02 -06:00
24a641d9c9
Get leaves from memory in processMultiProofCalldata ( #5140 )
2024-08-03 00:00:26 +02:00
e3786e63e6
Fix natspec comment missing * ( #5136 )
2024-07-31 20:18:27 +02:00
9d6a0cc7e9
Fix documentation of private function _upperLookupBinary in Checkpoints.sol ( #5128 )
...
Co-authored-by: cairo <cairoeth@protonmail.com >
2024-07-29 18:58:02 +02:00
659f3063f8
Fix typo in Heap.sol documentation ( #5121 )
2024-07-24 10:32:55 +02:00
231fae33f0
Add Binary heap structure ( #5084 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
Co-authored-by: cairo <cairoeth@protonmail.com >
2024-07-23 11:31:26 -06:00
9e73c4b581
Typographic error in Math.sol comment fix ( #5115 )
2024-07-22 22:09:13 -06:00
19a657bef8
Protect Packing.pack and Packing.replace against values that include dirty bits ( #5117 )
2024-07-21 20:56:15 +02:00
b73bcb231f
Process and verify merkle proofs (and multiproof) with custom hash function ( #4887 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-07-15 18:08:58 +02:00
05f218fb66
Implement P256 verification via RIP-7212 precompile with Solidity fallback ( #4881 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
Co-authored-by: cairo <cairoeth@protonmail.com >
Co-authored-by: sudo rm -rf --no-preserve-root / <pcaversaccio@users.noreply.github.com >
2024-07-03 09:17:46 +02:00
c3f8b760ad
Fix docs links to ERC165 ( #5096 )
2024-06-21 16:02:42 -06:00
8a990e6d6a
Avoid storing hashing function pointers in storage make MerkleTree structure upgrade-safe ( #5080 )
...
Co-authored-by: cairo <cairoeth@protonmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-06-13 14:50:10 +02:00
53b5d84212
Add bytes6 to the Packing library. ( #5077 )
2024-06-12 16:23:35 -06:00
dc62599257
Extended packing and extracting library for value types ( #5056 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-06-11 12:07:00 -06:00
d8e799db98
Implement RSA verification ( #4952 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
Co-authored-by: cairo <cairoeth@protonmail.com >
2024-06-11 11:16:30 -06:00
337bfd5ea4
Add utility function for converting an address to checksummed string ( #5067 )
2024-06-04 21:43:14 +02:00
a241f09905
Use free memory pointer for returndatacopy ( #5057 )
2024-05-27 21:29:07 +02:00
984233dcad
Bubble up returndata from reverted Create2 deployments ( #5052 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-05-27 12:45:32 +02:00
05d4bf57ff
Fix Typo in Math.sol ( #5033 )
2024-05-13 09:33:47 -06:00
c80b675b8d
Add CircularBuffer data structure ( #4913 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-04-26 10:28:59 -06:00
60697cb09a
Fix typo in Math.ternary ( #5026 )
...
Signed-off-by: snoppy <michaleli@foxmail.com >
2024-04-25 12:04:34 -06:00
4032b42694
Branchless ternary, min and max methods ( #4976 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-04-23 14:08:08 +02:00
f8c2e1035e
Add Packing library ( #4992 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-04-05 14:59:18 +02:00
b6e07917eb
Transient version of ReentrancyGuard ( #4988 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-04-04 14:33:30 -06:00
d6ad9db0a0
Add transient storage slot support in StorageSlot.sol ( #4980 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-04-04 01:15:30 +02:00
cb2aaaa04a
Add slot derivation library ( #4975 )
2024-03-27 21:17:46 +00:00
5e3ba29b08
Procedurally generate Arrays.sol ( #4859 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2024-03-27 13:17:19 +00:00
d398d68944
Mask computed address in Create2 and Clones libraries ( #4941 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2024-03-25 14:33:45 +00:00
33ea1111b0
Avoid validating ECDSA signatures for addresses with code in SignatureChecker ( #4951 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-03-14 16:27:15 +00:00
6b4ec6c6c6
Remove root from MerkleTree ( #4949 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2024-03-12 10:30:54 -06:00
8cc7f2dcbf
Remove repetitive words in the docs ( #4944 )
...
Signed-off-by: cuinix <915115094@qq.com >
2024-03-08 13:17:53 +01:00
92ff025622
Add a MerkleTree builder ( #3617 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-03-07 16:27:38 +01:00
e83142944f
Add ability to create clones with initial value in Clones.sol ( #4936 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-03-06 13:44:42 -06:00
5705e8208b
Merge release-v5.0 branch ( #4930 )
2024-02-29 13:48:02 -06:00
92224533b1
Merge pull request from GHSA-9vx6-7xxf-x967
...
* add tests for the encode reads dirty data issue
* Fix the encode reads dirty data issue
* add changeset
* trigger the issue without assembly
* rename mock
* gas optimization
* Apply suggestions from code review
Co-authored-by: Ernesto García <ernestognw@gmail.com >
* alternative fix: cheaper
* update comment
* fix lint
---------
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-02-29 10:03:32 -06:00
141c947921
Update chai matchers ( #4899 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-02-19 19:27:39 +01:00
3def8f9d15
Rewrite comments using superscript for avoid confusion with xor operator ( #4903 )
2024-02-16 16:06:07 +00:00
140d66fad8
Improved integer square root ( #4403 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-02-16 09:56:29 -06:00
4e7e6e54da
Add bytes memory version of Math.modExp ( #4893 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2024-02-14 10:06:34 +01:00
f8b1ddf591
Add variants of Array.sort for address[] and bytes32[] ( #4883 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-02-12 16:34:07 +00:00
17a8955cd8
Optimize Math operations using branchless bool to uint translation. ( #4878 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-02-07 10:20:25 +01:00
0a757ec463
Add sort in memory to Arrays library ( #4846 )
...
Co-authored-by: RenanSouza2 <renan.rodrigues.souza1@gmail.com >
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-02-06 20:49:12 +00:00
036c3cbef2
Replace custom errors with native panic codes in DoubleEndedQueue ( #4872 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-02-06 21:02:01 +01:00
192e873fcb
Add Math.modExp and a Panic library ( #3298 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-02-02 18:40:00 +01:00
61117c4db8
Bound lookup in arrays with duplicate ( #4842 )
...
Co-authored-by: RenanSouza2 <renan.rodrigues.souza1@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-01-29 20:44:33 +01:00
e86bb45477
Add a Math.inv function that inverse a number in Z/nZ ( #4839 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-01-24 09:57:24 +01:00
a51f1e1354
List every contract in each API doc section ( #4848 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2024-01-23 09:55:09 -06:00
a5c4cd8182
Add new EnumerableMap types ( #4843 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-01-22 19:25:01 +00:00
dfae50fa5b
Refactor abs without logical branching ( #4497 )
...
Co-authored-by: Francisco Giordano <fg@frang.io >
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-01-18 20:22:47 +00:00
d2ba1f6251
Remove redundant memory usage in Checkpoints ( #4540 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-01-17 10:51:36 +01:00