CHANGELOG
* Add ERC20 Transformer utils and export useful constants. (#2604)
* Add `getOrderHash()`, `getExchangeTransactionHash()`, `getExchangeProxyTransactionHash()` (#2610)
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Remove use of ambient `DevUtils` instances. (#2462)
* Make hash computing tooling non-async again. (#2462)
* Add `transactionHashUtils`. (#2462)
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Export `isERC20AssetData`, `isERC20BridgeAssetData` and other equivalents. (#2421)
* Dependencies updated
* Removed from assetDataUtils: individual decoding functions and assert functions (#2388)
* Add ERC20Bridge support to assetDataUtils (#2388)
* [Breaking] Removed `OrderStateUtils`, `OrderValidationUtils`, `ExchangeTransferSimulator` and all abstract and store classes. For order validation, please use the `DevUtils` contract wrapper method `getOrderRelevantState`|`getOrderRelevantStates` (#2324)
* Removed exports CoordinatorRevertErrors, ExchangeRevertErrors, ForwarderRevertErrors, LibMathRevertErrors, orderHashUtils, orderParsingUtils, StakingRevertErrors and transactionHashUtils (#2321)
* Removed many functions from export signatureUtils (#2321)
* Removed function isValidOrderHash from export orderHashUtils (#2321)
* Remove `TransferFailedError` from `ForwarderRevertErrors`. (#2309)
* All references to network ID have been removed, and references to chain ID have been introduced instead (#2313)
* Add `chainId` `OrderValidationUtils`, `OrderFactory` (#1742)
* Update tools to use new `Order` and `ZeroExTransaction` structure (#1742)
* Update domain schema for Exchange and Coordinator (#1742)
* Add Exchange `RevertError` types to `ExchangeRevertErrors` (#1761)
* Add `SignatureOrderValidatorError` type to `ExchangeRevertErrors` (#1774)
* Add `SignatureWalletOrderValidatorError` type to `ExchangeRevertErrors` (#1774)
* Reorder parameters of some `RevertError` types to match smart contracts. (#1790)
* Use arbitrary fee tokens instead of ZRX (ZEIP-28) for tools needed by contracts packages. (#1819)
* Update `RevertError` types for new base constructor (#1819)
* Add `Expired` TransactionErrorCode (#1832)
* Add `expirationTimeSeconds` to `ZeroExTransaction` parameters used for hashing (#1832)
* Add `validator` field to `SignatureValidatorError` `RevertError` types. (#1885)
* Remove unused `RevertError` types. (#1885)
* Add `ExchangeRevertErrors.SignatureErrorCode.InvalidSigner`. (#2042)
* Add `takerAssetFillAmount` field to `IncompleteFillError` type (#2075)
* Update `IncompleteFillError` to take an `errorCode`, `expectedAssetFillAmount`, and `actualAssetFillAmount` fields. (#2075)
* Add EIP712 types for Staking (#1910)
* Add `InvalidCobbDouglasAlphaError` `RevertError` type to `StakingRevertErrors` (#2109)
* Rename `OperatorShareMustBeBetween0And100Error` `RevertError` type to `InvalidPoolOperatorShareError`. (#2109)
* Add `TransactionGasPriceError` and `TransactionInvalidContextError` to error registry. (#2109)
* Add `EthVaultNotSetError, `RewardVaultNotSetError`, and `InvalidStakeStatusError` to error registry. (#2118)
* Add `InvalidStakeStatusError` to error registry. (#2126)
* Add `InitializationError`, `InvalidParamValue` to `StakingRevertErrors`. (#2131)
* Add `CumulativeRewardIntervalError`. (#2154)
* Remove `validateOrderFillableOrThrowAsync`, `simpleValidateOrderFillableOrThrowAsync`, `validateMakerTransferThrowIfInvalidAsync` (#2181)
* Add `PreviousEpochNotFinalizedError` to `StakingRevertErrors`. (#2155)
* Add `InvalidMinimumPoolStake` to `StakingRevertErrors.InvalidParamValueErrorCode`. (#2155)
* Renamed `OnlyCallableByPoolOperatorOrMakerError` to `OnlyCallableByPoolOperatorError`. (#2250)
* Removed protocol fee != 0 error. (#2278)
* Dependencies updated
* Dependencies updated
* [Breaking] Removed `OrderStateUtils`, `OrderValidationUtils`, `ExchangeTransferSimulator` and all abstract and store classes. For order validation, please use the `DevUtils` contract wrapper method `getOrderRelevantState`|`getOrderRelevantStates` (#2324)
* Removed exports CoordinatorRevertErrors, ExchangeRevertErrors, ForwarderRevertErrors, LibMathRevertErrors, orderHashUtils, orderParsingUtils, StakingRevertErrors and transactionHashUtils (#2321)
* Removed many functions from export signatureUtils (#2321)
* Removed function isValidOrderHash from export orderHashUtils (#2321)
* Remove `TransferFailedError` from `ForwarderRevertErrors`. (#2309)
* All references to network ID have been removed, and references to chain ID have been introduced instead (#2313)
* Add `chainId` `OrderValidationUtils`, `OrderFactory` (#1742)
* Update tools to use new `Order` and `ZeroExTransaction` structure (#1742)
* Update domain schema for Exchange and Coordinator (#1742)
* Add Exchange `RevertError` types to `ExchangeRevertErrors` (#1761)
* Add `SignatureOrderValidatorError` type to `ExchangeRevertErrors` (#1774)
* Add `SignatureWalletOrderValidatorError` type to `ExchangeRevertErrors` (#1774)
* Reorder parameters of some `RevertError` types to match smart contracts. (#1790)
* Use arbitrary fee tokens instead of ZRX (ZEIP-28) for tools needed by contracts packages. (#1819)
* Update `RevertError` types for new base constructor (#1819)
* Add `Expired` TransactionErrorCode (#1832)
* Add `expirationTimeSeconds` to `ZeroExTransaction` parameters used for hashing (#1832)
* Add `validator` field to `SignatureValidatorError` `RevertError` types. (#1885)
* Remove unused `RevertError` types. (#1885)
* Add `ExchangeRevertErrors.SignatureErrorCode.InvalidSigner`. (#2042)
* Add `takerAssetFillAmount` field to `IncompleteFillError` type (#2075)
* Update `IncompleteFillError` to take an `errorCode`, `expectedAssetFillAmount`, and `actualAssetFillAmount` fields. (#2075)
* Add EIP712 types for Staking (#1910)
* Add `InvalidCobbDouglasAlphaError` `RevertError` type to `StakingRevertErrors` (#2109)
* Rename `OperatorShareMustBeBetween0And100Error` `RevertError` type to `InvalidPoolOperatorShareError`. (#2109)
* Add `TransactionGasPriceError` and `TransactionInvalidContextError` to error registry. (#2109)
* Add `EthVaultNotSetError, `RewardVaultNotSetError`, and `InvalidStakeStatusError` to error registry. (#2118)
* Add `InvalidStakeStatusError` to error registry. (#2126)
* Add `InitializationError`, `InvalidParamValue` to `StakingRevertErrors`. (#2131)
* Add `CumulativeRewardIntervalError`. (#2154)
* Remove `validateOrderFillableOrThrowAsync`, `simpleValidateOrderFillableOrThrowAsync`, `validateMakerTransferThrowIfInvalidAsync` (#2181)
* Add `PreviousEpochNotFinalizedError` to `StakingRevertErrors`. (#2155)
* Add `InvalidMinimumPoolStake` to `StakingRevertErrors.InvalidParamValueErrorCode`. (#2155)
* Renamed `OnlyCallableByPoolOperatorOrMakerError` to `OnlyCallableByPoolOperatorError`. (#2250)
* Removed protocol fee != 0 error. (#2278)
* Implement `simpleValidateOrderFillableOrThrowAsync` (#2096)
* Dependencies updated
* Fix isValidValidatorSignatureAsync, allow to pass exchangeAddress to isValidSignatureAsync. (#2017)
* Fix `Wallet` and `Validator` signature validation (#2078)
* Dependencies updated
* Updated calls to <contract wrapper>.deploy0xArtifactAsync to include log decode dependencies. (#1995)
* Ensure `assetData` is word aligned (#1964)
* Dependencies updated
* Dependencies updated
* Add support for encoding/decoding StaticCallProxy assetData (#1863)
* Add support for marketSell utils (#1914)
* Add support for encoding/decoding DutchAuction assetData (#1943)
* Added `validateMakerTransferThrowIfInvalidAsync` to OrderValidationUtils (#1937)
* Dependencies updated
* Add `ecSignTransactionAsync` (#1817)
* Dependencies updated
* Renamed `OrderError` to `TypedDataError` (#1792)
* Added `orderCalculationUtils` (#1714)
* Dependencies updated
* Add Coordinator EIP712 constants (#1705)
* Added encoding/decoding for ERC1155 asset data (#1661)
* Dependencies updated
* Dependencies updated
* Add support for EIP1193 providers & Web3.js providers >= 1.0-beta.38 (#1627)
* Update provider params to type SupportedProvider which outlines all supported providers (#1627)
* Updated implementation of `generatePseudoRandomSalt` to use generator from @0x/utils (#1569)
* Dependencies updated
* undefined
* Add `transactionHashUtils` (#1576)
* Refactor `eip712Utils` to allow custom domain params (#1576)
* Export constant EIP712 params (#1576)
* Upgrade the bignumber.js to v8.0.2 (#1517)
* Fix preSigned `isSignatureValidAsync` check (#1580)
* Dependencies updated
* Dependencies updated
* Use new ABI encoder, add encoding/decoding logic for MultiAsset assetData, and add information to return values in orderStateUtils (#1363)
* Dependencies updated
* Fix bug in wallet signature type verification (#1414)
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Add signature validation, regular cancellation and `cancelledUpTo` checks to `validateOrderFillableOrThrowAsync` (#1235)
* Improved the errors thrown by `validateOrderFillableOrThrowAsync` by making them more descriptive (#1235)
* Throw previously swallowed network errors when calling `validateOrderFillableOrThrowAsync` (see issue: #1218) (#1235)
* Modified the `AbstractOrderFilledCancelledFetcher` interface slightly such that `isOrderCancelledAsync` accepts a `signedOrder` instead of an `orderHash` param (#1235)
* Dependencies updated
* Added `ecSignOrderAsync` to first sign an order using `eth_signTypedData` and fallback to `eth_sign`. (#1102)
* Added `ecSignTypedDataOrderAsync` to sign an order exclusively using `eth_signTypedData`. (#1102)
* Rename `ecSignOrderHashAsync` to `ecSignHashAsync` removing `SignerType` parameter. (#1102)
* Use `AssetData` union type for function return values. (#1131)
* Dependencies updated
* Add signerAddress normalization to `isValidECSignature` to avoid `invalid address recovery` error if caller supplies a checksummed address (#1096)
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Drastically reduce the bundle size by removing unused parts of included contract artifacts.
* Export `orderParsingUtils` (#1044)
* Fix missing `BlockParamLiteral` type import issue
* Remove Caller and Trezor SignatureTypes (#1015)
* Remove rounding error being thrown when maker amount is very small (#959)
* Added rateUtils and sortingUtils (#953)
* Update marketUtils api such that all optional parameters are bundled into one optional param and more defaults are provided (#954)
* Instead of exporting signature util methods individually, they are now exported as `signatureUtils` (#924)
* Export types: `SignedOrder`, `Order`, `OrderRelevantState`, `OrderState`, `ECSignature`, `ERC20AssetData`, `ERC721AssetData`, `AssetProxyId`, `SignerType`, `SignatureType`, `OrderStateValid`, `OrderStateInvalid`, `ExchangeContractErrs`, `TradeSide`, `TransferType`, `FindFeeOrdersThatCoverFeesForTargetOrdersOpts`, `FindOrdersThatCoverMakerAssetFillAmountOpts`, `FeeOrdersAndRemainingFeeAmount`, `OrdersAndRemainingFillAmount`, `Provider`, `JSONRPCRequestPayload`, `JSONRPCErrorCallback` and `JSONRPCResponsePayload` (#924)
* Rename `resultOrders` to `resultFeeOrders` for object returned by `findFeeOrdersThatCoverFeesForTargetOrders` in `marketUtils` api (#997)
* Make `sortFeeOrdersByFeeAdjustedRate` in `sortingUtils` generic (#997)
* Update `findFeeOrdersThatCoverFeesForTargetOrders` to round the the nearest integer when calculating required fees (#997)
* Update ecSignOrderHashAsync to return signature string with signature type byte. Removes messagePrefixOpts. (#914)
* Added a synchronous `createOrder` method in `orderFactory`, updated public interfaces to support some optional parameters (#936)
* Added marketUtils (#937)
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Upgrade ethereumjs-abi dep including a fix so that addresses starting with 0 are properly decoded by `decodeERC20AssetData`
* Refactor to work with V2 of 0x protocol (#636)
* Export parseECSignature method (#684)
* Handle Typed Arrays when hashing data (#894)
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Dependencies updated
* Add orderStateUtils, a module for computing order state needed to decide if an order is still valid
* Dependencies updated
* Dependencies updated
* Dependencies updated