Releases: airtai/fastkafka
v0.3.0rc0
New Features
-
Add a GH action file to check for broken links in the docs (#163)
-
Optimize requirements for testing and docs (#151)
-
Break requirements into base and optional for testing and dev (#124)
- MInimize base requirements needed just for running the service.
Move to setup.py
-
Add link to example git repo into guide for building docs using actions (#81)
-
Add logging for run_in_background (#46)
-
Implement partition Key mechanism for producers (#16)
-
- Implement partition key mechanism for
@produces
decorator
Implemented behaviour:
- Implement partition key mechanism for
- A method decorated with
@produces
can return defined message as-is: the message is wrapped in a Event object with key=None and passed to producer = message sent without defined key, partition chosen at random - A method decorated with
@produces
can return defined message wrapped in an Event object with key argument value in bytes = message sent to kafka with defined key, partition chosen using the defined key
-
Bugs Squashed
-
fastkafka docs install_deps fails (#157)
- Unexpected internal error: [Errno 2] No such file or directory: 'npx'
-
Broken links in docs (#141)
- Looks nice! Btw: The links to your docs in your readme are broken:)
- fastkafka run is not showing up in CLI docs (#132)
v0.2.3
v0.2.2
New Features
-
Extract JDK and Kafka installation out of LocalKafkaBroker (#131)
-
PyYAML version relaxed (#119), thanks to @davorrunje
-
Replace docker based kafka with local (#68)
- replace docker compose with a simple docker run (standard run_jupyter.sh should do)
- replace all tests to use LocalKafkaBroker
- update documentation
Bugs Squashed
v0.2.0
v0.1.3
v0.1.2
New Features
- Git workflow action for publishing Kafka docs (#78)
Bugs Squashed
- Include missing requirement (#110)
- Typer is imported in this file but it is not included in settings.ini
- Add aiohttp which is imported in this file
- Add nbformat which is imported in _components/helpers.py
- Add nbconvert which is imported in _components/helpers.py
0.1.1
v0.1.0rc5
New Features
-
Enable FastKafka reentrancy (#92)
-
- Remove passing of custom producers in @produces decorator
-
-
Add cleanup of stale producers in populate_producers and close_producers methods
-
Allocation of random port in LocalKafkaBroker (#80)
- If the Zookeeper or Kafka process crashes while creating it's most likely that the requested port is occupied.
To solve this, if the process crashes, try with a randomly generated port.
- If the Zookeeper or Kafka process crashes while creating it's most likely that the requested port is occupied.
-
Zookeeper random port allocation
-
Kafka random port allocation
-
Create missing topics in LocalKafkaBroker (#79)
- Changed to pass to LocalKafkaBroker
-
add topics function to KafkaApp for listing topics
-
Implement creation of topics in LocalKafkaBroker
-
Wait for topics to be created in Broker
-
Implement FastKafka Tester class (#75)
-
- Implent mocking of consume and produce functions
-
-
Implement mirroring of consumers and producers
-
Release polishing (#69)
-
- Remove stale uvicorn imports from notebooks
-
-
Transfer nest-asyncio requirement to dev requirements
-
Replace Ilock with posix_ipc
-
Implement mechanism for port allocation in LocalKafkaBroker
-
Cleanup logging in LocalKafkaBoker
-
Create LocalKafkaBroker class (#66)
-
Start LocalKafkaBroker in testing (#65)
-
Integrate static check changes from workflow repository (#59)
-
Refactor consumer_loop (#43)
-
- Remove unnecessary process_msgs and integrate it back to _aiokafka_consumer_loop
-
-
Rework process_msgs tests to use mock patching
-
Remove creating and sending async callback to process stream every time when msg is consumed
-
Write docs
-
Fix failing CI tests
-
Add better exception handling in consumer callbacks (#37)
-
Implement mechanism for registering actions after startup (#35)
-
Make FastKafkaAPI not inherit from FastAPI (#34)
-
Implement sync and async variants for producer decorator (#22)
-
Add Kafka healthcheck in CI (#11)
-
CLI command for exporting async docs (#8)
Bugs Squashed
-
Enable FastKafka reentrancy (#92)
-
- Remove passing of custom producers in @produces decorator
-
-
Add cleanup of stale producers in populate_producers and close_producers methods
-
FastKafka context manager aenter and aexit unuseable separately because of TaskGroup exceptions when closing (#91)
- TaskGroup must be closed in the same task it was opened, otherwise exception is raised
This breaks FastKafka when async context manager methods are used separately
- TaskGroup must be closed in the same task it was opened, otherwise exception is raised
-
Replace task group with asyncio.create_task calls to enable using aenter and aexit methods in FastKafk
-
Release polishing (#69)
-
- Remove stale uvicorn imports from notebooks
-
-
Transfer nest-asyncio requirement to dev requirements
-
Replace Ilock with posix_ipc
-
Implement mechanism for port allocation in LocalKafkaBroker
-
Cleanup logging in LocalKafkaBoker
-
Fastkafka CLI run workers does not output log messages until cancelled (#60)
- The issue happens when the code does not flush the output, such as in regular python print().
-
Write a warning in the 02_First_Steps for flushing
-
Fix export_async_spec failing when @consumes function has a return type None (#48)
-
Fix silent failing in guides when executing example scripts (#44)
-
- Add exit_code return value to run_script_and_cancel helper function
-
-
Assert exit_code is equal to 0 when run_script_and_cancel runs
-
Add tests for run_script_and_cancel helper function
-
Check log levels for Guide_02_First_steps