From d34b2e72190bbb35ee974336b4965a26832c17df Mon Sep 17 00:00:00 2001 From: artus9033 Date: Wed, 25 Feb 2026 10:32:56 +0100 Subject: [PATCH] chore: drop TesterIntegrated --- .changeset/config.json | 1 - .github/workflows/ci.yml | 104 - CONTRIBUTING.md | 7 +- apps/README.md | 1 - apps/TesterIntegrated/.gitignore | 8 - apps/TesterIntegrated/App.tsx | 136 - .../BrownfieldStore.brownie.ts | 21 - apps/TesterIntegrated/babel.config.cjs | 3 - apps/TesterIntegrated/eslint.config.mjs | 4 - apps/TesterIntegrated/index.js | 5 - apps/TesterIntegrated/kotlin/.gitignore | 13 - apps/TesterIntegrated/kotlin/.project | 17 - .../org.eclipse.buildship.core.prefs | 2 - apps/TesterIntegrated/kotlin/app/.gitignore | 1 - apps/TesterIntegrated/kotlin/app/build.gradle | 58 - .../kotlin/app/proguard-rules.pro | 21 - .../kotlinexample/ExampleInstrumentedTest.kt | 24 - .../kotlin/app/src/debug/AndroidManifest.xml | 4 - .../kotlin/app/src/main/AndroidManifest.xml | 26 - .../Generated/BrownfieldStore.kt | 14 - .../kotlinexample/Generated/SettingsStore.kt | 16 - .../callstack/kotlinexample/MainActivity.kt | 119 - .../kotlinexample/MainApplication.kt | 19 - .../ReactNativeFragmentActivity.kt | 30 - .../app/src/main/res/anim/slide_fade_in.xml | 11 - .../drawable-v24/ic_launcher_foreground.xml | 34 - .../res/drawable/ic_launcher_background.xml | 74 - .../app/src/main/res/layout/activity_main.xml | 36 - .../layout/activity_react_native_fragment.xml | 6 - .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 - .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 - .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 2963 -> 0 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 4905 -> 0 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 2060 -> 0 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 2783 -> 0 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 4490 -> 0 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 6895 -> 0 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 6387 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 10413 -> 0 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 9128 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 15132 -> 0 bytes .../kotlin/app/src/main/res/values/colors.xml | 6 - .../app/src/main/res/values/strings.xml | 3 - .../kotlin/app/src/main/res/values/styles.xml | 11 - .../kotlinexample/ExampleUnitTest.kt | 17 - apps/TesterIntegrated/kotlin/build.gradle | 28 - .../TesterIntegrated/kotlin/gradle.properties | 36 - .../kotlin/gradle/wrapper/gradle-wrapper.jar | Bin 54329 -> 0 bytes .../gradle/wrapper/gradle-wrapper.properties | 8 - apps/TesterIntegrated/kotlin/gradlew | 249 -- apps/TesterIntegrated/kotlin/gradlew.bat | 84 - apps/TesterIntegrated/kotlin/settings.gradle | 6 - apps/TesterIntegrated/metro.config.cjs | 11 - apps/TesterIntegrated/package.json | 38 - apps/TesterIntegrated/react-native.config.js | 30 - apps/TesterIntegrated/swift/.xcode.env | 1 - apps/TesterIntegrated/swift/App.swift | 144 - .../AppIcon.appiconset/Contents.json | 98 - .../swift/Assets.xcassets/Contents.json | 6 - .../swift/Base.lproj/LaunchScreen.storyboard | 25 - .../swift/Generated/BrownfieldStore.swift | 35 - .../swift/Generated/SettingsStore.swift | 29 - apps/TesterIntegrated/swift/Info.plist | 60 - apps/TesterIntegrated/swift/Podfile | 33 - apps/TesterIntegrated/swift/Podfile.lock | 2855 ----------------- .../swift/PrivacyInfo.xcprivacy | 37 - .../SwiftExample.xcodeproj/project.pbxproj | 491 --- .../xcschemes/SwiftExample.xcscheme | 87 - .../contents.xcworkspacedata | 10 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../swift/UIKitExampleViewController.swift | 116 - apps/TesterIntegrated/tsconfig.json | 7 - docs/docs/docs/getting-started/examples.mdx | 1 - yarn.lock | 26 - 74 files changed, 1 insertion(+), 5420 deletions(-) delete mode 100644 apps/TesterIntegrated/.gitignore delete mode 100644 apps/TesterIntegrated/App.tsx delete mode 100644 apps/TesterIntegrated/BrownfieldStore.brownie.ts delete mode 100644 apps/TesterIntegrated/babel.config.cjs delete mode 100644 apps/TesterIntegrated/eslint.config.mjs delete mode 100644 apps/TesterIntegrated/index.js delete mode 100644 apps/TesterIntegrated/kotlin/.gitignore delete mode 100644 apps/TesterIntegrated/kotlin/.project delete mode 100644 apps/TesterIntegrated/kotlin/.settings/org.eclipse.buildship.core.prefs delete mode 100644 apps/TesterIntegrated/kotlin/app/.gitignore delete mode 100644 apps/TesterIntegrated/kotlin/app/build.gradle delete mode 100644 apps/TesterIntegrated/kotlin/app/proguard-rules.pro delete mode 100644 apps/TesterIntegrated/kotlin/app/src/androidTest/java/com/callstack/kotlinexample/ExampleInstrumentedTest.kt delete mode 100644 apps/TesterIntegrated/kotlin/app/src/debug/AndroidManifest.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/AndroidManifest.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/java/com/callstack/kotlinexample/Generated/BrownfieldStore.kt delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/java/com/callstack/kotlinexample/Generated/SettingsStore.kt delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/java/com/callstack/kotlinexample/MainActivity.kt delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/java/com/callstack/kotlinexample/MainApplication.kt delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/java/com/callstack/kotlinexample/ReactNativeFragmentActivity.kt delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/anim/slide_fade_in.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/drawable-v24/ic_launcher_foreground.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/drawable/ic_launcher_background.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/layout/activity_main.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/layout/activity_react_native_fragment.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher_round.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher_round.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/values/colors.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/values/strings.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/main/res/values/styles.xml delete mode 100644 apps/TesterIntegrated/kotlin/app/src/test/java/com/callstack/kotlinexample/ExampleUnitTest.kt delete mode 100644 apps/TesterIntegrated/kotlin/build.gradle delete mode 100644 apps/TesterIntegrated/kotlin/gradle.properties delete mode 100644 apps/TesterIntegrated/kotlin/gradle/wrapper/gradle-wrapper.jar delete mode 100644 apps/TesterIntegrated/kotlin/gradle/wrapper/gradle-wrapper.properties delete mode 100755 apps/TesterIntegrated/kotlin/gradlew delete mode 100644 apps/TesterIntegrated/kotlin/gradlew.bat delete mode 100644 apps/TesterIntegrated/kotlin/settings.gradle delete mode 100644 apps/TesterIntegrated/metro.config.cjs delete mode 100644 apps/TesterIntegrated/package.json delete mode 100644 apps/TesterIntegrated/react-native.config.js delete mode 100644 apps/TesterIntegrated/swift/.xcode.env delete mode 100644 apps/TesterIntegrated/swift/App.swift delete mode 100644 apps/TesterIntegrated/swift/Assets.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 apps/TesterIntegrated/swift/Assets.xcassets/Contents.json delete mode 100644 apps/TesterIntegrated/swift/Base.lproj/LaunchScreen.storyboard delete mode 100644 apps/TesterIntegrated/swift/Generated/BrownfieldStore.swift delete mode 100644 apps/TesterIntegrated/swift/Generated/SettingsStore.swift delete mode 100644 apps/TesterIntegrated/swift/Info.plist delete mode 100644 apps/TesterIntegrated/swift/Podfile delete mode 100644 apps/TesterIntegrated/swift/Podfile.lock delete mode 100644 apps/TesterIntegrated/swift/PrivacyInfo.xcprivacy delete mode 100644 apps/TesterIntegrated/swift/SwiftExample.xcodeproj/project.pbxproj delete mode 100644 apps/TesterIntegrated/swift/SwiftExample.xcodeproj/xcshareddata/xcschemes/SwiftExample.xcscheme delete mode 100644 apps/TesterIntegrated/swift/SwiftExample.xcworkspace/contents.xcworkspacedata delete mode 100644 apps/TesterIntegrated/swift/SwiftExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 apps/TesterIntegrated/swift/UIKitExampleViewController.swift delete mode 100644 apps/TesterIntegrated/tsconfig.json diff --git a/.changeset/config.json b/.changeset/config.json index 51dc18f3..f6bc924a 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -15,7 +15,6 @@ "@callstack/brownfield-example-ios-app", "@callstack/brownfield-example-rn-app", "@callstack/brownfield-example-expo-app", - "@callstack/react-native-brownfield-tester-integrated", "@callstack/brownfield-gradle-plugin-react" ], "___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": { diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 353b06e0..2e1b323d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -50,39 +50,6 @@ jobs: run: | yarn workspace @callstack/react-native-brownfield brownfield --version - android-tester-integrated: - name: Android road test (TesterIntegrated) - runs-on: ubuntu-latest - needs: build-lint - - steps: - - name: Checkout - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 - - - name: Setup - uses: ./.github/actions/setup - - - name: Prepare Android environment - uses: ./.github/actions/prepare-android - - - name: Restore Gradle cache - uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5 - with: - path: | - ~/.gradle/caches - ~/.gradle/wrapper - key: ${{ runner.os }}-android-tester-integrated-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - ${{ runner.os }}-android-tester-integrated-gradle- - - # == TesterIntegrated == - - - name: Generate Brownie stores - run: yarn run brownfield:codegen - - - name: Build integrated Android tester app - run: yarn run build:tester-integrated:android - android-androidapp-expo: name: Android road test (RNApp & AndroidApp - Expo) runs-on: ubuntu-latest @@ -115,77 +82,6 @@ jobs: rn-project-path: apps/RNApp rn-project-maven-path: com/rnapp/brownfieldlib - ios-tester-integrated: - name: iOS road test (TesterIntegrated) - runs-on: macos-26 - needs: build-lint - - env: - USE_CCACHE: 1 - CCACHE_DIR: ${{ github.workspace }}/.ios_ccache - CCACHE_BASEDIR: ${{ github.workspace }} - CCACHE_COMPRESS: '1' - - steps: - - name: Checkout - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 - - - name: Setup - uses: ./.github/actions/setup - - - name: Prepare iOS environment - uses: ./.github/actions/prepare-ios - - - name: Install ccache - run: brew install ccache - - - name: Enable ccache - run: echo "$(brew --prefix)/opt/ccache/libexec" >> $GITHUB_PATH - - - name: Restore TesterIntegrated ccache - uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5 - with: - path: | - .ios_ccache - key: ${{ runner.os }}-tester-integrated-ios-ccache-${{ hashFiles('apps/TesterIntegrated/swift/Podfile.lock', 'apps/TesterIntegrated/swift/SwiftExample.xcodeproj/project.pbxproj') }} - restore-keys: | - ${{ runner.os }}-tester-integrated-ios-ccache- - - # == TesterIntegrated == - - - name: Restore Pods cache (TesterIntegrated) - uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5 - with: - path: | - apps/TesterIntegrated/swift/Pods - key: ${{ runner.os }}-tester-integrated-ios-pods-${{ hashFiles('apps/TesterIntegrated/swift/Podfile.lock') }} - restore-keys: | - ${{ runner.os }}-tester-integrated-ios-pods- - - - name: Install pods (TesterIntegrated) - run: | - cd apps/TesterIntegrated/swift - pod install - - - name: Restore DerivedData cache (TesterIntegrated) - uses: actions/cache@v5 - with: - path: apps/TesterIntegrated/swift/build - key: ${{ runner.os }}-ios-tester-integrated-derived-data-${{ hashFiles('apps/TesterIntegrated/swift/Podfile.lock', 'apps/TesterIntegrated/swift/SwiftExample.xcodeproj/project.pbxproj') }} - restore-keys: | - ${{ runner.os }}-ios-tester-integrated-derived-data- - - - name: Build integrated iOS tester app - run: | - yarn run build:tester-integrated:ios - - # ============== - - - name: Log ccache stats - uses: ./.github/actions/ccache-summary - with: - name: TesterIntegrated - ios-appleapp-vanilla: name: iOS road test (RNApp & AppleApp - Vanilla) runs-on: macos-26 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a57e51d2..21397448 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,10 +4,7 @@ Run `yarn` in the root of the repository to install all dependencies. -Depending on your needs, you may need to install CocoaPods in a subset of the below directories: - -- example React Native iOS app: `cd apps/RNApp/ios && pod install` -- integrated iOS tester app: `cd apps/TesterIntegrated/swift && pod install` +Depending on your needs, you may need to install CocoaPods in the example React Native iOS app: `cd apps/RNApp/ios && pod install`. ## Contributing changes @@ -27,8 +24,6 @@ We use [changesets](https://github.com/changesets/changesets) to make it easier - `brownfield:plugin:publish:local` - publishes the Brownfield Gradle plugin to your local Maven repository for testing purposes - `build:brownfield` - builds the React Native Brownfield package (`packages/react-native-brownfield`) _[Turbo]_ - `build:docs` - builds the documentation site (`docs/`) _[Turbo]_ -- `build:tester-integrated:android` - builds the Android integrated tester app (`apps/TesterIntegrated/android`) -- `build:tester-integrated:ios` - builds the iOS integrated tester app (`apps/TesterIntegrated/swift`) - `build:example:android-rn` - builds the example React Native app for Android (`apps/RNApp/android`) - `build:example:ios-rn` - builds the example React Native app for iOS (`apps/RNApp/ios`) - `build:example:android-consumer:expo` - builds the example native Android consumer (`apps/AndroidApp`) app's flavor consuming the Expo RN app (`apps/ExpoApp`) artifact diff --git a/apps/README.md b/apps/README.md index 1f930ad8..aac6b34c 100644 --- a/apps/README.md +++ b/apps/README.md @@ -10,4 +10,3 @@ This directory contains demo projects showcasing the usage of the `react-native- - `AppleApp` - the native iOS application that integrates the RNApp XCFramework package (a "consumer" of the RNApp library); it comes in two configurations: - `expo` - which uses the artifact produced from `ExpoApp` - `vanilla` - which uses the artifact produced from `RNApp` -- `TesterIntegrated` - a native tester application that integrates the native projects with and React Native project inside a single application, consuming the brownfield module directly, without packaging to an artifact; this is mostly useful for internal development purposes and is not as meaningful for end users of React Native Brownfield diff --git a/apps/TesterIntegrated/.gitignore b/apps/TesterIntegrated/.gitignore deleted file mode 100644 index cd9cba53..00000000 --- a/apps/TesterIntegrated/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -.yarn/* -!.yarn/patches -!.yarn/plugins -!.yarn/releases -!.yarn/sdks -!.yarn/versions - -build diff --git a/apps/TesterIntegrated/App.tsx b/apps/TesterIntegrated/App.tsx deleted file mode 100644 index 94fc6cdf..00000000 --- a/apps/TesterIntegrated/App.tsx +++ /dev/null @@ -1,136 +0,0 @@ -import './BrownfieldStore.brownie'; - -import { useStore } from '@callstack/brownie'; -import { useEffect } from 'react'; -import { StyleSheet, Text, View, Button, TextInput } from 'react-native'; - -import { - createNativeStackNavigator, - type NativeStackScreenProps, -} from '@react-navigation/native-stack'; -import ReactNativeBrownfield from '@callstack/react-native-brownfield'; -import { NavigationContainer } from '@react-navigation/native'; - -const getRandomValue = () => Math.round(Math.random() * 255); -const getRandomTheme = () => { - const primary = [getRandomValue(), getRandomValue(), getRandomValue()]; - const secondary = [ - 255 - (primary?.[0] || 0), - 255 - (primary?.[1] || 0), - 255 - (primary?.[2] || 0), - ]; - - return { - primary: `rgb(${primary[0]}, ${primary[1]}, ${primary[2]})`, - secondary: `rgb(${secondary[0]}, ${secondary[1]}, ${secondary[2]})`, - }; -}; - -type RootStackParamList = { - Home: { theme: { primary: string; secondary: string } }; -}; - -type HomeScreenProps = NativeStackScreenProps; - -const theme = getRandomTheme(); - -function HomeScreen({ navigation, route }: HomeScreenProps) { - const colors = route.params?.theme || theme; - const [counter, setState] = useStore('BrownfieldStore', (s) => s.counter); - const [user] = useStore('BrownfieldStore', (s) => s.user); - - useEffect(() => { - const unsubscribe = navigation.addListener('focus', () => { - const isFirstRoute = !navigation.canGoBack(); - ReactNativeBrownfield.setNativeBackGestureAndButtonEnabled(isFirstRoute); - }); - return unsubscribe; - }, [navigation]); - - return ( - - - React Native Screen - - - - Count: {counter} - - - - setState((prev) => ({ user: { ...prev.user, name: text } })) - } - placeholder="User name" - /> - -