Skip to content

[pull] main from SkyAPM:main#8

Merged
pull[bot] merged 6 commits into
thompson-tomo:mainfrom
SkyAPM:main
Jun 28, 2026
Merged

[pull] main from SkyAPM:main#8
pull[bot] merged 6 commits into
thompson-tomo:mainfrom
SkyAPM:main

Conversation

@pull

@pull pull Bot commented Jun 28, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

wu-sheng and others added 6 commits June 28, 2026 14:10
…#552) (#629)

SegmentContextAccessor injected IExitSegmentContextAccessor but never read it:
the fallback chain's third operand was a duplicate of the entry accessor
(local ?? entry ?? entry), so a context that was active only on the exit
accessor resolved to null instead of the exit segment. This dropped log/trace
correlation for standalone exit spans.

Use the exit accessor as the final fallback (local ?? entry ?? exit), keeping
the local-first precedence introduced in #548, and add a SegmentContextAccessor
precedence test (including the exit-only regression).

Fixes #552
…#631)

Both QQ groups are gone (one full, one defunct). Mirror the Apache SkyWalking
README's current Contact Us guidance: request a Slack invite via the mail list,
with a separate line for Chinese speakers (the audience the QQ groups served).
Also drops the stale hard-coded Slack invite link in favour of the mail-request
flow used upstream.
…) (#630)

Pomelo.EntityFrameworkCore.MySql switched from MySql.Data to MySqlConnector in
its 3.0 release, so its DbConnection is MySqlConnector.MySqlConnection.
MySqlEntityFrameworkCoreSpanMetadataProvider.Match only recognised the old
MySql.Data.MySqlClient.MySqlConnection, so EF Core commands on modern Pomelo
were recorded as local spans instead of exit spans -- breaking virtual-database
detection. Match both connector types, mirroring MySqlConnectorPeerFormatter.

Fixes #536
… (+ #565 & sw8 fixes) (#633)

test(plugin): version-by-version plugin test framework + CAP scenario

Adds test/plugin/, a SkyWalking-Java-style plugin test framework: each scenario
runs the real instrumented library with the agent built from source, reports to a
dedicated mock collector (apache/skywalking-agent-test-tool, built from a pinned
commit), and validates the REAL emitted segments against config/expectedData.yaml,
version-by-version. First scenario: SkyApm.Diagnostics.CAP, validated on
net8.0/CAP-8.0.0 and net10.0/CAP-10.0.0.

Includes the fixes it motivated and caught:
- fix(core): on a structural version-mismatch binding error (MissingMemberException/
  TypeLoadException) disable the diagnostic handler after logging once, instead of
  spamming the same error on every event (closes #565).
- fix(cap): make sw8 carrier injection idempotent (caught on CAP 10 re-publish).
- fix(cap): emit the CAP publisher as an exit span linked to the request, so the
  trace is request -> publisher[Exit] -> consumer[Entry, ref publisher].

Also: plugin development + testing docs, a per-plugin CI matrix, and a CLAUDE.md note
that plugin tests must reflect actual runs (never a fabricated trace).

Closes #565
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@pull pull Bot locked and limited conversation to collaborators Jun 28, 2026
@pull pull Bot added the ⤵️ pull label Jun 28, 2026
@pull pull Bot merged commit eed1969 into thompson-tomo:main Jun 28, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant