Add introduction tag for v5.1 contracts (#5228)

Co-authored-by: Ernesto García <ernestognw@gmail.com>
pull/5232/head
cairo 4 months ago committed by GitHub
parent ae753b7eac
commit cceac54953
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      contracts/finance/VestingWalletCliff.sol
  2. 2
      contracts/governance/extensions/GovernorCountingFractional.sol
  3. 2
      contracts/token/ERC1155/utils/ERC1155Utils.sol
  4. 2
      contracts/token/ERC20/extensions/ERC1363.sol
  5. 2
      contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol
  6. 2
      contracts/token/ERC721/utils/ERC721Utils.sol
  7. 5
      contracts/utils/Comparators.sol
  8. 2
      contracts/utils/Errors.sol
  9. 2
      contracts/utils/Packing.sol
  10. 2
      contracts/utils/Panic.sol
  11. 2
      contracts/utils/ReentrancyGuardTransient.sol
  12. 2
      contracts/utils/SlotDerivation.sol
  13. 2
      contracts/utils/cryptography/Hashes.sol
  14. 2
      contracts/utils/cryptography/P256.sol
  15. 2
      contracts/utils/cryptography/RSA.sol
  16. 2
      contracts/utils/structs/CircularBuffer.sol
  17. 2
      contracts/utils/structs/Heap.sol
  18. 2
      scripts/generate/templates/Packing.js
  19. 2
      scripts/generate/templates/SlotDerivation.js

@ -7,6 +7,8 @@ import {VestingWallet} from "./VestingWallet.sol";
/**
* @dev Extension of {VestingWallet} that adds a cliff to the vesting schedule.
*
* _Available since v5.1._
*/
abstract contract VestingWalletCliff is VestingWallet {
using SafeCast for *;

@ -27,6 +27,8 @@ import {Math} from "../../utils/math/Math.sol";
* * Voting privately from a shielded pool using zero knowledge proofs.
*
* Based on ScopeLift's GovernorCountingFractional[https://github.com/ScopeLift/flexible-voting/blob/e5de2efd1368387b840931f19f3c184c85842761/src/GovernorCountingFractional.sol]
*
* _Available since v5.1._
*/
abstract contract GovernorCountingFractional is Governor {
using Math for *;

@ -9,6 +9,8 @@ import {IERC1155Errors} from "../../../interfaces/draft-IERC6093.sol";
* @dev Library that provide common ERC-1155 utility functions.
*
* See https://eips.ethereum.org/EIPS/eip-1155[ERC-1155].
*
* _Available since v5.1._
*/
library ERC1155Utils {
/**

@ -12,6 +12,8 @@ import {ERC1363Utils} from "../utils/ERC1363Utils.sol";
* @dev Extension of {ERC20} tokens that adds support for code execution after transfers and approvals
* on recipient contracts. Calls after transfers are enabled through the {ERC1363-transferAndCall} and
* {ERC1363-transferFromAndCall} methods while calls after approvals can be made with {ERC1363-approveAndCall}
*
* _Available since v5.1._
*/
abstract contract ERC1363 is ERC20, ERC165, IERC1363 {
/**

@ -12,6 +12,8 @@ import {StorageSlot} from "../../../utils/StorageSlot.sol";
* @dev Extension of {ERC20} that adds support for temporary allowances following ERC-7674.
*
* WARNING: This is a draft contract. The corresponding ERC is still subject to changes.
*
* _Available since v5.1._
*/
abstract contract ERC20TemporaryApproval is ERC20, IERC7674 {
using SlotDerivation for bytes32;

@ -9,6 +9,8 @@ import {IERC721Errors} from "../../../interfaces/draft-IERC6093.sol";
* @dev Library that provide common ERC-721 utility functions.
*
* See https://eips.ethereum.org/EIPS/eip-721[ERC-721].
*
* _Available since v5.1._
*/
library ERC721Utils {
/**

@ -2,6 +2,11 @@
pragma solidity ^0.8.20;
/**
* @dev Provides a set of functions to compare values.
*
* _Available since v5.1._
*/
library Comparators {
function lt(uint256 a, uint256 b) internal pure returns (bool) {
return a < b;

@ -7,6 +7,8 @@ pragma solidity ^0.8.20;
*
* IMPORTANT: Backwards compatibility is not guaranteed in future versions of the library.
* It is recommended to avoid relying on the error API for critical functionality.
*
* _Available since v5.1._
*/
library Errors {
/**

@ -28,6 +28,8 @@ pragma solidity ^0.8.20;
* }
* }
* ```
*
* _Available since v5.1._
*/
// solhint-disable func-name-mixedcase
library Packing {

@ -18,6 +18,8 @@ pragma solidity ^0.8.20;
* ```
*
* Follows the list from https://github.com/ethereum/solidity/blob/v0.8.24/libsolutil/ErrorCodes.h[libsolutil].
*
* _Available since v5.1._
*/
// slither-disable-next-line unused-state
library Panic {

@ -8,6 +8,8 @@ import {StorageSlot} from "./StorageSlot.sol";
* @dev Variant of {ReentrancyGuard} that uses transient storage.
*
* NOTE: This variant only works on networks where EIP-1153 is available.
*
* _Available since v5.1._
*/
abstract contract ReentrancyGuardTransient {
using StorageSlot for *;

@ -34,6 +34,8 @@ pragma solidity ^0.8.20;
*
* NOTE: This library provides a way to manipulate storage locations in a non-standard way. Tooling for checking
* upgrade safety will ignore the slots accessed through this library.
*
* _Available since v5.1._
*/
library SlotDerivation {
/**

@ -4,6 +4,8 @@ pragma solidity ^0.8.20;
/**
* @dev Library of standard hash functions.
*
* _Available since v5.1._
*/
library Hashes {
/**

@ -14,6 +14,8 @@ import {Errors} from "../Errors.sol";
* Based on the original https://github.com/itsobvioustech/aa-passkeys-wallet/blob/d3d423f28a4d8dfcb203c7fa0c47f42592a7378e/src/Secp256r1.sol[implementation of itsobvioustech] (GNU General Public License v3.0).
* Heavily inspired in https://github.com/maxrobot/elliptic-solidity/blob/c4bb1b6e8ae89534d8db3a6b3a6b52219100520f/contracts/Secp256r1.sol[maxrobot] and
* https://github.com/tdrerup/elliptic-curve-solidity/blob/59a9c25957d4d190eff53b6610731d81a077a15e/contracts/curves/EllipticCurve.sol[tdrerup] implementations.
*
* _Available since v5.1._
*/
library P256 {
struct JPoint {

@ -11,6 +11,8 @@ import {Math} from "../math/Math.sol";
* RSA semantically secure for signing messages.
*
* Inspired by https://github.com/adria0/SolRsaVerify/blob/79c6182cabb9102ea69d4a2e996816091d5f1cd1[Adrià Massanet's work] (GNU General Public License v3.0).
*
* _Available since v5.1._
*/
library RSA {
/**

@ -34,6 +34,8 @@ import {Panic} from "../Panic.sol";
* CircularBuffer.Bytes32CircularBuffer private myBuffer;
* }
* ```
*
* _Available since v5.1._
*/
library CircularBuffer {
/**

@ -33,6 +33,8 @@ import {StorageSlot} from "../StorageSlot.sol";
* IMPORTANT: This library allows for the use of custom comparator functions. Given that manipulating
* memory can lead to unexpected behavior. Consider verifying that the comparator does not manipulate
* the Heap's state directly and that it follows the Solidity memory safety rules.
*
* _Available since v5.1._
*/
library Heap {
using Arrays for *;

@ -32,6 +32,8 @@ pragma solidity ^0.8.20;
* }
* }
* \`\`\`
*
* _Available since v5.1._
*/
// solhint-disable func-name-mixedcase
`;

@ -36,6 +36,8 @@ pragma solidity ^0.8.20;
*
* NOTE: This library provides a way to manipulate storage locations in a non-standard way. Tooling for checking
* upgrade safety will ignore the slots accessed through this library.
*
* _Available since v5.1._
*/
`;

Loading…
Cancel
Save