Thursday, February 16, 2023

BullMQ Python preview package

Go back to news
Manuel Astudillo
@manast

We have released a preview package for BullMQ in Python. The package is available in PyPI and can be installed easily using pip:

pip install bullmq

We are just getting started so the package is still in alpha status with limited funcionality but we are going to add more features and harded it in the coming months. You are very welcome to try it and give us feedback.

We hare using a monorepo for both the NodeJS version and the Python version. One of the benefits of this approach is that it is pretty easy to keep the .lua scripts in sync between both versions. At the end of the day, the code in the .lua script is the actual implementation of BullMQ, so we are getting most for free when porting to Python. Still we need to add a lot of glue code and tests to make the Python version as robust as the NodeJS version.

To keep the code as similar to the NodeJS version as possible we are using the asyncio package, so that we can use async/await syntax in the Python code. Besides making it easier to port the code, it probably makes it also faster than using other approaches.

We are putting the documentation in the BullMQ docs site, and although it is still a work in progress, you can already find some examples there.

Please let us know if you have any feedback or suggestions at GitHub.