Open OJFord opened 3 years ago
Oh, ah!
~>time bass source "$HOME/.profile"
________________________________________________________
Executed in 3.57 secs fish external
usr time 268.13 millis 1.76 millis 266.38 millis
sys time 291.01 millis 3.44 millis 287.57 millis
(Changed .profile
to $HOME/.profile
in order to exactly match config.fish
!)
Which of course you'd think could only be a fish
issue, but:
~>time echo "$HOME/.profile" >/dev/null
________________________________________________________
Executed in 122.00 micros fish external
usr time 128.00 micros 128.00 micros 0.00 micros
sys time 17.00 micros 17.00 micros 0.00 micros
I don't understand this..!
Ah, of course.. :facepalm: - it's not that there's a variable interpolated, it's that it's an absolute path:
~>time bass source /home/ojf/.profile
________________________________________________________
Executed in 3.63 secs fish external
usr time 309.51 millis 2.36 millis 307.15 millis
sys time 332.80 millis 3.63 millis 329.16 millis
~>pwd
/home/ojf
~>time bass source .profile
________________________________________________________
Executed in 119.79 millis fish external
usr time 94.47 millis 2.33 millis 92.14 millis
sys time 9.40 millis 2.67 millis 6.73 millis
Wrong again..! It seems to be the presence of forward slashes, not necessarily that it's at the beginning (an absolute path).
I'm hesitant to even open this, because I really don't understand what or how is happening, but it's really repeatable and badly affects my terminal start time:
With a
time bass source .profile
in myconfig.fish
:Why is it so much slower when invoked from
config.fish
? Sure, there's other stuff in there, but it's only thebass source
that I'm timing, as the combination offish
&head
outputs show.