Support for creating zip archives
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 1.7k
- Fork
- 408
- Merge medio
- 2g 57m
- PR unite (30g)
- 7
Descrizione
Given that pygit2 is probably the best option for Python developers building cross-platform Git applications
When a Windows (or, to a lesser extent) Mac user wants to create an archive, equivalent to using the git archive command,
Then they probably are going to want to create a zip archive
So that archive can be opened easily with their system's default file explorer
pygit2.Repository.write_archive currently only supports tarfiles.
I have written my own version of this method that I would like to contribute back to the project which supports creating zip archives, to the extent possible with the zipfile library (read: does not support symlink).
If that is something the maintainers would be interested in, please let me know, and I'll rework this into a PR that adds the code to repository.py and matches the existing style guide.
Thanks for building and maintaining such a stellar library!
Guida per i contributori
Apri 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.
Direzione di ricerca
Inizia in repository.py, in Repository.write_archive, e confronta il comportamento attuale con tarfile con l’implementazione proposta basata su zipfile collegata nell’issue. Conferma le opzioni di archiviazione supportate e la limitazione indicata per i collegamenti simbolici; considera completato il lavoro quando write_archive sarà in grado di creare archivi ZIP per il caso d’uso multipiattaforma richiesto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- git, python
- Ambito
- backend
- Tipo di issue
- Funzionalità
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100