ci(release): publish latest release

parent 7939ac87
IPFS hash of the deployment:
- CIDv0: `Qmare3scA791vEczmDbddpWRgmipd2LyBeHGoV53RzqJWd`
- CIDv1: `bafybeifz7lwau4w4z7awqjzujhgnff4lpwxrj533xk3n6skzpjmvzpyhvi`
- CIDv0: `QmeAziMcEHMw2m77u6dTq6DBg3f9NPNCsFSoWy5jLRLx8c`
- CIDv1: `bafybeihlihgtua66efgaafuzz3mf3ndy5waaffkvh5tfkqifvtjc75suju`
The latest release is always mirrored at [app.uniswap.org](https://app.uniswap.org).
......@@ -10,14 +10,14 @@ You can also access the Uniswap Interface from an IPFS gateway.
Your Uniswap settings are never remembered across different URLs.
IPFS gateways:
- https://bafybeifz7lwau4w4z7awqjzujhgnff4lpwxrj533xk3n6skzpjmvzpyhvi.ipfs.dweb.link/
- [ipfs://Qmare3scA791vEczmDbddpWRgmipd2LyBeHGoV53RzqJWd/](ipfs://Qmare3scA791vEczmDbddpWRgmipd2LyBeHGoV53RzqJWd/)
- https://bafybeihlihgtua66efgaafuzz3mf3ndy5waaffkvh5tfkqifvtjc75suju.ipfs.dweb.link/
- [ipfs://QmeAziMcEHMw2m77u6dTq6DBg3f9NPNCsFSoWy5jLRLx8c/](ipfs://QmeAziMcEHMw2m77u6dTq6DBg3f9NPNCsFSoWy5jLRLx8c/)
### 5.79.1 (2025-04-17)
### 5.79.2 (2025-04-18)
### Bug Fixes
* **web:** v4 0 slippage at max (#18588) 07180fd
* **web:** remove v4 0 slippage (#18615) 3a282e3
web/5.79.1
\ No newline at end of file
web/5.79.2
\ No newline at end of file
......@@ -18,8 +18,6 @@ import {
import { toSupportedChainId } from 'uniswap/src/features/chains/utils'
import { CurrencyInfo } from 'uniswap/src/features/dataApi/types'
import { useTransactionGasFee, useUSDCurrencyAmountOfGasFee } from 'uniswap/src/features/gas/hooks'
import { FeatureFlags } from 'uniswap/src/features/gating/flags'
import { useFeatureFlag } from 'uniswap/src/features/gating/hooks'
import { useCurrencyInfo } from 'uniswap/src/features/tokens/useCurrencyInfo'
import {
IncreasePositionTxAndGasInfo,
......@@ -50,7 +48,6 @@ export function IncreaseLiquidityTxContextProvider({ children }: PropsWithChildr
const { derivedIncreaseLiquidityInfo, increaseLiquidityState, currentTransactionStep } = useIncreaseLiquidityContext()
const { customDeadline, customSlippageTolerance } = useTransactionSettingsContext()
const [hasIncreaseErrorResponse, setHasIncreaseErrorResponse] = useState(false)
const v4ZeroSlippageEnabled = useFeatureFlag(FeatureFlags.V40Slippage)
const { currencyAmounts, error } = derivedIncreaseLiquidityInfo
const { exactField } = increaseLiquidityState
......@@ -144,10 +141,6 @@ export function IncreaseLiquidityTxContextProvider({ children }: PropsWithChildr
exactField === PositionField.TOKEN0 ? [amount0, amount1] : [amount1, amount0]
const independentToken = exactField === PositionField.TOKEN0 ? IndependentToken.TOKEN_0 : IndependentToken.TOKEN_1
// stopgap measure to prevent overslippage on V4 pools
// TODO: remove this when we can set an upper limit on maxAmounts on protocol level
const forceV4ZeroSlippage = v4ZeroSlippageEnabled && positionInfo.version === ProtocolVersion.V4
return {
simulateTransaction: !approvalsNeeded,
protocol: apiProtocolItems,
......@@ -168,17 +161,9 @@ export function IncreaseLiquidityTxContextProvider({ children }: PropsWithChildr
hooks: positionInfo.v4hook,
},
},
slippageTolerance: forceV4ZeroSlippage ? 0 : customSlippageTolerance,
slippageTolerance: customSlippageTolerance,
}
}, [
account,
positionInfo,
currencyAmounts,
approvalsNeeded,
customSlippageTolerance,
exactField,
v4ZeroSlippageEnabled,
])
}, [account, positionInfo, currencyAmounts, approvalsNeeded, customSlippageTolerance, exactField])
const currency0Info = useCurrencyInfo(currencyId(positionInfo?.currency0Amount.currency))
const currency1Info = useCurrencyInfo(currencyId(positionInfo?.currency1Amount.currency))
......
import { ProtocolVersion } from '@uniswap/client-pools/dist/pools/v1/types_pb'
import { FeeTierSearchModal } from 'components/Liquidity/FeeTierSearchModal'
import { useCreatePositionDependentAmountFallback } from 'components/Liquidity/hooks/useDependentAmountFallback'
import { DepositState } from 'components/Liquidity/types'
......@@ -38,8 +37,6 @@ import { useCheckLpApprovalQuery } from 'uniswap/src/data/apiClients/tradingApi/
import { useCreateLpPositionCalldataQuery } from 'uniswap/src/data/apiClients/tradingApi/useCreateLpPositionCalldataQuery'
import { toSupportedChainId } from 'uniswap/src/features/chains/utils'
import { useTransactionGasFee, useUSDCurrencyAmountOfGasFee } from 'uniswap/src/features/gas/hooks'
import { FeatureFlags } from 'uniswap/src/features/gating/flags'
import { useFeatureFlag } from 'uniswap/src/features/gating/hooks'
import { getErrorMessageToDisplay, parseErrorMessageTitle } from 'uniswap/src/features/transactions/liquidity/utils'
import { useTransactionSettingsContext } from 'uniswap/src/features/transactions/settings/contexts/TransactionSettingsContext'
import { TransactionStep, TransactionStepType } from 'uniswap/src/features/transactions/swap/types/steps'
......@@ -173,7 +170,6 @@ export function CreateTxContextProvider({ children }: { children: React.ReactNod
const { derivedDepositInfo, depositState } = useDepositContext()
const { priceRangeState, derivedPriceRangeInfo } = usePriceRangeContext()
const swapSettings = useTransactionSettingsContext()
const v4ZeroSlippageEnabled = useFeatureFlag(FeatureFlags.V40Slippage)
const hasError = Boolean(derivedDepositInfo.error)
const [hasCreateErrorResponse, setHasCreateErrorResponse] = useState(false)
......@@ -219,10 +215,6 @@ export function CreateTxContextProvider({ children }: { children: React.ReactNod
approvalCalldata?.gasFeeToken1Approval,
)
// stopgap measure to prevent overslippage on V4 pools
// TODO: remove this when we can set an upper limit on maxAmounts on protocol level
const forceV4ZeroSlippage = v4ZeroSlippageEnabled && derivedPositionInfo.protocolVersion === ProtocolVersion.V4
const createCalldataQueryParams = useMemo(() => {
return generateCreateCalldataQueryParams({
account,
......@@ -233,7 +225,6 @@ export function CreateTxContextProvider({ children }: { children: React.ReactNod
derivedPriceRangeInfo,
derivedDepositInfo,
independentField: depositState.exactField,
slippageTolerance: forceV4ZeroSlippage ? 0 : undefined,
})
}, [
account,
......@@ -244,7 +235,6 @@ export function CreateTxContextProvider({ children }: { children: React.ReactNod
positionState,
priceRangeState,
depositState.exactField,
forceV4ZeroSlippage,
])
const isUserCommittedToCreate =
......
......@@ -64,7 +64,6 @@ export enum FeatureFlags {
UniswapXSyntheticQuote,
UniswapXv2,
UniversalSwap,
V40Slippage,
}
/* eslint-enable @typescript-eslint/prefer-enum-initializers */
......@@ -112,7 +111,6 @@ export const WEB_FEATURE_FLAG_NAMES = new Map<FeatureFlags, string>([
[FeatureFlags.UniswapXSyntheticQuote, 'uniswapx_synthetic_quote'],
[FeatureFlags.UniswapXv2, 'uniswapx_v2'],
[FeatureFlags.UniversalSwap, 'universal_swap'],
[FeatureFlags.V40Slippage, 'v4_0_slippage'],
])
// These names must match the gate name on statsig
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment