LinearTapeFileSystem / LinearTapeFileSystem/ltfs

ltfs_ordered_copy QoL features (type annotations, etc.)

Aperta
#548 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

enhancement
Lingua principale
C
Stelle
352
Fork
110
Merge medio
2h 50m
PR unite (30g)
2

Descrizione

**Is your feature request related to a problem? Please describe.**
Not a ***problem*** per se, rather a minor inconvenience (and offer for contribution): the `ltfs_ordered_copy` script lacks several "creature comforts"/conveniences found in modern python modules (e.g.: type annotations) - I assume this is with a view to maximising compatibility.

**Describe the solution you'd like**
Without knowing the appetite of the maintainers for breaking compatibility with older python versions (and/or introducing an entirely new script with greater minimum python version requirements - messy IMHO), the following solutions could be considered:
- ***(non-breaking)*** a low-friction solution for type annotations specifically would be a [stub file](https://peps.python.org/pep-0484/#stub-files).
- ***(non-breaking)*** adding docstrings (optionally with an established style, e.g.: [numpy](https://numpydoc.readthedocs.io/en/latest/format.html#docstring-standard)) aids readability.
- ***(breaking)*** if a (new) minimum version can be established, various other readability improvements enabled by in-language features (e.g.: f-strings, more concise/readable variants of standard library functions (such as those in `pathlib`)) could be implemented.

**Describe alternatives you've considered**
The above are three "alternatives" (non-mutually-exclusive) I've considered; a fourth would be "do nothing". I personally plan to utilise some of the classes within my own work, so will likely invest effort "modernising" regardless - while I could hypothetically maintain a fork of this entire repository for the sake of one script, this overhead is a disincentive, and realistically other users are unlikely to stumble across such a fork; including modernising updates in the upstream makes this work available to a broader user base.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia individuando lo script ltfs_ordered_copy e verificando le versioni di Python supportate dal repository. Esamina le alternative proposte — file stub, docstring o funzionalità più recenti del linguaggio — e conferma la preferenza dei maintainer in materia di compatibilità prima di definire il lavoro. Il lavoro sarà considerato completato quando sarà stato implementato un ambito di modernizzazione concordato e delimitato, senza modifiche di compatibilità non specificate.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
cli
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.