Skip to content

Move Android dev commands under root dev.yml#35

Merged
kyle-schellen merged 1 commit into
mainfrom
05-08-move_android_dev_commands_under_root_dev.yml
May 13, 2026
Merged

Move Android dev commands under root dev.yml#35
kyle-schellen merged 1 commit into
mainfrom
05-08-move_android_dev_commands_under_root_dev.yml

Conversation

@kyle-schellen
Copy link
Copy Markdown
Contributor

@kyle-schellen kyle-schellen commented May 8, 2026

What changes are you making?

Move android/dev.yml into namespaced commands at the repo root sodev up and dev android <cmd> work from the monorepo root. Refs #908. Swift to follow upstack.

How to test

From the repo root:

  • dev up completes without error
  • dev android build runs the Android library build
  • dev android test runs the Android test suite
  • dev android lint runs detekt + Android lint
  • dev android style still works as a legacy alias for lint
  • dev android fix runs detekt autocorrection
  • dev android api check passes against the committed baseline
  • dev android check runs license headers + detekt + lintRelease

Each command should match the behavior of the corresponding command under the old Android dev.yml.


Before you merge

Important

  • I've added tests to support my implementation
  • I have read and agree with the Contribution Guidelines
  • I have read and agree with the Code of Conduct
  • I've updated the relevant platform README (swift/README.md and/or android/README.md)

Releasing a new Swift version?
  • I have bumped the version in swift/ShopifyCheckoutKit.podspec
  • I have bumped the version in swift/Sources/ShopifyCheckoutKit/ShopifyCheckoutKit.swift
  • I have updated swift/CHANGELOG.md
  • I have updated the SwiftPM/CocoaPods version snippets in swift/README.md (major version only)
Releasing a new Android version?
  • I have bumped the versionName in android/lib/build.gradle
  • I have updated android/CHANGELOG.md
  • I have updated the Gradle/Maven version snippets in android/README.md

Tip

See the Contributing documentation for the full release process per platform.foll

@kyle-schellen kyle-schellen self-assigned this May 8, 2026
@kyle-schellen kyle-schellen changed the title move android dev commands under root dev.yml Move Android dev commands under root dev.yml May 8, 2026
@kyle-schellen kyle-schellen force-pushed the 05-08-move_android_dev_commands_under_root_dev.yml branch 2 times, most recently from dbc5438 to 6e8f971 Compare May 10, 2026 16:38
@markmur markmur added the #gsd:50662 Rebase Checkout Kit on UCP label May 11, 2026
@kyle-schellen kyle-schellen force-pushed the 05-08-move_android_dev_commands_under_root_dev.yml branch 2 times, most recently from 6e8f971 to f73c836 Compare May 11, 2026 14:31
@kyle-schellen kyle-schellen marked this pull request as ready for review May 11, 2026 14:58
@kyle-schellen kyle-schellen requested a review from a team May 11, 2026 14:59
Comment thread platforms/android/samples/MobileBuyIntegration/README.md
@kyle-schellen kyle-schellen force-pushed the 05-08-move_android_dev_commands_under_root_dev.yml branch from f73c836 to 7d3dd73 Compare May 11, 2026 20:25
Copy link
Copy Markdown
Contributor

kieran-osgood-shopify commented May 12, 2026

I think this is shaping up nicely!

This feedback ranges across the stack, so dropping it here in a single dump, and the first point is repeated from comment thread below, however don't consider this feedback as blocking, we should go forwards with merging as is so everyone can benefit from it this week. Improvements can be stacked on top?

I think the main improvement will be conformity and parity
Achieving the same DX no matter which platform you're developing, and reducing the surface area if possible too (no need for dev style if dev fix autofixes formatting)

  1. I think it would be nice to add a 4th PR on this stack to add "root" commands that run the same name command in each workspace swift / protocol / android / react-native
    dev lint / dev test / dev check / dev format / dev build
  2. We can add some guidance to the AGENTS.md to help it understand how to use dev.yml in a dev workflow
  3. It'd be nice if we aligned all of the script names and fill in gaps
  • clean script exists for react-native but not android/swift, this seems like something we could reasonably add (for android .gradlew clean / iOS xcodebuild clean)
  • dev android check license-header exists and could probably exist for all other platforms

