Download a repository archive
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 52/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- github, gitlab, typescript
- Ambito
- api, backend-api-design
Direzione di ricerca
Start by locating the implementation of forge.contents and releases.downloadAsset(), then trace how provider-specific requests and response streams are handled. Add forge.contents.archive(repo, { ref, format, as }) using the documented endpoints for GitHub, GitLab, and Gitea/Forgejo, and verify provider behavior with the relevant tests or test fixtures. Done means supported formats and binary/stream responses work consistently, while archive naming differences are documented.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I would like to read files at one ref without running git. In GitHub, I fetch codeload.github.com/{repo}/tar.gz/{ref} directly, which only works for GitHub.
I'd like a contents.archive() that returns the archive the same way releases.downloadAsset() returns an asset:
const stream = await forge.contents.archive(repo, { ref: 'main', format: 'tar.gz' })
const bytes = await forge.contents.archive(repo, { ref: 'main', format: 'zip', as: 'binary' })
My agent said that these forges are supported:
- GitHub:
GET /repos/{owner}/{repo}/tarball/{ref}and/zipball/{ref}
(redirects to codeload) - GitLab:
GET /projects/:id/repository/archive.tar.gz?sha={ref} - Gitea and Forgejo:
GET /repos/{owner}/{repo}/archive/{ref}.tar.gz - Bitbucket Cloud: as far as I can see there is no API endpoint, only the
web URL/{workspace}/{repo}/get/{ref}.tar.gz
I am not sure about the name of archive: each forge names the top folder of the archive differently. I'd document that rather than rewrite the archive?
Happy to send a PR if this fits.
- Lingua principale
- TypeScript
- Stelle
- 123
- Fork
- 7
- Merge medio
- 9h 15m
- PR unite (30g)
- 188
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un 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 danielroe/forges
-
enhancement
Difficoltà 4/5 1-2 giorni Idoneità per principianti 56/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
danielroe/forges#244 · 1 commento · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement needs discussion
Difficoltà 5/5 Più di una settimana Idoneità per principianti 38/100
I maintainer di solito rispondono entro 1 giorno
-
Commit reference formatters can emit bare SHAs that parseReferences rejectsForse già presa @kuldeepsinh19 l’ha presa 1 giorno fa. Apertabug help wanted
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di danielroe/forges
Issue simili
-
area:desktop area:ui bug platform:macos
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
anthropics/claude-code#106183 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
feature:App-Tour feature:Chat ready Web
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
digitalfabrik/integreat-app#4523 · 2 reazioni ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Required Lexical field accepts two empty paragraphsForse già presa @lazerg l’ha presa oggi. ApertaBug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
payloadcms/payload#19222 ·
I maintainer di solito rispondono entro 1 giorno