faststream 0.2.2__tar.gz → 0.2.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- faststream-0.2.4/.github/workflows/deploy-docs.yaml +36 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/workflows/test.yaml +97 -41
- {faststream-0.2.2 → faststream-0.2.4}/.gitignore +1 -0
- {faststream-0.2.2 → faststream-0.2.4}/PKG-INFO +4 -5
- faststream-0.2.2/examples/kafka/batch_consume.py → faststream-0.2.4/examples/kafka/batch_publish_1.py +1 -2
- {faststream-0.2.2 → faststream-0.2.4}/faststream/__about__.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/__init__.py +3 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/_compat.py +29 -22
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/message.py +1 -6
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/utils.py +31 -4
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/fastapi/route.py +3 -2
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/handler.py +18 -13
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/message.py +2 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/publisher.py +31 -17
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/test.py +48 -19
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/wrapper.py +39 -18
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/main.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/__init__.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/asyncapi.py +13 -33
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/broker.py +1 -5
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/fastapi.pyi +1 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/publisher.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/__init__.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/asyncapi.py +9 -20
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/broker.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/fastapi.pyi +1 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/handler.py +5 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/parser.py +14 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/__init__.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/asyncapi.py +77 -64
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/broker.py +1 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/fastapi.pyi +1 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/helpers.py +1 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/parser.py +13 -2
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/producer.py +1 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/schemas.py +13 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/__init__.py +3 -1
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/context/__init__.py +3 -1
- faststream-0.2.4/faststream/utils/context/builders.py +45 -0
- faststream-0.2.4/faststream/utils/context/path.py +45 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/context/types.py +9 -4
- {faststream-0.2.2 → faststream-0.2.4}/pyproject.toml +5 -8
- faststream-0.2.4/scripts/lint.sh +10 -0
- faststream-0.2.2/.faststream_gen/api/faststream/app/ABCApp.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/app/FastStream.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/base/AsyncAPIOperation.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/generate/get_app_broker_channels.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/generate/get_app_broker_server.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/generate/get_app_schema.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/message/get_model_schema.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/message/get_response_schema.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/message/parse_handler_params.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/amqp/ChannelBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/amqp/Exchange.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/amqp/OperationBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/amqp/Queue.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/amqp/ServerBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/kafka/ChannelBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/kafka/OperationBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/kafka/ServerBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/main/ChannelBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/main/OperationBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/main/ServerBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/nats/ChannelBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/nats/OperationBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/nats/ServerBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/redis/ChannelBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/redis/OperationBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/redis/ServerBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/sqs/ChannelBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/sqs/OperationBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/bindings/sqs/ServerBinding.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/channels/Channel.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/info/Contact.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/info/ContactDict.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/info/EmailStr.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/info/Info.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/info/License.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/info/LicenseDict.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/main/Components.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/main/Schema.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/message/CorrelationId.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/message/Message.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/operations/Operation.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/security/OauthFlowObj.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/security/OauthFlows.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/security/SecuritySchemaComponent.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/servers/Server.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/servers/ServerVariable.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/utils/ExternalDocs.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/utils/ExternalDocsDict.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/utils/Parameter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/utils/Reference.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/utils/Tag.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/schema/utils/TagDict.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/utils/resolve_payloads.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/asyncapi/utils/to_camelcase.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/core/abc/BrokerUsecase.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/core/abc/extend_dependencies.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/core/asyncronous/BrokerAsyncUsecase.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/core/asyncronous/default_filter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/core/mixins/LoggingMixin.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/fastapi/route/StreamMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/fastapi/route/StreamRoute.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/fastapi/route/get_app.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/fastapi/router/StreamRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/handler/AsyncHandler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/handler/BaseHandler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/message/ABCStreamMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/message/StreamMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/message/SyncStreamMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/middlewares/BaseMiddleware.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/middlewares/CriticalLogMiddleware.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/parsers/decode_message.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/parsers/encode_message.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/parsers/resolve_custom_func.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/publisher/BasePublisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/push_back_watcher/BaseWatcher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/push_back_watcher/CounterWatcher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/push_back_watcher/EndlessWatcher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/push_back_watcher/OneTryWatcher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/push_back_watcher/WatcherContext.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/router/BrokerRoute.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/router/BrokerRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/schemas/NameRequired.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/schemas/RawDecoced.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/security/BaseSecurity.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/security/SASLPlaintext.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/security/SASLScram256.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/security/SASLScram512.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/test/TestApp.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/test/TestBroker.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/test/call_handler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/test/patch_broker_calls.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/types/AsyncPublisherProtocol.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/utils/change_logger_handlers.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/utils/get_watcher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/utils/set_message_context.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/wrapper/FakePublisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/broker/wrapper/HandlerCallWrapper.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/docs/app/gen.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/docs/app/serve.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/main/main.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/main/run.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/main/version_callback.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/supervisors/basereload/BaseReload.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/supervisors/multiprocess/Multiprocess.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/supervisors/utils/get_subprocess.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/supervisors/utils/set_exit.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/supervisors/utils/subprocess_started.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/supervisors/watchfiles/ExtendedFilter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/supervisors/watchfiles/WatchReloader.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/imports/get_app_path.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/imports/import_object.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/imports/try_import_app.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/logs/LogLevels.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/logs/get_log_level.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/logs/set_log_level.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/parser/parse_cli_args.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/cli/utils/parser/remove_prefix.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/constants/ContentTypes.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/exceptions/AckMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/exceptions/HandlerException.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/exceptions/NackMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/exceptions/RejectMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/exceptions/SkipMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/exceptions/StopConsume.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/asyncapi/Handler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/asyncapi/Publisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/broker/KafkaBroker.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/fastapi/KafkaRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/handler/LogicHandler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/message/KafkaMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/parser/AioKafkaParser.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/producer/AioKafkaFastProducer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/publisher/LogicPublisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/router/KafkaRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/security/parse_security.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/shared/logging/KafkaLoggingMixin.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/shared/publisher/ABCPublisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/shared/router/KafkaRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/shared/schemas/ConsumerConnectionParams.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/test/FakeProducer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/test/TestKafkaBroker.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/kafka/test/build_message.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/log/formatter/ColourizedFormatter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/log/formatter/expand_log_field.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/log/formatter/make_record_with_extra.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/log/logging/configure_formatter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/asyncapi/Handler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/asyncapi/Publisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/broker/NatsBroker.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/fastapi/NatsRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/handler/LogicNatsHandler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/helpers/StreamBuilder.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/js_stream/JStream.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/message/NatsMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/parser/NatsParser.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/producer/NatsFastProducer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/producer/NatsJSFastProducer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/publisher/LogicPublisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/router/NatsRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/shared/logging/NatsLoggingMixin.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/shared/router/NatsRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/test/FakeProducer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/test/PatchedMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/test/TestNatsBroker.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/nats/test/build_message.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/asyncapi/Handler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/asyncapi/Publisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/asyncapi/RMQAsyncAPIChannel.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/broker/RabbitBroker.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/fastapi/RabbitRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/handler/LogicHandler.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/helpers/RabbitDeclarer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/message/RabbitMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/parser/AioPikaParser.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/producer/AioPikaFastProducer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/publisher/LogicPublisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/router/RabbitRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/security/parse_security.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/constants/ExchangeType.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/logging/RabbitLoggingMixin.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/publisher/ABCPublisher.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/router/RabbitRouter.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/schemas/BaseRMQInformation.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/schemas/RabbitExchange.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/schemas/RabbitQueue.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/shared/schemas/get_routing_hash.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/test/FakeProducer.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/test/PatchedMessage.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/test/TestRabbitBroker.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/rabbit/test/build_message.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/classes/Singleton.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/context/main/ContextRepo.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/context/types/Context.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/context/types/resolve_context.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/data/filter_by_dict.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/functions/get_function_positional_arguments.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/functions/timeout_scope.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/functions/to_async.md +0 -3
- faststream-0.2.2/.faststream_gen/api/faststream/utils/no_cast/NoCast.md +0 -3
- faststream-0.2.2/.faststream_gen/getting-started/asyncapi/custom.md +0 -188
- faststream-0.2.2/.faststream_gen/getting-started/asyncapi/export.md +0 -56
- faststream-0.2.2/.faststream_gen/getting-started/asyncapi/hosting.md +0 -38
- faststream-0.2.2/.faststream_gen/getting-started/cli/index.md +0 -128
- faststream-0.2.2/.faststream_gen/getting-started/config/index.md +0 -167
- faststream-0.2.2/.faststream_gen/getting-started/context/custom.md +0 -83
- faststream-0.2.2/.faststream_gen/getting-started/context/existed.md +0 -82
- faststream-0.2.2/.faststream_gen/getting-started/context/extra.md +0 -60
- faststream-0.2.2/.faststream_gen/getting-started/context/fields.md +0 -11
- faststream-0.2.2/.faststream_gen/getting-started/context/index.md +0 -66
- faststream-0.2.2/.faststream_gen/getting-started/contributing/CONTRIBUTING.md +0 -143
- faststream-0.2.2/.faststream_gen/getting-started/contributing/docs.md +0 -44
- faststream-0.2.2/.faststream_gen/getting-started/dependencies/class.md +0 -0
- faststream-0.2.2/.faststream_gen/getting-started/dependencies/global.md +0 -3
- faststream-0.2.2/.faststream_gen/getting-started/dependencies/index.md +0 -163
- faststream-0.2.2/.faststream_gen/getting-started/dependencies/sub.md +0 -0
- faststream-0.2.2/.faststream_gen/getting-started/dependencies/testing.md +0 -3
- faststream-0.2.2/.faststream_gen/getting-started/dependencies/yield.md +0 -0
- faststream-0.2.2/.faststream_gen/getting-started/index.md +0 -39
- faststream-0.2.2/.faststream_gen/getting-started/integrations/fastapi/index.md +0 -73
- faststream-0.2.2/.faststream_gen/getting-started/integrations/frameworks/index.md +0 -16
- faststream-0.2.2/.faststream_gen/getting-started/lifespan/hooks.md +0 -119
- faststream-0.2.2/.faststream_gen/getting-started/lifespan/index.md +0 -11
- faststream-0.2.2/.faststream_gen/getting-started/lifespan/test.md +0 -12
- faststream-0.2.2/.faststream_gen/getting-started/logging.md +0 -208
- faststream-0.2.2/.faststream_gen/getting-started/middlewares/index.md +0 -85
- faststream-0.2.2/.faststream_gen/getting-started/publishing/broker.md +0 -20
- faststream-0.2.2/.faststream_gen/getting-started/publishing/decorator.md +0 -34
- faststream-0.2.2/.faststream_gen/getting-started/publishing/direct.md +0 -27
- faststream-0.2.2/.faststream_gen/getting-started/publishing/index.md +0 -35
- faststream-0.2.2/.faststream_gen/getting-started/publishing/object.md +0 -34
- faststream-0.2.2/.faststream_gen/getting-started/publishing/test.md +0 -62
- faststream-0.2.2/.faststream_gen/getting-started/routers/index.md +0 -51
- faststream-0.2.2/.faststream_gen/getting-started/serialization/decoder.md +0 -84
- faststream-0.2.2/.faststream_gen/getting-started/serialization/examples.md +0 -123
- faststream-0.2.2/.faststream_gen/getting-started/serialization/index.md +0 -20
- faststream-0.2.2/.faststream_gen/getting-started/serialization/parser.md +0 -106
- faststream-0.2.2/.faststream_gen/getting-started/subscription/annotation.md +0 -61
- faststream-0.2.2/.faststream_gen/getting-started/subscription/filtering.md +0 -60
- faststream-0.2.2/.faststream_gen/getting-started/subscription/index.md +0 -138
- faststream-0.2.2/.faststream_gen/getting-started/subscription/pydantic.md +0 -43
- faststream-0.2.2/.faststream_gen/getting-started/subscription/test.md +0 -152
- faststream-0.2.2/.faststream_gen/getting-started/template/index.md +0 -207
- faststream-0.2.2/.faststream_gen/index.md +0 -352
- faststream-0.2.2/.faststream_gen/kafka/Publisher/batch_publisher.md +0 -96
- faststream-0.2.2/.faststream_gen/kafka/Publisher/index.md +0 -126
- faststream-0.2.2/.faststream_gen/kafka/Publisher/using_a_key.md +0 -61
- faststream-0.2.2/.faststream_gen/kafka/Subscriber/batch_subscriber.md +0 -58
- faststream-0.2.2/.faststream_gen/kafka/Subscriber/index.md +0 -78
- faststream-0.2.2/.faststream_gen/kafka/ack.md +0 -88
- faststream-0.2.2/.faststream_gen/kafka/index.md +0 -61
- faststream-0.2.2/.faststream_gen/kafka/message.md +0 -53
- faststream-0.2.2/.faststream_gen/nats/examples/direct.md +0 -96
- faststream-0.2.2/.faststream_gen/nats/examples/pattern.md +0 -87
- faststream-0.2.2/.faststream_gen/nats/index.md +0 -35
- faststream-0.2.2/.faststream_gen/nats/jetstream/ack.md +0 -78
- faststream-0.2.2/.faststream_gen/nats/jetstream/index.md +0 -53
- faststream-0.2.2/.faststream_gen/nats/jetstream/key-value.md +0 -107
- faststream-0.2.2/.faststream_gen/nats/jetstream/object.md +0 -111
- faststream-0.2.2/.faststream_gen/nats/message.md +0 -104
- faststream-0.2.2/.faststream_gen/nats/publishing/index.md +0 -40
- faststream-0.2.2/.faststream_gen/nats/rpc.md +0 -45
- faststream-0.2.2/.faststream_gen/rabbit/ack.md +0 -90
- faststream-0.2.2/.faststream_gen/rabbit/declare.md +0 -40
- faststream-0.2.2/.faststream_gen/rabbit/examples/direct.md +0 -129
- faststream-0.2.2/.faststream_gen/rabbit/examples/fanout.md +0 -93
- faststream-0.2.2/.faststream_gen/rabbit/examples/headers.md +0 -181
- faststream-0.2.2/.faststream_gen/rabbit/examples/index.md +0 -36
- faststream-0.2.2/.faststream_gen/rabbit/examples/stream.md +0 -36
- faststream-0.2.2/.faststream_gen/rabbit/examples/topic.md +0 -113
- faststream-0.2.2/.faststream_gen/rabbit/index.md +0 -69
- faststream-0.2.2/.faststream_gen/rabbit/message.md +0 -104
- faststream-0.2.2/.faststream_gen/rabbit/publishing.md +0 -83
- faststream-0.2.2/.faststream_gen/rabbit/rpc.md +0 -42
- faststream-0.2.2/.faststream_gen/release.md +0 -36
- faststream-0.2.2/.github/workflows/deploy-docs.yaml +0 -33
- faststream-0.2.2/faststream_gen_examples/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key/app.py +0 -55
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key/app_skeleton.py +0 -58
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key/description.txt +0 -12
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key/test_app.py +0 -33
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key2/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key2/app.py +0 -54
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key2/app_skeleton.py +0 -54
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key2/description.txt +0 -11
- faststream-0.2.2/faststream_gen_examples/example_add_and_publish_with_key2/test_app.py +0 -21
- faststream-0.2.2/faststream_gen_examples/example_calculate_mean_temperature/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_calculate_mean_temperature/app.py +0 -53
- faststream-0.2.2/faststream_gen_examples/example_calculate_mean_temperature/app_skeleton.py +0 -57
- faststream-0.2.2/faststream_gen_examples/example_calculate_mean_temperature/description.txt +0 -11
- faststream-0.2.2/faststream_gen_examples/example_calculate_mean_temperature/test_app.py +0 -47
- faststream-0.2.2/faststream_gen_examples/example_consume_publish_with_key/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_consume_publish_with_key/app.py +0 -36
- faststream-0.2.2/faststream_gen_examples/example_consume_publish_with_key/app_skeleton.py +0 -45
- faststream-0.2.2/faststream_gen_examples/example_consume_publish_with_key/description.txt +0 -10
- faststream-0.2.2/faststream_gen_examples/example_consume_publish_with_key/test_app.py +0 -30
- faststream-0.2.2/faststream_gen_examples/example_course_updates/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_course_updates/app.py +0 -38
- faststream-0.2.2/faststream_gen_examples/example_course_updates/app_skeleton.py +0 -40
- faststream-0.2.2/faststream_gen_examples/example_course_updates/description.txt +0 -4
- faststream-0.2.2/faststream_gen_examples/example_course_updates/test_app.py +0 -64
- faststream-0.2.2/faststream_gen_examples/example_execute_trade/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_execute_trade/app.py +0 -33
- faststream-0.2.2/faststream_gen_examples/example_execute_trade/app_skeleton.py +0 -32
- faststream-0.2.2/faststream_gen_examples/example_execute_trade/description.txt +0 -3
- faststream-0.2.2/faststream_gen_examples/example_execute_trade/test_app.py +0 -36
- faststream-0.2.2/faststream_gen_examples/example_forward_to_another_topic/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_forward_to_another_topic/app.py +0 -24
- faststream-0.2.2/faststream_gen_examples/example_forward_to_another_topic/app_skeleton.py +0 -31
- faststream-0.2.2/faststream_gen_examples/example_forward_to_another_topic/description.txt +0 -2
- faststream-0.2.2/faststream_gen_examples/example_forward_to_another_topic/test_app.py +0 -24
- faststream-0.2.2/faststream_gen_examples/example_forward_to_multiple_topics/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_forward_to_multiple_topics/app.py +0 -14
- faststream-0.2.2/faststream_gen_examples/example_forward_to_multiple_topics/app_skeleton.py +0 -20
- faststream-0.2.2/faststream_gen_examples/example_forward_to_multiple_topics/description.txt +0 -2
- faststream-0.2.2/faststream_gen_examples/example_forward_to_multiple_topics/test_app.py +0 -29
- faststream-0.2.2/faststream_gen_examples/example_forward_with_security/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_forward_with_security/app.py +0 -28
- faststream-0.2.2/faststream_gen_examples/example_forward_with_security/app_skeleton.py +0 -36
- faststream-0.2.2/faststream_gen_examples/example_forward_with_security/description.txt +0 -3
- faststream-0.2.2/faststream_gen_examples/example_forward_with_security/test_app.py +0 -24
- faststream-0.2.2/faststream_gen_examples/example_infinity_publishing/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_infinity_publishing/app.py +0 -45
- faststream-0.2.2/faststream_gen_examples/example_infinity_publishing/app_skeleton.py +0 -47
- faststream-0.2.2/faststream_gen_examples/example_infinity_publishing/description.txt +0 -2
- faststream-0.2.2/faststream_gen_examples/example_infinity_publishing/test_app.py +0 -21
- faststream-0.2.2/faststream_gen_examples/example_investment_updates/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_investment_updates/app.py +0 -32
- faststream-0.2.2/faststream_gen_examples/example_investment_updates/app_skeleton.py +0 -38
- faststream-0.2.2/faststream_gen_examples/example_investment_updates/description.txt +0 -3
- faststream-0.2.2/faststream_gen_examples/example_investment_updates/test_app.py +0 -42
- faststream-0.2.2/faststream_gen_examples/example_log_msgs_with_plaintext_security/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_log_msgs_with_plaintext_security/app.py +0 -27
- faststream-0.2.2/faststream_gen_examples/example_log_msgs_with_plaintext_security/app_skeleton.py +0 -34
- faststream-0.2.2/faststream_gen_examples/example_log_msgs_with_plaintext_security/description.txt +0 -3
- faststream-0.2.2/faststream_gen_examples/example_log_msgs_with_plaintext_security/test_app.py +0 -16
- faststream-0.2.2/faststream_gen_examples/example_new_employee/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_new_employee/app.py +0 -31
- faststream-0.2.2/faststream_gen_examples/example_new_employee/app_skeleton.py +0 -35
- faststream-0.2.2/faststream_gen_examples/example_new_employee/description.txt +0 -5
- faststream-0.2.2/faststream_gen_examples/example_new_employee/test_app.py +0 -33
- faststream-0.2.2/faststream_gen_examples/example_pets/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_pets/app.py +0 -22
- faststream-0.2.2/faststream_gen_examples/example_pets/app_skeleton.py +0 -28
- faststream-0.2.2/faststream_gen_examples/example_pets/description.txt +0 -3
- faststream-0.2.2/faststream_gen_examples/example_pets/test_app.py +0 -20
- faststream-0.2.2/faststream_gen_examples/example_plants/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_plants/app.py +0 -27
- faststream-0.2.2/faststream_gen_examples/example_plants/app_skeleton.py +0 -33
- faststream-0.2.2/faststream_gen_examples/example_plants/description.txt +0 -2
- faststream-0.2.2/faststream_gen_examples/example_plants/test_app.py +0 -43
- faststream-0.2.2/faststream_gen_examples/example_product_reviews/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_product_reviews/app.py +0 -37
- faststream-0.2.2/faststream_gen_examples/example_product_reviews/app_skeleton.py +0 -45
- faststream-0.2.2/faststream_gen_examples/example_product_reviews/description.txt +0 -3
- faststream-0.2.2/faststream_gen_examples/example_product_reviews/test_app.py +0 -54
- faststream-0.2.2/faststream_gen_examples/example_publish_with_key/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_publish_with_key/app.py +0 -28
- faststream-0.2.2/faststream_gen_examples/example_publish_with_key/app_skeleton.py +0 -37
- faststream-0.2.2/faststream_gen_examples/example_publish_with_key/description.txt +0 -8
- faststream-0.2.2/faststream_gen_examples/example_publish_with_key/test_app.py +0 -19
- faststream-0.2.2/faststream_gen_examples/example_scram256_security/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_scram256_security/app.py +0 -37
- faststream-0.2.2/faststream_gen_examples/example_scram256_security/app_skeleton.py +0 -43
- faststream-0.2.2/faststream_gen_examples/example_scram256_security/description.txt +0 -5
- faststream-0.2.2/faststream_gen_examples/example_scram256_security/test_app.py +0 -40
- faststream-0.2.2/faststream_gen_examples/example_scram512_security/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_scram512_security/app.py +0 -37
- faststream-0.2.2/faststream_gen_examples/example_scram512_security/app_skeleton.py +0 -44
- faststream-0.2.2/faststream_gen_examples/example_scram512_security/description.txt +0 -4
- faststream-0.2.2/faststream_gen_examples/example_scram512_security/test_app.py +0 -34
- faststream-0.2.2/faststream_gen_examples/example_scrape_weather/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_scrape_weather/app.py +0 -103
- faststream-0.2.2/faststream_gen_examples/example_scrape_weather/app_skeleton.py +0 -89
- faststream-0.2.2/faststream_gen_examples/example_scrape_weather/description.txt +0 -26
- faststream-0.2.2/faststream_gen_examples/example_scrape_weather/test_app.py +0 -19
- faststream-0.2.2/faststream_gen_examples/example_social_media_post/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_social_media_post/app.py +0 -34
- faststream-0.2.2/faststream_gen_examples/example_social_media_post/app_skeleton.py +0 -49
- faststream-0.2.2/faststream_gen_examples/example_social_media_post/description.txt +0 -4
- faststream-0.2.2/faststream_gen_examples/example_social_media_post/test_app.py +0 -38
- faststream-0.2.2/faststream_gen_examples/example_student_query/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_student_query/app.py +0 -46
- faststream-0.2.2/faststream_gen_examples/example_student_query/app_skeleton.py +0 -49
- faststream-0.2.2/faststream_gen_examples/example_student_query/description.txt +0 -4
- faststream-0.2.2/faststream_gen_examples/example_student_query/test_app.py +0 -58
- faststream-0.2.2/faststream_gen_examples/example_weather_updates/__init__.py +0 -0
- faststream-0.2.2/faststream_gen_examples/example_weather_updates/app.py +0 -30
- faststream-0.2.2/faststream_gen_examples/example_weather_updates/app_skeleton.py +0 -35
- faststream-0.2.2/faststream_gen_examples/example_weather_updates/description.txt +0 -3
- faststream-0.2.2/faststream_gen_examples/example_weather_updates/test_app.py +0 -44
- faststream-0.2.2/scripts/lint.sh +0 -10
- {faststream-0.2.2 → faststream-0.2.4}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/dependabot.yml +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/workflows/codeql.yml +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/workflows/dependency-review.yaml +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/workflows/publish_coverage.yml +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.github/workflows/publish_pypi.yml +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.pre-commit-config.yaml +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/.secrets.baseline +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/CODE_OF_CONDUCT.md +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/CONTRIBUTING.md +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/LICENSE +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/README.md +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/SECURITY.md +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e01_basic_consume.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e02_1_basic_publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e02_2_basic_publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e02_3_basic_publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e03_miltiple_pubsub.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e04_msg_filter.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e05_rpc_request.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e06_manual_ack.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e07_ack_immediately.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e08_testing.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e09_testing_mocks.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e10_middlewares.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/e11_settings.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/fastapi_integration/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/fastapi_integration/app.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/fastapi_integration/testing.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/howto/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/howto/structlogs.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/kafka/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/kafka/ack_after_process.py +0 -0
- /faststream-0.2.2/examples/kafka/batch_publish_1.py → /faststream-0.2.4/examples/kafka/batch_consume.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/kafka/batch_publish_2.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/kafka/batch_publish_3.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/kafka/testing.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e01_basic.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e02_basic_rpc.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e03_publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e04_js_basic.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e05_basic_and_js.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e06_key_value.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e07_object_storage.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/nats/e08_wildcards.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/rabbit/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/rabbit/direct.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/rabbit/fanout.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/rabbit/header.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/rabbit/stream.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/rabbit/topic.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/router/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/router/basic_consume.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/router/basic_publish.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/router/delay_registration.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/msgpack/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/msgpack/pack.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/msgpack/requirements.txt +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/protobuf/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/protobuf/message.proto +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/protobuf/protobuf.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/examples/serialization/protobuf/requirements.txt +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/__main__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/annotations.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/app.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/base.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/generate.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/bindings/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/bindings/amqp.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/bindings/kafka.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/bindings/main.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/bindings/nats.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/bindings/redis.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/bindings/sqs.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/channels.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/info.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/main.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/message.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/operations.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/security.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/servers.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/schema/utils.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/asyncapi/site.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/core/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/core/abc.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/core/asyncronous.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/core/mixins.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/fastapi/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/fastapi/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/middlewares.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/parsers.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/push_back_watcher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/schemas.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/security.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/types.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/broker/utils.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/docs/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/docs/app.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/supervisors/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/supervisors/basereload.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/supervisors/multiprocess.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/supervisors/utils.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/supervisors/watchfiles.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/utils/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/utils/imports.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/utils/logs.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/cli/utils/parser.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/constants.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/exceptions.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/annotations.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/broker.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/fastapi.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/handler.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/message.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/parser.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/producer.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/router.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/security.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/shared/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/shared/logging.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/shared/publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/shared/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/shared/router.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/shared/schemas.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/kafka/test.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/log/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/log/formatter.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/log/logging.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/annotations.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/broker.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/fastapi.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/helpers.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/js_stream.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/js_stream.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/message.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/producer.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/router.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/shared/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/shared/logging.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/shared/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/shared/router.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/nats/test.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/py.typed +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/annotations.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/broker.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/fastapi.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/handler.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/message.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/publisher.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/router.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/security.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/__init__.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/constants.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/logging.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/publisher.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/router.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/router.pyi +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/shared/types.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/test.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/rabbit/types.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/types.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/classes.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/context/main.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/data.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/functions.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/faststream/utils/no_cast.py +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/build-docs-pre-commit.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/build-docs.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/lint-pre-commit.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/publish.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/serve-docs.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/set_variables.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/start_test_env.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/static-analysis.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/static-pre-commit.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/stop_test_env.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/test-cov.sh +0 -0
- {faststream-0.2.2 → faststream-0.2.4}/scripts/test.sh +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
name: Deploy Docs
|
|
2
|
+
on:
|
|
3
|
+
push:
|
|
4
|
+
branches:
|
|
5
|
+
- main
|
|
6
|
+
paths:
|
|
7
|
+
- docs/**
|
|
8
|
+
- .github/workflows/deploy-docs.yaml
|
|
9
|
+
|
|
10
|
+
permissions:
|
|
11
|
+
contents: write
|
|
12
|
+
jobs:
|
|
13
|
+
deploy_docs:
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@v4
|
|
17
|
+
with:
|
|
18
|
+
fetch-depth: 0
|
|
19
|
+
- uses: actions/setup-python@v4
|
|
20
|
+
with:
|
|
21
|
+
python-version: 3.x
|
|
22
|
+
- uses: actions/cache@v3
|
|
23
|
+
with:
|
|
24
|
+
key: ${{ github.ref }}
|
|
25
|
+
path: .cache
|
|
26
|
+
- run: pip install -e ".[dev]"
|
|
27
|
+
- run: ./scripts/build-docs.sh
|
|
28
|
+
- run: echo "VERSION=$(python3 -c 'from importlib.metadata import version; print(".".join(version("faststream").split(".")[:2]))')" >> $GITHUB_ENV
|
|
29
|
+
- name: Configure Git user
|
|
30
|
+
run: |
|
|
31
|
+
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
|
32
|
+
git config --local user.name "github-actions[bot]"
|
|
33
|
+
- run: echo $VERSION
|
|
34
|
+
# - run: cd docs && mike delete --all
|
|
35
|
+
- run: cd docs && mike deploy --template templates/redirect.html --update-aliases $VERSION latest
|
|
36
|
+
- run: cd docs && mike set-default --push --template templates/redirect.html latest
|
|
@@ -44,35 +44,6 @@ jobs:
|
|
|
44
44
|
pydantic-version: ["pydantic-v1", "pydantic-v2"]
|
|
45
45
|
fail-fast: false
|
|
46
46
|
|
|
47
|
-
services:
|
|
48
|
-
kafka:
|
|
49
|
-
image: bitnami/kafka:3.5.0
|
|
50
|
-
ports:
|
|
51
|
-
- 9092:9092
|
|
52
|
-
env:
|
|
53
|
-
KAFKA_ENABLE_KRAFT: "true"
|
|
54
|
-
KAFKA_CFG_NODE_ID: "1"
|
|
55
|
-
KAFKA_CFG_PROCESS_ROLES: "broker,controller"
|
|
56
|
-
KAFKA_CFG_CONTROLLER_LISTENER_NAMES: "CONTROLLER"
|
|
57
|
-
KAFKA_CFG_LISTENERS: "PLAINTEXT://:9092,CONTROLLER://:9093"
|
|
58
|
-
KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: "CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT"
|
|
59
|
-
KAFKA_CFG_ADVERTISED_LISTENERS: "PLAINTEXT://127.0.0.1:9092"
|
|
60
|
-
KAFKA_BROKER_ID: "1"
|
|
61
|
-
KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: "1@kafka:9093"
|
|
62
|
-
ALLOW_PLAINTEXT_LISTENER: "true"
|
|
63
|
-
|
|
64
|
-
rabbitmq:
|
|
65
|
-
image: rabbitmq:alpine
|
|
66
|
-
ports:
|
|
67
|
-
- 5672:5672
|
|
68
|
-
|
|
69
|
-
# using own container with already included JetStream
|
|
70
|
-
# https://github.com/nats-io/nats-docker/issues/110
|
|
71
|
-
nats:
|
|
72
|
-
image: diementros/nats:js
|
|
73
|
-
ports:
|
|
74
|
-
- 4222:4222
|
|
75
|
-
|
|
76
47
|
steps:
|
|
77
48
|
- uses: actions/checkout@v4
|
|
78
49
|
- name: Set up Python
|
|
@@ -97,7 +68,7 @@ jobs:
|
|
|
97
68
|
run: pip install --pre "pydantic>=2.0.0b2,<3.0.0"
|
|
98
69
|
- run: mkdir coverage
|
|
99
70
|
- name: Test
|
|
100
|
-
run: bash scripts/test.sh -m "
|
|
71
|
+
run: bash scripts/test.sh -m "(slow and (not nats and not kafka and not rabbit)) or (not nats and not kafka and not rabbit)"
|
|
101
72
|
env:
|
|
102
73
|
COVERAGE_FILE: coverage/.coverage.${{ runner.os }}-py${{ matrix.python-version }}
|
|
103
74
|
CONTEXT: ${{ runner.os }}-py${{ matrix.python-version }}
|
|
@@ -122,7 +93,7 @@ jobs:
|
|
|
122
93
|
if: steps.cache.outputs.cache-hit != 'true'
|
|
123
94
|
run: pip install .[rabbit,kafka,nats,docs,testing]
|
|
124
95
|
- name: Test
|
|
125
|
-
run: bash scripts/test.sh -m "not kafka and not rabbit and not
|
|
96
|
+
run: bash scripts/test.sh -m "(slow and (not nats and not kafka and not rabbit)) or (not nats and not kafka and not rabbit)"
|
|
126
97
|
|
|
127
98
|
test-windows-latest:
|
|
128
99
|
if: github.event.pull_request.draft == false
|
|
@@ -139,9 +110,9 @@ jobs:
|
|
|
139
110
|
if: steps.cache.outputs.cache-hit != 'true'
|
|
140
111
|
run: pip install .[rabbit,kafka,nats,docs,testing]
|
|
141
112
|
- name: Test
|
|
142
|
-
run: bash scripts/test.sh -
|
|
113
|
+
run: bash scripts/test.sh -m "(slow and (not nats and not kafka and not rabbit)) or (not nats and not kafka and not rabbit)"
|
|
143
114
|
|
|
144
|
-
test-kafka-
|
|
115
|
+
test-kafka-real:
|
|
145
116
|
if: github.event.pull_request.draft == false
|
|
146
117
|
runs-on: ubuntu-latest
|
|
147
118
|
services:
|
|
@@ -160,6 +131,32 @@ jobs:
|
|
|
160
131
|
KAFKA_BROKER_ID: "1"
|
|
161
132
|
KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: "1@kafka:9093"
|
|
162
133
|
ALLOW_PLAINTEXT_LISTENER: "true"
|
|
134
|
+
steps:
|
|
135
|
+
- uses: actions/checkout@v4
|
|
136
|
+
- name: Set up Python
|
|
137
|
+
uses: actions/setup-python@v4
|
|
138
|
+
with:
|
|
139
|
+
python-version: "3.11"
|
|
140
|
+
cache: "pip"
|
|
141
|
+
cache-dependency-path: pyproject.toml
|
|
142
|
+
- name: Install Dependencies
|
|
143
|
+
if: steps.cache.outputs.cache-hit != 'true'
|
|
144
|
+
run: pip install .[nats,kafka,rabbit,docs,testing]
|
|
145
|
+
- run: mkdir coverage
|
|
146
|
+
- name: Test
|
|
147
|
+
run: bash scripts/test.sh -m "(slow and kafka) or kafka"
|
|
148
|
+
env:
|
|
149
|
+
COVERAGE_FILE: coverage/.coverage.kafka-py
|
|
150
|
+
CONTEXT: kafka-py
|
|
151
|
+
- name: Store coverage files
|
|
152
|
+
uses: actions/upload-artifact@v3
|
|
153
|
+
with:
|
|
154
|
+
name: coverage
|
|
155
|
+
path: coverage
|
|
156
|
+
|
|
157
|
+
test-kafka-smoke:
|
|
158
|
+
if: github.event.pull_request.draft == false
|
|
159
|
+
runs-on: ubuntu-latest
|
|
163
160
|
steps:
|
|
164
161
|
- uses: actions/checkout@v4
|
|
165
162
|
- name: Set up Python
|
|
@@ -172,9 +169,9 @@ jobs:
|
|
|
172
169
|
if: steps.cache.outputs.cache-hit != 'true'
|
|
173
170
|
run: pip install .[kafka,test-core]
|
|
174
171
|
- name: Test
|
|
175
|
-
run: bash scripts/test.sh tests/brokers/kafka/
|
|
172
|
+
run: bash scripts/test.sh -m "not kafka" tests/brokers/kafka/test_test_client.py
|
|
176
173
|
|
|
177
|
-
test-rabbit-
|
|
174
|
+
test-rabbit-real:
|
|
178
175
|
if: github.event.pull_request.draft == false
|
|
179
176
|
runs-on: ubuntu-latest
|
|
180
177
|
services:
|
|
@@ -182,6 +179,32 @@ jobs:
|
|
|
182
179
|
image: rabbitmq:alpine
|
|
183
180
|
ports:
|
|
184
181
|
- 5672:5672
|
|
182
|
+
steps:
|
|
183
|
+
- uses: actions/checkout@v4
|
|
184
|
+
- name: Set up Python
|
|
185
|
+
uses: actions/setup-python@v4
|
|
186
|
+
with:
|
|
187
|
+
python-version: "3.11"
|
|
188
|
+
cache: "pip"
|
|
189
|
+
cache-dependency-path: pyproject.toml
|
|
190
|
+
- name: Install Dependencies
|
|
191
|
+
if: steps.cache.outputs.cache-hit != 'true'
|
|
192
|
+
run: pip install .[nats,kafka,rabbit,docs,testing]
|
|
193
|
+
- run: mkdir coverage
|
|
194
|
+
- name: Test
|
|
195
|
+
run: bash scripts/test.sh -m "(slow and rabbit) or rabbit"
|
|
196
|
+
env:
|
|
197
|
+
COVERAGE_FILE: coverage/.coverage.rabbit-py
|
|
198
|
+
CONTEXT: rabbit-py
|
|
199
|
+
- name: Store coverage files
|
|
200
|
+
uses: actions/upload-artifact@v3
|
|
201
|
+
with:
|
|
202
|
+
name: coverage
|
|
203
|
+
path: coverage
|
|
204
|
+
|
|
205
|
+
test-rabbit-smoke:
|
|
206
|
+
if: github.event.pull_request.draft == false
|
|
207
|
+
runs-on: ubuntu-latest
|
|
185
208
|
steps:
|
|
186
209
|
- uses: actions/checkout@v4
|
|
187
210
|
- name: Set up Python
|
|
@@ -194,9 +217,9 @@ jobs:
|
|
|
194
217
|
if: steps.cache.outputs.cache-hit != 'true'
|
|
195
218
|
run: pip install .[rabbit,test-core]
|
|
196
219
|
- name: Test
|
|
197
|
-
run: bash scripts/test.sh tests/brokers/rabbit/
|
|
220
|
+
run: bash scripts/test.sh -m "not rabbit" tests/brokers/rabbit/test_test_client.py
|
|
198
221
|
|
|
199
|
-
test-nats-
|
|
222
|
+
test-nats-real:
|
|
200
223
|
if: github.event.pull_request.draft == false
|
|
201
224
|
runs-on: ubuntu-latest
|
|
202
225
|
services:
|
|
@@ -205,7 +228,33 @@ jobs:
|
|
|
205
228
|
ports:
|
|
206
229
|
- 4222:4222
|
|
207
230
|
steps:
|
|
208
|
-
- uses: actions/checkout@
|
|
231
|
+
- uses: actions/checkout@v4
|
|
232
|
+
- name: Set up Python
|
|
233
|
+
uses: actions/setup-python@v4
|
|
234
|
+
with:
|
|
235
|
+
python-version: "3.11"
|
|
236
|
+
cache: "pip"
|
|
237
|
+
cache-dependency-path: pyproject.toml
|
|
238
|
+
- name: Install Dependencies
|
|
239
|
+
if: steps.cache.outputs.cache-hit != 'true'
|
|
240
|
+
run: pip install .[nats,kafka,rabbit,docs,testing]
|
|
241
|
+
- run: mkdir coverage
|
|
242
|
+
- name: Test
|
|
243
|
+
run: bash scripts/test.sh -m "(slow and nats) or nats"
|
|
244
|
+
env:
|
|
245
|
+
COVERAGE_FILE: coverage/.coverage.nats-py
|
|
246
|
+
CONTEXT: nats-py
|
|
247
|
+
- name: Store coverage files
|
|
248
|
+
uses: actions/upload-artifact@v3
|
|
249
|
+
with:
|
|
250
|
+
name: coverage
|
|
251
|
+
path: coverage
|
|
252
|
+
|
|
253
|
+
test-nats-smoke:
|
|
254
|
+
if: github.event.pull_request.draft == false
|
|
255
|
+
runs-on: ubuntu-latest
|
|
256
|
+
steps:
|
|
257
|
+
- uses: actions/checkout@v4
|
|
209
258
|
- name: Set up Python
|
|
210
259
|
uses: actions/setup-python@v4
|
|
211
260
|
with:
|
|
@@ -216,11 +265,15 @@ jobs:
|
|
|
216
265
|
if: steps.cache.outputs.cache-hit != 'true'
|
|
217
266
|
run: pip install .[nats,test-core]
|
|
218
267
|
- name: Test
|
|
219
|
-
run: bash scripts/test.sh tests/brokers/nats/
|
|
268
|
+
run: bash scripts/test.sh -m "not nats" tests/brokers/nats/test_test_client.py
|
|
220
269
|
|
|
221
270
|
coverage-combine:
|
|
222
271
|
if: github.event.pull_request.draft == false
|
|
223
|
-
needs:
|
|
272
|
+
needs:
|
|
273
|
+
- test
|
|
274
|
+
- test-kafka-real
|
|
275
|
+
- test-rabbit-real
|
|
276
|
+
- test-nats-real
|
|
224
277
|
runs-on: ubuntu-latest
|
|
225
278
|
|
|
226
279
|
steps:
|
|
@@ -256,10 +309,13 @@ jobs:
|
|
|
256
309
|
if: github.event.pull_request.draft == false
|
|
257
310
|
|
|
258
311
|
needs:
|
|
259
|
-
- coverage-combine
|
|
260
312
|
- static_analysis
|
|
313
|
+
- coverage-combine
|
|
261
314
|
- test-macos-latest
|
|
262
315
|
- test-windows-latest
|
|
316
|
+
- test-kafka-real
|
|
317
|
+
- test-rabbit-real
|
|
318
|
+
- test-nats-real
|
|
263
319
|
- test-kafka-smoke
|
|
264
320
|
- test-rabbit-smoke
|
|
265
321
|
- test-nats-smoke
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: faststream
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: FastStream: the simplest way to work with a messaging queues
|
|
5
5
|
Project-URL: Homepage, https://faststream.airt.ai/
|
|
6
6
|
Project-URL: Documentation, https://faststream.airt.ai/latest/getting-started/
|
|
7
7
|
Project-URL: Tracker, https://github.com/airtai/FastStream/issues
|
|
8
8
|
Project-URL: Source, https://github.com/airtai/FastStream
|
|
9
9
|
Project-URL: Discord, https://discord.gg/CJWmYpyFbc
|
|
10
|
-
Author-email: airt <info@airt.ai>,
|
|
11
|
-
Maintainer-email: airt <info@airt.ai>, Pastukhov Nikita <diementros@yandex.ru>
|
|
10
|
+
Author-email: airt <info@airt.ai>, lancetnik <diementros@gmail.com>
|
|
12
11
|
License-File: LICENSE
|
|
13
12
|
Keywords: framework,kafka,message brokers,nats,rabbitmq
|
|
14
13
|
Classifier: Development Status :: 5 - Production/Stable
|
|
@@ -68,8 +67,8 @@ Requires-Dist: isort>=5; extra == 'lint'
|
|
|
68
67
|
Requires-Dist: mypy==1.5.1; extra == 'lint'
|
|
69
68
|
Requires-Dist: pre-commit==3.4.0; extra == 'lint'
|
|
70
69
|
Requires-Dist: pyupgrade-directories; extra == 'lint'
|
|
71
|
-
Requires-Dist: ruff==0.0.
|
|
72
|
-
Requires-Dist: semgrep==1.
|
|
70
|
+
Requires-Dist: ruff==0.0.292; extra == 'lint'
|
|
71
|
+
Requires-Dist: semgrep==1.43.0; extra == 'lint'
|
|
73
72
|
Requires-Dist: types-pyyaml; extra == 'lint'
|
|
74
73
|
Requires-Dist: types-setuptools; extra == 'lint'
|
|
75
74
|
Requires-Dist: types-ujson; extra == 'lint'
|
|
@@ -2,7 +2,7 @@ from faststream.annotations import ContextRepo, Logger, NoCast
|
|
|
2
2
|
from faststream.app import FastStream
|
|
3
3
|
from faststream.broker.middlewares import BaseMiddleware
|
|
4
4
|
from faststream.broker.test import TestApp
|
|
5
|
-
from faststream.utils import Context, Depends, apply_types, context
|
|
5
|
+
from faststream.utils import Context, Depends, Header, Path, apply_types, context
|
|
6
6
|
|
|
7
7
|
__all__ = (
|
|
8
8
|
# app
|
|
@@ -12,6 +12,8 @@ __all__ = (
|
|
|
12
12
|
"apply_types",
|
|
13
13
|
"context",
|
|
14
14
|
"Context",
|
|
15
|
+
"Header",
|
|
16
|
+
"Path",
|
|
15
17
|
"Depends",
|
|
16
18
|
# annotations
|
|
17
19
|
"Logger",
|
|
@@ -2,6 +2,7 @@ import importlib.util
|
|
|
2
2
|
import json
|
|
3
3
|
import os
|
|
4
4
|
import sys
|
|
5
|
+
from contextlib import suppress
|
|
5
6
|
from typing import Any, Callable, Dict, List, Mapping, Optional, Type, TypeVar, Union
|
|
6
7
|
|
|
7
8
|
from fast_depends._compat import PYDANTIC_V2 as PYDANTIC_V2
|
|
@@ -54,28 +55,34 @@ IS_OPTIMIZED = os.getenv("PYTHONOPTIMIZE", False)
|
|
|
54
55
|
|
|
55
56
|
|
|
56
57
|
if is_installed("fastapi"):
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
58
|
+
# NOTE: is_installed somewhen True for some reason
|
|
59
|
+
with suppress(ImportError):
|
|
60
|
+
from fastapi import __version__ as FASTAPI_VERSION
|
|
61
|
+
|
|
62
|
+
major, minor, _ = map(int, FASTAPI_VERSION.split("."))
|
|
63
|
+
FASTAPI_V2 = not (major < 0 and minor < 100)
|
|
64
|
+
|
|
65
|
+
if FASTAPI_V2:
|
|
66
|
+
from fastapi._compat import _normalize_errors
|
|
67
|
+
from fastapi.exceptions import RequestValidationError
|
|
68
|
+
|
|
69
|
+
def raise_fastapi_validation_error(
|
|
70
|
+
errors: List[Any], body: AnyDict
|
|
71
|
+
) -> Never:
|
|
72
|
+
raise RequestValidationError(_normalize_errors(errors), body=body)
|
|
73
|
+
|
|
74
|
+
else:
|
|
75
|
+
from pydantic import ( # type: ignore[assignment] # isort: skip
|
|
76
|
+
ValidationError as RequestValidationError,
|
|
77
|
+
)
|
|
78
|
+
from pydantic import create_model
|
|
79
|
+
|
|
80
|
+
ROUTER_VALIDATION_ERROR_MODEL = create_model("StreamRoute")
|
|
81
|
+
|
|
82
|
+
def raise_fastapi_validation_error(
|
|
83
|
+
errors: List[Any], body: AnyDict
|
|
84
|
+
) -> Never:
|
|
85
|
+
raise RequestValidationError(errors, ROUTER_VALIDATION_ERROR_MODEL) # type: ignore[misc]
|
|
79
86
|
|
|
80
87
|
|
|
81
88
|
JsonSchemaValue = Mapping[str, Any]
|
|
@@ -5,7 +5,6 @@ from fast_depends.core import CallModel
|
|
|
5
5
|
from pydantic import BaseModel
|
|
6
6
|
|
|
7
7
|
from faststream._compat import PYDANTIC_V2, get_model_fields, model_schema
|
|
8
|
-
from faststream.asyncapi.utils import to_camelcase
|
|
9
8
|
|
|
10
9
|
|
|
11
10
|
def parse_handler_params(call: CallModel[Any, Any], prefix: str = "") -> Dict[str, Any]:
|
|
@@ -200,11 +199,7 @@ def get_model_schema(
|
|
|
200
199
|
|
|
201
200
|
body = param_body
|
|
202
201
|
|
|
203
|
-
camel_body = to_camelcase(body["title"])
|
|
204
202
|
if not use_original_model:
|
|
205
|
-
|
|
206
|
-
body["title"] = f"{prefix}{camel_body}Payload"
|
|
207
|
-
else:
|
|
208
|
-
body["title"] = f"{camel_body}Payload"
|
|
203
|
+
body["title"] = f"{prefix}:Payload"
|
|
209
204
|
|
|
210
205
|
return body
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from typing import List
|
|
1
|
+
from typing import List, Tuple
|
|
2
2
|
|
|
3
3
|
from faststream.types import AnyDict
|
|
4
4
|
|
|
@@ -22,7 +22,11 @@ def to_camelcase(*names: str) -> str:
|
|
|
22
22
|
return " ".join(names).replace("_", " ").title().replace(" ", "")
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
def resolve_payloads(
|
|
25
|
+
def resolve_payloads(
|
|
26
|
+
payloads: List[Tuple[AnyDict, str]],
|
|
27
|
+
extra: str = "",
|
|
28
|
+
served_words: int = 1,
|
|
29
|
+
) -> AnyDict:
|
|
26
30
|
"""Resolve payloads.
|
|
27
31
|
|
|
28
32
|
Args:
|
|
@@ -37,9 +41,32 @@ def resolve_payloads(payloads: List[AnyDict]) -> AnyDict:
|
|
|
37
41
|
ln = len(payloads)
|
|
38
42
|
payload: AnyDict
|
|
39
43
|
if ln > 1:
|
|
40
|
-
|
|
44
|
+
one_of_payloads = {}
|
|
45
|
+
|
|
46
|
+
for body, handler_name in payloads:
|
|
47
|
+
title = body["title"]
|
|
48
|
+
words = title.split(":")
|
|
49
|
+
|
|
50
|
+
if len(words) > 1: # not pydantic model case
|
|
51
|
+
body["title"] = title = ":".join(
|
|
52
|
+
filter(
|
|
53
|
+
lambda x: bool(x),
|
|
54
|
+
(
|
|
55
|
+
handler_name,
|
|
56
|
+
extra if extra not in words else "",
|
|
57
|
+
*words[served_words:],
|
|
58
|
+
),
|
|
59
|
+
)
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
one_of_payloads[title] = body
|
|
63
|
+
|
|
64
|
+
payload = {"oneOf": one_of_payloads}
|
|
65
|
+
|
|
41
66
|
elif ln == 1:
|
|
42
|
-
payload = payloads[0]
|
|
67
|
+
payload = payloads[0][0]
|
|
68
|
+
|
|
43
69
|
else:
|
|
44
70
|
payload = {}
|
|
71
|
+
|
|
45
72
|
return payload
|
|
@@ -154,6 +154,7 @@ class StreamMessage(Request):
|
|
|
154
154
|
self,
|
|
155
155
|
body: Optional[AnyDict] = None,
|
|
156
156
|
headers: Optional[AnyDict] = None,
|
|
157
|
+
path: Optional[AnyDict] = None,
|
|
157
158
|
):
|
|
158
159
|
"""Initialize a class instance.
|
|
159
160
|
|
|
@@ -175,7 +176,7 @@ class StreamMessage(Request):
|
|
|
175
176
|
self._cookies = {}
|
|
176
177
|
self._headers = headers or {}
|
|
177
178
|
self._body = body or {}
|
|
178
|
-
self._query_params = self._body
|
|
179
|
+
self._query_params = {**self._body, **(path or {})}
|
|
179
180
|
|
|
180
181
|
@classmethod
|
|
181
182
|
def get_session(
|
|
@@ -237,7 +238,7 @@ class StreamMessage(Request):
|
|
|
237
238
|
else:
|
|
238
239
|
fastapi_body = body
|
|
239
240
|
|
|
240
|
-
session = cls(fastapi_body, message.headers)
|
|
241
|
+
session = cls(fastapi_body, message.headers, message.path)
|
|
241
242
|
else:
|
|
242
243
|
session = cls()
|
|
243
244
|
return await func(session)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from abc import abstractmethod
|
|
2
2
|
from contextlib import AsyncExitStack
|
|
3
|
+
from inspect import unwrap
|
|
3
4
|
from typing import (
|
|
4
5
|
Any,
|
|
5
6
|
Awaitable,
|
|
@@ -18,6 +19,7 @@ from fast_depends.core import CallModel
|
|
|
18
19
|
|
|
19
20
|
from faststream._compat import IS_OPTIMIZED, override
|
|
20
21
|
from faststream.asyncapi.base import AsyncAPIOperation
|
|
22
|
+
from faststream.asyncapi.message import parse_handler_params
|
|
21
23
|
from faststream.asyncapi.utils import to_camelcase
|
|
22
24
|
from faststream.broker.message import StreamMessage
|
|
23
25
|
from faststream.broker.middlewares import BaseMiddleware
|
|
@@ -36,7 +38,7 @@ from faststream.broker.types import (
|
|
|
36
38
|
)
|
|
37
39
|
from faststream.broker.wrapper import HandlerCallWrapper
|
|
38
40
|
from faststream.exceptions import HandlerException, StopConsume
|
|
39
|
-
from faststream.types import SendableMessage
|
|
41
|
+
from faststream.types import AnyDict, SendableMessage
|
|
40
42
|
from faststream.utils.context.main import context
|
|
41
43
|
from faststream.utils.functions import to_async
|
|
42
44
|
|
|
@@ -109,21 +111,13 @@ class BaseHandler(AsyncAPIOperation, Generic[MsgType]):
|
|
|
109
111
|
self._title = title
|
|
110
112
|
self.log_context_builder = log_context_builder
|
|
111
113
|
|
|
112
|
-
@override
|
|
113
114
|
@property
|
|
114
|
-
def name(self) ->
|
|
115
|
-
|
|
116
|
-
return self._title
|
|
117
|
-
|
|
118
|
-
if not self.calls: # pragma: no cover
|
|
119
|
-
return False
|
|
120
|
-
|
|
121
|
-
else:
|
|
122
|
-
return True
|
|
115
|
+
def name(self) -> str:
|
|
116
|
+
return self._title or self.call_name
|
|
123
117
|
|
|
124
118
|
@property
|
|
125
119
|
def call_name(self) -> str:
|
|
126
|
-
caller = self.calls[0][0]._original_call
|
|
120
|
+
caller = unwrap(self.calls[0][0]._original_call)
|
|
127
121
|
name = getattr(caller, "__name__", str(caller))
|
|
128
122
|
return to_camelcase(name)
|
|
129
123
|
|
|
@@ -133,7 +127,7 @@ class BaseHandler(AsyncAPIOperation, Generic[MsgType]):
|
|
|
133
127
|
description = None
|
|
134
128
|
|
|
135
129
|
else:
|
|
136
|
-
caller = self.calls[0][0]._original_call
|
|
130
|
+
caller = unwrap(self.calls[0][0]._original_call)
|
|
137
131
|
description = getattr(caller, "__doc__", None)
|
|
138
132
|
|
|
139
133
|
return self._description or description
|
|
@@ -156,6 +150,17 @@ class BaseHandler(AsyncAPIOperation, Generic[MsgType]):
|
|
|
156
150
|
"""
|
|
157
151
|
raise NotImplementedError()
|
|
158
152
|
|
|
153
|
+
def get_payloads(self) -> List[Tuple[AnyDict, str]]:
|
|
154
|
+
payloads: List[Tuple[AnyDict, str]] = []
|
|
155
|
+
|
|
156
|
+
for h, _, _, _, _, dep in self.calls:
|
|
157
|
+
body = parse_handler_params(
|
|
158
|
+
dep, prefix=f"{self._title or self.call_name}:Message"
|
|
159
|
+
)
|
|
160
|
+
payloads.append((body, to_camelcase(unwrap(h._original_call).__name__)))
|
|
161
|
+
|
|
162
|
+
return payloads
|
|
163
|
+
|
|
159
164
|
|
|
160
165
|
class AsyncHandler(BaseHandler[MsgType]):
|
|
161
166
|
"""A class representing an asynchronous handler.
|
|
@@ -31,10 +31,11 @@ class ABCStreamMessage(Generic[Msg]):
|
|
|
31
31
|
|
|
32
32
|
body: Union[bytes, Any]
|
|
33
33
|
decoded_body: Optional[DecodedMessage] = None
|
|
34
|
+
headers: AnyDict = field(default_factory=dict)
|
|
35
|
+
path: AnyDict = field(default_factory=dict)
|
|
34
36
|
|
|
35
37
|
content_type: Optional[str] = None
|
|
36
38
|
reply_to: str = ""
|
|
37
|
-
headers: AnyDict = field(default_factory=dict)
|
|
38
39
|
message_id: str = field(default_factory=lambda: str(uuid4())) # pragma: no cover
|
|
39
40
|
correlation_id: str = field(
|
|
40
41
|
default_factory=lambda: str(uuid4())
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from abc import abstractmethod
|
|
2
2
|
from dataclasses import dataclass, field
|
|
3
|
-
from
|
|
3
|
+
from inspect import unwrap
|
|
4
|
+
from typing import Any, Callable, Generic, List, Optional, Tuple
|
|
4
5
|
from unittest.mock import MagicMock
|
|
5
6
|
|
|
6
7
|
from fast_depends._compat import CreateBaseModel, create_model
|
|
@@ -39,18 +40,30 @@ class BasePublisher(AsyncAPIOperation, Generic[MsgType]):
|
|
|
39
40
|
|
|
40
41
|
title: Optional[str] = field(default=None)
|
|
41
42
|
_description: Optional[str] = field(default=None)
|
|
42
|
-
_fake_handler: bool = field(default=False)
|
|
43
43
|
_schema: Optional[Any] = field(default=None)
|
|
44
44
|
|
|
45
45
|
calls: List[Callable[..., Any]] = field(
|
|
46
46
|
init=False, default_factory=list, repr=False
|
|
47
47
|
)
|
|
48
|
-
|
|
48
|
+
_fake_handler: bool = field(default=False, repr=False)
|
|
49
|
+
mock: Optional[MagicMock] = field(init=False, default=None, repr=False)
|
|
49
50
|
|
|
50
51
|
@property
|
|
51
52
|
def description(self) -> Optional[str]:
|
|
52
53
|
return self._description
|
|
53
54
|
|
|
55
|
+
def set_test(
|
|
56
|
+
self,
|
|
57
|
+
mock: MagicMock,
|
|
58
|
+
with_fake: bool,
|
|
59
|
+
) -> None:
|
|
60
|
+
self.mock = mock
|
|
61
|
+
self._fake_handler = with_fake
|
|
62
|
+
|
|
63
|
+
def reset_test(self) -> None:
|
|
64
|
+
self._fake_handler = False
|
|
65
|
+
self.mock = None
|
|
66
|
+
|
|
54
67
|
def __call__(
|
|
55
68
|
self,
|
|
56
69
|
func: Callable[P_HandlerParams, T_HandlerReturn],
|
|
@@ -101,10 +114,10 @@ class BasePublisher(AsyncAPIOperation, Generic[MsgType]):
|
|
|
101
114
|
"""
|
|
102
115
|
raise NotImplementedError()
|
|
103
116
|
|
|
104
|
-
def get_payloads(self) -> List[AnyDict]:
|
|
105
|
-
payloads: List[AnyDict] = []
|
|
117
|
+
def get_payloads(self) -> List[Tuple[AnyDict, str]]:
|
|
118
|
+
payloads: List[Tuple[AnyDict, str]] = []
|
|
106
119
|
|
|
107
|
-
if
|
|
120
|
+
if self._schema:
|
|
108
121
|
call_model: CallModel[Any, Any] = CallModel(
|
|
109
122
|
call=lambda: None,
|
|
110
123
|
model=create_model("Fake"),
|
|
@@ -117,18 +130,19 @@ class BasePublisher(AsyncAPIOperation, Generic[MsgType]):
|
|
|
117
130
|
|
|
118
131
|
body = get_response_schema(
|
|
119
132
|
call_model,
|
|
120
|
-
prefix=self.
|
|
121
|
-
)
|
|
122
|
-
if body:
|
|
123
|
-
payloads.append(body)
|
|
124
|
-
|
|
125
|
-
for call in self.calls:
|
|
126
|
-
call_model = build_call_model(call)
|
|
127
|
-
body = get_response_schema(
|
|
128
|
-
call_model,
|
|
129
|
-
prefix=to_camelcase(call_model.call_name),
|
|
133
|
+
prefix=f"{self.name}:Message",
|
|
130
134
|
)
|
|
131
135
|
if body:
|
|
132
|
-
payloads.append(body)
|
|
136
|
+
payloads.append((body, ""))
|
|
137
|
+
|
|
138
|
+
else:
|
|
139
|
+
for call in self.calls:
|
|
140
|
+
call_model = build_call_model(call)
|
|
141
|
+
body = get_response_schema(
|
|
142
|
+
call_model,
|
|
143
|
+
prefix=f"{self.name}:Message",
|
|
144
|
+
)
|
|
145
|
+
if body:
|
|
146
|
+
payloads.append((body, to_camelcase(unwrap(call).__name__)))
|
|
133
147
|
|
|
134
148
|
return payloads
|