support analyzing diffs for framework or assembly changes
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 20/100
Research direction
Start by reading the existing jit-diff and jit-analyze workflows shown in the issue, including --pmi, --diff, --assembly, -t, --base, and --diff. Determine how framework or assembly changes, especially alternate corelib copies, would be represented. Done would include a defined workflow for comparing changed assemblies and clear handling or scope for mismatches, per-assembly summaries, and generic instantiation analysis.
Written by the indexing model from the issue text.
Description
Would be nice to generalize what we have for jit diffs to handle cases where the framework (or some assembly) has changes. This is somewhat doable today, but clunky:
jit-diff diff --pmi --diff --assembly a/x.dll -t a
jit-diff diff --pmi --diff --assembly b/x.dll -t b
jit-analyze --base bin/diffs/a/diff --diff bin/diffs/b/diff
Though for corelib it is more involved as we currently can't load a different copy of corelib (perhaps solvable with assembly load contexts?).
Analysis may need tweaking since we will see more mismatches in methods. And we might want to publish overall per-assembly summary data.
Would also be nice if via reflection we could enumerate all instantiations of generics, so that the analysis also highlight refactoring that increases or reduces the net amount of instantiation needed. My understanding is that this is not possible today.
- Dominant language
- C#
- Stars
- 161
- Forks
- 69
- Avg merge
- 1h 56m
- Merged PRs (30d)
- 1
Contributor guide
No contributing guide indexed for this repository
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 dotnet/jitutils
-
Difficulty 2/5 1-2 days Newbie friendliness 62/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
Similar issues
-
type/automation type/tech-debt
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
t/bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
ci-failure-cause test-failure
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
area:auth FE mvp P3
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
klasolsson81/jobbliggaren#1788 ·