Skip to content

feat(android): font, contentInsets, lineNumbers (closes #37, refs #32) #60

feat(android): font, contentInsets, lineNumbers (closes #37, refs #32)

feat(android): font, contentInsets, lineNumbers (closes #37, refs #32) #60

Workflow file for this run

name: CI
on:
pull_request:
push:
branches: [develop]
jobs:
typecheck:
name: Typecheck (lib + example)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
- name: Install root deps
run: npm ci
- name: Typecheck library
run: npx tsc --noEmit
- name: Install example deps
run: cd example/ios-app && npm ci
- name: Typecheck example
run: cd example/ios-app && npx tsc --noEmit
build-ios:
name: Build (iOS, Expo CNG)
runs-on: macos-15
needs: typecheck
steps:
- uses: actions/checkout@v4
- name: Select latest Xcode
# Expo SDK 55's modules-core uses Swift 6.1 features (e.g. new
# @MainActor forms). The default Xcode on GitHub runners (16.4 /
# Swift 6.0) errors with "unknown attribute 'MainActor'" — pin
# to the newest Xcode the runner image ships.
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: latest-stable
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.3'
- name: Install cocoapods + cocoapods-spm
run: |
gem install cocoapods
gem install cocoapods-spm
- name: Install root deps
run: npm ci
- name: Install example deps
run: cd example/ios-app && npm ci
- name: Expo prebuild (CNG — generates ios/ via our config plugin)
run: cd example/ios-app && npx expo prebuild --no-install --platform ios
- name: Pod install (Expo wrapper)
run: cd example/ios-app && npx pod-install
- name: xcodebuild
run: |
cd example/ios-app/ios
set -o pipefail
xcodebuild \
-workspace SourceEditorExampleiOS.xcworkspace \
-scheme SourceEditorExampleiOS \
-sdk iphonesimulator \
-configuration Debug \
-destination 'generic/platform=iOS Simulator' \
CODE_SIGNING_ALLOWED=NO \
build
# build-macos: pending #17 (chore: macOS example app)
# Will be a sibling job: runs-on macos-latest, uses react-native run-macos
# toolchain (NOT Expo CNG), needs cocoapods-spm too.