wez / wezterm

A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
https://wezfurlong.org/wezterm/
Other
14.85k stars 676 forks source link

Slow (first) startup (not the next ones) ~ 4s #4644

Open foxyseta opened 7 months ago

foxyseta commented 7 months ago

What Operating System(s) are you seeing this problem on?

Linux Wayland

Which Wayland compositor or X11 Window manager(s) are you using?

sway version 1.8.1

WezTerm version

1 wezterm 20231203-124028-e3cd2e93

Did you try the latest nightly build to see if the issue is better (or worse!) than your current version?

Yes, and I updated the version box above to show the version of the nightly that I tried

Describe the bug

wezterm is extremely slow on the first startup, but not on the others.

To Reproduce

First wezterm startup:

$ # first wezterm startup
$ time cargo run --release --bin wezterm -- start fish -- -c exit                                                                                                                                                                     Tue Dec  5 15:38:37 2023
    Finished release [optimized] target(s) in 3.23s
     Running `target/release/wezterm start fish -- -c exit`

________________________________________________________
Executed in    3.93 secs    fish           external
   usr time    1.15 secs    1.00 millis    1.15 secs
   sys time    0.72 secs    0.26 millis    0.72 secs
$ # next wezterm startup
$ time cargo run --release --bin wezterm -- start fish -- -c exit                                                                                                                                                            3929ms  Tue Dec  5 15:38:44 2023
    Finished release [optimized] target(s) in 0.52s
     Running `target/release/wezterm start fish -- -c exit`

________________________________________________________
Executed in  790.86 millis    fish           external
   usr time  591.96 millis  769.00 micros  591.19 millis
   sys time  210.45 millis  203.00 micros  210.25 millis

Configuration

no config

Expected Behavior

Maybe it is acceptable for the first startup to be slower than the others? Then again, none of the other terminal emulators I tried these days took 4 seconds

Logs

When running with WEZTERM_LOG=config=trace,debug,info:

15:50:03.386  TRACE  config::config > consider config: /home/foxy/.wezterm.lua
15:50:03.386  TRACE  config::config > consider config: /home/foxy/.config/wezterm/wezterm.lua
15:50:03.411  DEBUG  config         > Reloaded configuration! generation=1
15:50:03.448  TRACE  config::config > Note: WEZTERM_CONFIG_FILE is set in the environment
15:50:03.448  TRACE  config::config > consider config: /home/foxy/.config/wezterm/wezterm.lua
15:50:03.480  DEBUG  config         > Reloaded configuration! generation=2

Anything else?

No response

VioletJewel commented 6 months ago

I'm experiencing this as well. I use wezterm 20230712-072601-f4abf8fd on archlinux in dwm (rather vanilla, and x11 therefore obviously) with a very basic wezterm.lua. I am on a thinkpad t480 with the correct drivers and such (hopefully- xrandr is fast, eg).

Log for startup

I have removed a lot of details (and replaced with ... to make it fit here), but here is the log from WEZTERM_LOG=trace wezterm:

