-
Notifications
You must be signed in to change notification settings - Fork 375
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PROF-10241] Extract libdatadog crashtracker telemetry into separate extension #3824
[PROF-10241] Extract libdatadog crashtracker telemetry into separate extension #3824
Commits on Aug 2, 2024
-
Bootstrap libdatadog_api native extension
This extension will be used to call libdatadog APIs without needing to go through profiling.
Configuration menu - View commit details
-
Copy full SHA for 94fc941 - Browse repository at this point
Copy the full SHA 94fc941View commit details -
Setup libdatadog_api linking based on profiling stuff
There's a lot of copy-pasta and I'm not entirely happy. Let's go with it for now, to get it moving.
Configuration menu - View commit details
-
Copy full SHA for bea50c9 - Browse repository at this point
Copy the full SHA bea50c9View commit details -
Successful experimental extraction of crashtracker to new module
The specs still pass! :)
Configuration menu - View commit details
-
Copy full SHA for ed05c7b - Browse repository at this point
Copy the full SHA ed05c7bView commit details -
Introduce new
datadog_ruby_common.h/.c
for common bits between exte……nsions This cleans up the wad of copy-pasted code I did for my first attempt.
Configuration menu - View commit details
-
Copy full SHA for 4f8f500 - Browse repository at this point
Copy the full SHA 4f8f500View commit details -
Adopt new
datadog_ruby_common.h/.c
for profiling native extensionThese new files just moved things around from where they were in the profiler, and other than minimal cleanups, they are the same stuff.
Configuration menu - View commit details
-
Copy full SHA for 5a8bec6 - Browse repository at this point
Copy the full SHA 5a8bec6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0bf005d - Browse repository at this point
Copy the full SHA 0bf005dView commit details -
We need to use these features in extconf, so let's tell rubocop to stop annoying us about it.
Configuration menu - View commit details
-
Copy full SHA for 3342c52 - Browse repository at this point
Copy the full SHA 3342c52View commit details -
Extract
libdatadog_folder_*
into helper that can be shared between ……extensions Let's reduce the copy-pasta!
Configuration menu - View commit details
-
Copy full SHA for eabcb38 - Browse repository at this point
Copy the full SHA eabcb38View commit details -
Extract
pkg_config_missing?
tolibdatadog_extconf_helpers
This also included adding a `skip_building_extension!` to `libdatadog_api/extconf.rb` so we can properly handle pkg-config failures like the profiler extension does.
Configuration menu - View commit details
-
Copy full SHA for 587d535 - Browse repository at this point
Copy the full SHA 587d535View commit details -
Extract
try_loading_libdatadog
tolibdatadog_extconf_helpers
This was the last bit that had been copy-pasta'd from the profiler native extension into the `libdatadog_api/extconf_helpers` and thus we are now sharing most of the extconf helpers.
Configuration menu - View commit details
-
Copy full SHA for 28ebaa7 - Browse repository at this point
Copy the full SHA 28ebaa7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 85b1d8b - Browse repository at this point
Copy the full SHA 85b1d8bView commit details -
Configuration menu - View commit details
-
Copy full SHA for f051a0f - Browse repository at this point
Copy the full SHA f051a0fView commit details -
Tag extension builds with only major.minor, skipping Ruby patch version
This makes it easy to use the same prebuilt extension across multiple Ruby patch versions.
Configuration menu - View commit details
-
Copy full SHA for f0a17d2 - Browse repository at this point
Copy the full SHA f0a17d2View commit details -
Inline
Init_libdatadog_api
intocrashtracker.c
One less file, and we can always extract it again later.
Configuration menu - View commit details
-
Copy full SHA for 7037bdb - Browse repository at this point
Copy the full SHA 7037bdbView commit details -
Configuration menu - View commit details
-
Copy full SHA for b7dc64d - Browse repository at this point
Copy the full SHA b7dc64dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7448a21 - Browse repository at this point
Copy the full SHA 7448a21View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f6580d - Browse repository at this point
Copy the full SHA 5f6580dView commit details