Active development, making library async compatible, client agnostic etc.
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 15/100
Direzione di ricerca
Inizia esaminando la suite completa di test esistente insieme al fork collegato di httpx-caching e alle pull request 240 e 225, oltre all’issue 232, a cui si fa riferimento. La direzione proposta è una libreria di caching indipendente dal client, sync/async, con test sans-IO; per considerare il lavoro completato sarebbero necessari un design concordato e un piano di implementazione, anziché una singola modifica localizzata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Just wanted to create a bit of a point of discussion regarding "the big picture".
It would seem that @ionrock doesn't have masses of time to spend on this project at the moment. It works great, and a lot of people use it. Smaller changes are being merged but the occasional burst of more extensive input / PRs by contributors tend to fizzle out. This is totally understandable. But would be great if this energy could be put to use!
At the end of last year I got excited about httpx and decided I wanted to try and port this library to work with it. I then got larger aspirations and decided to try and separate the caching logic from the IO following the sans-io philosophy (and therefor also the requests specific stuff). This would mean it could have a transport for requests and a transport for httpx, and would also be fully asyncio compatible.
To be honest it was more a bit of fun than anything, but I had a bee in my bonnet and got it working, with the full test suite passing, sync and async. The caching policy is implemented as a coroutine, which seemed a pretty neat abstraction at the time. It works with async, but there's only an in-memory cache backend at the moment. Other backends could be added with full asyncio compatibility which would be cool!
I guess the big question is, is there enough interest / energy out there to make something happen.
My vision would be a httpx/requests agnostic, sync async compatible library. The test suite would be all data in and out of the sans-io protocol, no need for mocking requests etc. (this isn't something I got round to doing but shouldn't be hard to do with the existing test suite).
My fork may or may not be a good starting point! I'm quite happy with it..
I wish I could say I had loads of time and energy to put into something like this, but health issues mean I might not be able to offer much more than discussion and code reviews, and my fork if someone wanted to use it as a starting point. I also hope I'm not treading on any toes, just don't want to see good intentions and code go to waste.
https://github.com/ionrock/cachecontrol/pull/240
@Flameeyes's large refactor PR (would have based my fork on this if I'd known about it)
https://github.com/ionrock/cachecontrol/pull/225
https://github.com/ionrock/cachecontrol/issues/232
@Flameeyes @hexagonrecursion
- Lingua principale
- Python
- Stelle
- 505
- Fork
- 153
- Merge medio
- 5g 6h
- PR unite (30g)
- 5
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
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 psf/cachecontrol
-
Cache Deserialization (part two) -- warning message incorrect?Forse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
psf/cachecontrol#209 · 5 commenti ·
-
Race condition in send()Forse già presa @JulienPalard l’ha presa 147 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
psf/cachecontrol#424 · 1 commento ·
-
HTTP 302 Found responses with Cache Headers not being cachedForse già presa @cburroughs l’ha presa 280 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
psf/cachecontrol#384 · 18 commenti ·
-
Head request is not cached even with cacheable_methods=("GET", HEAD") without a previous GETForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
psf/cachecontrol#337 · 6 commenti ·
-
Investigate failure to load caches above `2^32 - 1` bytesForse di nuovo libera @woodruffw l’ha presa 853 giorni fa e non c’è nessuna pull request aperta. Aperta
psf/cachecontrol#336 · 4 commenti · 1 reazione · 1 assegnatario ·
Tutte le issue di psf/cachecontrol
Issue simili
-
Broken links in the docsAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
uniswap-python/uniswap-python#487 ·
-
[Bug]: agent_final_response still returns the abandoned branch's answer after navigate moves HEAD backForse già presa @enyst l’ha presa oggi. Apertabug priority:low ready-for-dev
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
OpenHands/software-agent-sdk#5822 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
-
area: server enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
scs0209/laya-guard#52 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 2 giorni