You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, new interactive shells take approximately ~600ms to start in fish. Profiling shows that jenv's init process accounts for approximately 75% (~450ms) of that time, which is further broken down into
jenv init - itself: ~150ms
Completions: ~75ms
jenv commands: ~75 ms
jenv rehash: ~100ms
jenv refresh-plugins: ~125ms
There's two optimizations that might help:
Replacing source ($command | psub) with $command | source. This avoids the psub temporary file overhead, and is possibly statistically significant outside of microbenchmarks.
Lazily calling jenv rehash and jenv refresh-plugins. Do these really need to run on every interactive shell invocation? Is restricting them to login shells only fine? The former's probably fine to drop, as I don't expect that the average user will need rehashes more than once per month or so, which is supported by adoptopenjdk Homebrew Cask's commit history. This isn't perfect, but it's a good estimate for how often people will notice: not very often.
The text was updated successfully, but these errors were encountered:
Right now, new interactive shells take approximately ~600ms to start in fish. Profiling shows that jenv's init process accounts for approximately 75% (~450ms) of that time, which is further broken down into
jenv init -
itself: ~150msjenv commands
: ~75 msjenv rehash
: ~100msjenv refresh-plugins
: ~125msThere's two optimizations that might help:
source ($command | psub)
with$command | source
. This avoids the psub temporary file overhead, and is possibly statistically significant outside of microbenchmarks.adoptopenjdk
Homebrew Cask's commit history. This isn't perfect, but it's a good estimate for how often people will notice: not very often.The text was updated successfully, but these errors were encountered: