kiss_gcp_pubsub_queue 0.2.0
kiss_gcp_pubsub_queue: ^0.2.0 copied to clipboard
A Google Cloud Pub/Sub backend for kiss_queue providing SQS-style queue semantics
Changelog #
0.2.0 Breaking Changes #
Fixed #
- Ack ID extraction: Switched dequeue from
gcloudpull togoogleapispull, providing real Pub/Sub ack IDs formodifyAckDeadlineandacknowledgeoperations - Message ID preservation: Dequeued messages now retain the original publisher ID (
kissId) instead of generating a new local ID reject()return value: Now returns the rejectedQueueMessageinstead ofnull, matching thekiss_queuecontract
Changed #
- BREAKING:
PubSubQueueno longer accepts agcloud.Subscriptionconstructor parameter; pull operations now go throughPubSubAdmin - BREAKING: Removed
PubSubAttributesclass (was never exported; useAttributeKeysinternally) PubSubQueue.configurationfield type narrowed fromQueueConfigurationtoPubSubQueueConfiguration
Added #
clearGroupIdparameter onPubSubQueueConfiguration.copyWith()to allow resettinggroupIdtonullcontentBasedDeduplicationtest coverage- Custom
idGeneratortest coverage - Missing error-rethrow tests for
PubSubAdminsubscription operations
0.1.0 Initial Release #
Features #
- Google Cloud Pub/Sub backend for kiss_queue
- Standard queue support with at-least-once delivery
- FIFO queue support with message ordering and client-side deduplication
- Visibility timeout via Pub/Sub ack deadline management
- Dead letter queue support with configurable max delivery attempts
- Pluggable serialization support
- Comprehensive test suite (102 tests)
Architecture #
- Dual client design using
gcloudfor data plane andgoogleapisfor control plane PubSubQueueFactoryfor queue creation and managementPubSubQueueimplementing thekiss_queueQueue interfacePubSubAdminfor Pub/Sub administrative operationsRepositoryDedupeStoreusingkiss_repositoryfor FIFO deduplication