mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-15 00:01:10 +02:00
Applied formatting to 1487+ files using pnpm format:write - TypeScript/JavaScript files - Svelte components - Astro pages - JSON configs - Markdown docs 13 files still need manual review (Astro JSX comments)
180 lines
4.6 KiB
Markdown
180 lines
4.6 KiB
Markdown
# Dependency Alignment Guide
|
|
|
|
This document tracks critical dependencies across all projects and their target versions for alignment.
|
|
|
|
## Critical Dependencies
|
|
|
|
### High Priority - Version Mismatches
|
|
|
|
| Package | Target Version | Current Versions | Notes |
|
|
| ----------------------- | -------------- | ----------------- | -------------------------------------- |
|
|
| `@supabase/supabase-js` | **2.81.1** | 2.38.4 - 2.81.1 | Significant spread, alignment critical |
|
|
| `typescript` | **5.9.2** | 5.3.3 - 5.9.2 | Update all to latest |
|
|
| `react` | **19.1.0** | 18.3.1 - 19.1.0 | Mixed versions |
|
|
| `expo` | **54.x** | 52.0.39 - 54.0.21 | Manacore needs update |
|
|
| `expo-router` | **6.x** | 4.0.19 - 6.0.14 | Manacore needs update |
|
|
| `astro` | **5.16.0** | 5.3.0 - 5.16.0 | Memoro landing needs update |
|
|
|
|
### Current Status by Project
|
|
|
|
#### Supabase Versions
|
|
|
|
```
|
|
maerchenzauber:
|
|
- backend: 2.50.3
|
|
- mobile: 2.50.3
|
|
|
|
manacore:
|
|
- mobile: 2.38.4 ❌ (very outdated)
|
|
- web: 2.49.2
|
|
|
|
manadeck:
|
|
- backend: 2.58.0
|
|
- mobile: 2.38.4 ❌ (very outdated)
|
|
- web: 2.81.1 ✅
|
|
|
|
memoro:
|
|
- mobile: 2.49.4
|
|
- web: 2.76.1
|
|
```
|
|
|
|
#### Expo/React Native Versions
|
|
|
|
```
|
|
maerchenzauber:
|
|
- expo: 54.0.21 ✅
|
|
- react-native: 0.81.5 ✅
|
|
- expo-router: 6.0.14 ✅
|
|
|
|
manacore:
|
|
- expo: 52.0.39 ❌ (SDK 52, needs update to 54)
|
|
- react-native: 0.76.7 ❌
|
|
- expo-router: 4.0.19 ❌
|
|
|
|
manadeck:
|
|
- expo: 54.0.13 ✅
|
|
- react-native: 0.81.4 ✅
|
|
- expo-router: 6.0.10 ✅
|
|
|
|
memoro:
|
|
- expo: 54.0.0 ✅
|
|
- react-native: 0.81.4 ✅
|
|
- expo-router: 6.0.8 ✅
|
|
```
|
|
|
|
#### NestJS Versions (Backends)
|
|
|
|
```
|
|
maerchenzauber: NestJS 10.0.0
|
|
manadeck: NestJS 11.0.1
|
|
|
|
Target: Align to NestJS 11.x
|
|
```
|
|
|
|
## Migration Priority
|
|
|
|
### Phase 1: Critical Alignments (Week 1)
|
|
|
|
1. **Manacore Expo Update** (High Risk)
|
|
- Upgrade from Expo SDK 52 → 54
|
|
- Update expo-router 4.x → 6.x
|
|
- Update react-native 0.76.7 → 0.81.x
|
|
- This is the most significant update needed
|
|
|
|
2. **Supabase Alignment**
|
|
- Update all projects to 2.81.1
|
|
- Test auth flows after update
|
|
- Check for breaking changes in RLS
|
|
|
|
3. **TypeScript Alignment**
|
|
- Update all to 5.9.2
|
|
- Run type-check across all projects
|
|
|
|
### Phase 2: Secondary Alignments (Week 2)
|
|
|
|
1. **Astro Updates**
|
|
- Update Memoro landing from 5.3.0 → 5.16.0
|
|
|
|
2. **SvelteKit/Vite Updates**
|
|
- Align Vite versions (6.0.7 → 7.1.10)
|
|
- Align SvelteKit versions
|
|
|
|
3. **NestJS Alignment**
|
|
- Update Maerchenzauber backend 10.x → 11.x
|
|
- Test all API endpoints
|
|
|
|
## Alignment Commands
|
|
|
|
### Update Supabase across all projects:
|
|
|
|
```bash
|
|
# Maerchenzauber
|
|
cd maerchenzauber/apps/backend && pnpm update @supabase/supabase-js@2.81.1
|
|
cd maerchenzauber/apps/mobile && pnpm update @supabase/supabase-js@2.81.1
|
|
|
|
# Manacore
|
|
cd manacore/apps/mobile && pnpm update @supabase/supabase-js@2.81.1
|
|
cd manacore/apps/web && pnpm update @supabase/supabase-js@2.81.1
|
|
|
|
# Manadeck
|
|
cd manadeck/backend && pnpm update @supabase/supabase-js@2.81.1
|
|
cd manadeck/apps/mobile && pnpm update @supabase/supabase-js@2.81.1
|
|
|
|
# Memoro
|
|
cd memoro/apps/mobile && pnpm update @supabase/supabase-js@2.81.1
|
|
cd memoro/apps/web && pnpm update @supabase/supabase-js@2.81.1
|
|
```
|
|
|
|
### Update TypeScript across all projects:
|
|
|
|
```bash
|
|
pnpm update typescript@5.9.2 --recursive
|
|
```
|
|
|
|
## Testing After Alignment
|
|
|
|
After updating dependencies, verify:
|
|
|
|
1. **Build succeeds**: `pnpm run build`
|
|
2. **Type checks pass**: `pnpm run type-check`
|
|
3. **Tests pass**: `pnpm run test`
|
|
4. **Auth flows work** (especially after Supabase updates)
|
|
5. **Mobile apps launch** (especially after Expo updates)
|
|
|
|
## Breaking Changes to Watch
|
|
|
|
### Supabase 2.38 → 2.81
|
|
|
|
- Auth session handling may have changed
|
|
- Check `onAuthStateChange` listeners
|
|
- Verify RLS policies still work
|
|
|
|
### Expo SDK 52 → 54
|
|
|
|
- Check expo-router migration guide
|
|
- New navigation patterns in 6.x
|
|
- Screen options changes
|
|
- Layout changes
|
|
|
|
### NestJS 10 → 11
|
|
|
|
- Decorator changes
|
|
- Module resolution changes
|
|
- Check middleware compatibility
|
|
|
|
## Recommended Tools
|
|
|
|
- **Renovate/Dependabot**: Auto-update dependencies
|
|
- **pnpm outdated**: Check for outdated packages
|
|
- **turbo prune**: Create minimal installs for specific projects
|
|
|
|
## Tracking Updates
|
|
|
|
Mark completed updates:
|
|
|
|
- [ ] Supabase alignment (all projects)
|
|
- [ ] TypeScript alignment (all projects)
|
|
- [ ] Manacore Expo SDK update
|
|
- [ ] Astro alignment
|
|
- [ ] NestJS alignment
|
|
- [ ] SvelteKit/Vite alignment
|