14:44:59.215  TRACE  config::config > consider config: /home/vi/.wezterm.lua
14:44:59.215  TRACE  config::config > consider config: /home/vi/.config/wezterm/wezterm.lua
14:44:59.216  TRACE  async_io::driver > block_on()
14:44:59.261  TRACE  async_io::driver > block_on: completed
14:44:59.262  TRACE  polling::epoll   > add: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: false, writable: false }
14:44:59.262  TRACE  polling::epoll   > add: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.262  TRACE  polling::epoll   > new: epoll_fd=5, event_fd=6, timer_fd=Some(7)
14:44:59.262  TRACE  async_io::driver > main_loop: waiting on I/O
14:44:59.262  TRACE  async_io::reactor > process_timers: 0 ready wakers
14:44:59.262  TRACE  polling           > Poller::wait(_, None)
14:44:59.262  TRACE  polling::epoll    > wait: epoll_fd=5, timeout=None
14:44:59.262  TRACE  polling::epoll    > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.334  DEBUG  config            > Reloaded configuration! generation=1
14:44:59.334  TRACE  mio::poll         > registering event source with poller: token=Token(0), interests=READABLE
14:44:59.335  TRACE  wezterm_gui       > Using configuration: ConfigHandle {
    config: Config {
        ...
    },
    generation: 1,
}
opts: Opt {
    skip_config: false,
    config_file: None,
    config_override: [],
    attach_parent_console: false,
    cmd: None,
}
14:44:59.336  TRACE  wezterm_gui       > TryPathOrPublish("/run/user/1000/wezterm/gui-sock-47202")
14:44:59.337  TRACE  wezterm_client::client > connect to Socket("/run/user/1000/wezterm/gui-sock-47202")
14:44:59.337  TRACE  wezterm_gui            > failed to connect to Socket("/run/user/1000/wezterm/gui-sock-47202"): connecting to /run/user/1000/wezterm/gui-sock-47202
14:44:59.337  TRACE  mux::connui            > Output: [Text("Connect to Socket(\"/run/user/1000/wezterm/gui-sock-47202\")\r\n")]
14:44:59.337  DEBUG  window::os::x_and_wayland > Failed to init wayland: Could not find a listening wayland compositor.
14:44:59.338  TRACE  window::os::x11::connection > picked depth 32 visual id:0x8e, class:TrueColor, bits_per_rgb_value:8, colormap entries:256, masks: r=0xff0000,g=0xff00,b=0xff
14:44:59.349  TRACE  window::os::x11::connection > Failed to read xsettings: get_property: xcb protocol error: X(Window(ValueError { response_type: 0, error_code: 3, sequence: 129, bad_value: 0, minor_opcode: 0, major_opcode: 20, pad: 1 }), Some("x::GetProperty"))
14:44:59.349  TRACE  window::os::x11::connection > xsettings are {}
14:44:59.349  TRACE  window::os::x11::connection > computed initial dpi: RefCell { value: 96.0 }
14:44:59.349  TRACE  config::config              > Note: WEZTERM_CONFIG_FILE is set in the environment
14:44:59.349  TRACE  config::config              > consider config: /home/vi/.config/wezterm/wezterm.lua
14:44:59.350  TRACE  async_io::driver            > block_on()
14:44:59.384  TRACE  async_io::driver            > block_on: completed
14:44:59.389  DEBUG  config                      > Reloaded configuration! generation=2
14:44:59.390  TRACE  mio::poll                   > registering event source with poller: token=Token(4294967292), interests=READABLE
14:44:59.390  TRACE  mio::poll                   > registering event source with poller: token=Token(4294967293), interests=READABLE
14:44:59.390  TRACE  wezterm_mux_server_impl::local > setting up /run/user/1000/wezterm/gui-sock-47341
14:44:59.393  TRACE  polling::epoll                 > add: epoll_fd=5, fd=21, ev=Event { key: 0, readable: false, writable: false }
14:44:59.393  TRACE  polling::epoll                 > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: false, writable: true }
14:44:59.393  DEBUG  wezterm_gui::frontend          > workspace is default, fixup windows
14:44:59.393  TRACE  polling::epoll                 > new events: epoll_fd=5, res=1
14:44:59.393  TRACE  wezterm_gui::frontend          > reconcile: windows -> {}
14:44:59.393  TRACE  mux::tab                       > prune_dead_panes: pane_id=0 dead=false in_mux=true
14:44:59.393  TRACE  mux                            > prune_dead_windows: not empty
14:44:59.393  TRACE  mux::tab                       > prune_dead_panes: pane_id=0 dead=false in_mux=true
14:44:59.393  TRACE  mux                            > prune_dead_windows: not empty
14:44:59.393  TRACE  polling::epoll                 > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.393  TRACE  wezterm_gui::frontend          > Creating TermWindow for mux_window_id=0
14:44:59.393  TRACE  async_io::reactor              > react: 1 ready wakers
14:44:59.394  TRACE  async_io::driver               > main_loop: waiting on I/O
14:44:59.394  TRACE  async_io::reactor              > process_timers: 0 ready wakers
14:44:59.394  TRACE  polling                        > Poller::wait(_, None)
14:44:59.394  TRACE  polling::epoll                 > wait: epoll_fd=5, timeout=None
14:44:59.394  TRACE  polling::epoll                 > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.412  TRACE  wezterm_font::locator::font_config > ...
14:44:59.413  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Bold Italic", family: "Hack Nerd Font Mono", sub_family: Some("Bold Italic"), postscript_name: Some("HackNFM-BoldItalic"), aliases: [] }
14:44:59.413  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Regular", family: "Hack Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("HackNFM-Regular"), aliases: [] }
14:44:59.413  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Bold", family: "Hack Nerd Font Mono", sub_family: Some("Bold"), postscript_name: Some("HackNFM-Bold"), aliases: [] }
14:44:59.413  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Italic", family: "Hack Nerd Font Mono", sub_family: Some("Italic"), postscript_name: Some("HackNFM-Italic"), aliases: [] }
14:44:59.414  TRACE  wezterm_font::locator::font_config > listing "Hack Nerd Font Mono" by postscriptname took 451.725µs to compute and is []
14:44:59.414  TRACE  wezterm_font::locator::font_config > selected best font-config match Names { full_name: "Hack Nerd Font Mono Regular", family: "Hack Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("HackNFM-Regular"), aliases: [] }
14:44:59.414  TRACE  wezterm_font::locator::font_config > listing "JetBrains Mono" by family took 381.299µs to compute and is []
14:44:59.414  TRACE  wezterm_font::locator::font_config > listing "JetBrains Mono" by postscriptname took 284.183µs to compute and is []
14:44:59.417  TRACE  wezterm_font::locator::font_config > matching by family 'JetBrains Mono' took 2.461164ms to compute and is Pattern(Noto Sans,Noto Sans Condensed:style=Condensed,Regular:slant=0:weight=80:width=75:file=/usr/share/fonts/noto/NotoSans-Condensed.ttf:index=0:charset=20-7e a0-377 37a-37f 384-38a 38c 38e-3a1 3a3-3e1 3f0-52f 10fb 1ab0-1ac0 1ac5 1ac7-1ace 1c80-1c88 1d00-1df9 1dfb-1f15 1f18-1f1d 1f20-1f45 1f48-1f4d 1f50-1f57 1f59 1f5b 1f5d 1f5f-1f7d 1f80-1fb4 1fb6-1fc4 1fc6-1fd3 1fd6-1fdb 1fdd-1fef 1ff2-1ff4 1ff6-1ffe 2000-2064 2066-2071 2074-208e 2090-209c 20a0-20c0 20f0 2100-215f 2183-2184 2189 2212 25cc 2c60-2c7f 2de0-2e5d a640-a69f a700-a7ca a7d0-a7d1 a7d3 a7d5-a7d9 a7f2-a7ff a92e ab30-ab6b fb00-fb06 fe00 fe20-fe2f feff fffc-fffd 10780-10785 10787-107b0 107b2-107ba 1df00-1df1e:fontformat=TrueType)
14:44:59.418  TRACE  wezterm_font::locator::font_config > ...
14:44:59.418  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }
14:44:59.418  TRACE  wezterm_font::locator::font_config > ...
14:44:59.419  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }
14:44:59.419  TRACE  wezterm_font::locator::font_config > selected best font-config match Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }
14:44:59.419  TRACE  wezterm_font::locator::font_config > listing "Symbols Nerd Font Mono" by family took 379.406µs to compute and is [Pattern(Symbols Nerd Font Mono:spacing=100:file=/usr/share/fonts/TTF/SymbolsNerdFontMono-Regular.ttf:index=0:charset=23fb-23fe 2630 2665 26a1 276c-2771 2b58 e000-e00a e0a0-e0a3 e0b0-e0c8 e0ca e0cc-e0d2 e0d4 e200-e2a9 e300-e3e3 e5fa-e6b2 e700-e7c5 ea60-ea88 ea8a-ea8c ea8f-eac7 eac9 eacc-eb09 eb0b-eb4e eb50-ebeb f000-f00e f010-f01e f021-f03e f040-f04e f050-f05e f060-f06e f070-f07e f080-f08e f090-f09e f0a0-f0ae f0b0-f0b2 f0c0-f0ce f0d0-f0de f0e0-f0ee f0f0-f0fe f100-f10e f110-f11e f120-f12e f130-f13e f140-f14e f150-f15e f160-f16e f170-f17e f180-f18e f190-f19e f1a0-f1ae f1b0-f1be f1c0-f1ce f1d0-f1de f1e0-f1ee f1f0-f1fe f200-f20e f210-f21e f221-f23e f240-f24e f250-f25e f260-f26e f270-f27e f280-f28e f290-f29e f2a0-f2ae f2b0-f2be f2c0-f2ce f2d0-f2de f2e0 f300-f372 f400-f533 f0001-f1af0)]
14:44:59.419  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Symbols Nerd Font Mono Regular", family: "Symbols Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("SymbolsNFM"), aliases: [] }
14:44:59.420  TRACE  wezterm_font::locator::font_config > listing "Symbols Nerd Font Mono" by postscriptname took 306.224µs to compute and is []
14:44:59.420  TRACE  wezterm_font::locator::font_config > selected best font-config match Names { full_name: "Symbols Nerd Font Mono Regular", family: "Symbols Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("SymbolsNFM"), aliases: [] }
14:44:59.420  TRACE  wezterm_font::shaper::harfbuzz     > compute metrics across these handles for size=12, dpi=96,
             theoretical pixel height 16: [ParsedFont { names: Names { full_name: "Hack Nerd Font Mono Regular", family: "Hack Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("HackNFM-Regular"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: OnDisk { path: "/usr/share/fonts/TTF/HackNerdFontMono-Regular.ttf" }, index: 0, variation: 0, origin: FontConfig, coverage: Some(RangeSet { ranges: [32..127, 160..384, 402..403, 416..418, 420..421, 431..433, 486..488, 510..512, 536..540, 710..712, 728..734, 768..770, 771..772, 777..778, 803..804, 900..903, 904..907, 908..909, 910..930, 931..975, 1012..1013, 1014..1015, 1024..1120, 1122..1124, 1138..1140, 1168..1180, 1186..1190, 1194..1204, 1210..1212, 1216..1221, 1223..1225, 1227..1229, 1231..1274, 1296..1298, 1306..1310, 1329..1367, 1369..1376, 1377..1416, 1417..1419, 3647..3648, 4304..4349, 7808..7814, 7868..7870, 7922..7924, 7928..7930, 8192..8203, 8208..8232, 8239..8248, 8249..8251, 8252..8256, 8260..8266, 8267..8268, 8287..8288, 8304..8305, 8308..8319, 8330..8335, 8352..8374, 8375..8378, 8470..8471, 8482..8483, 8486..8487, 8528..8530, 8531..8544, 8592..8670, 8672..8682, 8683..8724, 8725..8726, 8727..8737, 8739..8740, 8743..8750, 8756..8766, 8769..8810, 8813..8844, 8845..8869, 8882..8886, 8888..8889, 8898..8903, 8909..8914, 8922..8938, 8943..8944, 8964..8965, 8968..8972, 8976..8977, 8992..8994, 9115..9135, 9211..9215, 9472..9728, 9776..9777, 9829..9830, 9834..9835, 9889..9890, 10070..10071, 10088..10102, 10132..10133, 10136..10160, 10161..10175, 10178..10179, 10181..10183, 10204..10205, 10208..10209, 10214..10220, 10229..10232, 10631..10633, 10647..10649, 10731..10732, 10746..10748, 10752..10753, 10799..10800, 10858..10860, 11013..11022, 11030..11035, 11096..11097, 11800..11801, 11807..11808, 11810..11814, 11822..11823, 57344..57355, 57504..57508, 57520..57545, 57546..57547, 57548..57555, 57556..57557, 57856..58026, 58112..58340, 58874..59059, 59136..59334, 60000..60041, 60042..60045, 60047..60104, 60105..60106, 60108..60170, 60171..60239, 60240..60396, 61440..61455, 61456..61471, 61473..61503, 61504..61519, 61520..61535, 61536..61551, 61552..61567, 61568..61583, 61584..61599, 61600..61615, 61616..61619, 61632..61647, 61648..61663, 61664..61679, 61680..61695, 61696..61711, 61712..61727, 61728..61743, 61744..61759, 61760..61775, 61776..61791, 61792..61807, 61808..61823, 61824..61839, 61840..61855, 61856..61871, 61872..61887, 61888..61903, 61904..61919, 61920..61935, 61936..61951, 61952..61967, 61968..61983, 61985..62015, 62016..62031, 62032..62047, 62048..62063, 62064..62079, 62080..62095, 62096..62111, 62112..62127, 62128..62143, 62144..62159, 62160..62175, 62176..62177, 62208..62323, 62464..62772, 65279..65280, 983041..989937], needs_sort: true }) }, cap_height: Some(0.72900390625), synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }, ParsedFont { names: Names { full_name: "JetBrains Mono Regular", family: "JetBrains Mono", sub_family: Some("Regular"), postscript_name: Some("JetBrainsMono-Regular"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: BuiltIn { name: "../../assets/fonts/JetBrainsMono-Regular.ttf" }, index: 0, variation: 0, origin: BuiltIn, coverage: None }, cap_height: Some(0.73), synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }, ParsedFont { names: Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: OnDisk { path: "/usr/share/fonts/noto/NotoColorEmoji.ttf" }, index: 0, variation: 0, origin: FontConfig, coverage: Some(RangeSet { ranges: [32..33, 35..36, 42..43, 48..58, 169..170, 174..175, 8205..8206, 8252..8253, 8265..8266, 8419..8420, 8482..8483, 8505..8506, 8596..8602, 8617..8619, 8986..8988, 9000..9001, 9167..9168, 9193..9204, 9208..9211, 9410..9411, 9642..9644, 9654..9655, 9664..9665, 9723..9727, 9728..9733, 9742..9743, 9745..9746, 9748..9750, 9752..9753, 9757..9758, 9760..9761, 9762..9764, 9766..9767, 9770..9771, 9774..9776, 9784..9787, 9792..9793, 9794..9795, 9800..9812, 9823..9825, 9827..9828, 9829..9831, 9832..9833, 9851..9852, 9854..9856, 9874..9880, 9881..9882, 9883..9885, 9888..9890, 9895..9896, 9898..9900, 9904..9906, 9917..9919, 9924..9926, 9928..9929, 9934..9936, 9937..9938, 9939..9941, 9961..9963, 9968..9974, 9975..9979, 9981..9982, 9986..9987, 9989..9990, 9992..9998, 9999..10000, 10002..10003, 10004..10005, 10006..10007, 10013..10014, 10017..10018, 10024..10025, 10035..10037, 10052..10053, 10055..10056, 10060..10061, 10062..10063, 10067..10070, 10071..10072, 10083..10085, 10133..10136, 10145..10146, 10160..10161, 10175..10176, 10548..10550, 11013..11016, 11035..11037, 11088..11089, 11093..11094, 12336..12337, 12349..12350, 12951..12952, 12953..12954, 126980..126981, 127183..127184, 127344..127346, 127358..127360, 127374..127375, 127377..127387, 127462..127488, 127489..127491, 127514..127515, 127535..127536, 127538..127547, 127568..127570, 127744..127778, 127780..127892, 127894..127896, 127897..127900, 127902..127985, 127987..127990, 127991..128254, 128255..128318, 128329..128335, 128336..128360, 128367..128369, 128371..128379, 128391..128392, 128394..128398, 128400..128401, 128405..128407, 128420..128422, 128424..128425, 128433..128435, 128444..128445, 128450..128453, 128465..128468, 128476..128479, 128481..128482, 128483..128484, 128488..128489, 128495..128496, 128499..128500, 128506..128592, 128640..128710, 128715..128723, 128725..128728, 128732..128742, 128745..128746, 128747..128749, 128752..128753, 128755..128765, 128992..129004, 129008..129009, 129292..129339, 129340..129350, 129351..129536, 129648..129661, 129664..129673, 129680..129726, 129727..129734, 129742..129756, 129760..129769, 129776..129785, 917552..917562, 917601..917627, 917631..917632, 1041637..1041647, 1042476..1042477, 1042478..1042488], needs_sort: true }) }, cap_height: None, synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: true, pixel_sizes: [128], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }, ParsedFont { names: Names { full_name: "Symbols Nerd Font Mono Regular", family: "Symbols Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("SymbolsNFM"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: OnDisk { path: "/usr/share/fonts/TTF/SymbolsNerdFontMono-Regular.ttf" }, index: 0, variation: 0, origin: FontConfig, coverage: Some(RangeSet { ranges: [9211..9215, 9776..9777, 9829..9830, 9889..9890, 10092..10098, 11096..11097, 57344..57355, 57504..57508, 57520..57545, 57546..57547, 57548..57555, 57556..57557, 57856..58026, 58112..58340, 58874..59059, 59136..59334, 60000..60041, 60042..60045, 60047..60104, 60105..60106, 60108..60170, 60171..60239, 60240..60396, 61440..61455, 61456..61471, 61473..61503, 61504..61519, 61520..61535, 61536..61551, 61552..61567, 61568..61583, 61584..61599, 61600..61615, 61616..61619, 61632..61647, 61648..61663, 61664..61679, 61680..61695, 61696..61711, 61712..61727, 61728..61743, 61744..61759, 61760..61775, 61776..61791, 61792..61807, 61808..61823, 61824..61839, 61840..61855, 61856..61871, 61872..61887, 61888..61903, 61904..61919, 61920..61935, 61936..61951, 61952..61967, 61968..61983, 61985..62015, 62016..62031, 62032..62047, 62048..62063, 62064..62079, 62080..62095, 62096..62111, 62112..62127, 62128..62143, 62144..62159, 62160..62175, 62176..62177, 62208..62323, 62464..62772, 983041..989937], needs_sort: true }) }, cap_height: None, synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }]
14:44:59.420  TRACE  wezterm_font::shaper::harfbuzz     > ...
14:44:59.420  DEBUG  wezterm_font::ftwrap               > set_char_size computing 12 dpi=96 (pixel height=16)
14:44:59.422  TRACE  wezterm_font::shaper::harfbuzz     > idx 0 cell_height is 18.625, which is 2.625 away from theoretical
                     height (factor 0.1640625). Seems good enough
14:44:59.422  TRACE  wezterm_font::shaper::harfbuzz     > metrics_for_idx=0, size=12, dpi=96 -> FontMetrics { cell_width: 10.0, cell_height: 18.625, descender: -4.0, underline_thickness: 0.703125, underline_position: -2.0703125, cap_height_ratio: Some(0.5906040268456376), cap_height: Some(11.0), is_scaled: true, presentation: Text, force_y_adjust: 0.0 }
14:44:59.422  TRACE  wezterm_gui::termwindow            > using render_metrics RenderMetrics {
    descender: -4.0,
    descender_row: 17,
    descender_plus_two: 18,
    underline_height: 1,
    strike_row: 8,
    cell_size: 10x19,
    native_cell_size: 10x18,
}
14:44:59.423  TRACE  wezterm_gui::termwindow            > Initial geometry was TerminalSize { rows: 24, cols: 80, pixel_width: 640, pixel_height: 384, dpi: 96 } but dpi-adjusted geometry is TerminalSize { rows: 24, cols: 80, pixel_width: 800, pixel_height: 456, dpi: 96 }; update the kernel pixel geometry for the ptys!
14:44:59.423  TRACE  wezterm_gui::termwindow            > TermWindow::new_window called with mux_window_id 0 TerminalSize { rows: 24, cols: 80, pixel_width: 800, pixel_height: 456, dpi: 96 } Dimensions { pixel_width: 824, pixel_height: 480, dpi: 96 }
14:44:59.423  TRACE  wezterm_gui::termwindow            > RequestedWindowGeometry { width: Pixels(824.0), height: Pixels(480.0), x: None, y: None, origin: ScreenCoordinateSystem }
14:44:59.488  TRACE  window::connection                 > Screens { main: ScreenInfo { name: "eDP1", rect: Rect(1920x1080 at (0, 0)), scale: 1.0, max_fps: Some(61), effective_dpi: Some(96.0) }, active: ScreenInfo { name: "eDP1", rect: Rect(1920x1080 at (0, 0)), scale: 1.0, max_fps: Some(61), effective_dpi: Some(96.0) }, by_name: {"eDP1": ScreenInfo { name: "eDP1", rect: Rect(1920x1080 at (0, 0)), scale: 1.0, max_fps: Some(61), effective_dpi: Some(96.0) }}, virtual_rect: Rect(1920x1080 at (0, 0)) }
14:44:59.489  TRACE  async_io::driver                   > block_on()
14:44:59.489  TRACE  polling::epoll                     > add: epoll_fd=5, fd=22, ev=Event { key: 1, readable: false, writable: false }
14:44:59.489  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=22, ev=Event { key: 1, readable: false, writable: true }
14:44:59.489  TRACE  async_io::driver                   > block_on: sleep until notification
14:44:59.489  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.489  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.489  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.489  TRACE  async_io::driver                   > main_loop: sleeping for 50 us
14:44:59.489  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=22, ev=Event { key: 1, readable: false, writable: true }
14:44:59.489  TRACE  async_io::driver                   > block_on: waiting on I/O
14:44:59.489  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.489  TRACE  polling                            > Poller::wait(_, None)
14:44:59.489  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.490  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.490  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.489  TRACE  async_io::driver                   > main_loop: notified
14:44:59.490  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.490  TRACE  async_io::driver                   > main_loop: sleeping for 50 us
14:44:59.490  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.490  TRACE  async_io::driver                   > block_on: notified
14:44:59.490  TRACE  async_io::driver                   > main_loop: sleeping for 75 us
14:44:59.490  TRACE  async_io::reactor                  > writable: fd=22
14:44:59.490  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=22, ev=Event { key: 1, readable: true, writable: false }
14:44:59.490  TRACE  async_io::driver                   > main_loop: waiting on I/O
14:44:59.490  TRACE  async_io::driver                   > block_on: sleep until notification
14:44:59.490  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.490  TRACE  polling                            > Poller::wait(_, None)
14:44:59.491  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.491  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.491  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.491  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.491  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.491  TRACE  async_io::driver                   > main_loop: sleeping for 50 us
14:44:59.491  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=22, ev=Event { key: 1, readable: true, writable: false }
14:44:59.491  TRACE  async_io::driver                   > block_on: waiting on I/O
14:44:59.491  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.491  TRACE  polling                            > Poller::wait(_, None)
14:44:59.491  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.491  TRACE  async_io::driver                   > main_loop: sleeping for 75 us
14:44:59.491  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.491  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.491  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.492  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.491  TRACE  async_io::driver                   > main_loop: sleeping for 100 us
14:44:59.492  TRACE  async_io::driver                   > block_on: notified
14:44:59.492  TRACE  async_io::driver                   > main_loop: waiting on I/O
14:44:59.492  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=22, ev=Event { key: 1, readable: true, writable: false }
14:44:59.492  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.492  TRACE  async_io::driver                   > block_on: notified
14:44:59.492  TRACE  polling                            > Poller::wait(_, None)
14:44:59.492  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.492  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.492  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.492  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.492  TRACE  async_io::driver                   > block_on: sleep until notification
14:44:59.493  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.493  TRACE  async_io::driver                   > main_loop: sleeping for 50 us
14:44:59.493  TRACE  async_io::driver                   > main_loop: waiting on I/O
14:44:59.493  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.493  TRACE  polling                            > Poller::wait(_, None)
14:44:59.493  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.493  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=22, ev=Event { key: 1, readable: true, writable: false }
14:44:59.493  TRACE  async_io::driver                   > block_on: notified
14:44:59.493  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.494  TRACE  async_io::driver                   > block_on()
14:44:59.494  TRACE  polling                            > Poller::notify()
14:44:59.494  TRACE  polling::epoll                     > notify: epoll_fd=5, event_fd=6
14:44:59.494  TRACE  async_io::driver                   > block_on: sleep until notification
14:44:59.494  TRACE  async_io::driver                   > block_on: sleep until notification
14:44:59.494  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.494  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.494  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.494  TRACE  async_io::reactor                  > react: 0 ready wakers
14:44:59.494  TRACE  async_io::driver                   > main_loop: sleeping for 50 us
14:44:59.495  TRACE  async_io::driver                   > main_loop: waiting on I/O
14:44:59.495  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.495  TRACE  polling                            > Poller::wait(_, Some(999.060395ms))
14:44:59.495  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=Some(999.060395ms)
14:44:59.495  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.495  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.495  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.495  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.495  TRACE  async_io::driver                   > main_loop: sleeping for 50 us
14:44:59.495  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=22, ev=Event { key: 1, readable: true, writable: false }
14:44:59.495  TRACE  polling::epoll                     > remove: epoll_fd=5, fd=22
14:44:59.495  TRACE  async_io::driver                   > main_loop: waiting on I/O
14:44:59.495  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.495  TRACE  polling                            > Poller::wait(_, None)
14:44:59.496  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.496  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.495  TRACE  async_io::driver                   > block_on: completed
14:44:59.495  TRACE  async_io::driver                   > block_on: completed
14:44:59.496  WARN   window::os::x11::connection        > Unable to resolve appearance using xdg-desktop-portal: get_appearance.read_setting: Reading xdg-portal org.freedesktop.appearance color-scheme: org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
14:44:59.496  TRACE  window::os::x11::cursor            > Constructing default icon path because $XCURSOR_PATH is not set
14:44:59.496  TRACE  window::os::x11::cursor            > Using ~/.local/share because $XDG_DATA_HOME is not set
14:44:59.496  TRACE  window::os::x11::cursor            > Using /usr/local/share:/usr/share because $XDG_DATA_DIRS is not set
14:44:59.496  TRACE  window::os::x11::cursor            > icon_path is ["/home/vi/.local/share/icons", "/home/vi/.icons", "/usr/local/share/icons", "/usr/share/icons", "/usr/share/pixmaps", "/home/vi/.cursors", "/usr/share/cursors/xorg-x11", "/usr/X11R6/lib/X11/icons"]
14:44:59.599  TRACE  wezterm_gui::termwindow::webgpu    > Using adapter: AdapterInfo { name: "Intel(R) UHD Graphics 620 (KBL GT2)", vendor: 32902, device: 22807, device_type: IntegratedGpu, driver: "Intel open-source Mesa driver", driver_info: "Mesa 23.3.2-arch1.2", backend: Vulkan }
14:44:59.600  TRACE  wezterm_gui::termwindow::webgpu    > caps: SurfaceCapabilities { formats: [Bgra8UnormSrgb, Bgra8Unorm], present_modes: [Immediate, Mailbox, Fifo], alpha_modes: [PreMultiplied, Inherit], usages: TextureUsages(COPY_SRC | COPY_DST | TEXTURE_BINDING | STORAGE_BINDING | RENDER_ATTACHMENT) }
14:44:59.600  TRACE  wezterm_gui::termwindow::webgpu    > downlevel_caps: DownlevelCapabilities { flags: DownlevelFlags(COMPUTE_SHADERS | FRAGMENT_WRITABLE_STORAGE | INDIRECT_EXECUTION | BASE_VERTEX | READ_ONLY_DEPTH_STENCIL | NON_POWER_OF_TWO_MIPMAPPED_TEXTURES | CUBE_ARRAY_TEXTURES | COMPARISON_SAMPLERS | INDEPENDENT_BLEND | VERTEX_STORAGE | ANISOTROPIC_FILTERING | FRAGMENT_STORAGE | MULTISAMPLED_SHADING | DEPTH_TEXTURE_AND_BUFFER_COPIES | WEBGPU_TEXTURE_FORMAT_SUPPORT | BUFFER_BINDINGS_NOT_16_BYTE_ALIGNED | UNRESTRICTED_INDEX_BUFFER | FULL_DRAW_INDEX_UINT32 | DEPTH_BIAS_CLAMP | VIEW_FORMATS | UNRESTRICTED_EXTERNAL_TEXTURE_COPIES | SURFACE_VIEW_FORMATS | NONBLOCKING_QUERY_RESOLVE), limits: DownlevelLimits, shader_model: Sm5 }
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(0))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(1))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(2))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(3))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(4))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(5))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(6))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(0))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(1))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(2))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(3))
14:44:59.613  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(0.0))
14:44:59.614  DEBUG  naga::front                        > Resolving [1] = Literal(I32(0)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.614  DEBUG  naga::front                        > Resolving [2] = Literal(I32(1)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.614  DEBUG  naga::front                        > Resolving [3] = Literal(I32(2)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.614  DEBUG  naga::front                        > Resolving [4] = Literal(I32(3)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.614  DEBUG  naga::front                        > Resolving [5] = Literal(I32(4)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.614  DEBUG  naga::front                        > Resolving [6] = Literal(I32(5)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.614  DEBUG  naga::front                        > Resolving [7] = Literal(I32(6)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.615  DEBUG  naga::front                        > Resolving [8] = Literal(I32(0)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.615  DEBUG  naga::front                        > Resolving [9] = Literal(I32(1)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.615  DEBUG  naga::front                        > Resolving [10] = Literal(I32(2)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.615  DEBUG  naga::front                        > Resolving [11] = Literal(I32(3)) : Value(Scalar { kind: Sint, width: 4 })
14:44:59.615  DEBUG  naga::front                        > Resolving [12] = Literal(F32(0.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.615  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(1.0))
14:44:59.615  DEBUG  naga::front                        > Resolving [13] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.616  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(2.0))
14:44:59.616  DEBUG  naga::front                        > Resolving [14] = Literal(F32(2.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.616  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(3.0))
14:44:59.616  DEBUG  naga::front                        > Resolving [15] = Literal(F32(3.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.616  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(4.0))
14:44:59.616  DEBUG  naga::front                        > Resolving [16] = Literal(F32(4.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.616  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(0))
14:44:59.616  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(0))
14:44:59.616  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(1))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(0))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(1))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(1))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(2))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(0))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(2))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(1))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(0.0))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(-1.0))
14:44:59.617  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(3.0))
14:44:59.617  DEBUG  naga::front                        > Resolving [1] = FunctionArgument(0) : Handle([3])
14:44:59.617  DEBUG  naga::front                        > Resolving [2] = Literal(F32(0.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.617  DEBUG  naga::front                        > Resolving [3] = Literal(F32(-1.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.618  DEBUG  naga::front                        > Resolving [4] = Literal(F32(3.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.618  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Divide, left: [3], right: [4] }
14:44:59.618  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(2.0))
14:44:59.618  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(3.0))
14:44:59.618  DEBUG  naga::front                        > Resolving [5] = Literal(F32(-0.33333334)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.618  DEBUG  naga::front                        > Resolving [6] = Literal(F32(2.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.618  DEBUG  naga::front                        > Resolving [7] = Literal(F32(3.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.618  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Divide, left: [6], right: [7] }
14:44:59.618  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(-1.0))
14:44:59.619  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[2], [5], [8], [9]] }
14:44:59.619  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Bi, vector: [1], pattern: [Z, Y, X, X] }
14:44:59.619  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.619  DEBUG  naga::front                        > Resolving [8] = Literal(F32(0.6666667)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.619  DEBUG  naga::front                        > Resolving [9] = Literal(F32(-1.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.619  DEBUG  naga::front                        > Resolving [10] = Compose { ty: [2], components: [[2], [5], [8], [9]] } : Handle([2])
14:44:59.619  DEBUG  naga::front                        > Resolving [11] = Swizzle { size: Bi, vector: [1], pattern: [Z, Y, X, X] } : Value(Vector { size: Bi, kind: Float, width: 4 })
14:44:59.619  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Bi, vector: [10], pattern: [W, Z, X, X] }
14:44:59.619  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.620  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[11], [12]] }
14:44:59.620  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.620  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Bi, vector: [1], pattern: [Y, Z, X, X] }
14:44:59.620  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.620  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Bi, vector: [10], pattern: [X, Y, X, X] }
14:44:59.620  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.620  DEBUG  naga::front                        > Resolving [12] = Swizzle { size: Bi, vector: [10], pattern: [W, Z, X, X] } : Value(Vector { size: Bi, kind: Float, width: 4 })
14:44:59.620  DEBUG  naga::front                        > Resolving [13] = Compose { ty: [2], components: [[11], [12]] } : Handle([2])
14:44:59.620  DEBUG  naga::front                        > Resolving [14] = Swizzle { size: Bi, vector: [1], pattern: [Y, Z, X, X] } : Value(Vector { size: Bi, kind: Float, width: 4 })
14:44:59.620  DEBUG  naga::front                        > Resolving [15] = Swizzle { size: Bi, vector: [10], pattern: [X, Y, X, X] } : Value(Vector { size: Bi, kind: Float, width: 4 })
14:44:59.621  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[14], [15]] }
14:44:59.621  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.621  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 2 }
14:44:59.621  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.621  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 1 }
14:44:59.621  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.621  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Step, arg: [17], arg1: Some([18]), arg2: None, arg3: None }
14:44:59.621  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.621  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Mix, arg: [13], arg1: Some([16]), arg2: Some([19]), arg3: None }
14:44:59.621  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.621  DEBUG  naga::front                        > Resolving [16] = Compose { ty: [2], components: [[14], [15]] } : Handle([2])
14:44:59.621  DEBUG  naga::front                        > Resolving [17] = AccessIndex { base: [1], index: 2 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.621  DEBUG  naga::front                        > Resolving [18] = AccessIndex { base: [1], index: 1 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.622  DEBUG  naga::front                        > Resolving [19] = Math { fun: Step, arg: [17], arg1: Some([18]), arg2: None, arg3: None } : Value(Scalar { kind: Float, width: 4 })
14:44:59.622  DEBUG  naga::front                        > Resolving [20] = Math { fun: Mix, arg: [13], arg1: Some([16]), arg2: Some([19]), arg3: None } : Handle([2])
14:44:59.622  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [20], pattern: [X, Y, W, X] }
14:44:59.622  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.622  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 0 }
14:44:59.622  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.622  DEBUG  naga::front                        > Resolving [21] = Swizzle { size: Tri, vector: [20], pattern: [X, Y, W, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.622  DEBUG  naga::front                        > Resolving [22] = AccessIndex { base: [1], index: 0 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.623  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[21], [22]] }
14:44:59.623  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.623  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 0 }
14:44:59.623  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.623  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [20], pattern: [Y, Z, X, X] }
14:44:59.623  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.623  DEBUG  naga::front                        > Resolving [23] = Compose { ty: [2], components: [[21], [22]] } : Handle([2])
14:44:59.623  DEBUG  naga::front                        > Resolving [24] = AccessIndex { base: [1], index: 0 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.623  DEBUG  naga::front                        > Resolving [25] = Swizzle { size: Tri, vector: [20], pattern: [Y, Z, X, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.623  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[24], [25]] }
14:44:59.623  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.623  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [20], index: 0 }
14:44:59.624  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.624  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 0 }
14:44:59.624  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.624  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Step, arg: [27], arg1: Some([28]), arg2: None, arg3: None }
14:44:59.624  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.624  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Mix, arg: [23], arg1: Some([26]), arg2: Some([29]), arg3: None }
14:44:59.624  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.624  DEBUG  naga::front                        > Resolving [26] = Compose { ty: [2], components: [[24], [25]] } : Handle([2])
14:44:59.624  DEBUG  naga::front                        > Resolving [27] = AccessIndex { base: [20], index: 0 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.624  DEBUG  naga::front                        > Resolving [28] = AccessIndex { base: [1], index: 0 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.624  DEBUG  naga::front                        > Resolving [29] = Math { fun: Step, arg: [27], arg1: Some([28]), arg2: None, arg3: None } : Value(Scalar { kind: Float, width: 4 })
14:44:59.625  DEBUG  naga::front                        > Resolving [30] = Math { fun: Mix, arg: [23], arg1: Some([26]), arg2: Some([29]), arg3: None } : Handle([2])
14:44:59.625  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 0 }
14:44:59.625  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.625  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 3 }
14:44:59.625  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.625  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 1 }
14:44:59.625  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.625  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Min, arg: [32], arg1: Some([33]), arg2: None, arg3: None }
14:44:59.625  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.625  DEBUG  naga::front                        > Resolving [31] = AccessIndex { base: [30], index: 0 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.625  DEBUG  naga::front                        > Resolving [32] = AccessIndex { base: [30], index: 3 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.626  DEBUG  naga::front                        > Resolving [33] = AccessIndex { base: [30], index: 1 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.626  DEBUG  naga::front                        > Resolving [34] = Math { fun: Min, arg: [32], arg1: Some([33]), arg2: None, arg3: None } : Value(Scalar { kind: Float, width: 4 })
14:44:59.626  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Subtract, left: [31], right: [34] }
14:44:59.626  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.626  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(1e-10))
14:44:59.626  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 2 }
14:44:59.626  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.626  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 3 }
14:44:59.626  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.626  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 1 }
14:44:59.626  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.627  DEBUG  naga::front                        > Resolving [35] = Binary { op: Subtract, left: [31], right: [34] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.627  DEBUG  naga::front                        > Resolving [36] = Literal(F32(1e-10)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.627  DEBUG  naga::front                        > Resolving [37] = AccessIndex { base: [30], index: 2 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.627  DEBUG  naga::front                        > Resolving [38] = AccessIndex { base: [30], index: 3 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.627  DEBUG  naga::front                        > Resolving [39] = AccessIndex { base: [30], index: 1 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.627  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Subtract, left: [38], right: [39] }
14:44:59.627  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.627  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(6.0))
14:44:59.627  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [41], right: [35] }
14:44:59.628  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.628  DEBUG  naga::front                        > Resolving [40] = Binary { op: Subtract, left: [38], right: [39] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.628  DEBUG  naga::front                        > Resolving [41] = Literal(F32(6.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.628  DEBUG  naga::front                        > Resolving [42] = Binary { op: Multiply, left: [41], right: [35] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.628  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Add, left: [42], right: [36] }
14:44:59.628  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.628  DEBUG  naga::front                        > Resolving [43] = Binary { op: Add, left: [42], right: [36] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.628  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Divide, left: [40], right: [43] }
14:44:59.628  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.628  DEBUG  naga::front                        > Resolving [44] = Binary { op: Divide, left: [40], right: [43] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.629  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Add, left: [37], right: [44] }
14:44:59.629  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.629  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Abs, arg: [45], arg1: None, arg2: None, arg3: None }
14:44:59.629  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.629  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 0 }
14:44:59.629  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.629  DEBUG  naga::front                        > Resolving [45] = Binary { op: Add, left: [37], right: [44] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.629  DEBUG  naga::front                        > Resolving [46] = Math { fun: Abs, arg: [45], arg1: None, arg2: None, arg3: None } : Value(Scalar { kind: Float, width: 4 })
14:44:59.629  DEBUG  naga::front                        > Resolving [47] = AccessIndex { base: [30], index: 0 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.629  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Add, left: [47], right: [36] }
14:44:59.630  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.630  DEBUG  naga::front                        > Resolving [48] = Binary { op: Add, left: [47], right: [36] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.630  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Divide, left: [35], right: [48] }
14:44:59.630  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.630  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [30], index: 0 }
14:44:59.630  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.630  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [3], components: [[46], [49], [50]] }
14:44:59.630  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.630  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(1.0))
14:44:59.630  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(2.0))
14:44:59.630  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(3.0))
14:44:59.630  DEBUG  naga::front                        > Resolving [1] = FunctionArgument(0) : Handle([3])
14:44:59.630  DEBUG  naga::front                        > Resolving [2] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.631  DEBUG  naga::front                        > Resolving [3] = Literal(F32(2.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.631  DEBUG  naga::front                        > Resolving [4] = Literal(F32(3.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.631  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Divide, left: [3], right: [4] }
14:44:59.631  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(1.0))
14:44:59.631  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(3.0))
14:44:59.631  DEBUG  naga::front                        > Resolving [5] = Literal(F32(0.6666667)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.631  DEBUG  naga::front                        > Resolving [6] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.631  DEBUG  naga::front                        > Resolving [7] = Literal(F32(3.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.632  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Divide, left: [6], right: [7] }
14:44:59.632  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(3.0))
14:44:59.632  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[2], [5], [8], [9]] }
14:44:59.632  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [1], pattern: [X, X, X, X] }
14:44:59.632  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.632  DEBUG  naga::front                        > Resolving [8] = Literal(F32(0.33333334)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.632  DEBUG  naga::front                        > Resolving [9] = Literal(F32(3.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.632  DEBUG  naga::front                        > Resolving [10] = Compose { ty: [2], components: [[2], [5], [8], [9]] } : Handle([2])
14:44:59.632  DEBUG  naga::front                        > Resolving [11] = Swizzle { size: Tri, vector: [1], pattern: [X, X, X, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.633  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [10], pattern: [X, Y, Z, X] }
14:44:59.633  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.633  DEBUG  naga::front                        > Resolving [12] = Swizzle { size: Tri, vector: [10], pattern: [X, Y, Z, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.633  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Add, left: [11], right: [12] }
14:44:59.633  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.633  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Fract, arg: [13], arg1: None, arg2: None, arg3: None }
14:44:59.633  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.633  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(6.0))
14:44:59.633  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [14], right: [15] }
14:44:59.633  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.633  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [10], pattern: [W, W, W, X] }
14:44:59.633  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.633  DEBUG  naga::front                        > Resolving [13] = Binary { op: Add, left: [11], right: [12] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.634  DEBUG  naga::front                        > Resolving [14] = Math { fun: Fract, arg: [13], arg1: None, arg2: None, arg3: None } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.634  DEBUG  naga::front                        > Resolving [15] = Literal(F32(6.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.634  DEBUG  naga::front                        > Resolving [16] = Binary { op: Multiply, left: [14], right: [15] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.634  DEBUG  naga::front                        > Resolving [17] = Swizzle { size: Tri, vector: [10], pattern: [W, W, W, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.634  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Subtract, left: [16], right: [17] }
14:44:59.634  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.634  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Abs, arg: [18], arg1: None, arg2: None, arg3: None }
14:44:59.634  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.634  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 2 }
14:44:59.634  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.635  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [10], pattern: [X, X, X, X] }
14:44:59.635  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.635  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [10], pattern: [X, X, X, X] }
14:44:59.635  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.635  DEBUG  naga::front                        > Resolving [18] = Binary { op: Subtract, left: [16], right: [17] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.635  DEBUG  naga::front                        > Resolving [19] = Math { fun: Abs, arg: [18], arg1: None, arg2: None, arg3: None } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.635  DEBUG  naga::front                        > Resolving [20] = AccessIndex { base: [1], index: 2 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.635  DEBUG  naga::front                        > Resolving [21] = Swizzle { size: Tri, vector: [10], pattern: [X, X, X, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.635  DEBUG  naga::front                        > Resolving [22] = Swizzle { size: Tri, vector: [10], pattern: [X, X, X, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.636  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Subtract, left: [19], right: [22] }
14:44:59.636  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.636  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(0.0))
14:44:59.636  DEBUG  naga::front                        > Resolving [23] = Binary { op: Subtract, left: [19], right: [22] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.636  DEBUG  naga::front                        > Resolving [24] = Literal(F32(0.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.636  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Splat { size: Tri, value: [24] }
14:44:59.636  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(1.0))
14:44:59.636  DEBUG  naga::front                        > Resolving [25] = Splat { size: Tri, value: [24] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.636  DEBUG  naga::front                        > Resolving [26] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.636  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Splat { size: Tri, value: [26] }
14:44:59.637  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Clamp, arg: [23], arg1: Some([25]), arg2: Some([27]), arg3: None }
14:44:59.637  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.637  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 1 }
14:44:59.637  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.637  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Mix, arg: [21], arg1: Some([28]), arg2: Some([29]), arg3: None }
14:44:59.637  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.637  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [20], right: [30] }
14:44:59.637  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.637  DEBUG  naga::front                        > Resolving [1] = FunctionArgument(0) : Handle([2])
14:44:59.637  DEBUG  naga::front                        > Resolving [2] = FunctionArgument(1) : Handle([3])
14:44:59.637  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [1], pattern: [X, Y, Z, X] }
14:44:59.637  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.637  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [4], right: [2] }
14:44:59.637  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.637  DEBUG  naga::front                        > Resolving [3] = Swizzle { size: Tri, vector: [1], pattern: [X, Y, Z, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.638  DEBUG  naga::front                        > Resolving [4] = CallResult([1]) : Handle([3])
14:44:59.638  DEBUG  naga::front                        > Resolving [5] = Binary { op: Multiply, left: [4], right: [2] } : Handle([3])
14:44:59.638  DEBUG  naga::front                        > Resolving [6] = CallResult([2]) : Handle([3])
14:44:59.638  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Swizzle { size: Tri, vector: [6], pattern: [X, Y, Z, X] }
14:44:59.638  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.638  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 3 }
14:44:59.638  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.638  DEBUG  naga::front                        > Resolving [7] = Swizzle { size: Tri, vector: [6], pattern: [X, Y, Z, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
14:44:59.638  DEBUG  naga::front                        > Resolving [8] = AccessIndex { base: [1], index: 3 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.638  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[7], [8]] }
14:44:59.638  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.638  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: LocalVariable([1])
14:44:59.638  DEBUG  naga::front                        > Resolving [1] = FunctionArgument(0) : Handle([5])
14:44:59.639  DEBUG  naga::front                        > Resolving [2] = LocalVariable([1]) : Value(Pointer { base: [6], space: Function })
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 1 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 1 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 3 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 4 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 4 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 5 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 2 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 2 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.639  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 3 }
14:44:59.639  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.640  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 6 }
14:44:59.640  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.640  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Math { fun: Mix, arg: [10], arg1: Some([11]), arg2: Some([12]), arg3: None }
14:44:59.640  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.640  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 0 }
14:44:59.640  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.640  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: GlobalVariable([1])
14:44:59.640  DEBUG  naga::front                        > Resolving [3] = AccessIndex { base: [2], index: 1 } : Value(Pointer { base: [1], space: Function })
14:44:59.640  DEBUG  naga::front                        > Resolving [4] = AccessIndex { base: [1], index: 1 } : Handle([1])
14:44:59.640  DEBUG  naga::front                        > Resolving [5] = AccessIndex { base: [2], index: 3 } : Value(Pointer { base: [3], space: Function })
14:44:59.640  DEBUG  naga::front                        > Resolving [6] = AccessIndex { base: [1], index: 4 } : Handle([3])
14:44:59.640  DEBUG  naga::front                        > Resolving [7] = AccessIndex { base: [2], index: 4 } : Value(Pointer { base: [4], space: Function })
14:44:59.640  DEBUG  naga::front                        > Resolving [8] = AccessIndex { base: [1], index: 5 } : Handle([4])
14:44:59.641  DEBUG  naga::front                        > Resolving [9] = AccessIndex { base: [2], index: 2 } : Value(Pointer { base: [2], space: Function })
14:44:59.641  DEBUG  naga::front                        > Resolving [10] = AccessIndex { base: [1], index: 2 } : Handle([2])
14:44:59.641  DEBUG  naga::front                        > Resolving [11] = AccessIndex { base: [1], index: 3 } : Handle([2])
14:44:59.641  DEBUG  naga::front                        > Resolving [12] = AccessIndex { base: [1], index: 6 } : Handle([4])
14:44:59.641  DEBUG  naga::front                        > Resolving [13] = Math { fun: Mix, arg: [10], arg1: Some([11]), arg2: Some([12]), arg3: None } : Handle([2])
14:44:59.641  DEBUG  naga::front                        > Resolving [14] = AccessIndex { base: [2], index: 0 } : Value(Pointer { base: [2], space: Function })
14:44:59.641  DEBUG  naga::front                        > Resolving [15] = GlobalVariable([1]) : Value(Pointer { base: [9], space: Uniform })
14:44:59.641  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [15], index: 2 }
14:44:59.641  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.641  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [16] }
14:44:59.641  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 0 }
14:44:59.641  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.642  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(0.0))
14:44:59.642  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(F32(1.0))
14:44:59.642  DEBUG  naga::front                        > Resolving [16] = AccessIndex { base: [15], index: 2 } : Value(Pointer { base: [8], space: Uniform })
14:44:59.642  DEBUG  naga::front                        > Resolving [17] = Load { pointer: [16] } : Handle([8])
14:44:59.642  DEBUG  naga::front                        > Resolving [18] = AccessIndex { base: [1], index: 0 } : Handle([1])
14:44:59.642  DEBUG  naga::front                        > Resolving [19] = Literal(F32(0.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.642  DEBUG  naga::front                        > Resolving [20] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
14:44:59.642  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Compose { ty: [2], components: [[18], [19], [20]] }
14:44:59.642  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.642  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [17], right: [21] }
14:44:59.642  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.642  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [2] }
14:44:59.642  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Literal(I32(0))
14:44:59.642  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: LocalVariable([1])
14:44:59.643  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: GlobalVariable([2])
14:44:59.643  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: GlobalVariable([3])
14:44:59.643  DEBUG  naga::front                        > Resolving [1] = FunctionArgument(0) : Handle([6])
14:44:59.643  DEBUG  naga::front                        > Resolving [2] = LocalVariable([1]) : Value(Pointer { base: [2], space: Function })
14:44:59.643  DEBUG  naga::front                        > Resolving [3] = GlobalVariable([2]) : Handle([10])
14:44:59.643  DEBUG  naga::front                        > Resolving [4] = GlobalVariable([3]) : Handle([11])
14:44:59.643  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 1 }
14:44:59.643  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.643  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: ImageSample { image: [3], sampler: [4], gather: None, coordinate: [5], array_index: None, offset: None, level: Auto, depth_ref: None }
14:44:59.643  DEBUG  naga::front                        > Resolving [5] = AccessIndex { base: [1], index: 1 } : Handle([1])
14:44:59.643  DEBUG  naga::front                        > Resolving [6] = ImageSample { image: [3], sampler: [4], gather: None, coordinate: [5], array_index: None, offset: None, level: Auto, depth_ref: None } : Value(Vector { size: Quad, kind: Float, width: 4 })
14:44:59.643  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: LocalVariable([2])
14:44:59.643  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: GlobalVariable([4])
14:44:59.644  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: GlobalVariable([5])
14:44:59.644  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 1 }
14:44:59.644  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.644  DEBUG  naga::front                        > Resolving [7] = LocalVariable([2]) : Value(Pointer { base: [2], space: Function })
14:44:59.644  DEBUG  naga::front                        > Resolving [8] = GlobalVariable([4]) : Handle([10])
14:44:59.644  DEBUG  naga::front                        > Resolving [9] = GlobalVariable([5]) : Handle([11])
14:44:59.644  DEBUG  naga::front                        > Resolving [10] = AccessIndex { base: [1], index: 1 } : Handle([1])
14:44:59.644  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: ImageSample { image: [8], sampler: [9], gather: None, coordinate: [10], array_index: None, offset: None, level: Auto, depth_ref: None }
14:44:59.644  DEBUG  naga::front                        > Resolving [11] = ImageSample { image: [8], sampler: [9], gather: None, coordinate: [10], array_index: None, offset: None, level: Auto, depth_ref: None } : Value(Vector { size: Quad, kind: Float, width: 4 })
14:44:59.644  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: LocalVariable([3])
14:44:59.644  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 3 }
14:44:59.644  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.644  DEBUG  naga::front                        > Resolving [12] = LocalVariable([3]) : Value(Pointer { base: [2], space: Function })
14:44:59.644  DEBUG  naga::front                        > Resolving [13] = AccessIndex { base: [1], index: 3 } : Handle([3])
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: LocalVariable([4])
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 4 }
14:44:59.645  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Constant([4])
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Equal, left: [15], right: [16] }
14:44:59.645  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 2 }
14:44:59.645  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 4 }
14:44:59.645  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Constant([3])
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Equal, left: [19], right: [20] }
14:44:59.645  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [7] }
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 3 }
14:44:59.645  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.645  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 2 }
14:44:59.645  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.645  DEBUG  naga::front                        > Resolving [14] = LocalVariable([4]) : Value(Pointer { base: [3], space: Function })
14:44:59.646  DEBUG  naga::front                        > Resolving [15] = AccessIndex { base: [1], index: 4 } : Handle([4])
14:44:59.646  DEBUG  naga::front                        > Resolving [16] = Constant([4]) : Handle([4])
14:44:59.646  DEBUG  naga::front                        > Resolving [17] = Binary { op: Equal, left: [15], right: [16] } : Value(Scalar { kind: Bool, width: 1 })
14:44:59.646  DEBUG  naga::front                        > Resolving [18] = AccessIndex { base: [1], index: 2 } : Handle([2])
14:44:59.646  DEBUG  naga::front                        > Resolving [19] = AccessIndex { base: [1], index: 4 } : Handle([4])
14:44:59.646  DEBUG  naga::front                        > Resolving [20] = Constant([3]) : Handle([4])
14:44:59.646  DEBUG  naga::front                        > Resolving [21] = Binary { op: Equal, left: [19], right: [20] } : Value(Scalar { kind: Bool, width: 1 })
14:44:59.646  DEBUG  naga::front                        > Resolving [22] = Load { pointer: [7] } : Handle([2])
14:44:59.646  DEBUG  naga::front                        > Resolving [23] = AccessIndex { base: [2], index: 3 } : Value(ValuePointer { size: None, kind: Float, width: 4, space: Function })
14:44:59.646  DEBUG  naga::front                        > Resolving [24] = AccessIndex { base: [1], index: 2 } : Handle([2])
14:44:59.646  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [24], index: 3 }
14:44:59.646  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.646  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [23] }
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [26], right: [25] }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 4 }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Constant([2])
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Equal, left: [28], right: [29] }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [12] }
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 4 }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Constant([5])
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Equal, left: [32], right: [33] }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 2 }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 3 }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [12], index: 3 }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [37] }
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [36] }
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [39], right: [38] }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 4 }
14:44:59.647  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Constant([1])
14:44:59.647  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Equal, left: [41], right: [42] }
14:44:59.648  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.648  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [1], index: 2 }
14:44:59.648  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.648  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [2], index: 3 }
14:44:59.648  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.648  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [12], index: 3 }
14:44:59.648  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.648  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [46] }
14:44:59.648  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: GlobalVariable([1])
14:44:59.648  DEBUG  naga::front                        > Resolving [25] = AccessIndex { base: [24], index: 3 } : Value(Scalar { kind: Float, width: 4 })
14:44:59.648  DEBUG  naga::front                        > Resolving [26] = Load { pointer: [23] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.648  DEBUG  naga::front                        > Resolving [27] = Binary { op: Multiply, left: [26], right: [25] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.648  DEBUG  naga::front                        > Resolving [28] = AccessIndex { base: [1], index: 4 } : Handle([4])
14:44:59.648  DEBUG  naga::front                        > Resolving [29] = Constant([2]) : Handle([4])
14:44:59.648  DEBUG  naga::front                        > Resolving [30] = Binary { op: Equal, left: [28], right: [29] } : Value(Scalar { kind: Bool, width: 1 })
14:44:59.648  DEBUG  naga::front                        > Resolving [31] = Load { pointer: [12] } : Handle([2])
14:44:59.648  DEBUG  naga::front                        > Resolving [32] = AccessIndex { base: [1], index: 4 } : Handle([4])
14:44:59.649  DEBUG  naga::front                        > Resolving [33] = Constant([5]) : Handle([4])
14:44:59.649  DEBUG  naga::front                        > Resolving [34] = Binary { op: Equal, left: [32], right: [33] } : Value(Scalar { kind: Bool, width: 1 })
14:44:59.649  DEBUG  naga::front                        > Resolving [35] = AccessIndex { base: [1], index: 2 } : Handle([2])
14:44:59.649  DEBUG  naga::front                        > Resolving [36] = AccessIndex { base: [2], index: 3 } : Value(ValuePointer { size: None, kind: Float, width: 4, space: Function })
14:44:59.649  DEBUG  naga::front                        > Resolving [37] = AccessIndex { base: [12], index: 3 } : Value(ValuePointer { size: None, kind: Float, width: 4, space: Function })
14:44:59.649  DEBUG  naga::front                        > Resolving [38] = Load { pointer: [37] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.649  DEBUG  naga::front                        > Resolving [39] = Load { pointer: [36] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.649  DEBUG  naga::front                        > Resolving [40] = Binary { op: Multiply, left: [39], right: [38] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.649  DEBUG  naga::front                        > Resolving [41] = AccessIndex { base: [1], index: 4 } : Handle([4])
14:44:59.649  DEBUG  naga::front                        > Resolving [42] = Constant([1]) : Handle([4])
14:44:59.649  DEBUG  naga::front                        > Resolving [43] = Binary { op: Equal, left: [41], right: [42] } : Value(Scalar { kind: Bool, width: 1 })
14:44:59.650  DEBUG  naga::front                        > Resolving [44] = AccessIndex { base: [1], index: 2 } : Handle([2])
14:44:59.650  DEBUG  naga::front                        > Resolving [45] = AccessIndex { base: [2], index: 3 } : Value(ValuePointer { size: None, kind: Float, width: 4, space: Function })
14:44:59.650  DEBUG  naga::front                        > Resolving [46] = AccessIndex { base: [12], index: 3 } : Value(ValuePointer { size: None, kind: Float, width: 4, space: Function })
14:44:59.650  DEBUG  naga::front                        > Resolving [47] = Load { pointer: [46] } : Value(Scalar { kind: Float, width: 4 })
14:44:59.650  DEBUG  naga::front                        > Resolving [48] = GlobalVariable([1]) : Value(Pointer { base: [9], space: Uniform })
14:44:59.650  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: AccessIndex { base: [48], index: 0 }
14:44:59.650  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.650  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [49] }
14:44:59.650  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [14] }
14:44:59.650  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Binary { op: Multiply, left: [51], right: [50] }
14:44:59.650  DEBUG  naga::proc::constant_evaluator     > check: SubexpressionsAreNotConstant
14:44:59.650  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [2] }
14:44:59.650  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [14] }
14:44:59.650  TRACE  naga::proc::constant_evaluator     > try_eval_and_append: Load { pointer: [2] }
14:44:59.650  DEBUG  naga::valid::interface             > var GlobalVariable { name: Some("uniforms"), space: Uniform, binding: Some(ResourceBinding { group: 0, binding: 0 }), ty: [9], init: None }
14:44:59.650  DEBUG  naga::valid::interface             > var GlobalVariable { name: Some("atlas_linear_tex"), space: Handle, binding: Some(ResourceBinding { group: 1, binding: 0 }), ty: [10], init: None }
14:44:59.650  DEBUG  naga::valid::interface             > var GlobalVariable { name: Some("atlas_linear_sampler"), space: Handle, binding: Some(ResourceBinding { group: 1, binding: 1 }), ty: [11], init: None }
14:44:59.651  DEBUG  naga::valid::interface             > var GlobalVariable { name: Some("atlas_nearest_tex"), space: Handle, binding: Some(ResourceBinding { group: 2, binding: 0 }), ty: [10], init: None }
14:44:59.651  DEBUG  naga::valid::interface             > var GlobalVariable { name: Some("atlas_nearest_sampler"), space: Handle, binding: Some(ResourceBinding { group: 2, binding: 1 }), ty: [11], init: None }
14:44:59.651  DEBUG  naga::valid::function              > var LocalVariable { name: Some("out"), ty: [6], init: None }
14:44:59.651  DEBUG  naga::valid::function              > var LocalVariable { name: Some("color"), ty: [2], init: None }
14:44:59.651  DEBUG  naga::valid::function              > var LocalVariable { name: Some("linear_tex"), ty: [2], init: None }
14:44:59.651  DEBUG  naga::valid::function              > var LocalVariable { name: Some("nearest_tex"), ty: [2], init: None }
14:44:59.651  DEBUG  naga::valid::function              > var LocalVariable { name: Some("hsv"), ty: [3], init: None }
14:44:59.655  TRACE  wezterm_gui::renderstate           > compute_vertices num_quads=32, allocated 0 bytes
14:44:59.655  TRACE  wezterm_gui::renderstate           > compute_vertices num_quads=1024, allocated 0 bytes
14:44:59.655  TRACE  wezterm_gui::renderstate           > compute_vertices num_quads=32, allocated 0 bytes
14:44:59.655  DEBUG  wezterm_gui::termwindow            > OpenGL initialized! WebGPU: name=Intel(R) UHD Graphics 620 (KBL GT2), device_type=IntegratedGpu, backend=Vulkan, driver=Intel open-source Mesa driver, driver_info=Mesa 23.3.2-arch1.2, vendor=32902, device=22807 wezterm version: 20231228-084719-ff274374
14:44:59.656  DEBUG  wezterm_gui::frontend              > workspace is default, fixup windows
14:44:59.656  TRACE  wezterm_gui::frontend              > reconcile: windows -> {X11(XWindow(Window { res_id: 25165827 })): 0}
14:44:59.656  TRACE  window::os::x11::window            > PropertyNotifyEvent WM_CLASS
14:44:59.656  TRACE  window::os::x11::window            > PropertyNotifyEvent _NET_WM_PID
14:44:59.656  TRACE  window::os::x11::window            > PropertyNotifyEvent WM_PROTOCOLS
14:44:59.656  TRACE  window::os::x11::window            > PropertyNotifyEvent _MOTIF_WM_HINTS
14:44:59.656  TRACE  window::os::x11::window            > PropertyNotifyEvent _VARIABLE_REFRESH
14:44:59.656  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: false, writable: true }
14:44:59.657  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.657  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.657  TRACE  window::os::x11::window            > PropertyNotifyEvent WM_NAME
14:44:59.657  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.657  TRACE  window::os::x11::window            > PropertyNotifyEvent _NET_WM_NAME
14:44:59.657  TRACE  async_io::driver                   > main_loop: waiting on I/O
14:44:59.657  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.657  TRACE  polling                            > Poller::wait(_, None)
14:44:59.657  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.657  TRACE  window::os::x11::window            > PropertyNotifyEvent _NET_WM_ICON
14:44:59.657  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.657  TRACE  window::os::x11::window            > Ignoring Present::ConfigureNotify (824x480 dpi=96) because width,height,dpi are unchanged
14:44:59.658  TRACE  window::os::x11::window            > Ignoring X::ConfigureNotify (824x480 dpi=96) because width,height,dpi are unchanged
14:44:59.658  TRACE  window::os::x11::window            > Ignoring X::ConfigureNotify (824x480 dpi=96) because width,height,dpi are unchanged
14:44:59.658  TRACE  window::os::x11::window            > Ignoring Present::ConfigureNotify (824x480 dpi=96) because width,height,dpi are unchanged
14:44:59.658  TRACE  window::os::x11::window            > Ignoring X::ConfigureNotify (824x480 dpi=96) because width,height,dpi are unchanged
14:44:59.660  TRACE  window::os::x11::window            > PropertyNotifyEvent WM_STATE
14:44:59.660  TRACE  window::os::x11::window            > Ignoring Present::ConfigureNotify (824x480 dpi=96) because width,height,dpi are unchanged
14:44:59.660  TRACE  window::os::x11::window            > Ignoring X::ConfigureNotify (824x480 dpi=96) because width,height,dpi are unchanged
14:44:59.660  TRACE  window::os::x11::window            > Present::ConfigureNotify: width 824 -> 956, height 480 -> 1055, dpi 96 -> 96
14:44:59.660  TRACE  window::os::x11::window            > Ignoring X::ConfigureNotify (956x1055 dpi=96) because width,height,dpi are unchanged
14:44:59.660  TRACE  window::os::x11::window            > Ignoring X::ConfigureNotify (956x1055 dpi=96) because width,height,dpi are unchanged
14:44:59.660  TRACE  window::os::x11::window            > Ignoring Present::ConfigureNotify (956x1055 dpi=96) because width,height,dpi are unchanged
14:44:59.660  TRACE  window::os::x11::window            > Ignoring X::ConfigureNotify (956x1055 dpi=96) because width,height,dpi are unchanged
14:44:59.660  TRACE  window::os::x11::window            > expose: 0,0 956x1055 (0 expose events follow this one)
14:44:59.660  TRACE  window::os::x11::window            > focus_changed true, flagging geometry as unsure
14:44:59.661  TRACE  window::os::x11::window            > Calling focus_change(true)
14:44:59.661  TRACE  window                             > FocusChanged(true)
14:44:59.661  DEBUG  wezterm_gui::termwindow            > FocusChanged(true)
14:44:59.661  TRACE  wezterm_gui::termwindow            > Setting focus to true
14:44:59.662  TRACE  wezterm_font::locator::font_config > listing "Roboto" by family took 672.588µs to compute and is []
14:44:59.662  TRACE  wezterm_font::locator::font_config > listing "Roboto" by postscriptname took 428.016µs to compute and is []
14:44:59.664  TRACE  wezterm_font::locator::font_config > matching by family 'Roboto' took 2.206634ms to compute and is Pattern(Noto Sans:style=Bold:slant=0:weight=200:width=100:file=/usr/share/fonts/noto/NotoSans-Bold.ttf:index=0:charset=20-7e a0-377 37a-37f 384-38a 38c 38e-3a1 3a3-3e1 3f0-52f 10fb 1ab0-1ac0 1ac5 1ac7-1ace 1c80-1c88 1d00-1df9 1dfb-1f15 1f18-1f1d 1f20-1f45 1f48-1f4d 1f50-1f57 1f59 1f5b 1f5d 1f5f-1f7d 1f80-1fb4 1fb6-1fc4 1fc6-1fd3 1fd6-1fdb 1fdd-1fef 1ff2-1ff4 1ff6-1ffe 2000-2064 2066-2071 2074-208e 2090-209c 20a0-20c0 20f0 2100-215f 2183-2184 2189 2212 25cc 2c60-2c7f 2de0-2e5d a640-a69f a700-a7ca a7d0-a7d1 a7d3 a7d5-a7d9 a7f2-a7ff a92e ab30-ab6b fb00-fb06 fe00 fe20-fe2f feff fffc-fffd 10780-10785 10787-107b0 107b2-107ba 1df00-1df1e:fontformat=TrueType)
14:44:59.665  TRACE  wezterm_font::locator::font_config > ...
14:44:59.666  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Bold Italic", family: "Hack Nerd Font Mono", sub_family: Some("Bold Italic"), postscript_name: Some("HackNFM-BoldItalic"), aliases: [] }
14:44:59.666  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Regular", family: "Hack Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("HackNFM-Regular"), aliases: [] }
14:44:59.666  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Bold", family: "Hack Nerd Font Mono", sub_family: Some("Bold"), postscript_name: Some("HackNFM-Bold"), aliases: [] }
14:44:59.666  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Hack Nerd Font Mono Italic", family: "Hack Nerd Font Mono", sub_family: Some("Italic"), postscript_name: Some("HackNFM-Italic"), aliases: [] }
14:44:59.666  TRACE  wezterm_font::locator::font_config > listing "Hack Nerd Font Mono" by postscriptname took 293.616µs to compute and is []
14:44:59.666  TRACE  wezterm_font::locator::font_config > selected best font-config match Names { full_name: "Hack Nerd Font Mono Regular", family: "Hack Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("HackNFM-Regular"), aliases: [] }
14:44:59.667  TRACE  wezterm_font::locator::font_config > listing "JetBrains Mono" by family took 704.082µs to compute and is []
14:44:59.668  TRACE  wezterm_font::locator::font_config > listing "JetBrains Mono" by postscriptname took 393.989µs to compute and is []
14:44:59.670  TRACE  wezterm_font::locator::font_config > matching by family 'JetBrains Mono' took 2.281453ms to compute and is Pattern(Noto Sans,Noto Sans Condensed:style=Condensed,Regular:slant=0:weight=80:width=75:file=/usr/share/fonts/noto/NotoSans-Condensed.ttf:index=0:charset=20-7e a0-377 37a-37f 384-38a 38c 38e-3a1 3a3-3e1 3f0-52f 10fb 1ab0-1ac0 1ac5 1ac7-1ace 1c80-1c88 1d00-1df9 1dfb-1f15 1f18-1f1d 1f20-1f45 1f48-1f4d 1f50-1f57 1f59 1f5b 1f5d 1f5f-1f7d 1f80-1fb4 1fb6-1fc4 1fc6-1fd3 1fd6-1fdb 1fdd-1fef 1ff2-1ff4 1ff6-1ffe 2000-2064 2066-2071 2074-208e 2090-209c 20a0-20c0 20f0 2100-215f 2183-2184 2189 2212 25cc 2c60-2c7f 2de0-2e5d a640-a69f a700-a7ca a7d0-a7d1 a7d3 a7d5-a7d9 a7f2-a7ff a92e ab30-ab6b fb00-fb06 fe00 fe20-fe2f feff fffc-fffd 10780-10785 10787-107b0 107b2-107ba 1df00-1df1e:fontformat=TrueType)
14:44:59.671  TRACE  wezterm_font::locator::font_config > ...
14:44:59.671  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }
14:44:59.671  TRACE  wezterm_font::locator::font_config > ...
14:44:59.672  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }
14:44:59.672  TRACE  wezterm_font::locator::font_config > selected best font-config match Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }
14:44:59.672  TRACE  wezterm_font::locator::font_config > listing "Symbols Nerd Font Mono" by family took 299.957µs to compute and is [Pattern(Symbols Nerd Font Mono:spacing=100:file=/usr/share/fonts/TTF/SymbolsNerdFontMono-Regular.ttf:index=0:charset=23fb-23fe 2630 2665 26a1 276c-2771 2b58 e000-e00a e0a0-e0a3 e0b0-e0c8 e0ca e0cc-e0d2 e0d4 e200-e2a9 e300-e3e3 e5fa-e6b2 e700-e7c5 ea60-ea88 ea8a-ea8c ea8f-eac7 eac9 eacc-eb09 eb0b-eb4e eb50-ebeb f000-f00e f010-f01e f021-f03e f040-f04e f050-f05e f060-f06e f070-f07e f080-f08e f090-f09e f0a0-f0ae f0b0-f0b2 f0c0-f0ce f0d0-f0de f0e0-f0ee f0f0-f0fe f100-f10e f110-f11e f120-f12e f130-f13e f140-f14e f150-f15e f160-f16e f170-f17e f180-f18e f190-f19e f1a0-f1ae f1b0-f1be f1c0-f1ce f1d0-f1de f1e0-f1ee f1f0-f1fe f200-f20e f210-f21e f221-f23e f240-f24e f250-f25e f260-f26e f270-f27e f280-f28e f290-f29e f2a0-f2ae f2b0-f2be f2c0-f2ce f2d0-f2de f2e0 f300-f372 f400-f533 f0001-f1af0)]
14:44:59.672  TRACE  wezterm_font::locator::font_config > found font-config match for Names { full_name: "Symbols Nerd Font Mono Regular", family: "Symbols Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("SymbolsNFM"), aliases: [] }
14:44:59.672  TRACE  wezterm_font::locator::font_config > listing "Symbols Nerd Font Mono" by postscriptname took 228.399µs to compute and is []
14:44:59.672  TRACE  wezterm_font::locator::font_config > selected best font-config match Names { full_name: "Symbols Nerd Font Mono Regular", family: "Symbols Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("SymbolsNFM"), aliases: [] }
14:44:59.673  TRACE  wezterm_font::shaper::harfbuzz     > compute metrics across these handles for size=12, dpi=96,
             theoretical pixel height 16: [ParsedFont { names: Names { full_name: "Roboto Bold", family: "Roboto", sub_family: Some("Bold"), postscript_name: Some("Roboto-Bold"), aliases: [] }, weight: FontWeight(700), stretch: Normal, style: Normal, handle: FontDataHandle { source: BuiltIn { name: "../../assets/fonts/Roboto-Bold.ttf" }, index: 0, variation: 0, origin: BuiltIn, coverage: None }, cap_height: Some(0.7109375), synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }, ParsedFont { names: Names { full_name: "Hack Nerd Font Mono Regular", family: "Hack Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("HackNFM-Regular"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: OnDisk { path: "/usr/share/fonts/TTF/HackNerdFontMono-Regular.ttf" }, index: 0, variation: 0, origin: FontConfig, coverage: Some(RangeSet { ranges: [32..127, 160..384, 402..403, 416..418, 420..421, 431..433, 486..488, 510..512, 536..540, 710..712, 728..734, 768..770, 771..772, 777..778, 803..804, 900..903, 904..907, 908..909, 910..930, 931..975, 1012..1013, 1014..1015, 1024..1120, 1122..1124, 1138..1140, 1168..1180, 1186..1190, 1194..1204, 1210..1212, 1216..1221, 1223..1225, 1227..1229, 1231..1274, 1296..1298, 1306..1310, 1329..1367, 1369..1376, 1377..1416, 1417..1419, 3647..3648, 4304..4349, 7808..7814, 7868..7870, 7922..7924, 7928..7930, 8192..8203, 8208..8232, 8239..8248, 8249..8251, 8252..8256, 8260..8266, 8267..8268, 8287..8288, 8304..8305, 8308..8319, 8330..8335, 8352..8374, 8375..8378, 8470..8471, 8482..8483, 8486..8487, 8528..8530, 8531..8544, 8592..8670, 8672..8682, 8683..8724, 8725..8726, 8727..8737, 8739..8740, 8743..8750, 8756..8766, 8769..8810, 8813..8844, 8845..8869, 8882..8886, 8888..8889, 8898..8903, 8909..8914, 8922..8938, 8943..8944, 8964..8965, 8968..8972, 8976..8977, 8992..8994, 9115..9135, 9211..9215, 9472..9728, 9776..9777, 9829..9830, 9834..9835, 9889..9890, 10070..10071, 10088..10102, 10132..10133, 10136..10160, 10161..10175, 10178..10179, 10181..10183, 10204..10205, 10208..10209, 10214..10220, 10229..10232, 10631..10633, 10647..10649, 10731..10732, 10746..10748, 10752..10753, 10799..10800, 10858..10860, 11013..11022, 11030..11035, 11096..11097, 11800..11801, 11807..11808, 11810..11814, 11822..11823, 57344..57355, 57504..57508, 57520..57545, 57546..57547, 57548..57555, 57556..57557, 57856..58026, 58112..58340, 58874..59059, 59136..59334, 60000..60041, 60042..60045, 60047..60104, 60105..60106, 60108..60170, 60171..60239, 60240..60396, 61440..61455, 61456..61471, 61473..61503, 61504..61519, 61520..61535, 61536..61551, 61552..61567, 61568..61583, 61584..61599, 61600..61615, 61616..61619, 61632..61647, 61648..61663, 61664..61679, 61680..61695, 61696..61711, 61712..61727, 61728..61743, 61744..61759, 61760..61775, 61776..61791, 61792..61807, 61808..61823, 61824..61839, 61840..61855, 61856..61871, 61872..61887, 61888..61903, 61904..61919, 61920..61935, 61936..61951, 61952..61967, 61968..61983, 61985..62015, 62016..62031, 62032..62047, 62048..62063, 62064..62079, 62080..62095, 62096..62111, 62112..62127, 62128..62143, 62144..62159, 62160..62175, 62176..62177, 62208..62323, 62464..62772, 65279..65280, 983041..989937], needs_sort: true }) }, cap_height: Some(0.72900390625), synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }, ParsedFont { names: Names { full_name: "JetBrains Mono Regular", family: "JetBrains Mono", sub_family: Some("Regular"), postscript_name: Some("JetBrainsMono-Regular"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: BuiltIn { name: "../../assets/fonts/JetBrainsMono-Regular.ttf" }, index: 0, variation: 0, origin: BuiltIn, coverage: None }, cap_height: Some(0.73), synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }, ParsedFont { names: Names { full_name: "Noto Color Emoji Regular", family: "Noto Color Emoji", sub_family: Some("Regular"), postscript_name: Some("NotoColorEmoji"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: OnDisk { path: "/usr/share/fonts/noto/NotoColorEmoji.ttf" }, index: 0, variation: 0, origin: FontConfig, coverage: Some(RangeSet { ranges: [32..33, 35..36, 42..43, 48..58, 169..170, 174..175, 8205..8206, 8252..8253, 8265..8266, 8419..8420, 8482..8483, 8505..8506, 8596..8602, 8617..8619, 8986..8988, 9000..9001, 9167..9168, 9193..9204, 9208..9211, 9410..9411, 9642..9644, 9654..9655, 9664..9665, 9723..9727, 9728..9733, 9742..9743, 9745..9746, 9748..9750, 9752..9753, 9757..9758, 9760..9761, 9762..9764, 9766..9767, 9770..9771, 9774..9776, 9784..9787, 9792..9793, 9794..9795, 9800..9812, 9823..9825, 9827..9828, 9829..9831, 9832..9833, 9851..9852, 9854..9856, 9874..9880, 9881..9882, 9883..9885, 9888..9890, 9895..9896, 9898..9900, 9904..9906, 9917..9919, 9924..9926, 9928..9929, 9934..9936, 9937..9938, 9939..9941, 9961..9963, 9968..9974, 9975..9979, 9981..9982, 9986..9987, 9989..9990, 9992..9998, 9999..10000, 10002..10003, 10004..10005, 10006..10007, 10013..10014, 10017..10018, 10024..10025, 10035..10037, 10052..10053, 10055..10056, 10060..10061, 10062..10063, 10067..10070, 10071..10072, 10083..10085, 10133..10136, 10145..10146, 10160..10161, 10175..10176, 10548..10550, 11013..11016, 11035..11037, 11088..11089, 11093..11094, 12336..12337, 12349..12350, 12951..12952, 12953..12954, 126980..126981, 127183..127184, 127344..127346, 127358..127360, 127374..127375, 127377..127387, 127462..127488, 127489..127491, 127514..127515, 127535..127536, 127538..127547, 127568..127570, 127744..127778, 127780..127892, 127894..127896, 127897..127900, 127902..127985, 127987..127990, 127991..128254, 128255..128318, 128329..128335, 128336..128360, 128367..128369, 128371..128379, 128391..128392, 128394..128398, 128400..128401, 128405..128407, 128420..128422, 128424..128425, 128433..128435, 128444..128445, 128450..128453, 128465..128468, 128476..128479, 128481..128482, 128483..128484, 128488..128489, 128495..128496, 128499..128500, 128506..128592, 128640..128710, 128715..128723, 128725..128728, 128732..128742, 128745..128746, 128747..128749, 128752..128753, 128755..128765, 128992..129004, 129008..129009, 129292..129339, 129340..129350, 129351..129536, 129648..129661, 129664..129673, 129680..129726, 129727..129734, 129742..129756, 129760..129769, 129776..129785, 917552..917562, 917601..917627, 917631..917632, 1041637..1041647, 1042476..1042477, 1042478..1042488], needs_sort: true }) }, cap_height: None, synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: true, pixel_sizes: [128], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }, ParsedFont { names: Names { full_name: "Symbols Nerd Font Mono Regular", family: "Symbols Nerd Font Mono", sub_family: Some("Regular"), postscript_name: Some("SymbolsNFM"), aliases: [] }, weight: FontWeight(400), stretch: Normal, style: Normal, handle: FontDataHandle { source: OnDisk { path: "/usr/share/fonts/TTF/SymbolsNerdFontMono-Regular.ttf" }, index: 0, variation: 0, origin: FontConfig, coverage: Some(RangeSet { ranges: [9211..9215, 9776..9777, 9829..9830, 9889..9890, 10092..10098, 11096..11097, 57344..57355, 57504..57508, 57520..57545, 57546..57547, 57548..57555, 57556..57557, 57856..58026, 58112..58340, 58874..59059, 59136..59334, 60000..60041, 60042..60045, 60047..60104, 60105..60106, 60108..60170, 60171..60239, 60240..60396, 61440..61455, 61456..61471, 61473..61503, 61504..61519, 61520..61535, 61536..61551, 61552..61567, 61568..61583, 61584..61599, 61600..61615, 61616..61619, 61632..61647, 61648..61663, 61664..61679, 61680..61695, 61696..61711, 61712..61727, 61728..61743, 61744..61759, 61760..61775, 61776..61791, 61792..61807, 61808..61823, 61824..61839, 61840..61855, 61856..61871, 61872..61887, 61888..61903, 61904..61919, 61920..61935, 61936..61951, 61952..61967, 61968..61983, 61985..62015, 62016..62031, 62032..62047, 62048..62063, 62064..62079, 62080..62095, 62096..62111, 62112..62127, 62128..62143, 62144..62159, 62160..62175, 62176..62177, 62208..62323, 62464..62772, 983041..989937], needs_sort: true }) }, cap_height: None, synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }]
14:44:59.673  TRACE  wezterm_font::shaper::harfbuzz     > shaper wants 0 ParsedFont { names: Names { full_name: "Roboto Bold", family: "Roboto", sub_family: Some("Bold"), postscript_name: Some("Roboto-Bold"), aliases: [] }, weight: FontWeight(700), stretch: Normal, style: Normal, handle: FontDataHandle { source: BuiltIn { name: "../../assets/fonts/Roboto-Bold.ttf" }, index: 0, variation: 0, origin: BuiltIn, coverage: None }, cap_height: Some(0.7109375), synthesize_italic: false, synthesize_bold: false, synthesize_dim: false, assume_emoji_presentation: false, pixel_sizes: [], harfbuzz_features: None, freetype_load_target: None, freetype_render_target: None, freetype_load_flags: None, scale: None }
14:44:59.673  DEBUG  wezterm_font::ftwrap               > set_char_size computing 12 dpi=96 (pixel height=16)
14:44:59.673  TRACE  wezterm_font::shaper::harfbuzz     > idx 0 cell_height is 18.75, which is 2.75 away from theoretical
                     height (factor 0.171875). Seems good enough
14:44:59.673  TRACE  wezterm_font::shaper::harfbuzz     > metrics_for_idx=0, size=12, dpi=96 -> FontMetrics { cell_width: 14.0, cell_height: 18.75, descender: -4.0, underline_thickness: 0.78125, underline_position: -1.5625, cap_height_ratio: Some(0.5866666666666667), cap_height: Some(11.0), is_scaled: true, presentation: Text, force_y_adjust: 0.0 }
14:44:59.674  TRACE  async_io::reactor                  > writable: fd=21
14:44:59.674  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.674  TRACE  window                             > Notification(Any { .. })
14:44:59.674  DEBUG  wezterm_gui::termwindow            > Notification(Any { .. })
14:44:59.674  TRACE  polling::epoll                     > new events: epoll_fd=5, res=1
14:44:59.674  TRACE  window::os::x11::window            > coalesce a repaint
14:44:59.674  TRACE  window                             > Resized { dimensions: Dimensions { pixel_width: 956, pixel_height: 1055, dpi: 96 }, window_state: (empty), live_resizing: true }
14:44:59.674  DEBUG  wezterm_gui::termwindow            > Resized { dimensions: Dimensions { pixel_width: 956, pixel_height: 1055, dpi: 96 }, window_state: (empty), live_resizing: true }
14:44:59.674  TRACE  wezterm_gui::termwindow::resize    > resize event, live=true current cells: RowsAndCols { rows: 24, cols: 80 }, current dims: Dimensions { pixel_width: 824, pixel_height: 480, dpi: 96 }, new dims: Dimensions { pixel_width: 956, pixel_height: 1055, dpi: 96 } window_state:(empty)
14:44:59.674  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.674  TRACE  async_io::reactor                  > react: 1 ready wakers
14:44:59.674  TRACE  async_io::driver                   > main_loop: waiting on I/O
14:44:59.675  TRACE  async_io::reactor                  > process_timers: 0 ready wakers
14:44:59.675  TRACE  polling                            > Poller::wait(_, None)
14:44:59.675  TRACE  polling::epoll                     > wait: epoll_fd=5, timeout=None
14:44:59.675  TRACE  polling::epoll                     > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.676  TRACE  wezterm_gui::termwindow::resize    > apply_dimensions Dimensions { pixel_width: 956, pixel_height: 1055, dpi: 96 } scale_changed_cells None. window_state (empty)
14:44:59.677  TRACE  wezterm_gui::termwindow::resize    > apply_dimensions computed size TerminalSize { rows: 54, cols: 93, pixel_width: 930, pixel_height: 1026, dpi: 96 }, dims Dimensions { pixel_width: 956, pixel_height: 1055, dpi: 96 }
14:44:59.677  DEBUG  wezterm_term::screen               > resize screen to 93x54 dpi=96
14:44:59.677  DEBUG  wezterm_term::screen               > resize screen to 93x54 dpi=96
14:44:59.677  TRACE  window::os::x11::window            > About to paint, but we're unsure about focus; querying!
14:44:59.677  TRACE  window::os::x11::window            > Do I Window { res_id: 25165827 } have focus? result=true, I thought Some(true)
14:44:59.677  TRACE  window                             > NeedRepaint
14:44:59.677  DEBUG  wezterm_gui::termwindow            > NeedRepaint
14:44:59.677  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 4.286µs
14:44:59.678  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 254.286µs
14:44:59.678  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=355.672µs
14:44:59.686  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=8.646044ms, fps=0
14:44:59.686  TRACE  window::os::x11::window                > PropertyNotifyEvent _VARIABLE_REFRESH
14:44:59.686  TRACE  window                                 > Notification(Any { .. })
14:44:59.687  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.687  TRACE  window::os::x11::window                > PropertyNotifyEvent WM_NAME
14:44:59.687  TRACE  window::os::x11::window                > PropertyNotifyEvent _NET_WM_NAME
14:44:59.687  TRACE  polling                                > Poller::notify()
14:44:59.687  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:44:59.687  TRACE  window                                 > Notification(Any { .. })
14:44:59.687  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.687  TRACE  window                                 > Notification(Any { .. })
14:44:59.688  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.687  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.688  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.688  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.688  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.688  TRACE  async_io::reactor                      > react: 0 ready wakers
14:44:59.688  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.688  TRACE  window                                 > Notification(Any { .. })
14:44:59.688  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.688  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.688  TRACE  polling                                > Poller::wait(_, Some(985.497102ms))
14:44:59.688  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(985.497102ms)
14:44:59.689  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.689  TRACE  polling                                > Poller::notify()
14:44:59.689  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.689  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:44:59.689  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.689  TRACE  window                                 > Notification(Any { .. })
14:44:59.689  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.689  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.689  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.689  TRACE  window                                 > Notification(Any { .. })
14:44:59.689  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.689  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.689  TRACE  polling                                > Poller::wait(_, Some(15.384317ms))
14:44:59.689  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(15.384317ms)
14:44:59.690  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.690  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.690  TRACE  window                                 > Notification(Any { .. })
14:44:59.690  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.690  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.690  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.690  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.690  TRACE  async_io::reactor                      > react: 0 ready wakers
14:44:59.690  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.690  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.690  TRACE  polling                                > Poller::wait(_, Some(14.272671ms))
14:44:59.690  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.272671ms)
14:44:59.690  TRACE  window                                 > Notification(Any { .. })
14:44:59.691  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.691  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.691  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.691  TRACE  window                                 > Notification(Any { .. })
14:44:59.691  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.691  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.691  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.691  TRACE  window                                 > Notification(Any { .. })
14:44:59.691  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.691  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:44:59.691  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.691  TRACE  polling                                > Poller::wait(_, Some(13.263175ms))
14:44:59.691  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.692  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(13.263175ms)
14:44:59.692  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.692  TRACE  async_io::driver                       > block_on()
14:44:59.692  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.692  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.692  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.692  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.692  TRACE  async_io::driver                       > main_loop: notified
14:44:59.692  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.692  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.692  TRACE  async_io::driver                       > block_on: sleep until notification
14:44:59.692  TRACE  polling                                > Poller::wait(_, Some(12.202218ms))
14:44:59.693  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.693  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(12.202218ms)
14:44:59.693  TRACE  async_io::driver                       > block_on: sleep until notification
14:44:59.693  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.693  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.693  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.693  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.693  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.693  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.693  TRACE  async_io::driver                       > block_on: waiting on I/O
14:44:59.693  TRACE  async_io::driver                       > main_loop: sleeping for 75 us
14:44:59.693  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.693  TRACE  polling                                > Poller::wait(_, Some(11.236854ms))
14:44:59.694  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(11.236854ms)
14:44:59.694  TRACE  async_io::driver                       > main_loop: sleeping for 100 us
14:44:59.694  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.694  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.694  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.694  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.694  TRACE  async_io::driver                       > main_loop: sleeping for 250 us
14:44:59.694  TRACE  async_io::driver                       > block_on: notified
14:44:59.694  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.694  TRACE  polling::epoll                         > add: epoll_fd=5, fd=36, ev=Event { key: 1, readable: false, writable: false }
14:44:59.694  TRACE  async_io::driver                       > main_loop: sleeping for 500 us
14:44:59.694  TRACE  async_io::driver                       > block_on: waiting on I/O
14:44:59.694  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=36, ev=Event { key: 1, readable: false, writable: true }
14:44:59.695  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.695  TRACE  polling                                > Poller::wait(_, Some(9.912114ms))
14:44:59.695  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(9.912114ms)
14:44:59.695  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.695  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.695  TRACE  async_io::driver                       > main_loop: sleeping for 750 us
14:44:59.695  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.695  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.695  TRACE  async_io::driver                       > block_on: stops hogging the reactor
14:44:59.696  TRACE  async_io::reactor                      > writable: fd=36
14:44:59.696  TRACE  async_io::driver                       > main_loop: notified
14:44:59.696  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.696  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.696  TRACE  polling                                > Poller::wait(_, Some(8.804427ms))
14:44:59.696  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(8.804427ms)
14:44:59.696  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.696  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=36, ev=Event { key: 1, readable: true, writable: false }
14:44:59.696  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.696  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.696  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.696  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.696  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=36, ev=Event { key: 1, readable: true, writable: false }
14:44:59.697  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.697  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.697  TRACE  polling                                > Poller::wait(_, Some(7.872485ms))
14:44:59.697  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(7.872485ms)
14:44:59.697  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.697  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.697  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.697  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.697  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.697  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=36, ev=Event { key: 1, readable: true, writable: false }
14:44:59.697  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.698  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.698  TRACE  polling                                > Poller::wait(_, Some(7.000988ms))
14:44:59.698  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(7.000988ms)
14:44:59.698  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.698  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.698  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.698  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.698  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.698  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=36, ev=Event { key: 1, readable: true, writable: false }
14:44:59.698  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.699  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.699  TRACE  polling                                > Poller::wait(_, Some(6.007237ms))
14:44:59.699  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(6.007237ms)
14:44:59.699  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.699  TRACE  polling                                > Poller::notify()
14:44:59.699  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:44:59.699  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.699  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.699  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.699  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.699  TRACE  async_io::driver                       > block_on()
14:44:59.700  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.700  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.700  TRACE  polling                                > Poller::wait(_, Some(4.853557ms))
14:44:59.700  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(4.853557ms)
14:44:59.700  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.700  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.700  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.700  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.700  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.700  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=36, ev=Event { key: 1, readable: true, writable: false }
14:44:59.700  TRACE  polling                                > Poller::notify()
14:44:59.701  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:44:59.700  TRACE  polling::epoll                         > remove: epoll_fd=5, fd=36
14:44:59.700  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.701  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.701  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.701  TRACE  async_io::driver                       > block_on: completed
14:44:59.701  TRACE  polling                                > Poller::wait(_, Some(3.733451ms))
14:44:59.701  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(3.733451ms)
14:44:59.701  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.701  TRACE  polling::epoll                         > new events: epoll_fd=5, res=2
14:44:59.701  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.701  TRACE  async_io::driver                       > block_on: sleep until notification
14:44:59.702  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.702  TRACE  async_io::driver                       > main_loop: sleeping for 50 us
14:44:59.702  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=21, ev=Event { key: 0, readable: true, writable: false }
14:44:59.702  TRACE  async_io::driver                       > main_loop: notified
14:44:59.702  TRACE  polling::epoll                         > remove: epoll_fd=5, fd=21
14:44:59.702  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.702  TRACE  async_io::driver                       > block_on: completed
14:44:59.702  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.702  TRACE  polling                                > Poller::wait(_, Some(2.478006ms))
14:44:59.702  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(2.478006ms)
14:44:59.702  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.705  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.705  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.705  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:44:59.705  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.705  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.705  TRACE  window                                 > NeedRepaint
14:44:59.705  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.706  TRACE  polling                                > Poller::wait(_, Some(968.183768ms))
14:44:59.706  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(968.183768ms)
14:44:59.706  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.706  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:44:59.706  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 4.26µs
14:44:59.706  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 84.472µs
14:44:59.706  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=191.196µs
14:44:59.708  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=1.707798ms, fps=0
14:44:59.708  TRACE  polling                                > Poller::notify()
14:44:59.708  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:44:59.708  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.708  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.708  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.708  TRACE  async_io::reactor                      > react: 0 ready wakers
14:44:59.709  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.709  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.709  TRACE  polling                                > Poller::wait(_, Some(15.38648ms))
14:44:59.709  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(15.38648ms)
14:44:59.709  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.724  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:44:59.724  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:44:59.724  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:44:59.725  TRACE  async_io::reactor                      > react: 1 ready wakers
14:44:59.725  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:44:59.725  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:44:59.725  TRACE  polling                                > Poller::wait(_, Some(948.902208ms))
14:44:59.725  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(948.902208ms)
14:44:59.725  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.011  TRACE  window                                 > RawKeyEvent(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:00.011  DEBUG  wezterm_gui::termwindow                > RawKeyEvent(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:00.011  TRACE  wezterm_gui::termwindow::keyevent      > key_event RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) } 
14:45:00.011  TRACE  window::os::x11::keyboard              > process_key_event: RawKeyEvent FeedResult::Nothing: "", 65507. kc -> None fallback_feed=Nothing("", 65507)
14:45:00.012  TRACE  window                                 > KeyEvent(KeyEvent { key: LeftControl, modifiers: NONE, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:00.012  DEBUG  wezterm_gui::termwindow                > KeyEvent(KeyEvent { key: LeftControl, modifiers: NONE, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:00.012  TRACE  wezterm_gui::termwindow::keyevent      > key_event KeyEvent { key: LeftControl, modifiers: NONE, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) }) } 
14:45:00.012  TRACE  window                                 > AdviseModifiersLedStatus(CTRL, (empty))
14:45:00.012  DEBUG  wezterm_gui::termwindow                > AdviseModifiersLedStatus(CTRL, (empty))
14:45:00.013  TRACE  window                                 > Notification(Any { .. })
14:45:00.013  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.014  TRACE  window                                 > NeedRepaint
14:45:00.014  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:00.014  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 9.865µs
14:45:00.015  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 208.481µs
14:45:00.015  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=483.01µs
14:45:00.016  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=1.882239ms, fps=0
14:45:00.017  TRACE  polling                                > Poller::notify()
14:45:00.017  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:00.017  TRACE  window                                 > Notification(Any { .. })
14:45:00.017  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.018  TRACE  window                                 > Notification(Any { .. })
14:45:00.017  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.018  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.018  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.019  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:00.019  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.019  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.018  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.019  TRACE  polling                                > Poller::wait(_, Some(13.652903ms))
14:45:00.020  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(13.652903ms)
14:45:00.020  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.031  TRACE  window                                 > RawKeyEvent(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:00.031  DEBUG  wezterm_gui::termwindow                > RawKeyEvent(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:00.031  TRACE  wezterm_gui::termwindow::keyevent      > key_event RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) } 
14:45:00.032  TRACE  window::os::x11::keyboard              > process_key_event: RawKeyEvent FeedResult::Nothing: "\u{4}", 100. kc -> None fallback_feed=Nothing("\u{4}", 100)
14:45:00.032  TRACE  window                                 > KeyEvent(KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:00.032  DEBUG  wezterm_gui::termwindow                > KeyEvent(KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:00.032  TRACE  wezterm_gui::termwindow::keyevent      > key_event KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) }) } 
14:45:00.032  TRACE  wezterm_term::terminalstate::keyboard  > key_down: sending "\u{4}", Char('d') CTRL
14:45:00.034  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.034  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.034  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:00.035  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:00.035  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.035  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.035  TRACE  polling                                > Poller::wait(_, Some(638.643718ms))
14:45:00.035  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(638.643718ms)
14:45:00.036  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.035  TRACE  window                                 > NeedRepaint
14:45:00.036  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:00.036  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 9.465µs
14:45:00.037  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 209.203µs
14:45:00.037  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=454.817µs
14:45:00.038  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=1.883175ms, fps=0
14:45:00.039  TRACE  polling                                > Poller::notify()
14:45:00.039  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:00.039  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.040  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.040  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.040  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:00.040  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.040  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.041  TRACE  polling                                > Poller::wait(_, Some(14.470567ms))
14:45:00.041  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.470567ms)
14:45:00.041  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.056  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.056  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.056  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:00.057  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:00.057  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.057  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.057  TRACE  polling                                > Poller::wait(_, Some(616.650326ms))
14:45:00.057  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(616.650326ms)
14:45:00.058  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.144  TRACE  window                                 > KeyEvent(KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: false, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: false, handled: Handled(false) }) })
14:45:00.144  DEBUG  wezterm_gui::termwindow                > KeyEvent(KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: false, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: false, handled: Handled(false) }) })
14:45:00.144  TRACE  wezterm_gui::termwindow::keyevent      > key_event KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: false, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: false, handled: Handled(false) }) } 
14:45:00.145  TRACE  window                                 > KeyEvent(KeyEvent { key: LeftControl, modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: false, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: CTRL, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: false, handled: Handled(false) }) })
14:45:00.145  DEBUG  wezterm_gui::termwindow                > KeyEvent(KeyEvent { key: LeftControl, modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: false, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: CTRL, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: false, handled: Handled(false) }) })
14:45:00.145  TRACE  wezterm_gui::termwindow::keyevent      > key_event KeyEvent { key: LeftControl, modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: false, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: CTRL, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: false, handled: Handled(false) }) } 
14:45:00.145  TRACE  window                                 > AdviseModifiersLedStatus(NONE, (empty))
14:45:00.146  DEBUG  wezterm_gui::termwindow                > AdviseModifiersLedStatus(NONE, (empty))
14:45:00.146  TRACE  window                                 > NeedRepaint
14:45:00.147  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:00.147  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 10.139µs
14:45:00.147  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 211.019µs
14:45:00.147  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=436.148µs
14:45:00.150  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=2.911796ms, fps=0
14:45:00.150  TRACE  window                                 > Notification(Any { .. })
14:45:00.151  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.151  TRACE  polling                                > Poller::notify()
14:45:00.151  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:00.151  TRACE  window                                 > Notification(Any { .. })
14:45:00.152  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.152  TRACE  window                                 > Notification(Any { .. })
14:45:00.152  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.151  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.153  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.153  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.153  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:00.153  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.153  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.154  TRACE  polling                                > Poller::wait(_, Some(13.43118ms))
14:45:00.154  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(13.43118ms)
14:45:00.154  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.168  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.168  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.168  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:00.168  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:00.169  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.169  TRACE  window                                 > NeedRepaint
14:45:00.169  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:00.169  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 8.432µs
14:45:00.169  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.169  TRACE  polling                                > Poller::wait(_, Some(504.87327ms))
14:45:00.170  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(504.87327ms)
14:45:00.170  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.169  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 192.109µs
14:45:00.170  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=1.187117ms
14:45:00.172  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=2.51684ms, fps=0
14:45:00.172  TRACE  polling                                > Poller::notify()
14:45:00.173  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:00.173  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.173  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.173  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.173  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:00.174  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.174  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.174  TRACE  polling                                > Poller::wait(_, Some(14.533409ms))
14:45:00.174  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.533409ms)
14:45:00.174  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.189  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.189  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.189  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:00.190  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:00.190  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.190  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.190  TRACE  polling                                > Poller::wait(_, Some(483.656026ms))
14:45:00.190  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(483.656026ms)
14:45:00.191  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.675  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:00.675  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.675  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:00.675  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:00.676  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:00.676  TRACE  window                                 > Notification(Any { .. })
14:45:00.676  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.676  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:00.677  TRACE  polling                                > Poller::wait(_, None)
14:45:00.677  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=None
14:45:00.677  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:00.676  TRACE  window                                 > Notification(Any { .. })
14:45:00.678  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:00.678  TRACE  window                                 > Notification(Any { .. })
14:45:00.678  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.225  TRACE  mux                                    > read_pty pane 0 read 23 bytes
14:45:03.228  TRACE  mux                                    > read_pty pane 0 read 32 bytes
14:45:03.229  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(FinalTermSemanticPrompt(FreshLineAndStartPrompt { aid: Some("47348"), cl: Some(MultipleLine) }))
14:45:03.229  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(ITermProprietary(SetUserVar { name: "WEZTERM_PROG", value: "" }))
14:45:03.229  TRACE  window                                 > Notification(Any { .. })
14:45:03.229  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.229  TRACE  window                                 > Notification(Any { .. })
14:45:03.229  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.229  TRACE  window                                 > NeedRepaint
14:45:03.229  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.229  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 5.104µs
14:45:03.229  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 94.958µs
14:45:03.230  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=195.919µs
14:45:03.230  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=808.091µs, fps=1.8389481
14:45:03.231  TRACE  window                                 > Notification(Any { .. })
14:45:03.231  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.231  TRACE  polling                                > Poller::notify()
14:45:03.231  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.231  TRACE  polling                                > Poller::notify()
14:45:03.231  TRACE  window                                 > Notification(Any { .. })
14:45:03.231  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.231  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.232  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.232  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.232  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.232  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.232  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.232  TRACE  polling                                > Poller::wait(_, Some(15.098875ms))
14:45:03.232  TRACE  window                                 > Notification(Any { .. })
14:45:03.232  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.232  TRACE  window                                 > Notification(Any { .. })
14:45:03.233  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.232  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(15.098875ms)
14:45:03.233  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.235  TRACE  mux                                    > read_pty pane 0 read 36 bytes
14:45:03.238  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(ITermProprietary(SetUserVar { name: "WEZTERM_USER", value: "vi" }))
14:45:03.238  TRACE  window                                 > Notification(Any { .. })
14:45:03.238  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.238  TRACE  window                                 > Notification(Any { .. })
14:45:03.239  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.238  TRACE  mux                                    > read_pty pane 0 read 39 bytes
14:45:03.239  TRACE  window                                 > Notification(Any { .. })
14:45:03.239  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.239  TRACE  window                                 > Notification(Any { .. })
14:45:03.240  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.240  TRACE  window                                 > Notification(Any { .. })
14:45:03.240  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.240  TRACE  window                                 > Notification(Any { .. })
14:45:03.240  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.242  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(ITermProprietary(SetUserVar { name: "WEZTERM_IN_TMUX", value: "0" }))
14:45:03.242  TRACE  window                                 > Notification(Any { .. })
14:45:03.242  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.242  TRACE  window                                 > Notification(Any { .. })
14:45:03.243  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.243  TRACE  window                                 > Notification(Any { .. })
14:45:03.243  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.243  TRACE  window                                 > Notification(Any { .. })
14:45:03.243  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.244  TRACE  window                                 > Notification(Any { .. })
14:45:03.244  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.244  TRACE  window                                 > Notification(Any { .. })
14:45:03.244  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.248  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.248  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.248  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.248  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.249  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.249  TRACE  window                                 > NeedRepaint
14:45:03.249  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.249  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 6.969µs
14:45:03.249  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.249  TRACE  polling                                > Poller::wait(_, Some(981.71664ms))
14:45:03.250  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(981.71664ms)
14:45:03.249  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 156.237µs
14:45:03.250  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=726.683µs
14:45:03.250  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.251  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=1.801797ms, fps=1.8389481
14:45:03.251  TRACE  polling                                > Poller::notify()
14:45:03.252  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.252  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.252  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.252  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.252  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.253  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.253  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.253  TRACE  polling                                > Poller::wait(_, Some(14.706526ms))
14:45:03.253  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.706526ms)
14:45:03.253  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.256  TRACE  mux                                    > read_pty pane 0 read 40 bytes
14:45:03.260  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(ITermProprietary(SetUserVar { name: "WEZTERM_HOST", value: "t480" }))
14:45:03.260  TRACE  window                                 > Notification(Any { .. })
14:45:03.260  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.260  TRACE  window                                 > Notification(Any { .. })
14:45:03.261  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.261  TRACE  window                                 > Notification(Any { .. })
14:45:03.261  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.262  TRACE  window                                 > Notification(Any { .. })
14:45:03.262  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.263  TRACE  window                                 > Notification(Any { .. })
14:45:03.263  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.263  TRACE  window                                 > Notification(Any { .. })
14:45:03.263  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.268  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.268  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.269  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.269  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.269  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.269  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.270  TRACE  polling                                > Poller::wait(_, Some(961.066507ms))
14:45:03.270  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(961.066507ms)
14:45:03.270  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.269  TRACE  mux                                    > read_pty pane 0 read 26 bytes
14:45:03.269  TRACE  window                                 > NeedRepaint
14:45:03.271  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.271  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 8.334µs
14:45:03.272  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 186.834µs
14:45:03.272  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=410.251µs
14:45:03.272  TRACE  mux                                    > read_pty pane 0 read 6 bytes
14:45:03.273  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=1.719146ms, fps=1.8389481
14:45:03.274  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(CurrentWorkingDirectory("file://t480/home/vi/"))
14:45:03.274  DEBUG  wezterm_term::terminalstate::performer > perform Esc(Code(StringTerminator))
14:45:03.274  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(SetIconNameAndWindowTitle("~"))
14:45:03.274  TRACE  polling                                > Poller::notify()
14:45:03.274  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.275  TRACE  window                                 > Notification(Any { .. })
14:45:03.275  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.275  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.275  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.275  TRACE  window                                 > Notification(Any { .. })
14:45:03.276  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.276  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.276  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.276  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.277  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.277  TRACE  polling                                > Poller::wait(_, Some(13.37462ms))
14:45:03.277  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(13.37462ms)
14:45:03.277  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.276  TRACE  window::os::x11::window                > PropertyNotifyEvent WM_NAME
14:45:03.278  TRACE  window::os::x11::window                > PropertyNotifyEvent _NET_WM_NAME
14:45:03.278  TRACE  window                                 > Notification(Any { .. })
14:45:03.278  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.279  TRACE  mux                                    > read_pty pane 0 read 2 bytes
14:45:03.279  TRACE  window                                 > Notification(Any { .. })
14:45:03.280  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.280  TRACE  window                                 > Notification(Any { .. })
14:45:03.280  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.281  TRACE  window                                 > Notification(Any { .. })
14:45:03.281  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.281  TRACE  window                                 > Notification(Any { .. })
14:45:03.281  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.282  TRACE  window                                 > Notification(Any { .. })
14:45:03.282  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.282  TRACE  window                                 > Notification(Any { .. })
14:45:03.282  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.282  TRACE  window                                 > Notification(Any { .. })
14:45:03.283  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.282  DEBUG  wezterm_term::terminalstate::performer > perform Control(CarriageReturn)
14:45:03.283  DEBUG  wezterm_term::terminalstate::performer > perform Control(LineFeed)
14:45:03.283  TRACE  window                                 > Notification(Any { .. })
14:45:03.283  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.283  TRACE  window                                 > Notification(Any { .. })
14:45:03.284  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.291  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.291  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.291  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.291  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.292  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.292  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.292  TRACE  polling                                > Poller::wait(_, Some(938.715648ms))
14:45:03.292  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(938.715648ms)
14:45:03.292  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.292  TRACE  window                                 > NeedRepaint
14:45:03.293  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.293  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 8.299µs
14:45:03.293  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 218.057µs
14:45:03.294  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=483.001µs
14:45:03.295  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=1.776005ms, fps=1.8389481
14:45:03.297  TRACE  polling                                > Poller::notify()
14:45:03.297  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.297  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.297  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.298  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.298  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.298  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.298  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.299  TRACE  polling                                > Poller::wait(_, Some(14.009546ms))
14:45:03.299  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.009546ms)
14:45:03.299  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.313  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.314  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.314  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.314  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.314  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.314  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.315  TRACE  polling                                > Poller::wait(_, Some(916.041961ms))
14:45:03.315  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(916.041961ms)
14:45:03.315  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.362  TRACE  mux                                    > read_pty pane 0 read 74 bytes
14:45:03.364  TRACE  mux                                    > read_pty pane 0 read 1 bytes
14:45:03.365  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Sgr(Reset))
14:45:03.365  DEBUG  wezterm_term::terminalstate            > Reset
14:45:03.366  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Sgr(Inverse(false)))
14:45:03.366  DEBUG  wezterm_term::terminalstate            > Inverse(false)
14:45:03.366  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Sgr(Underline(None)))
14:45:03.366  DEBUG  wezterm_term::terminalstate            > Underline(None)
14:45:03.366  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Edit(EraseInDisplay(EraseToEndOfDisplay)))
14:45:03.366  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Sgr(Foreground(PaletteIndex(4))))
14:45:03.366  DEBUG  wezterm_term::terminalstate            > Foreground(PaletteIndex(4))
14:45:03.367  DEBUG  wezterm_term::terminalstate::performer > perform Print('~')
14:45:03.367  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Sgr(Foreground(Default)))
14:45:03.367  TRACE  wezterm_term::terminalstate::performer > print x=0 y=1 print_width=1 width=93 cell=~ CellAttributes { attributes: 16384, intensity: Normal, underline: None, blink: None, italic: false, reverse: false, strikethrough: false, invisible: false, wrapped: false, overline: false, semantic_type: Prompt, foreground: PaletteIndex(4), background: Default, fat: None }
14:45:03.367  DEBUG  wezterm_term::terminalstate            > Foreground(Default)
14:45:03.367  DEBUG  wezterm_term::terminalstate::performer > perform Control(CarriageReturn)
14:45:03.367  DEBUG  wezterm_term::terminalstate::performer > perform Control(LineFeed)
14:45:03.367  DEBUG  wezterm_term::terminalstate::performer > perform Control(CarriageReturn)
14:45:03.368  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(FinalTermSemanticPrompt(StartPrompt(Initial)))
14:45:03.368  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Sgr(Foreground(PaletteIndex(5))))
14:45:03.368  DEBUG  wezterm_term::terminalstate            > Foreground(PaletteIndex(5))
14:45:03.368  DEBUG  wezterm_term::terminalstate::performer > perform Print('>')
14:45:03.368  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Sgr(Foreground(Default)))
14:45:03.368  TRACE  wezterm_term::terminalstate::performer > print x=0 y=2 print_width=1 width=93 cell=> CellAttributes { attributes: 16384, intensity: Normal, underline: None, blink: None, italic: false, reverse: false, strikethrough: false, invisible: false, wrapped: false, overline: false, semantic_type: Prompt, foreground: PaletteIndex(5), background: Default, fat: None }
14:45:03.369  DEBUG  wezterm_term::terminalstate            > Foreground(Default)
14:45:03.369  DEBUG  wezterm_term::terminalstate::performer > perform Print(' ')
14:45:03.369  DEBUG  wezterm_term::terminalstate::performer > perform OperatingSystemCommand(FinalTermSemanticPrompt(MarkEndOfPromptAndStartOfInputUntilNextMarker))
14:45:03.369  TRACE  wezterm_term::terminalstate::performer > print x=1 y=2 print_width=1 width=93 cell=  CellAttributes { attributes: 16384, intensity: Normal, underline: None, blink: None, italic: false, reverse: false, strikethrough: false, invisible: false, wrapped: false, overline: false, semantic_type: Prompt, foreground: Default, background: Default, fat: None }
14:45:03.369  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Edit(EraseInLine(EraseToEndOfLine)))
14:45:03.369  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Mode(SetDecPrivateMode(Code(BracketedPaste))))
14:45:03.369  DEBUG  wezterm_term::terminalstate::performer > perform Control(Bell)
14:45:03.370  TRACE  window                                 > Notification(Any { .. })
14:45:03.370  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.370  TRACE  wezterm_gui::termwindow                > Ding! (this is the bell) in pane 0
14:45:03.370  TRACE  window                                 > Notification(Any { .. })
14:45:03.371  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.371  TRACE  window                                 > NeedRepaint
14:45:03.371  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.371  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 7.968µs
14:45:03.372  TRACE  wezterm_font::shaper::harfbuzz         > shape 0..1 `~` with presentation=Some(Text)
14:45:03.373  TRACE  wezterm_font::shaper::harfbuzz         > shaped font_idx=0 "~" presentation=Some(Text) as: [uni007E=0+640]
14:45:03.373  DEBUG  wezterm_font::shaper::harfbuzz         > cluster_resolver: ClusterResolver {
    map: {
        0: ClusterInfo {
            start: 0,
            byte_len: 1,
            cell_width: 1,
            incomplete: false,
        },
    },
    presentation_width: Some(
        PresentationWidth {
            cluster: CellCluster {
                attrs: CellAttributes {
                    attributes: 16384,
                    intensity: Normal,
                    underline: None,
                    blink: None,
                    italic: false,
                    reverse: false,
                    strikethrough: false,
                    invisible: false,
                    wrapped: false,
                    overline: false,
                    semantic_type: Prompt,
                    foreground: PaletteIndex(
                        4,
                    ),
                    background: Default,
                    fat: None,
                },
                text: "~",
                width: 1,
                presentation: Text,
                direction: LeftToRight,
                byte_to_cell_idx: [],
                byte_to_cell_width: [],
                first_cell_idx: 0,
            },
        },
    ),
    start_by_cell_idx: {
        0: 0,
    },
}
14:45:03.373  DEBUG  wezterm_font::shaper::harfbuzz         > hb info.cluster 0 -> Info { cluster: 0, len: 1, codepoint: 97, x_advance: 640, y_advance: 0, x_offset: 0, y_offset: 0 }
14:45:03.373  DEBUG  wezterm_font::shaper::harfbuzz         > font_idx=0 info_clusters: [
    [
        Info {
            cluster: 0,
            len: 1,
            codepoint: 97,
            x_advance: 640,
            y_advance: 0,
            x_offset: 0,
            y_offset: 0,
        },
    ],
]
14:45:03.373  TRACE  wezterm_font::rasterizer::freetype     > ...
14:45:03.374  DEBUG  wezterm_font::ftwrap                   > set_char_size computing 12 dpi=96 (pixel height=16)
14:45:03.380  TRACE  wezterm_gui::glyphcache                > bearing_x=0.0 bearing_y=8.0 x_offset=0.0 y_offset=0.0 x_advance=10.0
14:45:03.380  TRACE  wezterm_gui::termwindow::render        > shape_resolve for cluster len 1 -> elapsed 8.474225ms
14:45:03.380  TRACE  wezterm_font::shaper::harfbuzz         > shape 0..1 `>` with presentation=Some(Text)
14:45:03.380  TRACE  wezterm_font::shaper::harfbuzz         > shaped font_idx=0 ">" presentation=Some(Text) as: [uni003E=0+640]
14:45:03.381  DEBUG  wezterm_font::shaper::harfbuzz         > cluster_resolver: ClusterResolver {
    map: {
        ...
    },
    presentation_width: Some(
        ...
    ),
    start_by_cell_idx: {
        0: 0,
    },
}
14:45:03.381  DEBUG  wezterm_font::shaper::harfbuzz         > hb info.cluster 0 -> Info { cluster: 0, len: 1, codepoint: 33, x_advance: 640, y_advance: 0, x_offset: 0, y_offset: 0 }
14:45:03.381  DEBUG  wezterm_font::shaper::harfbuzz         > font_idx=0 info_clusters: [
    [
        Info {
            cluster: 0,
            len: 1,
            codepoint: 33,
            x_advance: 640,
            y_advance: 0,
            x_offset: 0,
            y_offset: 0,
        },
    ],
]
14:45:03.381  TRACE  wezterm_gui::glyphcache                > bearing_x=0.0 bearing_y=9.0 x_offset=0.0 y_offset=0.0 x_advance=10.0
14:45:03.381  TRACE  wezterm_gui::termwindow::render        > shape_resolve for cluster len 1 -> elapsed 956.668µs
14:45:03.381  TRACE  wezterm_font::shaper::harfbuzz         > shape 0..1 ` ` with presentation=Some(Text)
14:45:03.381  TRACE  wezterm_font::shaper::harfbuzz         > shaped font_idx=0 " " presentation=Some(Text) as: [uni0020=0+640]
14:45:03.382  DEBUG  wezterm_font::shaper::harfbuzz         > cluster_resolver: ClusterResolver {
    map: {
        0: ClusterInfo {
            start: 0,
            byte_len: 1,
            cell_width: 1,
            incomplete: false,
        },
    },
    presentation_width: Some(
        ...
    ),
    start_by_cell_idx: {
        1: 0,
    },
}
14:45:03.382  DEBUG  wezterm_font::shaper::harfbuzz         > hb info.cluster 0 -> Info { cluster: 0, len: 1, codepoint: 3, x_advance: 640, y_advance: 0, x_offset: 0, y_offset: 0 }
14:45:03.382  DEBUG  wezterm_font::shaper::harfbuzz         > font_idx=0 info_clusters: [
    [
        Info {
            ...
        },
    ],
]
14:45:03.382  TRACE  wezterm_gui::termwindow::render        > shape_resolve for cluster len 1 -> elapsed 731.932µs
14:45:03.382  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 11.081711ms
14:45:03.382  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=11.356206ms
14:45:03.384  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=13.296781ms, fps=1.8389481
14:45:03.385  TRACE  window                                 > Notification(Any { .. })
14:45:03.385  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.386  TRACE  polling                                > Poller::notify()
14:45:03.386  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.387  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.387  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.387  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.387  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.388  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.388  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.388  TRACE  polling                                > Poller::wait(_, Some(14.499563ms))
14:45:03.388  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.499563ms)
14:45:03.388  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.403  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.403  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.403  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.404  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.404  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.404  TRACE  window                                 > NeedRepaint
14:45:03.404  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.404  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.405  TRACE  polling                                > Poller::wait(_, Some(826.475319ms))
14:45:03.405  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(826.475319ms)
14:45:03.405  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.404  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 8.29µs
14:45:03.406  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 203.675µs
14:45:03.406  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=1.472021ms
14:45:03.407  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=2.710206ms, fps=1.8389481
14:45:03.408  TRACE  polling                                > Poller::notify()
14:45:03.408  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.408  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.409  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.409  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.409  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.409  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.409  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.409  TRACE  polling                                > Poller::wait(_, Some(14.465097ms))
14:45:03.410  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.465097ms)
14:45:03.410  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.424  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.425  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.425  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.425  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.425  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.425  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.426  TRACE  polling                                > Poller::wait(_, Some(805.0216ms))
14:45:03.426  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(805.0216ms)
14:45:03.426  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.838  TRACE  window                                 > RawKeyEvent(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:03.839  DEBUG  wezterm_gui::termwindow                > RawKeyEvent(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:03.839  TRACE  wezterm_gui::termwindow::keyevent      > key_event RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) } 
14:45:03.839  TRACE  window::os::x11::keyboard              > process_key_event: RawKeyEvent FeedResult::Nothing: "", 65507. kc -> None fallback_feed=Nothing("", 65507)
14:45:03.840  TRACE  window                                 > KeyEvent(KeyEvent { key: LeftControl, modifiers: NONE, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:03.840  DEBUG  wezterm_gui::termwindow                > KeyEvent(KeyEvent { key: LeftControl, modifiers: NONE, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:03.840  TRACE  wezterm_gui::termwindow::keyevent      > key_event KeyEvent { key: LeftControl, modifiers: NONE, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(LeftControl), modifiers: NONE, leds: (empty), phys_code: Some(LeftControl), raw_code: 37, repeat_count: 1, key_is_down: true, handled: Handled(false) }) } 
14:45:03.840  TRACE  window                                 > AdviseModifiersLedStatus(CTRL, (empty))
14:45:03.841  DEBUG  wezterm_gui::termwindow                > AdviseModifiersLedStatus(CTRL, (empty))
14:45:03.841  TRACE  window                                 > Notification(Any { .. })
14:45:03.842  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.842  TRACE  window                                 > NeedRepaint
14:45:03.842  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.842  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 9.03µs
14:45:03.843  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 223.675µs
14:45:03.843  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=447.641µs
14:45:03.844  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=1.857081ms, fps=1.8389481
14:45:03.845  TRACE  polling                                > Poller::notify()
14:45:03.845  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.845  TRACE  window                                 > Notification(Any { .. })
14:45:03.846  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.846  TRACE  window                                 > Notification(Any { .. })
14:45:03.846  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.845  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.847  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.847  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.847  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.847  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.847  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.848  TRACE  polling                                > Poller::wait(_, Some(13.501523ms))
14:45:03.848  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(13.501523ms)
14:45:03.848  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.859  TRACE  window                                 > RawKeyEvent(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:03.859  DEBUG  wezterm_gui::termwindow                > RawKeyEvent(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) })
14:45:03.859  TRACE  wezterm_gui::termwindow::keyevent      > key_event RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) } 
14:45:03.860  TRACE  window::os::x11::keyboard              > process_key_event: RawKeyEvent FeedResult::Nothing: "\u{4}", 100. kc -> None fallback_feed=Nothing("\u{4}", 100)
14:45:03.860  TRACE  window                                 > KeyEvent(KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:03.860  DEBUG  wezterm_gui::termwindow                > KeyEvent(KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) }) })
14:45:03.860  TRACE  wezterm_gui::termwindow::keyevent      > key_event KeyEvent { key: Char('d'), modifiers: CTRL, leds: (empty), repeat_count: 1, key_is_down: true, raw: Some(RawKeyEvent { key: Physical(D), modifiers: CTRL, leds: (empty), phys_code: Some(D), raw_code: 40, repeat_count: 1, key_is_down: true, handled: Handled(false) }) } 
14:45:03.860  TRACE  wezterm_term::terminalstate::keyboard  > key_down: sending "\u{4}", Char('d') CTRL
14:45:03.861  TRACE  mux                                    > read_pty pane 0 read 11 bytes
14:45:03.862  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.862  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.862  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.862  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.862  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.863  TRACE  window                                 > NeedRepaint
14:45:03.863  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.863  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 8.906µs
14:45:03.863  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.863  TRACE  polling                                > Poller::wait(_, Some(367.857888ms))
14:45:03.864  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(367.857888ms)
14:45:03.864  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.863  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 230.98µs
14:45:03.864  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=1.245981ms
14:45:03.865  DEBUG  wezterm_term::terminalstate::performer > perform CSI(Mode(ResetDecPrivateMode(Code(BracketedPaste))))
14:45:03.865  DEBUG  wezterm_term::terminalstate::performer > perform Control(CarriageReturn)
14:45:03.865  DEBUG  wezterm_term::terminalstate::performer > perform Control(CarriageReturn)
14:45:03.865  DEBUG  wezterm_term::terminalstate::performer > perform Control(LineFeed)
14:45:03.866  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=2.763274ms, fps=1.8389481
14:45:03.867  TRACE  polling                                > Poller::notify()
14:45:03.867  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.867  TRACE  window                                 > Notification(Any { .. })
14:45:03.867  DEBUG  wezterm_gui::termwindow                > Notification(Any { .. })
14:45:03.867  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.868  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.868  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.868  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.868  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.869  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.869  TRACE  polling                                > Poller::wait(_, Some(13.853332ms))
14:45:03.869  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(13.853332ms)
14:45:03.869  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.883  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.884  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.884  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.884  TRACE  async_io::reactor                      > react: 1 ready wakers
14:45:03.884  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.884  TRACE  window                                 > NeedRepaint
14:45:03.885  DEBUG  wezterm_gui::termwindow                > NeedRepaint
14:45:03.885  TRACE  wezterm_gui::termwindow::render::paint > quad map elapsed 8.76µs
14:45:03.884  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.885  TRACE  polling                                > Poller::wait(_, Some(346.156759ms))
14:45:03.885  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(346.156759ms)
14:45:03.886  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.885  TRACE  wezterm_gui::termwindow::render::pane  > lines elapsed 238.59µs
14:45:03.886  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl before call_draw elapsed=1.107783ms
14:45:03.887  DEBUG  wezterm_gui::termwindow::render::paint > paint_impl elapsed=2.397784ms, fps=1.8389481
14:45:03.888  TRACE  polling                                > Poller::notify()
14:45:03.889  TRACE  polling::epoll                         > notify: epoll_fd=5, event_fd=6
14:45:03.889  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.889  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.889  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.890  TRACE  async_io::reactor                      > react: 0 ready wakers
14:45:03.890  TRACE  async_io::driver                       > main_loop: waiting on I/O
14:45:03.890  TRACE  async_io::reactor                      > process_timers: 0 ready wakers
14:45:03.890  TRACE  polling                                > Poller::wait(_, Some(14.489389ms))
14:45:03.890  TRACE  polling::epoll                         > wait: epoll_fd=5, timeout=Some(14.489389ms)
14:45:03.890  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=7, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.896  TRACE  mux                                    > read_pty EOF: pane_id 0
14:45:03.897  DEBUG  mux::localpane                         > child terminated, new state is Dead
14:45:03.897  TRACE  mux::tab                               > prune_dead_panes: pane_id=0 dead=true in_mux=true
14:45:03.897  TRACE  mux::window                            > Window::prune_dead_tabs: tab_id 0 is dead
14:45:03.898  TRACE  mux                                    > prune_dead_windows: window is now empty
14:45:03.898  TRACE  mux                                    > tab 0 is dead
14:45:03.898  DEBUG  mux                                    > remove_tab_internal tab 0
14:45:03.898  DEBUG  mux                                    > panes to remove: []
14:45:03.899  TRACE  mux                                    > window 0 is dead
14:45:03.899  DEBUG  mux                                    > remove_window_internal 0
14:45:03.899  TRACE  mux                                    > prune_dead_windows: not empty
14:45:03.899  DEBUG  mux                                    > removing pane 0
14:45:03.900  DEBUG  mux                                    > killing pane 0
14:45:03.900  DEBUG  mux::localpane                         > killing process in pane 0, state is Dead
14:45:03.900  TRACE  mux                                    > prune_dead_windows: is_empty, send MuxNotification::Empty
14:45:03.900  DEBUG  mux                                    > removing pane 0
14:45:03.901  TRACE  mux                                    > prune_dead_windows: is_empty, send MuxNotification::Empty
14:45:03.901  DEBUG  wezterm_gui::frontend                  > workspace is default, fixup windows
14:45:03.901  TRACE  wezterm_gui::frontend                  > reconcile: windows -> {}
14:45:03.901  TRACE  wezterm_gui::frontend                  > Mux is now empty, terminate gui
14:45:03.905  TRACE  polling::epoll                         > new events: epoll_fd=5, res=1
14:45:03.905  TRACE  polling::epoll                         > modify: epoll_fd=5, fd=6, ev=Event { key: 18446744073709551615, readable: true, writable: false }
14:45:03.906  TRACE  async_io::reactor                      > process_timers: 1 ready wakers
14:45:03.906  TRACE  async_io::reactor      

My Simple Wezterm Config

local wezterm = require 'wezterm'
-- local mux = wezterm.mux

local config = {}
if wezterm.config_builder then config = wezterm.config_builder() end

config.color_scheme = 'Dracula'
config.colors = {
  cursor_bg = '#d0d0d0',
  cursor_fg = '#000000'
}
config.font = wezterm.font 'Hack Nerd Font Mono'
config.hide_tab_bar_if_only_one_tab = true
-- config.enable_tab_bar = false

config.window_padding = {
  left = '5px',
  right = '5px',
  top = '5px',
  bottom = '5px',
}

config.window_frame = {
  border_left_width = '7px',
  border_right_width = '7px',
  border_bottom_height = '7px',
  border_top_height = '7px',
  border_left_color = '#14141a',
  border_right_color = '#14141a',
  border_bottom_color = '#14141a',
  border_top_color = '#14141a',
}

return config

As you can see, it takes over three seconds just to open up a terminal. Unfortunately, this is too slow for me even if subsequent opened terminals only take about one second (still too slow for me). I should note that zero config is just as slow.

VioletJewel commented 6 months ago

I just installed aur/wezterm-git and did rustup update, and it seems to be better. :1st_place_medal: