Skip to content

chore(deps-dev): bump eslint from 8.57.1 to 9.34.0 #17

chore(deps-dev): bump eslint from 8.57.1 to 9.34.0

chore(deps-dev): bump eslint from 8.57.1 to 9.34.0 #17

Workflow file for this run

name: PR Validation
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Check formatting
run: |
# Rename config file if needed for ESLint to work
if [ -f "eslint.config.js" ] && [ ! -f "eslint.config.mjs" ]; then
mv eslint.config.js eslint.config.mjs
fi
npm run lint
- name: Type check
run: npm run typecheck
- name: Build
run: npm run build:sdk || npm run build
- name: Test
run: npm run test:coverage || echo "Tests not configured yet"
- name: Check test coverage
run: |
# Skip coverage check if tests aren't configured
if npm run test:coverage > /dev/null 2>&1; then
echo "✅ Tests are configured and passing"
else
echo "⚠️ Tests not configured yet - skipping coverage check"
fi
- name: Check bundle size
run: |
npm run build:sdk || npm run build
BUNDLE_SIZE=$(find dist -name "*.js" -type f -exec du -b {} + | awk '{sum+=$1} END {print sum}')
MAX_SIZE=100000 # 100KB
echo "Bundle size: $BUNDLE_SIZE bytes"
if [ $BUNDLE_SIZE -gt $MAX_SIZE ]; then
echo "❌ Bundle size exceeds 100KB limit"
exit 1
else
echo "✅ Bundle size is within limits"
fi
- name: Validate package.json
run: |
# Check required fields
node -e "
const pkg = require('./package.json');
const required = ['name', 'version', 'description', 'main', 'types', 'license'];
const missing = required.filter(field => !pkg[field]);
if (missing.length > 0) {
console.error('❌ Missing required fields in package.json:', missing.join(', '));
process.exit(1);
}
console.log('✅ All required fields present in package.json');
"