Commit Graph

10714 Commits

Author SHA1 Message Date
Bartosz Taudul
d231c2e95f Correct way to link with wayland libraries. 2026-07-24 18:25:05 +02:00
Bartosz Taudul
b94a1e22c1 Update git ignore list. 2026-07-24 18:25:05 +02:00
Bartosz Taudul
cf82fb9bb0 Disable unused stuff if building libcurl. 2026-07-24 18:25:05 +02:00
Bartosz Taudul
f30d32a908 Add AppImage build script and workflow. 2026-07-24 18:25:05 +02:00
Bartosz Taudul
b7eda34332 Add a warning about minimum supported wayland-client version. 2026-07-24 18:11:42 +02:00
Bartosz Taudul
5036ec9128 Merge pull request #1434 from damcclos/damcclos/thread-lock-time
Add function to calculate thread lock wait time in TracyTimelineItemThread
2026-07-23 22:14:46 +02:00
David McCloskey
59a8ae2d7d Adding documentation 2026-07-23 14:38:56 -05:00
David McCloskey
ea3d0b4d8d Add function to calculate thread lock wait time in TracyTimelineItemThread
This update introduces a new function, GetThreadLockWaitTime, which computes the total wait time for locks held by a specific thread. The function aggregates wait times across all locks and updates the tooltip to display lock wait time and count, enhancing the profiling capabilities of the timeline item.
2026-07-23 14:21:54 -05:00
Bartosz Taudul
917c4baffb GLFW from brew should no longer be needed on macOS. 2026-07-23 21:11:07 +02:00
Bartosz Taudul
faab64018a Update NEWS. 2026-07-23 21:03:07 +02:00
Bartosz Taudul
fb296ba1a4 Update manual. 2026-07-23 21:03:06 +02:00
Bartosz Taudul
877efe4eda Track current personality and warn when the selected one is not active. 2026-07-23 20:34:59 +02:00
Bartosz Taudul
90c6ad80e1 Clamp personality index to personality table size. 2026-07-23 20:29:26 +02:00
Bartosz Taudul
67c4102bf3 Restore disabling fast model selection during replies. 2026-07-23 20:26:41 +02:00
Bartosz Taudul
c1fa33a875 Link with system libcurl to avoid libssh deps. 2026-07-23 15:43:59 +02:00
Bartosz Taudul
1d6f43d92f Disable external libraries used by freetype.
Not needed for the current set of fonts.
2026-07-23 15:30:39 +02:00
Bartosz Taudul
c2b489a0ff Do not link macOS bundle with homebrew libraries.
Do not want dependency on something being installed via brew.
2026-07-23 14:57:45 +02:00
Bartosz Taudul
7986dc18d0 Add yalter's guadec presentation to list of videos. 2026-07-23 01:53:54 +02:00
Bartosz Taudul
f9413c268d Bump usearch to 2.26.0. 2026-07-22 22:35:42 +02:00
Bartosz Taudul
6e23d220d7 Bump capstone to 6.0.0-Alpha10. 2026-07-22 22:33:29 +02:00
Bartosz Taudul
158ab87bee Rebuild markdown manual. 2026-07-22 22:04:04 +02:00
Bartosz Taudul
d2cfc7b5d1 Document LLM personality selection. 2026-07-22 21:40:01 +02:00
Bartosz Taudul
b0d75acdef Add LLM personality presets. 2026-07-22 02:10:24 +02:00
Bartosz Taudul
c482f1e25d Bury fast model deeper in the UI. 2026-07-22 01:18:47 +02:00
Bartosz Taudul
8221a80b47 Add icon to LLM API entry field. 2026-07-22 01:13:20 +02:00
Bartosz Taudul
afe249b6d3 Do not disconnect active connections.
The timeout option stops the connection if it has now finished after the
specified time, even if data transfer is underway. Switch to using a low
speed timeout instead, which stops the connection only if no data is being
transferred.

A typical case where this was hit was a slow-responding LLM generating
a large amount of text.

