refactor: transform processor xsls only once #5397
Labels
Clear labels
Accessibility
bug
build
cgi Scripting
design
disruptive
documentation
duplicate
easy
enhancement
feature-request
help wanted
javascript
priority/low
question
system-hackers
tagging
text
translations
wait/bugfix
wait/inprogress
wait/misc
wait/proofread
wontfix
xsl
Requires careful coordination and documentation changes
Improving what is already there
Milestone
No items
No Milestone
Assignees
albert (Albert Dengg)
alex.busch (alex.busch)
alex.sander (alex.sander)
anaghz (anaghz)
annarita.russo (annarita.russo)
ao (André Ockers)
bonnie (bonnie)
ciampix (Marco Ciampa)
cryptie (cryptie)
dario (dario)
delliott (delliott)
dfajfer (Damian Fajfer)
dmaphy (Dominic Hopf)
doczkal (Thomas Doczkal)
eal (eal)
egnun (Erik Grun)
eventregbot (eventregbot)
fi (fi)
floriansnow (Florian Snow)
gabriel.ku (gabriel.ku)
guido (guido)
hf (hf)
hugo (hugo)
ineiev (ineiev)
jithendra (jithendra)
jn (jn)
jzarl (jzarl)
linus (Linus Sehn)
lucabon (Luca Bonissi)
lucas.lasota (lucas.lasota)
max.mehl (Max Mehl)
mk (Matthias Kirschner)
monochromec (monochromec)
mweimann (Michael Weimann)
nico.rikken (nico.rikken)
patrick (Patrick Ohnewein)
reinhard (Reinhard Müller)
renovate-bot (Renovate Bot)
repentinus (Heiki Lõhmus)
schiessle (Björn Schießle)
silviarbgl (Silvia Rbgl)
sofiaritz (Sofía Aritz)
tobiasd (tobiasd)
vincent (vincent)
Clear assignees
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: FSFE/fsfe-website#5397
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
About
Summary
Before we iterated over xhtml files by directory, and rss/ics ones by processor (xsl stylesheet).
This worked, but meant we had to pass the processor filepath to the processing functions, which meant we were reprocessing the xsl several times, probably hundred for some xsl's, like the default one for a site.
We now instead iterate by processor, pre parsing it before passing it to the processing code.
This gets us a significant speed increase (~30%), and makes the code a little cleaner.
Benchmarks
Before
After
feat: transform processor xsls only onceto refactor: transform processor xsls only once