Phase 00: Skeleton
Status: Planned
Deliverables
package3/kotlin/go.mod— new Go modulegithub.com/mochilang/mochi/package3/kotlin.package3/kotlin/errors/errors.go— bridge-specific error types:ErrUnsupportedMetadataVersion,ErrArtifactNotFound,ErrNativeImageBuildFailed,ErrCapabilityViolation,ErrGraalVMNotFound,ErrLockMismatch.package3/kotlin/semver/— Maven version range parser: PVP/Semver/Maven range syntax ([1.0,2.0),1.7.+,LATEST).package3/kotlin/maven/coord.go— Maven coordinate parser:ParseCoordinate("org.example:[email protected]")→{GroupID, ArtifactID, Version, Classifier}.package3/kotlin/README.md— component overview.
Gate
go test ./...
All packages compile cleanly. The semver parser handles the following inputs:
| Input | Result |
|---|---|
"1.7.3" | Exact version 1.7.3 |
"[1.0,2.0)" | >=1.0 <2.0 |
"[1.0,)" | >=1.0 |
"(,2.0]" | <=2.0 |
"1.7.+" | >=1.7.0 <1.8.0 |
"LATEST" | Latest available (resolve at fetch time) |
"RELEASE" | Latest release (non-SNAPSHOT) |
The Maven coordinate parser accepts:
| Input | Result |
|---|---|
"org.example:mylib" | {GroupID: "org.example", ArtifactID: "mylib"} |
"org.example:[email protected]" | {..., Version: "1.0.0"} |
"org.example:[email protected]@jdk8" | {..., Version: "1.0.0", Classifier: "jdk8"} |
"invalid" | ErrInvalidCoordinate |