-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Problem
None of the packages have the metadata pub.dev needs to score well. Several packages are missing required files entirely. This blocks production publishing.
What's Missing
1. pubspec.yaml metadata — ALL packages
No package has any of these fields:
| Field | Purpose | Status |
|---|---|---|
homepage: |
Links to project site on pub.dev | MISSING from all 12 packages |
topics: |
pub.dev search/discovery tags | MISSING from all 12 packages |
issue_tracker: |
Links to GitHub Issues | MISSING from all 12 packages |
documentation: |
Links to docs | MISSING from all 12 packages |
What to add to every pubspec.yaml:
homepage: https://github.com/MelbourneDeveloper/dart_node
issue_tracker: https://github.com/MelbourneDeveloper/dart_node/issues
documentation: https://github.com/MelbourneDeveloper/dart_node/tree/main/packages/<pkg_name>#readme
topics:
- nodejs # adjust per package
- interop
- javascript2. CHANGELOG.md — missing or useless
Completely missing:
packages/dart_jsx/CHANGELOG.md— does not existpackages/dart_node_vsix/CHANGELOG.md— does not exist
Exist but useless — every other package has this exact content for every version:
## 0.11.0-beta
- Early release
## 0.10.0-beta
- Early release
## 0.9.0-beta
- Early releaseThis tells users nothing. Each entry should describe what actually changed.
3. LICENSE — missing from 2 packages
packages/dart_jsx/LICENSE— does not existpackages/dart_node_vsix/LICENSE— does not exist
All other packages have MIT LICENSE files. These two need the same.
4. example/ directory — missing from 11 of 12 packages
pub.dev checks for an example/ directory inside each package and scores accordingly.
| Package | Has example/? |
|---|---|
reflux |
YES (has example/counter.dart) |
dart_node_core |
NO |
dart_node_express |
NO |
dart_node_react |
NO |
dart_node_react_native |
NO |
dart_node_ws |
NO |
dart_node_better_sqlite3 |
NO |
dart_node_mcp |
NO |
dart_jsx |
NO |
dart_logging |
NO |
dart_node_coverage |
NO |
dart_node_vsix |
NO |
Each package needs at minimum an example/example.dart (or example/<pkg_name>_example.dart) showing basic usage.
5. dart_logging — wrong SDK + missing nadz
File: packages/dart_logging/pubspec.yaml
Two issues:
- SDK constraint is
^3.7.2— every other package uses^3.10.0 - Missing required
nadzdependency (project rules: "All packages require:austerity(linting),nadz(Result types)")
6. dart_jsx — wrong repository URL
File: packages/dart_jsx/pubspec.yaml
repository: https://github.com/user/dart_node/tree/main/packages/dart_jsxShould be:
repository: https://github.com/MelbourneDeveloper/dart_node/tree/main/packages/dart_jsxChecklist
- Add
homepage,topics,issue_tracker,documentationto all 12 pubspec.yaml files - Create
CHANGELOG.mdfordart_jsxanddart_node_vsix - Rewrite all existing CHANGELOGs with actual version descriptions
- Create
LICENSE(MIT) fordart_jsxanddart_node_vsix - Add
example/directory with working example to all 11 packages missing one - Fix
dart_loggingSDK constraint from^3.7.2to^3.10.0 - Add
nadzdependency todart_logging - Fix
dart_jsxrepository URL to useMelbourneDeveloper