API Contracts¶
This page records the public API surface and the compatibility aliases that are currently supported.
Stable surface¶
These names are treated as the main public contracts today:
PersistentQueueQueueSemanticsQueuePolicySetLocalityPolicyand the built-in locality policiesLeasePolicyand the built-in lease policiesAcknowledgementPolicyand the built-in acknowledgement policiesDeadLetterPolicyand the built-in dead-letter policiesDeduplicationPolicyand the built-in deduplication policiesPullConsumptionPushConsumptionDispatchPolicyand the built-in dispatch policiesNotificationPolicyand the built-in notification policiesPointToPointRoutingPublishSubscribeRoutingSubscriptionPolicyand the built-in subscription policiessubscriber_queue_nameAtLeastOnceDeliveryAtMostOnceDeliveryEffectivelyOnceDeliveryNoResultPolicyReturnStoredResultIdempotencyRecordIdempotencyStoreand the built-in idempotency storesResultStoreand the built-in result storesCommitPolicyand the built-in commit policiesFifoReadyOrderingPriorityOrderingBestEffortOrderingBoundedBackpressureRejectingBackpressureQueueMessageQueueStatsQueueStoreand the built-in queue storesPersistentWorkerConfigpersistent_workerpersistent_async_workerpersistent_retrypersistent_async_retryRetryRecordAttemptStoreand the built-in retry storesQueueStoreLockedErrorAttemptStoreLockedError
The CLI command families are also treated as part of the supported surface:
queue add,pop,inspect,ack,release,dead,requeue-dead,purge,size,stats,process,exec,healthretry pruneconfig init,config set,config show,config path
Compatibility aliases¶
These aliases remain available for compatibility:
dead_letter_on_exhaustionremains accepted as an alias fordead_letter_on_failuremax_triesremains accepted as an alias forstop_after_attempt(max_tries)
Legacy module shims such as localqueue.queue and localqueue.worker also
remain available so internal architectural refactors can stay source-compatible.
They are compatibility surfaces, not preferred extension points for new code.
Aliases stay documented until they are removed.
Deprecation policy¶
Deprecation follows a short documented cycle:
- announce the change in docs and changelog
- keep the old name working for one release cycle when practical
- remove it after that compatibility window