Summary
The package system (v0.7.0) supports winn add/remove/install from GitHub repos, but there is no central registry or dependency resolution. For the ecosystem to grow, authors need winn publish and users need transitive dependency resolution.
Proposed Work
winn publish — publish a package (validate package.json, tag release, register with registry)
- Dependency resolution — resolve transitive deps, detect version conflicts, produce a lockfile
- Registry service — API for package lookup, search, and version metadata (could start as a static GitHub-based registry before building a hosted service)
- Lockfile —
package-lock.json or similar for reproducible installs
winn search <query> — search available packages from CLI
Why
This is already on the roadmap (issue #21). Packages like winn-redis, winn-mongodb, and winn-amqp exist but discoverability and reliable installation (especially transitive deps) is what turns a language into an ecosystem.
Target Version
v1.1.0 — after the core platform stabilizes at v1.0, this is the highest-leverage ecosystem investment.
Summary
The package system (v0.7.0) supports
winn add/remove/installfrom GitHub repos, but there is no central registry or dependency resolution. For the ecosystem to grow, authors needwinn publishand users need transitive dependency resolution.Proposed Work
winn publish— publish a package (validatepackage.json, tag release, register with registry)package-lock.jsonor similar for reproducible installswinn search <query>— search available packages from CLIWhy
This is already on the roadmap (issue #21). Packages like
winn-redis,winn-mongodb, andwinn-amqpexist but discoverability and reliable installation (especially transitive deps) is what turns a language into an ecosystem.Target Version
v1.1.0 — after the core platform stabilizes at v1.0, this is the highest-leverage ecosystem investment.