Closed NachoEmbrace closed 2 days ago
✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.
Package | Version | Score | Details |
---|
Warnings | |
---|---|
:warning: | No CHANGELOG entry added. |
Generated by :no_entry_sign: Danger Swift against 0bba885f80a931273114de15c484e343c084cfb5
Attention: Patch coverage is 92.48945%
with 89 lines
in your changes missing coverage. Please review.
Project coverage is 91.92%. Comparing base (
584ee27
) to head (b037a0d
). Report is 3 commits behind head on main.
This is a refactor on
ViewCaptureService
.It still retains the old functionality: It creates
emb-screen-view
spans whenviewDidAppear
is called on aUIViewController
. These spans are ended whenviewDidDisappear
is called. This feature can be enabled/disabled throughViewCaptureService.Options.instrumentVisibility
.Added a new feature to automatically instrument the time-to-render on
UIViewControllers
. This will create a parent span starting fromviewDidLoad
and ending onviewDidAppear
. The parent span will contain child spans for each step of the loading process (viewDidLoad
.viewWillAppear
andviewDidAppear
). The user can enable/disable this throughViewCaptureService.Options.instrumetTimeToRender
.If the
UIViewController
implements theInteractableViewController
protocol, the service will create the time-to-interactive span instead. This is a parent span starting fromviewDidLoad
and ending when the view is deemed as ready to be interacted or theUIViewController
disappears. The implementers must callInteractableViewController.onInteractionReady()
to flag the view as ready. The parent span will contain child spans for each step of the loading process (viewDidLoad
.viewWillAppear
andviewDidAppear
), and an extraui-ready
span that starts at the end ofviewDidAppear
and ends when the view is ready for interaction.Furthermore, if the
UIViewController
implements theInstrumentableViewController
protocol, it can use thebuildChildSpan
andrecordCompletedChildSpan
methods to add custom child spans to the time-to-render/time-to-interactive parent spans.