The high timeout value is still needed to account for long prefill times.
2026-07-21 23:53:01 +02:00
Bartosz Taudul
72b1edc39d Set executable bit in macOS bundle. 2026-07-21 20:24:38 +02:00
Bartosz Taudul
2247f1d14b Add macOS artifacts to release workflow. 2026-07-21 19:57:45 +02:00
Bartosz Taudul
b0be3a5776 Bump actions/setup-python from 2 to 7. 2026-07-21 19:52:22 +02:00
Bartosz Taudul
dc261fe799 Add permissions contents write to release workflow. 2026-07-21 19:46:37 +02:00
Bartosz Taudul
21f0d15f5f Do not install library in CI workflows. 2026-07-21 19:35:43 +02:00
Bartosz Taudul
51f2b1da87 Do not zip bundle. 2026-07-21 19:21:33 +02:00
Bartosz Taudul
b32d454bcd Try making a macos bundle. 2026-07-21 16:42:33 +02:00
Bartosz Taudul
fb4dcd4e96 Switch macos CI runner to macos-latest. 2026-07-21 15:04:37 +02:00
Bartosz Taudul
d67cf385ff Merge pull request #1431 from alandtse/fix/mcp-live-worker-lock-race
fix(mcp): lock Worker reads vs receive thread
2026-07-20 12:04:36 +02:00
Bartosz Taudul
4ffc8b0dd2 Merge pull request #1430 from alandtse/fix/d3d11-zero-frequency-divide
fix(d3d11): guard collector against zero frequency
2026-07-20 12:04:07 +02:00
Alan Tse
5f2d14338e docs(mcp): fix eval-guide staleness
Two staleness gaps a cold agent would hit: get_sections()'s
documented {start, end, text} shape didn't match the actual
return value once category was added, and is_background_done()
-- introduced to close the stats-read race exercised while
testing the lock fix -- wasn't mentioned anywhere, so a cold
agent had no way to discover it short of dir(ctx).
2026-07-19 22:32:06 -07:00
Alan Tse
bfcec08e93 feat(mcp): expose background-load readiness
Smoke-testing the lock fix against a real 143M-zone capture
surfaced a second concurrent-mutation source: file loads spawn a
background thread that finishes populating zone/symbol statistics
after Worker construction returns, so get_all_zone_stats() et al.
could silently come back empty or partial with no way to tell
"not built yet" from "genuinely empty".

Adds is_background_done (a relaxed atomic, same as is_connected,
so no locked() wrapper needed) and surfaces it as background_done
in list_instances, with load_capture's docstring pointing callers
at it.
2026-07-19 22:32:04 -07:00
Alan Tse
15bc3fce1a fix(mcp): lock Worker reads vs receive thread
Every Worker-reading Python binding except save_worker() read
m_data's zones/plots/threads/etc. without taking
Worker::ObtainLockForMainThread(), racing the live receive thread
that mutates the same structures. This matches
alandtse/tracy#2: crashes only ever hit live instances, never
file-loaded ones (no concurrent writer there), and cluster right
after a big save_trace when the receive thread is catching up on
backlog.

Routes every Worker accessor through a new locked() wrapper using
the same cooperative lock TracyView.cpp already takes once per
frame, so reads can't race live writes without introducing new
stalls on the profiled client.
2026-07-19 22:32:04 -07:00
Alan Tse
dc9dfb2e65 fix(d3d11): guard collector against zero frequency
D3D11_QUERY_DATA_TIMESTAMP_DISJOINT can report Frequency == 0 even
when Disjoint == FALSE. Neither the initial CPU/GPU calibration
loop nor the per-frame Collect() path guarded against this, so
`timestamp * (1000000000 / disjoint.Frequency)` divides by zero
and crashes the profiled application with
EXCEPTION_INT_DIVIDE_BY_ZERO inside client instrumentation code.

Treats a zero frequency the same as an existing guard already does
for a disjoint result: skip/retry in calibration, and in Collect()
advance the checkpoint and drop the batch via TracyD3D11Panic,
matching the existing disjoint-timestamp handling immediately
above it.
2026-07-19 22:28:52 -07:00
Bartosz Taudul
ef099b0555 The UD- prefix is problematic in router mode. 2026-07-19 01:17:52 +02:00
Bartosz Taudul
956e082e5b ResetGraph lambda can't be static. 2026-07-18 15:33:43 +02:00
Bartosz Taudul
be6377f81b Constrain source view window size. 2026-07-18 14:51:41 +02:00
Bartosz Taudul
249b76f175 Do not display time, reason data for aggregate wait stacks. 2026-07-18 14:39:52 +02:00
Bartosz Taudul
6a916a6c9f Constrain zone info window size. 2026-07-18 14:31:15 +02:00
Bartosz Taudul
0f56c8ac7e Constrain callstack window size. 2026-07-18 14:19:33 +02:00
Bartosz Taudul
8a4876a071 Fix wrong formatting. 2026-07-18 14:15:14 +02:00
Bartosz Taudul
7539daa602 Constrain sample entry stacks window size. 2026-07-18 14:11:33 +02:00
Bartosz Taudul
ab46247a9c Constrain frame statistics window size. 2026-07-18 14:07:48 +02:00
Bartosz Taudul
7bc32a1536 Use sub-child in frame statistics window. 2026-07-18 14:07:22 +02:00