Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:

env:
FLUTTER_VERSION: '3.44.2'
MELOS_VERSION: '6.3.3'
MELOS_VERSION: '8.2.2'

jobs:
pigeon_contracts:
Expand Down
9 changes: 4 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,10 @@
.packages
.pub/
pubspec.lock
# pubspec_overrides.yaml is intentionally tracked: none of the federated
# packages are published to pub.dev yet, so their `^1.0.x` inter-package
# constraints only resolve via these local path overrides. On a clean checkout
# `melos bootstrap` cannot regenerate them (its initial root `pub get` fails
# before any override is written), so CI needs them committed.
# Under Dart pub workspaces (Melos 7+), local packages are linked via the
# root `workspace:` list, not per-package overrides. Melos no longer generates
# these, and `dependency_overrides` are only legal in the workspace root.
pubspec_overrides.yaml

build/
local.properties
Expand Down
5 changes: 4 additions & 1 deletion example/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,10 @@ version: 1.0.0+1
publish_to: "none" # Remove this line if you wish to publish to pub.dev

environment:
sdk: ">=3.1.0 <4.0.0"
sdk: ">=3.6.0 <4.0.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
Expand Down
22 changes: 0 additions & 22 deletions example/pubspec_overrides.yaml

This file was deleted.

58 changes: 0 additions & 58 deletions melos.yaml

This file was deleted.

3 changes: 3 additions & 0 deletions packages/flutter_midi_command_android/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ environment:
sdk: ">=3.12.0 <4.0.0"
flutter: ">=3.44.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
sdk: flutter
Expand Down
4 changes: 0 additions & 4 deletions packages/flutter_midi_command_android/pubspec_overrides.yaml

This file was deleted.

3 changes: 3 additions & 0 deletions packages/flutter_midi_command_ble/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ environment:
sdk: ">=3.11.4 <4.0.0"
flutter: ">=3.24.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
sdk: flutter
Expand Down
4 changes: 0 additions & 4 deletions packages/flutter_midi_command_ble/pubspec_overrides.yaml

This file was deleted.

3 changes: 3 additions & 0 deletions packages/flutter_midi_command_darwin/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ environment:
sdk: ">=3.7.0 <4.0.0"
flutter: ">=3.24.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
sdk: flutter
Expand Down
4 changes: 0 additions & 4 deletions packages/flutter_midi_command_darwin/pubspec_overrides.yaml

This file was deleted.

3 changes: 3 additions & 0 deletions packages/flutter_midi_command_linux/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ environment:
sdk: ">=3.7.0 <4.0.0"
flutter: ">=3.24.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
sdk: flutter
Expand Down
4 changes: 0 additions & 4 deletions packages/flutter_midi_command_linux/pubspec_overrides.yaml

This file was deleted.

3 changes: 3 additions & 0 deletions packages/flutter_midi_command_platform_interface/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@ environment:
sdk: ">=3.7.0 <4.0.0"
flutter: ">=3.24.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
sdk: flutter
Expand Down
3 changes: 3 additions & 0 deletions packages/flutter_midi_command_web/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ environment:
sdk: ">=3.7.0 <4.0.0"
flutter: ">=3.24.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
sdk: flutter
Expand Down
4 changes: 0 additions & 4 deletions packages/flutter_midi_command_web/pubspec_overrides.yaml

This file was deleted.

3 changes: 3 additions & 0 deletions packages/flutter_midi_command_windows/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ environment:
sdk: ">=3.7.0 <4.0.0"
flutter: ">=3.24.0"

# Part of the flutter_midi_command pub workspace (see root pubspec `workspace:`).
resolution: workspace

dependencies:
flutter:
sdk: flutter
Expand Down
4 changes: 0 additions & 4 deletions packages/flutter_midi_command_windows/pubspec_overrides.yaml

This file was deleted.

73 changes: 72 additions & 1 deletion pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,20 @@ environment:
sdk: ">=3.7.0 <4.0.0"
flutter: ">=3.24.0"

# Dart pub workspace: local packages are linked from these paths (Melos 7+ uses
# native pub workspaces instead of generated pubspec_overrides.yaml). Globs are
# not supported here, so members are listed explicitly. The root package itself
# is a member via `melos: useRootAsPackage: true` below.
workspace:
- packages/flutter_midi_command_platform_interface
- packages/flutter_midi_command_android
- packages/flutter_midi_command_darwin
- packages/flutter_midi_command_linux
- packages/flutter_midi_command_web
- packages/flutter_midi_command_windows
- packages/flutter_midi_command_ble
- example

dependencies:
flutter:
sdk: flutter
Expand All @@ -32,7 +46,7 @@ dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^5.0.0
melos: ^6.3.2
melos: ^8.2.2
pigeon: ^22.6.0

# For information on the generic Dart part of this file, see the
Expand All @@ -58,3 +72,60 @@ flutter:
default_package: flutter_midi_command_windows
web:
default_package: flutter_midi_command_web

# Melos 7+ config lives here (there is no more melos.yaml). Packages are derived
# from the `workspace:` field above; `useRootAsPackage` adds this root package.
melos:
name: flutter_midi_command_workspace
useRootAsPackage: true

command:
version:
# The root package (flutter_midi_command) shares its CHANGELOG.md with the
# workspace root, so the generated workspace changelog would overwrite the
# package's own changelog. Disable it and keep per-package changelogs only.
workspaceChangelog: false

scripts:
analyze:
run: dart run melos exec --concurrency=1 --ignore=flutter_midi_command_example -- "flutter analyze"
analyze:example:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter analyze"
test:
run: dart run melos exec --dir-exists=test --concurrency=1 --ignore=flutter_midi_command_example --ignore=flutter_midi_command_web -- "flutter test"
test:web:chrome:
run: dart run melos exec --scope=flutter_midi_command_web -- "flutter test --platform chrome"
test:native:android:
run: bash ./example/android/gradlew -p example/android :flutter_midi_command_android:testDebugUnitTest
test:native:darwin:
run: swift package --package-path packages/flutter_midi_command_darwin/darwin/flutter_midi_command_darwin describe
test:native:linux:
run: dart run melos exec --scope=flutter_midi_command_linux -- "flutter test"
test:native:windows:
run: dart run melos exec --scope=flutter_midi_command_windows -- "flutter test"
test:example:integration:android:
run: dart run melos exec --scope=flutter_midi_command_example -- "bash tool/run_android_smoke_test.sh"
test:example:integration:ios:
run: dart run melos exec --scope=flutter_midi_command_example -- "bash tool/run_ios_smoke_test.sh"
test:example:integration:linux:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter test integration_test/smoke_test.dart -d linux"
test:example:integration:macos:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter test integration_test/smoke_test.dart -d macos"
test:example:integration:web:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter test test/smoke_web_test.dart --platform chrome"
test:example:integration:windows:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter test integration_test/smoke_test.dart -d windows"
build:example:android:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter build apk --debug --target-platform android-arm64 --android-skip-build-dependency-validation"
build:example:linux:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter build linux --debug"
build:example:ios:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter build ios --debug --no-codesign"
build:example:macos:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter build macos --debug"
build:example:windows:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter build windows --debug"
build:example:web:
run: dart run melos exec --scope=flutter_midi_command_example -- "flutter build web --debug"
format:
run: dart run melos exec -- "dart format --set-exit-if-changed ."
14 changes: 0 additions & 14 deletions pubspec_overrides.yaml

This file was deleted.