Skip to content

Replace component reconciliation with a projectional core #1517

Replace component reconciliation with a projectional core

Replace component reconciliation with a projectional core #1517

Workflow file for this run

name: Check PR for merging
on:
pull_request:
concurrency:
group: pr-allowed-to-merge-${{ github.ref_name }}
cancel-in-progress: true
jobs:
tests:
name: Check if `lively.next` world loads and tests stay green
runs-on: ubuntu-latest
steps:
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: '24'
- name: Setup bun
uses: oven-sh/setup-bun@v2
- name: Setup Rust toolchain
uses: dtolnay/rust-toolchain@1.95.0
with:
targets: wasm32-wasip1
- name: Install `sultan`
run: pip3 install sultan
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Cache `lively.next` dependencies
id: cache-lively-deps
uses: actions/cache/restore@v3
env:
cache-name: lively-deps
with:
path: |
lively.next-node_modules/
.puppeteer-browser-cache/
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('lively*/package.json', 'flatn/package.json', 'mocha-es6/package.json') }}
- name: Prepare to install `lively.next`
run: chmod a+x ./install.sh
- name: Install `lively.next`
uses: nick-fields/retry@v3
with:
timeout_minutes: 15
max_attempts: 5
retry_on: error
command: ./install.sh
- name: Cache `lively.next` dependencies
if: ${{ steps.cache-lively-deps.outputs.cache-hit != 'true' }}
uses: actions/cache/save@v3
env:
cache-name: lively-deps
with:
path: |
lively.next-node_modules/
.puppeteer-browser-cache/
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('lively*/package.json', 'flatn/package.json', 'mocha-es6/package.json') }}
- name: Check if Bundled Artifacts are up to Date
run: ./scripts/check-build-status.py
- name: Run CI Test Script for Changed Folders
run: ./scripts/test.sh $(./scripts/tests_for_branch.sh)
- name: Start the lively server
run: |
chmod a+x ./start-server.sh
for attempt in 1 2 3; do
./start-server.sh > /tmp/lively-next-boot-server.log 2>&1 &
server_pid=$!
if node ./scripts/wait-for-server.js http://127.0.0.1:9011/ 120000 1000 "$server_pid"; then
exit 0
fi
echo "Lively server boot-check start attempt $attempt/3 failed. Recent server output:"
tail -80 /tmp/lively-next-boot-server.log 2>/dev/null || true
kill "$server_pid" 2>/dev/null || true
wait "$server_pid" 2>/dev/null || true
pkill -f "bin/start-server.js.*9011" 2>/dev/null || true
pkill -f "start-server.sh" 2>/dev/null || true
done
exit 1
- name: Run boot check script
run: |
chmod a+x ./scripts/check-boot.sh
./scripts/check-boot.sh