Commit Graph

2588 Commits

Author SHA1 Message Date
6b762ef64a libsysprof-analyze: add document type for fork 2023-04-28 10:36:17 -07:00
72c0ba731c libsysprof-analyze: add document type for metadata 2023-04-27 17:58:23 -07:00
d878fbf372 libsysprof-analyze: add document type for task exit
We don't have any extra data here currently, but it can be nice to be able
to check a gtype when consuming frames.
2023-04-27 17:50:28 -07:00
89f9bba8e2 libsysprof-analyze: annotate some frames with extra data 2023-04-27 17:45:32 -07:00
24d0d4af52 libsysprof-analyze: add document type for processes
Generally this is all the processes at startup, but can also be a process
that is executed while the capture is running. Useful to pair with an
Exit frame for pid/tid duration.
2023-04-27 17:45:04 -07:00
6031233cc3 libsysprof-analyze: add document type for marks 2023-04-27 17:22:44 -07:00
92950f4b6b libsysprof-analyze: add document type for log messages 2023-04-27 17:15:35 -07:00
9b05f5c0a5 libsysprof-analyze: make CSTRING helper more succinct to use 2023-04-27 17:14:19 -07:00
c1d00db0fb libsysprof-analyze: add document type for memory maps 2023-04-27 17:00:18 -07:00
4f74e92523 libsysprof-analyze: fix recursive include 2023-04-27 16:59:57 -07:00
1182b65c07 libsysprof-analyze: add CString helper
This checks, up to the end of the frame, that we have a valid \0 for the
CString before passing it back to the caller. Otherwise, NULL is returned
for a corrupt/invalid CString within the frame.
2023-04-27 16:59:41 -07:00
ca83cd6b40 libsysprof-analyze: add document type for samples 2023-04-25 17:10:12 -07:00
a47627e5b9 libsysprof-analyze: use swap helpers to decode 2023-04-25 17:09:38 -07:00
97c93ea965 libsysprof-analyze: track frame length
That way we don't have to decode this too in the subclasses.
2023-04-25 17:09:04 -07:00
62863f08c3 libsysprof-analyze: add various bswap and cast helpers 2023-04-25 17:08:13 -07:00
e9d5cb733d libsysprof-analyze: move to internal types for documents
We want to have an object hierarchy, but we don't want to expose our class
or other internal details to the public API/ABI. This uses the old form of
class definition so we can maintain that.

An alternative would be to do what GDK does for internal types, should we
find that easier to maintain going forward.
2023-04-25 16:19:54 -07:00
a5dafa5409 libsysprof-analyze: rename some private API
prefix with _, use frame type directly, use needs_swap rather than
is_native so it's more clear to readers.
2023-04-25 16:11:59 -07:00
a3cf041326 libsysprof-analyze: print some basic frame information 2023-04-25 16:04:35 -07:00
69930dc876 libsysprof-analyze: read property access to frame header
Also handle swapping the data when non-native endian so that we can leave
our GMappedFile unperturbed (and therefore not have to keep those bytes as
dirty pages in process).
2023-04-25 15:55:41 -07:00
31003c519c libsysprof-analyze: rename to SysprofDocumentFrame
We will eventually be adding sub-types for the various frame types, and
use this as a common ancestor for item inflation.
2023-04-25 15:32:55 -07:00
ed01673a5e libsysprof-analyzer: rename model to SysprofDocument
This will provide better namespacing for the objects inflated from the
document for various frame types. By creating real objects with real
properties we give ourselves quite a bit of flexibility in the data
filtering language coming forth.
2023-04-25 15:26:06 -07:00
63a9f498ea gitignore: ignore .flatpak-builder directory 2023-04-25 15:24:59 -07:00
a97f6a34b0 build: bump GLib and GTK requirements 2023-04-25 15:23:48 -07:00
efab045006 libsysprof-analyze: start on sysprof-analyze library
The goal here is to break up libsysprof into a library for recording
profiles (using libsysprof-capture) and a library for analyzing profiles
(both used by the sysprof UI).
2023-04-25 11:57:26 -07:00
e888d0602e build: always define SYSPROF_COMPILATION 2023-04-25 11:55:25 -07:00
5cbf11db92 build: bump soname to 6
We are doing a lot of upcoming changes, so just synchronize everything to
our next soname bump.
2023-04-25 11:55:13 -07:00
dcbeb0f87a libsysprof: add SysprofCaptureModel
This adds a GListModel that we can use to load capture files. The goal here
is to map the entire capture into memory so we can avoid reading lots of
buffers. That also allows for the model items to live as long as the model
is alive (or underlying file map, really).

The next goal is to stack features on top of this such as implementing the
callgraph as a filter of the model, or generic filters between the
callgraph model and the actual data source model.
2023-04-24 17:26:45 -07:00
cc7e2820f3 build: bump version for development
This will also attempt to get us on the more modern GNOME versioning
train, hopefully to phase out micro numbers eventually.
2023-04-24 17:26:45 -07:00
a13d66f2d0 Update Korean translation 2023-04-23 02:57:51 +00:00
cfd084c9a5 Add Turkish translation 2023-04-15 05:42:00 +00:00
989303d92e Update Russian translation 2023-04-14 22:52:44 +00:00
9fa911aafd Update Basque translation 2023-04-10 06:51:54 +00:00
56120c79b0 Update Serbian translation
(cherry picked from commit 66c9bb1f829dea2fa8a20e009caaaddc3bf0c2af)
2023-04-09 09:31:50 +00:00
74aedbe283 Update Indonesian translation 2023-03-21 03:27:25 +00:00
815ccfe4a9 Post release version bump 2023-03-17 12:15:35 -07:00
94a6aff06a Release 3.48.0 (GNOME 44.0) 2023-03-17 12:14:21 -07:00
15b6f9385b Update Ukrainian translation 2023-03-13 20:32:53 +00:00
f1606ec2a5 Update Polish translation 2023-03-12 15:27:28 +01:00
ea51f04741 Update German translation 2023-03-08 06:49:23 +00:00
c561d10a65 Merge branch 'headerbar-button-icons' into 'master'
window: Minor cleanups

See merge request GNOME/sysprof!69
2023-03-08 01:07:25 +00:00
1e6674f81e Update Swedish translation 2023-03-07 21:23:31 +00:00
80930201ea Update Hungarian translation 2023-03-07 01:38:08 +00:00
b91fd26dbf general: Remove "visible=true" properties
Widgets are shown by default in GTK4, so using
"visible=true" is no longer necessary.
2023-03-06 11:31:44 -03:00
8230ef951b window: Fix icon of the Main Menu button
Embedding a GtkImage inside the Main Menu button is
no longer necessary. Using the icon_name property already
does the trick.
2023-03-06 11:22:30 -03:00
1cc313a280 Merge branch 'f10-main-menu' into 'master'
window: Main Menu tweaks

See merge request GNOME/sysprof!68
2023-03-04 16:24:43 +00:00
a82dc6475a Update Russian translation 2023-03-04 14:38:50 +00:00
c9650b8e48 Update Russian translation 2023-03-04 13:33:41 +00:00
c45c35b65d window: Allow opening Main Menu with F10
By setting the Main Menu button as primary,
the F10 key is automatically assigned to this button.
2023-03-04 05:12:21 -03:00
70bf448e63 window: Add tooltip to the Main Menu button 2023-03-04 05:11:52 -03:00
6341f2856a Merge branch 'fix-group-insert' into 'master'
visualizer-group: Fix insert()

See merge request GNOME/sysprof!67
2023-02-21 23:32:48 +00:00