Comment thread dev.yml Outdated
@kyle-schellen kyle-schellen force-pushed the 05-08-move_android_dev_commands_under_root_dev.yml branch 2 times, most recently from 68173bf to e0453ab Compare May 12, 2026 16:37
@kyle-schellen kyle-schellen requested a review from a team as a code owner May 12, 2026 16:37
Copy link
Copy Markdown
Contributor

@Juanita-Dash Juanita-Dash left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


Review assisted by pair-review

Comment thread dev.yml Outdated
Comment thread dev.yml
@kyle-schellen kyle-schellen force-pushed the 05-08-move_android_dev_commands_under_root_dev.yml branch from e0453ab to ee59056 Compare May 12, 2026 17:41
Copy link
Copy Markdown
Contributor

@Juanita-Dash Juanita-Dash left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@kyle-schellen kyle-schellen force-pushed the 05-08-move_android_dev_commands_under_root_dev.yml branch from ee59056 to 84d8099 Compare May 12, 2026 21:37
@kyle-schellen kyle-schellen merged commit eed7dc5 into main May 13, 2026
17 checks passed
@kyle-schellen kyle-schellen deleted the 05-08-move_android_dev_commands_under_root_dev.yml branch May 13, 2026 14:51
kyle-schellen added a commit that referenced this pull request May 13, 2026
Refs issue #[908](shop/issues-checkout-kit#908).

### What changes are you making?

Move `platforms/react-native/dev.yml` into namespaced commands at the repo
root so `dev up` and `dev react-native <cmd>` (or `dev rn`) work from the
monorepo root. Last in the stack after #35 (Android) and #36 (Swift).

Also addresses review feedback to align RN with the Swift/Android shape:

- Adds `s` alias for `server`
- Drops the misleading `check` alias on `lint` (Android `check` has a larger surface; RN had no license-header check to back it)
- Renames `fix` → `format` with `fix` kept as a legacy alias (matches the `dev <platform> format` convention)
- Adds `dev rn build` so all three platforms expose a `build` subcommand
- Updates `scripts/lint_swift` help text to point at the canonical `dev react-native format`

## How to test

From the repo root:

- `dev up` completes without error, including Node v22.14.0 / pnpm 10.33.1 setup, RN dependencies, gems, and pods
- `dev rn build` builds the `@shopify/checkout-kit-react-native` module
- `dev rn lint` runs SwiftLint/SwiftFormat checks, module lint, and sample lint
- `dev rn style` still works as a legacy alias for `lint`
- `dev rn lint swift`, `dev rn lint module`, and `dev rn lint sample` scope linting to one area
- `dev rn format` auto-fixes Swift lint and format issues (SwiftLint + SwiftFormat)
- `dev rn fix` still works as a legacy alias for `format`
- `dev rn server` starts Metro
- `dev rn s` still works as a short alias for `server`
- `dev rn ios` runs the iOS sample app
- `dev rn android` runs the Android sample app
- `dev rn clean` wipes module + sample workspaces and stops `sccache`

---

### Before you merge

> [!IMPORTANT]
>
> - [ ] I've added tests to support my implementation
> - [ ] I have read and agree with the [Contribution Guidelines](./CONTRIBUTING.md)
> - [ ] I have read and agree with the [Code of Conduct](./CODE_OF_CONDUCT.md)
> - [ ] I've updated the relevant platform README (`platforms/swift/README.md` and/or `platforms/android/README.md`)

---

<details>
<summary>Releasing a new Swift version?</summary>

- [ ] I have bumped the version in `platforms/swift/ShopifyCheckoutKit.podspec`
- [ ] I have bumped the version in `platforms/swift/Sources/ShopifyCheckoutKit/ShopifyCheckoutKit.swift`
- [ ] I have updated `platforms/swift/CHANGELOG.md`
- [ ] I have updated the SwiftPM/CocoaPods version snippets in `platforms/swift/README.md` (major version only)

</details>

<details>
<summary>Releasing a new Android version?</summary>

- [ ] I have bumped the `versionName` in `platforms/android/lib/build.gradle`
- [ ] I have updated `platforms/android/CHANGELOG.md`
- [ ] I have updated the Gradle/Maven version snippets in `platforms/android/README.md`

</details>

> [!TIP]
> See the [Contributing documentation](./CONTRIBUTING.md) for the full release process per platform.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

#gsd:50662 Rebase Checkout Kit on UCP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants