Extensions.Base can't support System.Func`10+
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 20/100
Research direction
Start with HostExtensionsBase during OnModuleLoad for mscorlib.dll and the import logic for Microsoft.Diagnostics.Instrumentation.Extensions.Base.dll. Review the related PRs #463 and #557, then determine how System.Func`10 and other System.Core types should be made available without invalid TypeRefs in mscorlib; done means the import succeeds for these callbacks.
Written by the indexing model from the issue text.
Description
Related PRs:
https://github.com/microsoft/CLRInstrumentationEngine/pull/463
https://github.com/microsoft/CLRInstrumentationEngine/pull/557
During OnModuleLoad for mscorlib.dll, HostExtensionsBase tries to inject the types/methods from Microsoft.Diagnostics.Instrumentation.Extensions.Base.dll into mscorlib.
The Extensions.Base.dll module contains the ApplicationInsights_OnBegin/_OnEnd callbacks that use System.Func and other types.
It also defines these callbacks inside the _System.Diagnostics namespace - types with _ prefixes are emitted into mscorlib (otherwise they are assumed to be there already.
The import will fail when resolving types like System.Func`10 since that comes from System.Core.dll which requires a TypeRef - not allowed in mscorlib.
One solution might be to have the System.Func`10+ callbacks defined separately and imported into System.Core.dll, but there might also be changes needed in Intercept-Engine to consume that.
- Dominant language
- C++
- Stars
- 105
- Forks
- 53
- Avg merge
- 1h 41m
- Merged PRs (30d)
- 1
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/CLRInstrumentationEngine
-
documentation
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
microsoft/CLRInstrumentationEngine#169 · 2 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
microsoft/CLRInstrumentationEngine#526 · 1 reaction ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 35/100
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 35/100
All issues in microsoft/CLRInstrumentationEngine
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
mesonbuild/wrapdb#2961 ·
Maintainers usually reply within 1 day
-
80 Instance - Raid - Northrend
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
azerothcore/azerothcore-wotlk#28075 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
objectionary/eo-graphs#80 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
scanaislop/aislop#476 ·
Maintainers usually reply within 1 day