Check the Dart SDK range from pubspec.yaml
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 72/100
Research direction
Start with the RUNTIMES table in src/devready/checks/runtimes.py and the existing extractor pattern there, then read explain.py and docs/checks.md to see where a new entry goes. Write a line-based extractor for the sdk key under the top-level environment block of pubspec.yaml, ignoring sdk: flutter under dependencies. Done when a pubspec requiring >=3.0.0 <4.0.0 with Dart 2.19 yields one fail showing both versions, and pytest, ruff check and ruff format --check pass.
Written by the indexing model from the issue text.
Description
Problem: Dart and Flutter projects declare the SDK range in pubspec.yaml:
environment:
sdk: ">=3.0.0 <4.0.0"
dart pub get fails when the installed SDK is outside that range. DevReady does not check Dart.
Do:
- Add a
dartrow toRUNTIMESinsrc/devready/checks/runtimes.py(exedart, args--version,.tool-versionsnamedart). - Extractor for
pubspec.yaml: line-based only (no YAML parser, zero dependencies). Find thesdk:key indented under a top-levelenvironment:block, strip quotes, return it only if it matchesSAFE_SPEC. Ignoresdk: flutterunderdependencies. - Id
project.dart.pubspec, miss =fail. - Add the
explain.pyentry, adocs/checks.mdrow, a CHANGELOG line, the README check list mention and unit tests (quoted/unquoted spec,sdk: flutterin dependencies is ignored, hostile line, too old).
Done when:
- The pubspec above with Dart 2.19 installed gives one
failshowing both versions. - A Flutter app's
dependencies: flutter: sdk: flutternever counts as a version.
Out of scope: the flutter: constraint under environment (follow-up).
Done when: see the list above, plus pytest, ruff check and ruff format --check pass.
Notes:
- Read-only: never execute project files, never echo file contents; only a validated version or spec reaches the report.
- No network, no new runtime dependencies (Python >= 3.10 stdlib only).
- Comment below to claim it and I will assign you.
- Dominant language
- Python
- Stars
- 2
- Forks
- 3
- Avg merge
- 10h 51m
- Merged PRs (30d)
- 40
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Evalogical-Inc/devReady
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Evalogical-Inc/devReady#71 ·
Maintainers usually reply within 1 day
-
enhancement good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Evalogical-Inc/devReady#66 ·
Maintainers usually reply within 1 day
-
enhancement good first issue
Difficulty 2/5 3-5 days Newbie friendliness 72/100
Evalogical-Inc/devReady#61 ·
Maintainers usually reply within 1 day
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
Evalogical-Inc/devReady#72 ·
Maintainers usually reply within 1 day
-
Read the Java pin from .sdkmanrcPossibly taken @Utkarsh3725 claimed this today. Openenhancement good first issue help wanted
Difficulty 3/5 Half a day Newbie friendliness 74/100
Evalogical-Inc/devReady#70 ·
Maintainers usually reply within 1 day
All issues in Evalogical-Inc/devReady
Similar issues
-
Email validation accepts a trailing newlinePossibly taken @marcello-pichini claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
dbt-labs/spark-utils#51 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
bug frontend
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
vendrabuck/HERD#1419 ·
Maintainers usually reply within 1 day