-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmelos.yaml
More file actions
101 lines (84 loc) · 2.66 KB
/
melos.yaml
File metadata and controls
101 lines (84 loc) · 2.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
name: loom_workspace
repository: https://github.com/zooper-lib/loom
packages:
- packages/**
command:
version:
# Generate commit links in package changelogs.
linkToCommits: true
# Enforce conventional commits.
message: "chore(release): publish packages"
bootstrap:
# Enforce consistent dependency versions across packages.
enforceLockfile: true
scripts:
# Analyze all packages
analyze:
exec: dart analyze --fatal-infos
description: Run dart analyze in all packages.
packageFilters:
dirExists: lib
# Format all packages
format:
run: dart format .
description: Format all Dart files.
# Check formatting without modifying
format:check:
run: dart format --set-exit-if-changed .
description: Check Dart formatting.
# Run tests in all packages
test:
exec: dart test
description: Run tests in all packages.
packageFilters:
dirExists: test
# Run tests with coverage
test:coverage:
exec: dart test --coverage=coverage
description: Run tests with coverage collection.
packageFilters:
dirExists: test
# Run performance tests only
test:perf:
exec: dart test test/performance/ --timeout=none --reporter=expanded
description: Run performance tests.
packageFilters:
fileExists: test/performance/performance_test.dart
# Generate coverage report (requires lcov)
coverage:report:
exec: dart test --coverage=coverage && dart pub global run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info --report-on=lib
description: Generate LCOV coverage report.
packageFilters:
dirExists: test
# Clean all packages
clean:
exec: rm -rf .dart_tool build coverage
description: Clean build artifacts in all packages.
concurrency: 5
# Publish dry run
publish:dry:
exec: dart pub publish --dry-run
description: Dry run publish for all packages.
packageFilters:
dirExists: lib
noPrivate: true
# Build example
build:example:
exec: dart compile exe example/loom_example.dart -o build/loom_example
description: Compile example to native executable.
packageFilters:
fileExists: example/loom_example.dart
# Run example
run:example:
exec: dart run example/loom_example.dart
description: Run the example file.
packageFilters:
fileExists: example/loom_example.dart
# Check all (analyze + format + test)
check:
description: Run all checks (analyze, format, test).
run: melos run analyze && melos run format:check && melos run test
# Prepare for release
prepare:release:
description: Prepare packages for release.
run: melos run check && melos run publish:dry