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 May 6, 2024
1 parent 7e5fa89 commit 6b352f6
Show file tree
Hide file tree
Showing 566 changed files with 8,536 additions and 12,312 deletions.
1 change: 0 additions & 1 deletion CODEOWNERS

This file was deleted.

26 changes: 6 additions & 20 deletions RELEASE
Original file line number Diff line number Diff line change
@@ -1,24 +1,10 @@
IPFS hash of the deployment:
- CIDv0: `QmUBdzrLg5h8kHRC9XFen4a7RC23X23H5Bqo3489vw4Rpe`
- CIDv1: `bafybeicw24lqwbfycignaoktl4b46e2bboqkbmu5hem2kjbxh7n5hbm2um`
We are back with some new new updates! Here’s the latest:

The latest release is always mirrored at [app.uniswap.org](https://app.uniswap.org).
Support for Blast: We now support the Blast Network! You can now send, receive, swap and more on it.

You can also access the Uniswap Interface from an IPFS gateway.
**BEWARE**: The Uniswap interface uses [`localStorage`](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) to remember your settings, such as which tokens you have imported.
**You should always use an IPFS gateway that enforces origin separation**, or our hosted deployment of the latest release at [app.uniswap.org](https://app.uniswap.org).
Your Uniswap settings are never remembered across different URLs.

IPFS gateways:
- https://bafybeicw24lqwbfycignaoktl4b46e2bboqkbmu5hem2kjbxh7n5hbm2um.ipfs.dweb.link/
- https://bafybeicw24lqwbfycignaoktl4b46e2bboqkbmu5hem2kjbxh7n5hbm2um.ipfs.cf-ipfs.com/
- [ipfs://QmUBdzrLg5h8kHRC9XFen4a7RC23X23H5Bqo3489vw4Rpe/](ipfs://QmUBdzrLg5h8kHRC9XFen4a7RC23X23H5Bqo3489vw4Rpe/)

### 5.25.6 (2024-05-02)


### Bug Fixes

* **web:** hotfix performance issue with floating text on homepage (#7952) eca0be7
Extension Beta Waitlist: If you’ve claimed a Username, you’re automatically added to the waitlist of our newest product, the Uniswap Extension (Beta). If you’re off the waitlist, you’ll receive a notification as such, which will allow you access to try out the product.

Other changes:

- Polish around fiat onramp
- Various bug fixes and performance improvements
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
web/5.25.6
mobile/1.25
3 changes: 1 addition & 2 deletions apps/mobile/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,6 @@ Add the following to your .rc file
Install [Android Studio](https://developer.android.com/studio)

Add the following to your .rc file

```
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
Expand Down Expand Up @@ -176,7 +175,7 @@ These are some tools you might want to familiarize yourself with to understand t

## Migrations

We use `redux-persist` to persist Redux state between user sessions. When the Redux state schema is altered, a migration may be needed to transfer the existing persisted state to the new Redux schema. Failing to define a migration results in the app defaulting to the persisted schema, which will very likely cause `undefined` errors because the code has references to Redux state properties that were dropped in favor the persisted schema.
We use `redux-persist` to persist Redux state between user sessions. When the Redux state schema is altered, a migration may be needed to transfer the existing persisted state to the new Redux schema. Failing to define a migration results in the app defaulting to the persisted schema, which will very likely cause `undefined` errors because the code has references to Redux state properties that were dropped in favor the the persisted schema.

### When to define a migration

Expand Down
6 changes: 3 additions & 3 deletions apps/mobile/android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -131,17 +131,17 @@ android {
dev {
isDefault(true)
applicationIdSuffix ".dev"
versionName "1.26"
versionName "1.25"
dimension "variant"
}
beta {
applicationIdSuffix ".beta"
versionName "1.26"
versionName "1.25"
dimension "variant"
}
prod {
dimension "variant"
versionName "1.26"
versionName "1.25"
}
}

Expand Down
8 changes: 6 additions & 2 deletions apps/mobile/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -1151,8 +1151,12 @@ PODS:
- React-Core
- react-native-restart (0.0.27):
- React-Core
- react-native-safe-area-context (4.9.0):
- react-native-safe-area-context (4.5.0):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- ReactCommon/turbomodule/core
- react-native-skia (0.1.187):
- React
- React-callinvoker
Expand Down Expand Up @@ -1745,7 +1749,7 @@ SPEC CHECKSUMS:
react-native-onesignal: ab800900cffeca4d9db70a05244013fc8a36ceb8
react-native-pager-view: 3051346698a0ba0c4e13e40097cc11b00ee03cca
react-native-restart: 7595693413fe3ca15893702f2c8306c62a708162
react-native-safe-area-context: b97eb6f9e3b7f437806c2ce5983f479f8eb5de4b
react-native-safe-area-context: 39c2d8be3328df5d437ac1700f4f3a4f75716acc
react-native-skia: e7385e2f5ebe284df53f0def573198fe69a7bd72
react-native-splash-screen: 4312f786b13a81b5169ef346d76d33bc0c6dc457
react-native-webview: d33e2db8925d090871ffeb232dfa50cb3a727581
Expand Down
32 changes: 16 additions & 16 deletions apps/mobile/ios/Uniswap.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -2450,7 +2450,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG";
Expand Down Expand Up @@ -2496,7 +2496,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.widgets;
Expand Down Expand Up @@ -2542,7 +2542,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.dev.widgets;
Expand Down Expand Up @@ -2588,7 +2588,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.beta.widgets;
Expand Down Expand Up @@ -2630,7 +2630,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG";
Expand Down Expand Up @@ -2673,7 +2673,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.WidgetIntentExtension;
Expand Down Expand Up @@ -2716,7 +2716,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.dev.WidgetIntentExtension;
Expand Down Expand Up @@ -2759,7 +2759,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.beta.WidgetIntentExtension;
Expand Down Expand Up @@ -2795,7 +2795,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
Expand Down Expand Up @@ -2833,7 +2833,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
Expand Down Expand Up @@ -3003,7 +3003,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG";
Expand Down Expand Up @@ -3047,7 +3047,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.OneSignalNotificationServiceExtension;
Expand Down Expand Up @@ -3143,7 +3143,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
Expand Down Expand Up @@ -3214,7 +3214,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.beta.OneSignalNotificationServiceExtension;
Expand Down Expand Up @@ -3310,7 +3310,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
Expand Down Expand Up @@ -3381,7 +3381,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.26;
MARKETING_VERSION = 1.25;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = com.uniswap.mobile.dev.OneSignalNotificationServiceExtension;
Expand Down
2 changes: 1 addition & 1 deletion apps/mobile/ios/WidgetsCore/Utils/Network.swift
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import Apollo
public class Network {
public static let shared = Network()

private let UNISWAP_API_URL = "https://ios.wallet.gateway.uniswap.org/v1/graphql"
private let UNISWAP_API_URL = Env.UNISWAP_API_BASE_URL + "/v1/graphql"

public lazy var apollo: ApolloClient = {
let cache = InMemoryNormalizedCache()
Expand Down
4 changes: 4 additions & 0 deletions apps/mobile/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ const preset = require('../../config/jest-presets/jest/jest-preset')
module.exports = {
...preset,
preset: 'jest-expo',
transform: {
...preset.transform,
'^.+\\.jsx?$': 'babel-jest',
},
displayName: 'Mobile Wallet',
collectCoverageFrom: [
'src/**/*.{js,ts,tsx}',
Expand Down
9 changes: 5 additions & 4 deletions apps/mobile/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,8 @@
"@uniswap/analytics": "1.7.0",
"@uniswap/analytics-events": "2.32.0",
"@uniswap/ethers-rs-mobile": "0.0.5",
"@uniswap/sdk-core": "4.2.1-beta.1",
"@uniswap/v3-sdk": "3.11.1-beta.2",
"@uniswap/sdk-core": "4.2.0",
"@uniswap/v3-sdk": "3.11.0",
"@walletconnect/core": "2.11.2",
"@walletconnect/react-native-compat": "2.11.2",
"@walletconnect/utils": "2.11.2",
Expand Down Expand Up @@ -163,14 +163,15 @@
"@babel/runtime": "7.18.9",
"@faker-js/faker": "7.6.0",
"@storybook/react": "7.0.2",
"@tamagui/babel-plugin": "1.94.5",
"@tamagui/babel-plugin": "1.94.3",
"@testing-library/react-hooks": "7.0.2",
"@testing-library/react-native": "11.5.0",
"@types/react-native": "0.71.3",
"@types/redux-mock-store": "1.0.6",
"@uniswap/eslint-config": "workspace:^",
"@walletconnect/types": "2.11.2",
"@welldone-software/why-did-you-render": "8.0.1",
"@welldone-software/why-did-you-render": "7.0.1",
"babel-jest": "29.6.1",
"babel-loader": "8.2.3",
"babel-plugin-react-native-web": "0.17.5",
"babel-plugin-react-require": "4.0.0",
Expand Down
2 changes: 1 addition & 1 deletion apps/mobile/scripts/copy_env_vars_to_swift.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
ENV_DEFAULTS_FILE = '../../.env.defaults'
ENV_DEFAULTS_LOCAL_FILE = '../../.env.defaults.local'
SWIFT_FILE_PATH = 'ios/WidgetsCore/Env.swift'
SWIFT_ENV_VARIABLES = ['UNISWAP_API_KEY']
SWIFT_ENV_VARIABLES = ['UNISWAP_API_BASE_URL','UNISWAP_API_KEY']

def to_swift_constant_line(key, value):
return f' static let {key.upper()} = "{value}"'
Expand Down
20 changes: 10 additions & 10 deletions apps/mobile/src/app/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -45,14 +45,15 @@ import {
getSentryTracesSamplingRate,
getStatsigEnvironmentTier,
} from 'src/utils/version'
import { StatsigProvider } from 'statsig-react-native'
import { Statsig, StatsigProvider } from 'statsig-react-native'
import { flexStyles, useIsDarkMode } from 'ui/src'
import { config } from 'uniswap/src/config'
import { uniswapUrls } from 'uniswap/src/constants/urls'
import { DUMMY_STATSIG_SDK_KEY } from 'uniswap/src/features/gating/constants'
import { WALLET_EXPERIMENTS } from 'uniswap/src/features/gating/experiments'
import { WALLET_FEATURE_FLAG_NAMES } from 'uniswap/src/features/gating/flags'
import { Statsig } from 'uniswap/src/features/gating/sdk/statsig'
import {
DUMMY_STATSIG_SDK_KEY,
ExperimentsWallet,
} from 'uniswap/src/features/experiments/constants'
import { WALLET_FEATURE_FLAG_NAMES } from 'uniswap/src/features/experiments/flags'
import { UnitagUpdaterContextProvider } from 'uniswap/src/features/unitags/context'
import i18n from 'uniswap/src/i18n/i18n'
import { CurrencyId } from 'uniswap/src/types/currency'
Expand Down Expand Up @@ -174,13 +175,12 @@ function SentryTags({ children }: PropsWithChildren): JSX.Element {
Sentry.setTag(`featureFlag.${flagKey}`, Statsig.checkGateWithExposureLoggingDisabled(flagKey))
}

// eslint-disable-next-line @typescript-eslint/no-unused-vars
for (const [_, experimentDef] of WALLET_EXPERIMENTS.entries()) {
Object.entries(ExperimentsWallet).map(([_, experimentName]) => {
Sentry.setTag(
`experiment.${experimentDef.name}`,
Statsig.getExperimentWithExposureLoggingDisabled(experimentDef.name).getGroupName()
`experiment.${experimentName}`,
Statsig.getExperimentWithExposureLoggingDisabled(experimentName).getGroupName()
)
}
})
}, [])

return <>{children}</>
Expand Down
30 changes: 23 additions & 7 deletions apps/mobile/src/app/MobileWalletNavigationProvider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,25 @@ import { useAppStackNavigation } from 'src/app/navigation/types'
import { closeModal, openModal } from 'src/features/modals/modalSlice'
import { HomeScreenTabIndex } from 'src/screens/HomeScreenTabIndex'
import { Screens } from 'src/screens/Screens'
import { FeatureFlags } from 'uniswap/src/features/gating/flags'
import { useFeatureFlag } from 'uniswap/src/features/gating/hooks'
import { FeatureFlags } from 'uniswap/src/features/experiments/flags'
import { useFeatureFlag } from 'uniswap/src/features/experiments/hooks'
import { logger } from 'utilities/src/logger/logger'
import { ScannerModalState } from 'wallet/src/components/QRCodeScanner/constants'
import {
NavigateToNftItemArgs,
NavigateToSendFlowArgs,
NavigateToSendArgs,
NavigateToSwapFlowArgs,
ShareNftArgs,
ShareTokenArgs,
WalletNavigationProvider,
getNavigateToSendFlowArgsInitialState,
getNavigateToSwapFlowArgsInitialState,
} from 'wallet/src/contexts/WalletNavigationContext'
import { AssetType } from 'wallet/src/entities/assets'
import { useFiatOnRampIpAddressQuery } from 'wallet/src/features/fiatOnRamp/api'
import {
CurrencyField,
TransactionState,
} from 'wallet/src/features/transactions/transactionState/types'
import { sendWalletAnalyticsEvent } from 'wallet/src/telemetry'
import { ModalName, ShareableEntity, WalletEventName } from 'wallet/src/telemetry/constants'
import { getNftUrl, getTokenUrl } from 'wallet/src/utils/linking'
Expand Down Expand Up @@ -118,12 +122,24 @@ function useNavigateToReceive(): () => void {
}, [dispatch])
}

function useNavigateToSend(): (args: NavigateToSendFlowArgs) => void {
function useNavigateToSend(): (args: NavigateToSendArgs) => void {
const dispatch = useAppDispatch()

return useCallback(
(args: NavigateToSendFlowArgs) => {
const initialSendState = getNavigateToSendFlowArgsInitialState(args)
(args: NavigateToSendArgs) => {
const initialSendState: TransactionState = {
exactCurrencyField: CurrencyField.INPUT,
exactAmountToken: '',
[CurrencyField.INPUT]: args
? {
address: args.currencyAddress,
chainId: args.chainId,
type: AssetType.Currency,
}
: null,
[CurrencyField.OUTPUT]: null,
showRecipientSelector: true,
}
dispatch(openModal({ name: ModalName.Send, initialState: initialSendState }))
},
[dispatch]
Expand Down

0 comments on commit 6b352f6

Please sign in to comment.