meilisearch / meilisearch-dart

The Meilisearch API client written for Dart

Home Page:https://meilisearch.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ensure the error handling are following the best practice

brunoocasali opened this issue · comments

⚠️ This issue is generated, it means the examples and the namings do not necessarily correspond to the language of this repository.
Also, if you are a maintainer, please add any clarification and instructions about this issue.

Sorry if this is already wholly/partially implemented. Feel free to let me know about the state of this issue in the repo.

Related to meilisearch/integration-guides#267


⚠️ For more information, check meilisearch/integration-guides#267

Ensure this SDK follows the following guidelines:

  • All the errors > 400 without a message should be sent as MeilisearchCommunicationError
  • Know errors like index is not found, or mistakes in the request like not-allowed params should be sent as MeilisearchApiError
  • Any other error should be a MeilisearchException

Essentially all the error should extend from MeilisearchException, the consumers should have a way to catch all the errors.
Let us know if this is unclear or you have a better idea!

TODO:

  • Create a base error called MeilisearchException which will extend the standard error if it does not exist (when the language supports)
  • Make all the other errors extend this error.
  • Move all errors without message to MeilisearchCommunicationError since it is not a Meilisearch error anyway.

@brunoocasali I suggest making it MeilisearchException instead of MeilisearchError