error publish-refused
What it means#
oxl publish checks a package before uploading it (D-6310): the version must be SemVer and not published yet (published versions are immutable); the package may depend on registry packages only (no path / git dependencies); and its serialization schema is compared with oxl.schema.lock of the previous release (the highest published version below the new one) by the schema-break rules of прил. C.4. A breaking schema change needs a new major version (for 0.x, a new minor version).
Example#
// oxl.toml: version = "1.1.0"; 1.0.0 had `data Ping { id: i64, note: str }`
pub(api) data Ping {
id: i64 // <- publish-refused: field `note` removed (schema-break) in a minor release; publish 2.0.0
}How to fix#
Keep the schema compatible (@removed, optional fields, allowed widenings) or publish the change as the next major version. Replace path / git dependencies with published versions. oxl publish --dry-run runs every check without uploading.