0x protocol monorepo - includes our smart contracts and many developer tools
gas
is not provided. (#2343)BaseContract
helpers to reduce size. (#2343)erc20Proxy
, erc721Proxy
and dutchAuction
wrappers (#2324)validator
argument to contract method classes for methods that don't have any inputs (#2345)internalType
field in the ABI, if it's present, resulting in human readable struct names rather than hashes of component field names. (#2345)erc20Proxy
, multiAssetProxy
, erc1155Proxy
, staticCallProxy
, erc721Proxy
, assetProxyOwner
, ZRXToken
and dutchAuction
wrappers (#2324)ZrxVault
and ERC20BridgeProxy
artifacts (#2323)erc20Proxy
, erc721Proxy
and dutchAuction
wrappers (#2324)ContractFunctionObj
and ContractTxFunctionObj
(#2325)Staking
and ERC20BridgeProxy
contracts (#2323)OrderStateUtils
, OrderValidationUtils
, ExchangeTransferSimulator
and all abstract and store classes. For order validation, please use the DevUtils
contract wrapper method getOrderRelevantState
|getOrderRelevantStates
(#2324)shouldSaveStandardInput
config (#2322)SendTransactionOpts
and AwaitTransactionSuccessOpts
types and move them to @0x/base-contracts (#2325)Parity
revert errors (#2341)marketBuyOrdersNoThrow()
so marketBuyOrdersFillOrKill()
doesn't throw up. (#2338)getSelector
method to all functions (#2224)getABIDecodedTransactionData
and getABIDecodedReturnData
(#2243)getABIEncodedTransactionData
for constant functions (pure and view) (#2243)sendTransactionAsync
and awaitTransactionSuccessAsync
. Replaces timeoutMs
and pollingIntervalMs
arguments for awaitTransactionSuccessAsync
(#2243)validateAndSendTransactionAsync
. Replaced with shouldValidate
key in TxOpts. Defaults to true (#2243)evmExecAsync
protected and rename to _evmExecAsync
(#2243)IndexedFilterValues
, DecodedLogEvent
, EventCallback
(#2243)TransferFailedError
from ForwarderRevertErrors
. (#2309)SendTransactionOpts
and AwaitTransactionSuccessOpts
types for contract wrappers (#2243)encodeStaticCallAssetData
and decodeStaticCallAssetData
in LibAssetData (#2034)revertIfInvalidAssetData
in LibAssetData (#2034)LibERC20Token
(#2309)transferAsset
is now transferAssetAsync
(#2304)generateOrder
is now generateOrderAsync
(#2304)LibERC20Token
in MixinAssets
(#2309)SafeMath
with LibSafeMath
(#2254)LibFixedMath
(#2255)StakingProxy.assertValidStorageParams()
in MixinParams.setParams()
(#2279)StakingProxy
reverts if there is no staking contract attached (#2310)_throwIfRevertWithReasonCallResult
(#1761)awaitTransactionSuccessAsync
compatible with base Promise type (#1885)BigNumber
indexed filter values in getTopicsForIndexedArgs()
(#2155)getNetworkIdByExchangeAddressOrThrow
. It's not needed with V3 tooling. (#2170)deployedBytecode
field (#2181)Order
and ZeroExTransaction
structures with domain
field (#1742)revertWith
mocha extensions now accept Promise-like objects instead of just Promises (#2031)shouldAllowUnlimitedContractSize
to Web3Config
. (#2075)UNLIMITED_CONTRACT_SIZE
to EnvVars
. (#2075)total_accounts
option to Web3Config
. (#2109)chaiSetup
function with RevertError
testing support (#1761)Error
coercion code into the utils
package (#1819)RevertErrorAbi
interface as part of AbiDefinition
types (#1761)DecodedLogs
type (#2220)eip712DomainSchema
schema (#1742)domain
to order
and zeroExTransaction
schemas (#1742)makerAssetData
and takerAssetData
to Order
schemas (#1819)expirationTimeSeconds
to ZeroExTransaction
schema (#1832)chainId
(#1742)chainId
OrderValidationUtils
, OrderFactory
(#1742)Order
and ZeroExTransaction
structure (#1742)RevertError
types to ExchangeRevertErrors
(#1761)SignatureOrderValidatorError
type to ExchangeRevertErrors
(#1774)SignatureWalletOrderValidatorError
type to ExchangeRevertErrors
(#1774)RevertError
types to match smart contracts. (#1790)RevertError
types for new base constructor (#1819)Expired
TransactionErrorCode (#1832)expirationTimeSeconds
to ZeroExTransaction
parameters used for hashing (#1832)validator
field to SignatureValidatorError
RevertError
types. (#1885)RevertError
types. (#1885)ExchangeRevertErrors.SignatureErrorCode.InvalidSigner
. (#2042)takerAssetFillAmount
field to IncompleteFillError
type (#2075)IncompleteFillError
to take an errorCode
, expectedAssetFillAmount
, and actualAssetFillAmount
fields. (#2075)InvalidCobbDouglasAlphaError
RevertError
type to StakingRevertErrors
(#2109)OperatorShareMustBeBetween0And100Error
RevertError
type to InvalidPoolOperatorShareError
. (#2109)TransactionGasPriceError
and TransactionInvalidContextError
to error registry. (#2109)EthVaultNotSetError,
RewardVaultNotSetError, and
InvalidStakeStatusError` to error registry. (#2118)InvalidStakeStatusError
to error registry. (#2126)InitializationError
, InvalidParamValue
to StakingRevertErrors
. (#2131)CumulativeRewardIntervalError
. (#2154)validateOrderFillableOrThrowAsync
, simpleValidateOrderFillableOrThrowAsync
, validateMakerTransferThrowIfInvalidAsync
(#2181)PreviousEpochNotFinalizedError
to StakingRevertErrors
. (#2155)InvalidMinimumPoolStake
to StakingRevertErrors.InvalidParamValueErrorCode
. (#2155)getContractNamesToCompile
to public function of Compiler
class (#2055)OrderStatus
type (#1761)OrderInfo
, FillResults
, MatchedFillResults
, BatchMatchedFillResults
types (#2031)ERC20Bridge
to AssetProxyId
(#2220)@0x/dev-utils
chai helpers in types/@0x
(#1761)RevertError
s. (#2075)Error
-> RevertError
coercion fail if it can't look up the selector. (#2109)LibFixedMath
RevertError
types. (#2109)RawRevertError
RevertError
type. (#2109)RevertError.decode()
optionally return a RawRevertError
if the selector is unknown. (#2109)length
field of AuthorizableRevertErrors.IndexOutOfBoundsError
type to len
. (#2109)toBaseUnitAmount()
accept a number
(#1819)LibAssetProxyIds
contract (#2055)ERC20BridgeProxy
(#2220)Eth2DaiBridge
(#2221)exchange-libs
to reduce code duplication (#1742)marketXOrders
consolidation. (#2042)marketBuy/SellOrdersNoThrow
and marketBuy/SellOrdersFillOrKill
to LibTransactionDecoder
. (#2075)run_mocha
package script runs with UNLIMITED_CONTRACT_SIZE=true
environment variable. (#2075)mintKnownFungibleTokensAsync()
, isNonFungibleItemAsync()
, isFungibleItemAsync()
, getOwnerOfAsync()
, getBalanceAsync()
to Erc1155Wrapper
. (#1819)executeTransaction
to take ZeroExTransaction
struct as input (#1753)executeTransaction
(#1753)SignatureType.OrderValidator
for orders (#1774)SignatureType.WalletOrderValidator
for orders (#1774)bytes
return value to executeTransaction
, which is equal to the encoded return data of the underlying Exchange function call (#1793)batchExecuteTransactions
(#1793)executeTransaction
(#1793)fillOrder
and matchOrders
tests (#1819)fillOrder()
and matchOrders()
when maker/taker is the same as feeRecipient and assets are the same (#1819)cancelOrderNoThrow
and batchCancelOrdersNoThrow
functions (#1827)executeTransaction
will now revert if the input transaction is expired (#1832)TransactionExecuted
event when an executeTransaction
call is successful (#1832)MixinTransferSimulator
contract for simulating multiple transfers on-chain (#1868)EIP1271Wallet
signature type (#1885)WalletOrderValidator
and OrderValidator
signature types (#1885)Validator
signature type have EIP1271 behavior (#1885)IEIP1271Wallet
interface (#1885)validatorAddress
field to SignatureValidatorError
rich reverts (#1885)calculateMatchedFillResults
public (#1885)TestIsolatedExchange
contract and IsolatedExchangeWrapper
test class (#2031)ReferenceFunctions
as package export. (#2031)TestExchangeMath.sol
. Exchange math functions are now tested in the exchange-libs
package and reference implementations are available there as well. (#2031)TestExchangeInternals.sol
that are no longer tested in this package. (#2031)_assertValidFill()
(#2031)wrapper_unit_tests
tests and TestWrapperFunctions
contract (#2042)signerAddress == 0
in signature validation functions. (#2042)Wallet
signature type behavior to be in line with v2.1. (#2042)LibFillResults
, LibOrder
, LibZeroExTransaction
, and LibMath
to libraries (#2055)LibExchangeRichErrors
and IExchangeRichErrors
(#2055)LibExchangeSelectors
constants (#2055)calculateFillResults
and calculateMatchedFillResults
to LibFillResults
in exchange-libs
package (#2055)marketSellOrders
and marketBuyOrders
back to marketSellOrdersNoThrow
and marketBuyOrdersNoThrow
. (#2075)marketSellOrdersFillOrKill
and marketBuyOrdersFillOrKill
functions. (#2075)abi.decode()
in LibExchangeRichErrorDecoder
over LibBytes
. (#2075)ReentrancyTester
now return sane values. (#2075)LibEIP712
into reusable components (#1742)chainId
to EIP712 domain schema (#1742)verifyingContract
to verifyingContractAddress
in domain schema (#1742)LibExchangeRichErrorDecoder
contract. (#1790)MExchangeRichErrors
into MExchangeRichErrorTypes
. (#1790)Order
fields for arbitrary fee tokens (ZEIP-28). (#1819)LibAbiEncoder
and LibConstants
. (#1819)generate-exchange-selectors
package script. (#1819)expirationTimeSeconds
to ZeroExTransaction
struct (#1823)LibMath
and LibFillResults
(#2031)LibMath
tests from the contracts-exchange
package. (#2031)LibFillResults
tests from the contracts-exchange
package. (#2031)LibMath
. (#2031)LibFillResults
, LibOrder
, LibZeroExTransaction
, and LibMath
to libraries (#2055)LibExchangeSelectors
(#2055)LibExchangeRichErrors
(#2055)calculateFillResults
and calculateMatchedFillResults
to LibFillResults
(#2055)_hashEIP712ExchangeMessage
from LibEIP712ExchangeDomain
(#2055)IncompleteFillError
to take an errorCode
, expectedAssetFillAmount
, and actualAssetFillAmount
fields. (#2075)LibFeeMath
with LibFixedMath
. (#2109)init()
pattern to contracts. (#2131)MixinDeploymentConstants
with MixinParams
. (#2131)_cobbDouglas()
into its own library (#2179)chainId
to TransactionFactory
constructor (#1742)Order
structure with domain
field (#1742)chaiSetup
from @0x/dev-utils
(#1761)generatePseudoRandomOrderHash()
to orderUtils
(#1761)OrderStatus
from @0x/types
(#1761)hexConcat()
in hex_utils.ts
(#1885)*FillResults
, OrderInfo
types to @0x/types
(#2031)log_utils.ts
(#2031)haxRandom()
to hex_utils.ts
(#2031)MAX_UINT256
, ADDRESS_LENGTH
, MAX_UINT256_ROOT
, ONE_ETHER
(#2031)testCombinatoriallyWithReferenceFuncAsync
non-async (#2031)testWithReferenceFuncAsync
to work with RevertErrors
(#2031)web3Wrapper
is created with shouldAllowUnlimitedContractSize
if UNLIMITED_CONTRACT_SIZE
environment variable is set. (#2075)toHex()
, hexLeftPad()
, hexRightPad()
, and 'hexInvert()' hex utils (#2109)PPM_DENOMINATOR
and PPM_100_PERCENT
constants. (#2109)Numberish
type. (#2131)hex_utils
, most notably hexSlice()
(#2155)hexHash()
to hex_utils
(#2155)shortZip()
to lang_utils.ts
(#2155)number_utils.ts
and hexSize()
(#2220)RichErrors
and mixins/MRichErrors
(#1761)MRichErrors
into MRichErrorTypes
. (#1790)SafeMath
functions. (#2031)SafeMathError
in SafeMath._safeDiv()
when denominator is zero. (#2031)LibSafeMath
(#2055)_rrevert
to rrevert
in LibRichErrors
contract (#2055)LibFractions
. (#2155)evmExecAsync
to use local EVM instead of eth_call for pure functions (#2108)callAsync
to use local EVM instead of eth_call for pure functions (#2108)@0x/orderbook
to fetch and subscribe to order updates (#2056)evmExecAsync
to use local EVM instead of eth_call for pure functions (#2108)getNetworkIdByExchangeAddressOrThrow
(#2096)devUtils
to ContractWrappers
class. (#2146)simpleValidateOrderFillableOrThrowAsync
(#2096)ethereumjs-vm
(#2108)getABIDecodedTransactionData
and getABIDecodedReturnData
(#2018)getABIDecodedTransactionData
and getABIDecodedReturnData
in contract wrappers. (#2018)getABIDecodedTransactionData
and getABIDecodedReturnData
(#2018)tokenUtils
here from @0x/contract-wrappers
(#2037)strictDecode
for decoding method arguments (#2018)components
field (#1919)assetData
is word aligned (#1964)