Versioning policy for graphql-python tools
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 20/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- backend-api-design, release
Direzione di ricerca
Issue #241 è una discussione sulle policy piuttosto che un’attività di implementazione e non indica file o test. Esamina le tre generazioni di graphql-core, i relativi vincoli di pacchetto e versionamento e gli strumenti dipendenti elencati nell’issue. Il lavoro è completato quando si raggiunge un accordo su una strategia di denominazione e versionamento, compreso come dovranno procedere gli strumenti e i branch esistenti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I think it's time to discuss a versioning and naming policy for the graphql-python tools so we can move forward.
We currently have three "generations" of the underlying core library:
- graphql-core (supports Python 2+3, old API, based on an old version of GraphQL.js)
- graphql-core-next (supports only Python >= 3.6, new API, latest features from GraphQL.js)
- graphql-core/modern branch (trys to be compatible with core-next, but support Py 2 + 3)
All of these use the package name "graphql" (like GraphQL.js) which makes things difficult, and currently have version numbers that are not (chrono)logical (core-next has a lower version number than core).
We also have a large set of other libraries that use graphql-core as their foundation: Graphene, graphql-server-core, flask-graphql, graphene-sqlalchemy etc. etc.
We want to move things forward, but not break this whole carefully assembled house of cards or create a proliferation of different forks and subvariants. So we need to talk on how to proceed regarding the versioning and naming strategy.
Some questions that come to my mind:
- Do we really want to support the graphql-core/modern branch? Yes, it looks like a reasonable strategy and @syrusakbary already put a lot of work into this, but I'm not sure if it's realistic to keep it - to me it seems too much of an effort just for supporting Python 2.7 (end of life 2020-01) and Python 3.5 (end of life 2020-09), and I see nobody who feels responsible and will maintain it. Syrus dropped out, and I want to focus on core-next. And it makes the whole story even more complicated like juggling with three balls. But I'd like to hear the opinion of others, and maybe somebody really wants to maintain it?
- When the existing tools are rebased on the new API (graphql-core-next), should they be released under a new name (like graphql-server-core-next) or should they keep the name and use a new major version number? Should new repositories be created or just separate branches in the existing repositories?
- Should we use different names instead of just "graphql" for the base package so that graphql-core and core-next can be installed in parallel?
- Or should we use the same name, maybe even release them under the same well-known name ("graphql-core") on PyPI and distinguish them by version number ranges (e.g. core = 2.x, core/modern = 3.x, core-next = 4.x+)?
- Or maybe even choose a completely different distribution name? "GraphQL.py" or "graphql" would be great, but they are already in use.
I'd like to get your thoughts and feedback here or on the Slack channel.
- Lingua principale
- Python
- Stelle
- 371
- Fork
- 174
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di graphql-python/graphql-core-legacy
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Quiver sourceAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
graphql-python/graphql-core-legacy#286 · 3 reazioni ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
graphql-python/graphql-core-legacy#280 · 2 commenti · 1 reazione ·
-
Add support for custom validators in default GraphQL backendForse già presa @JoaRiski l’ha presa 2421 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Tutte le issue di graphql-python/graphql-core-legacy
Issue simili
-
area: agents area: docs good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
openapi/gknowledge#23 ·
-
get() for StrEnumForse già presa @FeJo5952 l’ha presa oggi. Apertagood first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
collective/icalendar#1921 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Improvement Python Spans
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
getsentry/sentry-python#7994 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
alphagov/notifications-api#5004 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
equinor/radix-flux#3922 ·
I maintainer di solito rispondono entro 1 giorno