Skip to content

Commit 24714c7

Browse files
enedclaude
andcommitted
fix: Replace melos bootstrap with manual dependency resolution in analysis
The melos bootstrap approach was failing in CI due to mixed package resolution issues. Instead of using melos, manually resolve dependencies for each package in the correct order: 1. workmanager_platform_interface (no internal dependencies) 2. workmanager_android/ios (depend on platform_interface) 3. workmanager (depends on all platform packages) This approach creates pubspec_overrides.yaml files manually for each package to enable local path dependencies, mimicking what melos bootstrap should do but avoiding the CI resolution issues. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
1 parent f26832c commit 24714c7

File tree

1 file changed

+42
-3
lines changed

1 file changed

+42
-3
lines changed

.github/workflows/analysis.yml

Lines changed: 42 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,49 @@ jobs:
1717
run: |
1818
flutter --version
1919
dart --version
20-
- name: bootstrap
20+
- name: Setup dependencies manually
2121
run: |
22-
dart pub global activate melos
23-
melos bootstrap --sdk-path auto
22+
# First, create overrides for all packages
23+
echo "Creating dependency overrides for all packages..."
24+
25+
# workmanager_platform_interface (no dependencies on other packages)
26+
cd workmanager_platform_interface
27+
flutter pub get
28+
cd ..
29+
30+
# workmanager_android (depends on platform_interface)
31+
cd workmanager_android
32+
cat > pubspec_overrides.yaml << 'EOF'
33+
dependency_overrides:
34+
workmanager_platform_interface:
35+
path: ../workmanager_platform_interface
36+
EOF
37+
flutter pub get
38+
cd ..
39+
40+
# workmanager_ios (depends on platform_interface)
41+
cd workmanager_ios
42+
cat > pubspec_overrides.yaml << 'EOF'
43+
dependency_overrides:
44+
workmanager_platform_interface:
45+
path: ../workmanager_platform_interface
46+
EOF
47+
flutter pub get
48+
cd ..
49+
50+
# workmanager (depends on all packages)
51+
cd workmanager
52+
cat > pubspec_overrides.yaml << 'EOF'
53+
dependency_overrides:
54+
workmanager_platform_interface:
55+
path: ../workmanager_platform_interface
56+
workmanager_android:
57+
path: ../workmanager_android
58+
workmanager_ios:
59+
path: ../workmanager_ios
60+
EOF
61+
flutter pub get
62+
cd ..
2463
- uses: axel-op/dart-package-analyzer@v3
2564
with:
2665
githubToken: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)