Skip to content

Fail gracefully at lack of tasks_by_state() driver API method #126

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

Closed
Totktonada opened this issue Jul 10, 2020 · 1 comment · Fixed by #129
Closed

Fail gracefully at lack of tasks_by_state() driver API method #126

Totktonada opened this issue Jul 10, 2020 · 1 comment · Fixed by #129
Assignees
Labels
code health Improve code readability, simplify maintenance and so on

Comments

@Totktonada
Copy link
Member

Driver API was changed with the new requirement in 75c4708, which was released in 1.0.6: the new method tasks_by_state() must be defined in a queue driver. We unable to relax this requirement without potentially loosing of task processing correctness (see #66).

All built-in drivers were updated, but there are external ones and we should give developers clear notification how to update a driver to support queue-1.0.6. Let's give clear error message in case of lack of the method and update the release notes for 1.0.6 with upgrade path and simple example.

@Totktonada Totktonada added the code health Improve code readability, simplify maintenance and so on label Jul 10, 2020
@LeonidVas LeonidVas self-assigned this Jul 29, 2020
LeonidVas added a commit that referenced this issue Aug 3, 2020
In addition to the core queue drivers, customer drivers are exists.
In the commit a check for a driver API implementation was added.
Now, the consumer will be informed about the missing methods in
the driver implementation.

Closes #126
LeonidVas added a commit that referenced this issue Aug 3, 2020
Driver API was changed with the new requirement in 75c4708:
the new method "tasks_by_state" must be defined in a queue
driver now. We want to be user-friendly, so we allow user
to work without implementing this method in the customer driver.

Part of #126
LeonidVas added a commit that referenced this issue Aug 3, 2020
In addition to the core queue drivers, customer drivers are exists.
In the commit a check for a driver API implementation was added.
Now, the consumer will be informed about the missing methods in
the driver implementation.

Closes #126
LeonidVas added a commit that referenced this issue Aug 12, 2020
In addition to the core queue drivers, customer drivers are exists.
In the commit a check for a driver API implementation was added.
Now, the consumer will be informed about the missing methods in
the driver implementation.

Closes #126
LeonidVas added a commit that referenced this issue Aug 13, 2020
In addition to the core queue drivers, customer drivers are exists.
In the commit a check for a driver API implementation was added.
Now, the consumer will be informed about the missing methods in
the driver implementation.

Closes #126
@Totktonada
Copy link
Member Author

Updated 'breaking changes' section on the release notes for 1.0.6.

Totktonada pushed a commit that referenced this issue Aug 13, 2020
In addition to the core queue drivers, customer drivers are exists.
In the commit a check for a driver API implementation was added.
Now, the consumer will be informed about the missing methods in
the driver implementation.

Closes #126
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code health Improve code readability, simplify maintenance and so on
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants