Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
29 changes: 0 additions & 29 deletions .github/workflows/android-license-headers.yml

This file was deleted.

24 changes: 0 additions & 24 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ jobs:
- 'platforms/android/**'
- 'protocol/**'
- '.github/workflows/android-test.yml'
- '.github/workflows/android-license-headers.yml'
- '.github/workflows/breaking-changes.yml'
- '.github/workflows/ci.yml'
swift:
Expand All @@ -65,15 +64,13 @@ jobs:
- '.github/workflows/rn-test-ios.yml'
- '.github/workflows/rn-build-android.yml'
- '.github/workflows/rn-build-ios.yml'
- '.github/workflows/rn-license-headers.yml'
- '.github/workflows/rn-check-packed-files.yml'
- '.github/workflows/rn-lint.yml'
- '.github/workflows/breaking-changes.yml'
- '.github/workflows/ci.yml'
web:
- 'platforms/web/**'
- '.github/workflows/web.yml'
- '.github/workflows/web-license-headers.yml'
- '.github/actions/setup/**'
- '.github/workflows/ci.yml'

Expand All @@ -83,12 +80,6 @@ jobs:
if: needs.changes.outputs.android == 'true'
uses: ./.github/workflows/android-test.yml

android-license-headers:
name: Android
needs: changes
if: needs.changes.outputs.android == 'true'
uses: ./.github/workflows/android-license-headers.yml

swift-test-package:
name: Swift
needs: changes
Expand Down Expand Up @@ -140,12 +131,6 @@ jobs:
if: needs.changes.outputs.reactNative == 'true'
uses: ./.github/workflows/rn-build-ios.yml

rn-license-headers:
name: React Native
needs: changes
if: needs.changes.outputs.reactNative == 'true'
uses: ./.github/workflows/rn-license-headers.yml

rn-check-packed-files:
name: React Native
needs: changes
Expand All @@ -167,12 +152,6 @@ jobs:
pull-requests: write
uses: ./.github/workflows/web.yml

web-license-headers:
name: Web
needs: changes
if: needs.changes.outputs.web == 'true'
uses: ./.github/workflows/web-license-headers.yml

breaking-changes:
name: Breaking Changes
needs: changes
Expand All @@ -195,7 +174,6 @@ jobs:
needs:
- changes
- android-test
- android-license-headers
- swift-test-package
- swift-build-samples
- swift-lint
Expand All @@ -204,11 +182,9 @@ jobs:
- rn-test-ios
- rn-build-android
- rn-build-ios
- rn-license-headers
- rn-check-packed-files
- rn-lint
- web
- web-license-headers
- breaking-changes
runs-on: ubuntu-latest
steps:
Expand Down
22 changes: 0 additions & 22 deletions .github/workflows/rn-license-headers.yml

This file was deleted.

10 changes: 0 additions & 10 deletions .github/workflows/swift-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,16 +51,6 @@ jobs:

- run: ./Scripts/lint check --verbose --skip-pod

check-license-headers:
name: License Headers
runs-on: ${{ vars.MACOS_RUNNER }}
defaults:
run:
working-directory: platforms/swift
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- run: ./Scripts/ensure_license

lint-podspec:
name: CocoaPods
runs-on: ${{ vars.MACOS_RUNNER }}
Expand Down
24 changes: 0 additions & 24 deletions .github/workflows/web-license-headers.yml

This file was deleted.

3 changes: 0 additions & 3 deletions .github/workflows/web-publish-bootstrap.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,6 @@ jobs:
- name: Verify package (publint)
run: pnpm verify

- name: Check license headers
run: ./scripts/check_license_headers.rb

- name: Pack and inspect contents
run: |
pnpm pack --pack-destination /tmp/web-bootstrap
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/web-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,9 +99,6 @@ jobs:
- name: Verify package (publint)
run: pnpm verify

- name: Check license headers
run: ./scripts/check_license_headers.rb

- name: Pack and inspect contents
run: |
pnpm pack --pack-destination /tmp/web-publish
Expand Down
7 changes: 1 addition & 6 deletions dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,6 @@ open:
"PRs": "https://github.com/Shopify/checkout-kit/pulls"

check:
android-license-headers: cd platforms/android && ./scripts/check_license_headers.rb
android-detekt: cd platforms/android && ./gradlew detekt
android-lint: cd platforms/android && ./gradlew lintRelease
swift-lint: cd platforms/swift && ./Scripts/lint
Expand Down Expand Up @@ -164,17 +163,13 @@ commands:
run: cd platforms/android && ./gradlew :lib:apiDump

check:
desc: Run all Android checks (license headers, detekt, android lint)
desc: Run all Android checks (detekt, android lint)
run: |
set -e
cd platforms/android
./scripts/check_license_headers.rb
./gradlew detekt
./gradlew lintRelease
subcommands:
license-headers:
desc: Check MIT license headers in source files
run: cd platforms/android && ./scripts/check_license_headers.rb
detekt:
desc: Run detekt static analysis
run: cd platforms/android && ./gradlew detekt
Expand Down
1 change: 0 additions & 1 deletion platforms/android/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ The sample is a separate Gradle composite (`samples/MobileBuyIntegration/setting

- **`-Xexplicit-api=strict`** is on (`lib/build.gradle`). Every public class, method, field, and property must have an explicit visibility modifier. "Accidentally public" is not a thing here. This is a consumer-protection rule — if you see a public-by-default declaration, it was deliberate.
- **Max line length: 140** (detekt-enforced). Detekt config: `lib/detekt.config.yml`.
- **MIT license header required on every new source file.** Format: copy the top comment of any existing `.kt` or `.java` file in `lib/src/main` or `lib/src/test`. Enforced in CI via the repo-root `scripts/check_license_headers.rb`.
- **Library JVM target: 1.8.** Intentional for consumer compatibility; don't raise without a major-version discussion.
- **Library Kotlin version is pinned.** The `lib/build.gradle` plugin version and any `apiVersion` / `languageVersion` settings exist to keep consumer compatibility stable. A Kotlin major-version migration is a planned major-version event, not a casual dep bump.
- **Prefer generated protocol models.** Before adding hand-written protocol DTOs, check the generated models in `lib/src/main/java/com/shopify/checkoutkit/Models.kt` and the OpenRPC schema. Use generated UCP/ECP types for wire payloads; reserve local DTOs for Android-internal transport helpers that are not represented in the schema.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,3 @@
/*
* MIT License
*
* Copyright 2023-present, Shopify Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.shopify.checkoutkit

import android.annotation.SuppressLint
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,3 @@
/*
* MIT License
*
* Copyright 2023-present, Shopify Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.shopify.checkoutkit

import android.webkit.JavascriptInterface
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,3 @@
/*
* MIT License
*
* Copyright 2023-present, Shopify Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.shopify.checkoutkit

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,3 @@
/*
* MIT License
*
* Copyright 2023-present, Shopify Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.shopify.checkoutkit

import android.content.Context
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,3 @@
/*
* MIT License
*
* Copyright 2023-present, Shopify Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.shopify.checkoutkit

import kotlinx.serialization.Serializable
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,3 @@
/*
* MIT License
*
* Copyright 2023-present, Shopify Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.shopify.checkoutkit

import android.net.Uri
Expand Down
Loading
Loading