Potential for reducing number of ri files
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Stack tecnologico
- ruby
- Ambito
- documentation
Direzione di ricerca
Non vengono indicati file sorgente, test o punti di ingresso. Inizia tracciando il modo in cui RDoc genera i file .ri e confronta il numero e le dimensioni dei file osservati; il lavoro è completato quando è stato stabilito se una rappresentazione raggruppata è fattibile e sono stati definiti l’ambito di un’implementazione o di una proposta di follow-up.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Is there currently a way to generate .ri files in a more bundled way to reduce the number of files generated? Or it would seem this would be an optimization worth discussing given some statistical analysis.
.ri(and.rb) files are disproportionately populous compared to other file types in a typical Homebrew installation.
cd /opt/homebrew
find . -type f | sed 's/.*\.//' | sort | uniq -c | sort -nr | head
80487 ri
10922 rb
7478 py
6551 h
5838 3
2476 html
2338 js
1765 po
1729 gz
1641 elc
- 95% of files are under 1k.
Dir['/opt/homebrew/lib/ruby/gems/4.0.0/doc/*'].each do
files = Dir["#{it}/**/*.ri"].select { File.file?(it) }
files.each { puts Math.log(File.size(it), 10).floor }
end
ri.sh | sort | uniq -c | sort -nr
66580 2
3898 3
193 4
8 5
- Some gems like RuboCop, Parser and Prism have disproportionately many files.
Dir['/opt/homebrew/lib/ruby/gems/4.0.0/doc/*'].each do
files = Dir["#{it}/**/*.ri"].select { File.file?(it) }
total = files.sum { File.size(it) } # .tap { warn Math.log(it, 10).floor }
printf "%d\t%d\t%s\n", total / 1e3, files.length, it.split('/')[8..].join('/')
end
ri.sh | sort -n
5068 8957 rubocop-1.90.0
2929 8861 parser-3.3.12.0
2544 5406 prism-1.9.0
1558 2653 language_server-protocol-3.17.0.6
1276 1539 rdoc-8.0.0
1231 2284 yard-0.9.45
1005 2110 rubygems-4.0.20
922 2463 rbs-4.2.0
914 1347 concurrent-ruby-1.3.8
888 1579 simplecov-1.2.0
- Lingua principale
- Ruby
- Stelle
- 930
- Fork
- 465
- Merge medio
- 3g 10h
- PR unite (30g)
- 27
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.
Altre issue di ruby/rdoc
-
RDoc 8.0.0 gem omits `doc/rdoc/example.rb`, which is referenced by the packaged markup documentation Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 68/100
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
riscv/riscv-unified-db#2626 ·
-
Component: GLib
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
ds-drift
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
we-promise/sure#3693 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
simp/pupmod-simp-simp#395 ·