Skip to content

Commit

Permalink
Add introduction tag for v5.1 contracts (#5228)
Browse files Browse the repository at this point in the history
Co-authored-by: Ernesto García <ernestognw@gmail.com>
  • Loading branch information
cairoeth and ernestognw authored Sep 27, 2024
1 parent ae753b7 commit cceac54
Show file tree
Hide file tree
Showing 19 changed files with 41 additions and 0 deletions.
2 changes: 2 additions & 0 deletions contracts/finance/VestingWalletCliff.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 *;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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 *;
Expand Down
2 changes: 2 additions & 0 deletions contracts/token/ERC1155/utils/ERC1155Utils.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
/**
Expand Down
2 changes: 2 additions & 0 deletions contracts/token/ERC20/extensions/ERC1363.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
2 changes: 2 additions & 0 deletions contracts/token/ERC721/utils/ERC721Utils.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
/**
Expand Down
5 changes: 5 additions & 0 deletions contracts/utils/Comparators.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/Errors.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
/**
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/Packing.sol
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ pragma solidity ^0.8.20;
* }
* }
* ```
*
* _Available since v5.1._
*/
// solhint-disable func-name-mixedcase
library Packing {
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/Panic.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/ReentrancyGuardTransient.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 *;
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/SlotDerivation.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
/**
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/cryptography/Hashes.sol
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ pragma solidity ^0.8.20;

/**
* @dev Library of standard hash functions.
*
* _Available since v5.1._
*/
library Hashes {
/**
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/cryptography/P256.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/cryptography/RSA.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
/**
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/structs/CircularBuffer.sol
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ import {Panic} from "../Panic.sol";
* CircularBuffer.Bytes32CircularBuffer private myBuffer;
* }
* ```
*
* _Available since v5.1._
*/
library CircularBuffer {
/**
Expand Down
2 changes: 2 additions & 0 deletions contracts/utils/structs/Heap.sol
Original file line number Diff line number Diff line change
Expand Up @@ -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 *;
Expand Down
2 changes: 2 additions & 0 deletions scripts/generate/templates/Packing.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ pragma solidity ^0.8.20;
* }
* }
* \`\`\`
*
* _Available since v5.1._
*/
// solhint-disable func-name-mixedcase
`;
Expand Down
2 changes: 2 additions & 0 deletions scripts/generate/templates/SlotDerivation.js
Original file line number Diff line number Diff line change
Expand Up @@ -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._
*/
`;

Expand Down

0 comments on commit cceac54

Please sign in to comment.