Skip to content

Commit

Permalink
ci(release): publish latest release
Browse files Browse the repository at this point in the history
  • Loading branch information
hello-happy-puppy committed Jan 21, 2025
1 parent 922a412 commit c2b82b5
Show file tree
Hide file tree
Showing 425 changed files with 16,785 additions and 10,885 deletions.
83 changes: 76 additions & 7 deletions RELEASE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
IPFS hash of the deployment:
- CIDv0: `QmSFSxn2NQ8LP2HZckSX6WkmwGz9SQudXWqsQ9ShJKRZSb`
- CIDv1: `bafybeib2dgh2xulteyu7s2lwepf2oyuwf63k3cpxeb5ogcnemn3cdsmpjq`
- CIDv0: `QmQCnXjjekxSd3k2zzpWjh85rA7sgg1R3RiiiGMTpVgNE6`
- CIDv1: `bafybeia3wojcisyfrr4bcavcvvrza2e2jxcoqo557gmewxmgx4gcv7msum`

The latest release is always mirrored at [app.uniswap.org](https://app.uniswap.org).

Expand All @@ -10,15 +10,84 @@ You can also access the Uniswap Interface from an IPFS gateway.
Your Uniswap settings are never remembered across different URLs.

IPFS gateways:
- https://bafybeib2dgh2xulteyu7s2lwepf2oyuwf63k3cpxeb5ogcnemn3cdsmpjq.ipfs.dweb.link/
- https://bafybeib2dgh2xulteyu7s2lwepf2oyuwf63k3cpxeb5ogcnemn3cdsmpjq.ipfs.cf-ipfs.com/
- [ipfs://QmSFSxn2NQ8LP2HZckSX6WkmwGz9SQudXWqsQ9ShJKRZSb/](ipfs://QmSFSxn2NQ8LP2HZckSX6WkmwGz9SQudXWqsQ9ShJKRZSb/)
- https://bafybeia3wojcisyfrr4bcavcvvrza2e2jxcoqo557gmewxmgx4gcv7msum.ipfs.dweb.link/
- https://bafybeia3wojcisyfrr4bcavcvvrza2e2jxcoqo557gmewxmgx4gcv7msum.ipfs.cf-ipfs.com/
- [ipfs://QmQCnXjjekxSd3k2zzpWjh85rA7sgg1R3RiiiGMTpVgNE6/](ipfs://QmQCnXjjekxSd3k2zzpWjh85rA7sgg1R3RiiiGMTpVgNE6/)

### 5.65.2 (2025-01-16)
## 5.66.0 (2025-01-21)


### Features

* **web:** add basic behavior history reset button (#14917) 80c38bf
* **web:** align main CTA buttons in all swap forms (#14954) 4d9d0b7
* **web:** design changes for pool out of sync state (#15178) 5b17719
* **web:** display dependent amount from Trading API response in Increase LP flow (#15116) 3fb84dd
* **web:** log sentry error for approve/increase/decrease/create/migrate [lp] (#15223) 6ee46f0
* **web:** log sentry error for claim [lp] (#15218) 6a8e41b
* **web:** unichain card (cold) (#14820) 56c5117
* **web:** unichain card (warm) (#14822) 1b42422
* **web:** update create trading api (#15159) 2d6e12e


### Bug Fixes

* **web:** cherry-picks lping to reduce trading API errors (#15225) 1db3f5d
* **mweb:** decimal separator on mweb (#15219) 2a75310
* **web:** add settings context provider to migrate page (#15195) c703139
* **web:** apply position list filters to saved pairs (#15050) 8463eef
* **web:** approve the wrapped token for v2 + v3 (#15217) 140fca5
* **web:** avoid showing incorrect Trading API error messages when skipping queries (#15038) ecfc228
* **web:** broken link on v2 migrate page (#15156) a813623
* **web:** disable range input when lacking data to visualize (#15067) 5ff362b
* **web:** DoubleLogo networkLogo bug (#15154) e95a795
* **web:** explore table should use chainId in ranking (#15103) b1c0e2e
* **web:** fix analytics toggle setting flash (#15128) 07e954a
* **web:** fix blocked token language (#15132) f6d06dd
* **web:** fix infinite loop on analytics toggle (#15070) fd57c35
* **web:** fix max token amount calc error (#15139) bb425a5
* **web:** fix mweb navigation test (#15014) 6600909
* **web:** fix numbers for LP flow analytics (#15140) 7fef11e
* **web:** fix scroll persist on transactions table tab (#14795) 621dc15
* **web:** fix the tokenA and tokenB deposit form for single-sided liquidity (#15174) 581d4d0
* **web:** fix wrapping/unwrapping for v3 (#15263) f29bcb8
* **web:** handle empty quotes array from new FOR service (#14955) ab29c6b
* **web:** import esm version of connectrpc (#14998) 9d4409b
* **web:** import esm version of i18next (#15006) 019c9c1
* **web:** import v2 positions fixes (#15151) fd0d075
* **web:** incorrect base/quote currency labels for price range on edit component (#15285) 88da0e4
* **web:** price range input bug fix (#15228) b0ce03b
* **web:** react key error in LP create flow (#15034) 01b6ab5
* **web:** remove auto-wrapping option for v4 increase / decrease (#15232) 1e203d8
* **web:** remove liquidity input 100 max (#14968) f96c4a5
* **web:** remove unnecessary tooltip from v2 migration page (#15155) 70cce38
* **web:** scroll on nav dropdown and adjust max height (#15087) c594c67
* **web:** search input padding ui fix for mweb safari (#15039) 2b28393
* **web:** single-sided liquidity crash (#15224) eecc9ab
* **web:** UI fixes for v4 position cards (#15053) c1ca09c
* **web:** unavailable price state for pool creation (#15071) eb19cbe
* **web:** update calls to trading api after new schema change (#15095) 77391b5
* **web:** update google conversion datetime format (#15021) 1cbb13f
* **web:** update input to trading api fro v3 + v4 create (#15205) 382c928
* **web:** use deeplink to default to unichain (#15318) 528b5f5
* **web:** v4 bug bash fixes (#15212) 62d63a8
* **web:** v4 hook flow fixes (#15052) 329f961
* **web:** v4 UI nit fixes (#15051) e20b2c1


### Styles

* **web:** staging copy nav dropdown item style (#15322) 94fff89


### Continuous Integration

* **web:** update sitemaps 55b34d7


### Code Refactoring

* **web:** use universe ens address hook (#14669) 1c229db
* **web:** use universe ens avatar hook (#14670) 7af231a
* **web:** use universe ens name hook (#14667) ce789a4


2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
web/5.65.2
web/5.66.0
3 changes: 0 additions & 3 deletions apps/extension/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,3 @@ dist-ssr
*.sw?

.tamagui

# Sentry Config File
.env.sentry-build-plugin
9 changes: 3 additions & 6 deletions apps/extension/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,14 @@
"@ethersproject/providers": "5.7.2",
"@metamask/rpc-errors": "6.2.1",
"@reduxjs/toolkit": "1.9.3",
"@sentry/browser": "7.80.0",
"@sentry/react": "7.80.0",
"@sentry/webpack-plugin": "2.10.3",
"@svgr/webpack": "8.0.1",
"@tamagui/core": "1.114.4",
"@types/uuid": "9.0.1",
"@uniswap/analytics-events": "2.40.0",
"@uniswap/uniswapx-sdk": "3.0.0-beta.1",
"@uniswap/universal-router-sdk": "4.7.0",
"@uniswap/v3-sdk": "3.19.0",
"@uniswap/v4-sdk": "1.12.0",
"@uniswap/universal-router-sdk": "4.10.0",
"@uniswap/v3-sdk": "3.21.0",
"@uniswap/v4-sdk": "1.15.0",
"dotenv-webpack": "8.0.1",
"ethers": "5.7.2",
"eventemitter3": "5.0.1",
Expand Down
2 changes: 2 additions & 0 deletions apps/extension/src/app/Global.css
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ body,
html {
height: 100%;
max-width: 100vw;
font-feature-settings: 'liga' 0;
font-variant-ligatures: no-contextual;
}

#root {
Expand Down
8 changes: 4 additions & 4 deletions apps/extension/src/app/OnboardingApp.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,12 @@ import 'symbol-observable' // Needed by `reduxed-chrome-storage` as polyfill, or

import { useEffect } from 'react'
import { I18nextProvider } from 'react-i18next'
import { RouteObject, RouterProvider } from 'react-router-dom'
import { RouteObject, RouterProvider, createHashRouter } from 'react-router-dom'
import { PersistGate } from 'redux-persist/integration/react'
import { ExtensionStatsigProvider } from 'src/app/StatsigProvider'
import { GraphqlProvider } from 'src/app/apollo'
import { ErrorElement } from 'src/app/components/ErrorElement'
import { DatadogAppNameTag } from 'src/app/datadog'
import { ClaimUnitagScreen } from 'src/app/features/onboarding/ClaimUnitagScreen'
import { Complete } from 'src/app/features/onboarding/Complete'
import {
Expand All @@ -34,7 +35,6 @@ import { ScanToOnboard } from 'src/app/features/onboarding/scan/ScanToOnboard'
import { ScantasticContextProvider } from 'src/app/features/onboarding/scan/ScantasticContextProvider'
import { OnboardingRoutes, TopLevelRoutes } from 'src/app/navigation/constants'
import { setRouter, setRouterState } from 'src/app/navigation/state'
import { SentryAppNameTag, sentryCreateHashRouter } from 'src/app/sentry'
import { initExtensionAnalytics } from 'src/app/utils/analytics'
import { checksIfSupportsSidePanel } from 'src/app/utils/chrome'
import { PrimaryAppInstanceDebuggerLazy } from 'src/store/PrimaryAppInstanceDebuggerLazy'
Expand Down Expand Up @@ -135,7 +135,7 @@ const allRoutes = [
},
]

const router = sentryCreateHashRouter([
const router = createHashRouter([
{
path: `/${TopLevelRoutes.Onboarding}`,
element: <OnboardingWrapper />,
Expand Down Expand Up @@ -188,7 +188,7 @@ export default function OnboardingApp(): JSX.Element {
return (
<Trace>
<PersistGate persistor={getReduxPersistor()}>
<ExtensionStatsigProvider appName={SentryAppNameTag.Onboarding}>
<ExtensionStatsigProvider appName={DatadogAppNameTag.Onboarding}>
<I18nextProvider i18n={i18n}>
<SharedWalletProvider reduxStore={getReduxStore()}>
<ErrorBoundary>
Expand Down
20 changes: 4 additions & 16 deletions apps/extension/src/app/PopupApp.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ import 'src/app/Global.css'
import { useEffect } from 'react'
import { I18nextProvider, useTranslation } from 'react-i18next'
import { useDispatch } from 'react-redux'
import { RouterProvider } from 'react-router-dom'
import { RouterProvider, createHashRouter } from 'react-router-dom'
import { PersistGate } from 'redux-persist/integration/react'
import { ExtensionStatsigProvider } from 'src/app/StatsigProvider'
import { GraphqlProvider } from 'src/app/apollo'
import { ErrorElement } from 'src/app/components/ErrorElement'
import { TraceUserProperties } from 'src/app/components/Trace/TraceUserProperties'
import { DatadogAppNameTag } from 'src/app/datadog'
import { DappContextProvider } from 'src/app/features/dapp/DappContext'
import { SentryAppNameTag, initializeSentry, sentryCreateHashRouter } from 'src/app/sentry'
import { initExtensionAnalytics } from 'src/app/utils/analytics'
import { getReduxPersistor, getReduxStore } from 'src/store/store'
import { DeprecatedButton, Flex, Image, Text } from 'ui/src'
Expand All @@ -25,23 +25,11 @@ import { ElementName } from 'uniswap/src/features/telemetry/constants'
import { UnitagUpdaterContextProvider } from 'uniswap/src/features/unitags/context'
import i18n from 'uniswap/src/i18n'
import { ExtensionScreens } from 'uniswap/src/types/screens/extension'
import { getUniqueId } from 'utilities/src/device/getUniqueId'
import { logger } from 'utilities/src/logger/logger'
import { ErrorBoundary } from 'wallet/src/components/ErrorBoundary/ErrorBoundary'
import { useTestnetModeForLoggingAndAnalytics } from 'wallet/src/features/testnetMode/hooks'
import { SharedWalletProvider } from 'wallet/src/providers/SharedWalletProvider'

getUniqueId()
.then((userId) => {
initializeSentry(SentryAppNameTag.Popup, userId)
})
.catch((error) => {
logger.error(error, {
tags: { file: 'PopupApp.tsx', function: 'getUniqueId' },
})
})

const router = sentryCreateHashRouter([
const router = createHashRouter([
{
path: '',
element: <PopupContent />,
Expand Down Expand Up @@ -128,7 +116,7 @@ export default function PopupApp(): JSX.Element {
return (
<Trace>
<PersistGate persistor={getReduxPersistor()}>
<ExtensionStatsigProvider appName={SentryAppNameTag.Popup}>
<ExtensionStatsigProvider appName={DatadogAppNameTag.Popup}>
<I18nextProvider i18n={i18n}>
<SharedWalletProvider reduxStore={getReduxStore()}>
<ErrorBoundary>
Expand Down
19 changes: 4 additions & 15 deletions apps/extension/src/app/SidebarApp.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@ import 'src/app/Global.css'
import { useEffect, useRef, useState } from 'react'
import { I18nextProvider } from 'react-i18next'
import { useDispatch } from 'react-redux'
import { RouterProvider } from 'react-router-dom'
import { RouterProvider, createHashRouter } from 'react-router-dom'
import { PersistGate } from 'redux-persist/integration/react'
import { ExtensionStatsigProvider } from 'src/app/StatsigProvider'
import { GraphqlProvider } from 'src/app/apollo'
import { ErrorElement } from 'src/app/components/ErrorElement'
import { TraceUserProperties } from 'src/app/components/Trace/TraceUserProperties'
import { DatadogAppNameTag } from 'src/app/datadog'
import { AccountSwitcherScreen } from 'src/app/features/accounts/AccountSwitcherScreen'
import { DappContextProvider } from 'src/app/features/dapp/DappContext'
import { addRequest } from 'src/app/features/dappRequests/saga'
Expand All @@ -29,7 +30,6 @@ import { useIsWalletUnlocked } from 'src/app/hooks/useIsWalletUnlocked'
import { AppRoutes, RemoveRecoveryPhraseRoutes, SettingsRoutes } from 'src/app/navigation/constants'
import { MainContent, WebNavigation } from 'src/app/navigation/navigation'
import { setRouter, setRouterState } from 'src/app/navigation/state'
import { SentryAppNameTag, initializeSentry, sentryCreateHashRouter } from 'src/app/sentry'
import { initExtensionAnalytics } from 'src/app/utils/analytics'
import {
DappBackgroundPortChannel,
Expand All @@ -47,7 +47,6 @@ import { ExtensionEventName } from 'uniswap/src/features/telemetry/constants'
import { sendAnalyticsEvent } from 'uniswap/src/features/telemetry/send'
import { UnitagUpdaterContextProvider, useUnitagUpdater } from 'uniswap/src/features/unitags/context'
import i18n from 'uniswap/src/i18n'
import { getUniqueId } from 'utilities/src/device/getUniqueId'
import { isDevEnv } from 'utilities/src/environment/env'
import { logger } from 'utilities/src/logger/logger'
import { ONE_SECOND_MS } from 'utilities/src/time/time'
Expand All @@ -56,17 +55,7 @@ import { ErrorBoundary } from 'wallet/src/components/ErrorBoundary/ErrorBoundary
import { useTestnetModeForLoggingAndAnalytics } from 'wallet/src/features/testnetMode/hooks'
import { SharedWalletProvider } from 'wallet/src/providers/SharedWalletProvider'

getUniqueId()
.then((userId) => {
initializeSentry(SentryAppNameTag.Sidebar, userId)
})
.catch((error) => {
logger.error(error, {
tags: { file: 'SidebarApp.tsx', function: 'getUniqueId' },
})
})

const router = sentryCreateHashRouter([
const router = createHashRouter([
{
path: '',
element: <SidebarWrapper />,
Expand Down Expand Up @@ -258,7 +247,7 @@ export default function SidebarApp(): JSX.Element {
return (
<Trace>
<PersistGate persistor={getReduxPersistor()}>
<ExtensionStatsigProvider appName={SentryAppNameTag.Sidebar}>
<ExtensionStatsigProvider appName={DatadogAppNameTag.Sidebar}>
<I18nextProvider i18n={i18n}>
<SharedWalletProvider reduxStore={getReduxStore()}>
<ErrorBoundary>
Expand Down
19 changes: 4 additions & 15 deletions apps/extension/src/app/UnitagClaimApp.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,13 @@ import 'src/app/Global.css'

import { PropsWithChildren, useEffect } from 'react'
import { I18nextProvider } from 'react-i18next'
import { Outlet, RouterProvider, useSearchParams } from 'react-router-dom'
import { Outlet, RouterProvider, createHashRouter, useSearchParams } from 'react-router-dom'
import { PersistGate } from 'redux-persist/integration/react'
import { ExtensionStatsigProvider } from 'src/app/StatsigProvider'
import { GraphqlProvider } from 'src/app/apollo'
import { ErrorElement } from 'src/app/components/ErrorElement'
import { TraceUserProperties } from 'src/app/components/Trace/TraceUserProperties'
import { DatadogAppNameTag } from 'src/app/datadog'
import {
ClaimUnitagSteps,
OnboardingStepsProvider,
Expand All @@ -23,7 +24,6 @@ import { UnitagCreateUsernameScreen } from 'src/app/features/unitags/UnitagCreat
import { UnitagIntroScreen } from 'src/app/features/unitags/UnitagIntroScreen'
import { UnitagClaimRoutes } from 'src/app/navigation/constants'
import { setRouter, setRouterState } from 'src/app/navigation/state'
import { SentryAppNameTag, initializeSentry, sentryCreateHashRouter } from 'src/app/sentry'
import { initExtensionAnalytics } from 'src/app/utils/analytics'
import { getReduxPersistor, getReduxStore } from 'src/store/store'
import { Flex } from 'ui/src'
Expand All @@ -32,25 +32,14 @@ import { LocalizationContextProvider } from 'uniswap/src/features/language/Local
import Trace from 'uniswap/src/features/telemetry/Trace'
import { UnitagUpdaterContextProvider } from 'uniswap/src/features/unitags/context'
import i18n from 'uniswap/src/i18n'
import { getUniqueId } from 'utilities/src/device/getUniqueId'
import { logger } from 'utilities/src/logger/logger'
import { usePrevious } from 'utilities/src/react/hooks'
import { ErrorBoundary } from 'wallet/src/components/ErrorBoundary/ErrorBoundary'
import { useTestnetModeForLoggingAndAnalytics } from 'wallet/src/features/testnetMode/hooks'
import { useAccountAddressFromUrlWithThrow } from 'wallet/src/features/wallet/hooks'
import { SharedWalletProvider } from 'wallet/src/providers/SharedWalletProvider'

getUniqueId()
.then((userId) => {
initializeSentry(SentryAppNameTag.UnitagClaim, userId)
})
.catch((error) => {
logger.error(error, {
tags: { file: 'UnitagClaimApp.tsx', function: 'getUniqueId' },
})
})

const router = sentryCreateHashRouter([
const router = createHashRouter([
{
path: '',
element: <UnitagAppInner />,
Expand Down Expand Up @@ -162,7 +151,7 @@ export default function UnitagClaimApp(): JSX.Element {
return (
<Trace>
<PersistGate persistor={getReduxPersistor()}>
<ExtensionStatsigProvider appName={SentryAppNameTag.UnitagClaim}>
<ExtensionStatsigProvider appName={DatadogAppNameTag.UnitagClaim}>
<I18nextProvider i18n={i18n}>
<SharedWalletProvider reduxStore={getReduxStore()}>
<ErrorBoundary>
Expand Down
Loading

0 comments on commit c2b82b5

Please sign in to comment.