OxL Справочник OxL
РусскийEnglish

Диагностики

У каждой диагностики тулчейна есть устойчивый код и страница: что случилось, пример, как исправить. Ошибки останавливают сборку; предупреждения настраиваются в [lint] файла oxl.toml (С III.2).

КодУровеньСтандартОписание
ab-test-declerror[§18.5]invalid `test ab` declaration: variants, split, metrics, guards or traffic (§18.5)
actor-cyclewarning[§8.8]possible cyclic wait between actors
actor-not-hostederror[§12.1, §12.5]sharded actor is hosted by no role (§12.1)
ambiguous-embederror[§4.7]name promoted from two embedded types
arg-counterror[§6.1]wrong number of arguments
atomic-db-effectserror[§11.2]atomic(db) body has an effect other than db (net, io) (§11.2)
atomic-effectserror[§8.9]atomic body must be pure except TVar operations
attribute-not-applicableerror[§10.2]attribute does not apply to this kind of rpc (§10.2)
bad-allowerror[III.4]malformed @allow(lint: rule, reason: "...") (reason is required)
bad-format-specerror[§1.5]invalid format specifier in a string interpolation (§1.5)
bad-import-rooterror[§2.2]first path segment must be std, self, super or a dependency
bad-initerror[§4.3]init must return Self or a union containing Self
bad-labelerror[§1.3]unknown loop label
bad-manifesterror[III.2]invalid oxl.toml
blocking-in-taskwarning[§8.1]blocking FFI call without blocking { }
borrow-conflicterror[§7.2]conflicting borrows
borrow-escapeerror[§7.2]borrow stored in a field, escaping closure, task or outlives value
bound-not-satisfiederror[§4.8]generic bound not satisfied
break-valueerror[§5.6]break with value is only allowed in loop
cache-not-readonlyerror[§10.2]@cache needs @readonly (§10.2)
cannot-infererror[§3]type cannot be inferred; add an annotation
chained-comparisonerror[§5.2]comparison operators are non-associative (a < b < c)
cluster-autherror[§12.1, §13.2]invalid `auth` provider of the cluster (§12.1, §13.2)
cluster-declerror[§12.1]invalid cluster declaration (§12.1)
cluster-needserror[§12.1]invalid `needs` requirement of a role (§12.1)
cluster-seedserror[§12.1]invalid `seeds` clause of the cluster (§12.1)
comptime-errorerror[§15.1]error during compile-time evaluation
config-typeerror[§14.1]config field type cannot be read from configuration text
contracterror[§6.7]invalid requires/ensures/invariant
cross-shard-txwarning[§11.2]a database transaction uses different shard keys, or asks for cross_shard (§11.2)
data-rightserror[§13.4]invalid @owner / @visible (§13.4)
dep-checksumerror[III.2]a package does not match its checksum in oxl.lock or the registry index
dep-conflicterror[III.2]conflicting version requirements for one package (MVS, [С III.2])
dep-not-founderror[III.2]a dependency cannot be found, fetched or loaded ([С III.2])
deprecatedwarning[§4.9]use of a deprecated item
duplicate-declerror[§2.1]name declared twice in the same scope
duplicate-implerror[§10.1]service has more than one impl (§10.1)
duplicate-provideerror[§12.7]two provides of the same type for one role (§12.7)
effectserror[§6.2]call to a function with an effect not allowed here
explicit-interfaceerror[§4.6]@explicit interface requires impl or @derive
fail-typeerror[§6.5]error type is not part of the function return type
ffi-importerror[§16.1]cannot import C header
fixture-yielderror[§18.2]fixture has no `yield` (§18.2)
generic-argserror[§4.8]wrong generic arguments
glob-importwarning[§2.2]glob import in a library
global-mutableerror[§4.1]static must be frozen or sync
impl-foreign-typeerror[§4.5]impl for a type declared in another package
impl-signature-mismatcherror[§10.1]rpc signature in impl differs from the service (§10.1)
import-conflicterror[§2.2]two imports bring the same name and it is used
import-skipwarning[§16.3]rpc of an imported .proto file was skipped
interface-not-satisfiederror[§4.6]type does not satisfy interface
invalid-charerror[§1.6]unexpected character
invalid-char-literalerror[§1.5]malformed character literal
invalid-dateerror[§1.5]malformed date/time literal
invalid-durationerror[§1.5]malformed duration literal (units must strictly decrease)
invalid-escapeerror[§1.5]invalid escape sequence
invalid-numbererror[§1.5]malformed numeric literal
invalid-utf8error[§1.1]source is not valid UTF-8 or starts with a BOM
invalid-windowerror[§10.2]@window needs a positive credit count (§10.2)
io-errorerror[§1.1]cannot read file or directory
it-outside-chainerror[§8.4]`it` used outside of a chain step
lint-pluginwarning[III.4]diagnostic of a user lint plugin ([lint] plugins, std.comptime)
literal-overflowerror[§1.5]integer literal does not fit the inferred type
lock-outdatederror[III.2]oxl.lock is missing or out of date under --locked / --frozen
magic-literalwarning[IV.1]repeated literal in attributes/arguments; move to const
missing-annotationerror[§3]pub function must declare parameter and return types
missing-fielderror[§4.3]struct literal is missing a field without default
missing-implerror[§10.1]service has no impl (§10.1)
missing-overrideerror[§4.7]method shadows an open method without override
missing-policyerror[§13.4, ч. III.4]rpc is reachable by nobody: no allow rule, @public or @allow, not @internal, called by no role (§13.4)
missing-provideerror[§12.7]dep without a provide for a role that runs the code (§12.7)
missing-rpc-implerror[§10.1]impl does not implement every rpc of the service (§10.1)
mock-declerror[§18.3]invalid `mock` block, `S.calls(.m)` or `provide` in a test (§18.2, §18.3)
module-cycleerror[§2.1]cyclic dependency between modules
must-closeerror[§4.3]@must_close value may leave scope without close()
mutate-immutableerror[§4.1]cannot mutate an immutable binding
n-plus-onewarning[III.4]query in a loop over the result of another query (N+1)
named-argerror[§6.1]bad named argument / positional after named
namingwarning[IV.2]name does not follow the naming convention (IV.2)
no-entry-pointerror[§2.4]program has no fn main, cluster or service
non-exhaustiveerror[§5.5]match is not exhaustive
not-assignableerror[§5.1]left side of assignment is not a mutable place
not-callableerror[§5.3]expression is not callable
not-comptimeerror[§15.1]expression is not a compile-time constant
not-implementederror[§0.3]construct is valid OxL but not supported by this implementation stage
not-overloadableerror[§5.3]operator cannot be overloaded
not-serializableerror[§9.1]type cannot be serialized (§9.1)
operator-declerror[§5.3]invalid operator declaration
outside-looperror[§5.6]break/continue outside of a loop
override-without-openerror[§4.7]override of a method that is not open
pattern-bindingserror[§5.5]alternatives bind different names
pipeline-idempotencywarning[§10.6]a durable pipeline step calls an rpc that is not @idempotent (§10.6)
placement-conflicterror[§12.1]conflicting placement clauses of roles (§12.1)
positional-literalerror[§4.3]positional literal not allowed (more than 4 required fields or invisible fields)
prefix-literalerror[§15.3]prefix literal handler rejected the literal
private-in-publicerror[§2.3]type in signature is less visible than the declaration
publish-refusederror[III.1, III.2]oxl publish refused: SemVer or schema check against the last published version failed
query-not-sqlerror[§5.9, §12.8]expression in a database query cannot be translated to SQL (§5.9)
question-contexterror[§6.5]`?` used where errors cannot propagate
range-not-iterableerror[§5.3]only integer and char ranges can be iterated
refinement-violatederror[§3.6]constant value violates a refined type predicate
respond-twiceerror[§10.6]`respond` appears more than once in a pipeline, or in a stream pipeline (§10.6)
respond-typeerror[§10.6]the value of `respond` does not match the result type of the pipeline (§10.6)
retry-not-idempotenterror[§10.2]@retry needs @idempotent or @readonly (§10.2)
rpc-attrerror[§10.2]unknown rpc attribute or malformed attribute arguments (§10.2)
saga-declerror[§11.3]invalid saga or pipeline declaration (§10.6, §11.3)
saga-idempotencyerror[§11.3]a saga step or compensation calls an rpc that is not @idempotent (§11.3)
saga-without-roleerror[§12.1]saga without a role that `runs sagas` and has `journal` (§12.1)
scatter-gatherwarning[IV.6]query on a sharded table without the shard key runs on every shard
schema-attrerror[§9.2, §9.5]invalid serialization attribute (@tag, @v, @since, @removed, @renamed, @zigzag, @repr, @codec)
schema-breakerror[§9.2, прил. C]incompatible schema change relative to oxl.schema.lock (§9.2, прил. C)
schema-lockerror[прил. C]oxl.schema.lock is malformed, or --locked and the schema changed (прил. C)
sealed-literalerror[§4.3]@sealed type can only be constructed through init
secret-jsonerror[§9.3]secret<T> cannot be encoded as JSON (§9.3)
secret-leakerror[§13.3]secret.reveal() flows into a log, string or response
senderror[§7.3]non-transferable value sent to another task
service-not-servederror[§12.1]service with an impl is served by no role of the cluster (§12.1)
shard-count-clampedwarning[§12.8]a table asks for more shards than any database the program opens (§12.8)
spawn-outside-scopeerror[§8.5]spawn is only allowed inside scope { }
syntaxerror[App. A]syntax error
table-schemaerror[§12.8]invalid @table declaration or use of a type that is not a table (§12.8)
task-reuseerror[§8.3]Task is single-use and was already consumed
test-declerror[§18.1]invalid `test` declaration: parameters, kind or environment (§18.1)
time-mixerror[§17.2]mixing different kinds of time
topic-without-journalerror[§10.5, §12.1]topic without a role that has `journal` (§10.5, §12.1)
type-mismatcherror[§3.5]expression has the wrong type
unhandled-errorerror[§6.5]result with error is ignored
unknown-fielderror[§4.2]type has no such field
unknown-linterror[III.4]@allow names an analyzer rule that does not exist
unknown-methoderror[§4.5]type has no such method
unknown-policy-targeterror[§13.4]policy rule names an rpc the service does not declare (§13.4)
unknown-roleerror[§12.1, §10.6, §12.7]name of a role the cluster does not declare (§12.1)
unknown-rpcerror[§10.1]impl implements an rpc the service does not declare (§10.1)
unknown-typeerror[§3.4]type is not defined
unreachable-armwarning[§5.5]match arm is unreachable
unresolved-importerror[§2.2]import path does not resolve
unresolved-nameerror[§2.2]name is not defined
unsafe-requirederror[§7.5]operation requires an unsafe block
unterminated-commenterror[§1.1]block comment is not terminated
unterminated-stringerror[§1.5]string literal is not terminated
unusedwarning[III.4]unused import, variable or dep
use-after-moveerror[§3.9]value used after it was moved
visibilityerror[§2.3]item is not visible here
yield-outside-streamerror[§10.3]yield is only allowed in a function returning stream<T, E>