Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Contrast with procrastinate + migrations #1

Open
mahmoud opened this issue Dec 12, 2024 · 1 comment
Open

Contrast with procrastinate + migrations #1

mahmoud opened this issue Dec 12, 2024 · 1 comment

Comments

@mahmoud
Copy link
Contributor

mahmoud commented Dec 12, 2024

Hey there! Great project here, big fan of this architecture.

When comparing Python Postgres queues, there's one project conspicuously absent from the Alternatives list, procrastinate: https://github.com/procrastinate-org/procrastinate

That said, I think bq compares favorably. Sure, procrastinate is more mature and may have more features, but it also focuses more on Django and less on SQLAlchemy, and has a much more murky migration story. If I'm understanding correctly, bq should "just work" with Alembic, especially if one creates their own Task models.

So in short:

  1. Great work
  2. Maybe add Procrastinate to the list of Alternatives
  3. Consider adding a short discussion of migrations for when a bq upgrade might change its internal model definitions.

Thanks!

@fangpenlin
Copy link
Contributor

Hey @mahmoud, thanks for the kind words. 😄

I didn't know existence of procrastinate, thanks for brining it up. I've already added it into the alternative list. And yes, I designed this tool to only rely on SQLAlchemy and couple loosely with the data model. So it doesn't care much about the your data model (tables), and you can define your table in whatever shape you want, as long as it's duck-typed correctly for bq to work with. So yes, migration can be done easily with Alembic or any other SQLAlchemy migration tools.

As for migration in readme, yeah, I will add that later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants