Refactoring envelope of successful responses and its client contract

Ouverte Adaptée aux débutants
#256 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
62/100
Type d'issue
Refactorisation
Clarté
Plutôt claire
Activité
Active
Stack technique
python
Domaine
api, backend

Piste de recherche

Commencez par les constructeurs de réponses réussies dans src/utils/utils.py et examinez leurs appelants et leurs tests pour déterminer quels champs de réponse le client attend. Mettez à jour de manière cohérente l’enveloppe des réponses réussies pour les données, la pagination et les agrégations, puis exécutez les tests pertinents. Le travail est terminé lorsque les champs redondants ont été supprimés du corps de la réponse et que les tests reflètent le contrat du client.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

refactoring

Summary

Revisit the envelope of successful (HTTP 200) responses from the stats lambda. Every success body currently contains two fields that duplicate the HTTP response:

{"success": true, "statusCode": 200, "data": [...], "pagination": {...}}
{"success": true, "statusCode": 200, "aggregations": {...}}
  • success: true is already implied by the 2xx status code.
  • statusCode is repeated in the body, although it is already the API Gateway statusCode.

This is built in src/utils/utils.py (success response builders for data/pagination and aggregations).

Background

Raised by @lsulak in review of PR #243: "success is quite visible from the status code, and then also status code is there twice. Is there any situation when it differentiates?"

Langage dominant
Python
Étoiles
4
Forks
0
Merge moyen
3 j 12 h
PR mergées (30 j)
10

Préparer son environnement

  • Fournit un Dockerfile ou un fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de AbsaOSS/EventGate

Toutes les issues de AbsaOSS/EventGate

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.