Add a GraphQL ecosystem profile

Ouverte
#89 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é
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Fonctionnalité
Clarté
Clairement spécifiée
Activité
Active
Stack technique
graphql, python
Domaine
testing, tooling

Piste de recherche

Read the existing ecosystem profiles, especially tests/test_go.py, and the contract in tests/test_ecosystem_contract.py; inspect tests/support.py for fixture layout and tests/test_documentation.py for the README table. Add the profile at project_validator/ecosystems/graphql.py, register it in BUILT_IN, and add the named fixtures and tests. Done means the configured fixture passes applicable checks, the bare fixture passes none, snapshots are recorded, and the README lists where the profile applies.

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

Description

Profile

Recognised by schema files: *.graphql / *.graphqls containing type definitions, or schema.graphql (#63). Supplies the schema practices from #85.

Practice Rule for this ecosystem
schema-validation CI validates operations against the schema: graphql-inspector validate, or codegen that fails on invalid documents
compiler-warnings graphql-schema-linter or @graphql-eslint in CI
code-formatting prettier (default style)
schema-compatibility graphql-inspector diff (or Apollo rover graph check) in CI

Definition of done

  • One profile module, project_validator/ecosystems/graphql.py, registered in BUILT_IN. Nothing in project_validator/checks/ changes: a row marked later belongs to a check that does not exist yet and is recorded on that check's issue.
  • tests/fixtures/well_configured_graphql passes every check that applies to it, and tests/fixtures/bare_graphql passes none of the ecosystem's practices (tests/test_ecosystem_contract.py). Snapshots recorded with UPDATE_SNAPSHOTS=1.
  • A project layout in tests/support.py, profile tests like tests/test_go.py, and the README "Applies to" column (tests/test_documentation.py).
  • A practice with no good evidence for this ecosystem is left out (the check reports SKIP) rather than judged by weak evidence.
Langage dominant
Python
Étoiles
4
Forks
1
Merge moyen
10 h 41 min
PR mergées (30 j)
79

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

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 cpp-best-practices/project_validator

Toutes les issues de cpp-best-practices/project_validator

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.