Skip to content

#319 #328 #329 Fix null-class continue, culture typo, and MappaContext docs - #330

Merged
sanelli merged 1 commit into
mainfrom
319-fix-null-class-skip-using-return-instead-of-continue-in-mappageneratorclassalgorithm
Aug 8, 2026
Merged

#319 #328 #329 Fix null-class continue, culture typo, and MappaContext docs#330
sanelli merged 1 commit into
mainfrom
319-fix-null-class-skip-using-return-instead-of-continue-in-mappageneratorclassalgorithm

Conversation

@sanelli

@sanelli sanelli commented Aug 8, 2026

Copy link
Copy Markdown
Owner

Summary

  • #319: skip null class declarations with continue so remaining mappers still generate; add unit harness regression test.
  • #329: fix GeyCultureInfoGetCultureInfo in parse helper exception messages and matching tests.
  • #328: document that MappaContext is not thread-safe (XML docs, README, attributes, tutorial).
  • Bump to 10.2.0-alpha.62. Also clarify workflow rule that any dotnet command needs network/proxy handling.

Test plan

  • .\Scripts\RunTestsAndReportCoverage.ps1 (2955 tests passed)
  • Coverage ≥ baseline (line 98.4%, branch 90.9%, method 100%)
  • CI green on PR

Closes #319
Closes #328
Closes #329

…t docs.

Skip null class declarations with continue so remaining mappers still generate. Correct GetCultureInfo exception text in parse helpers. Document that MappaContext is not thread-safe. Also clarify that any dotnet command needs network/proxy handling in the workflow rule.

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions

github-actions Bot commented Aug 8, 2026

Copy link
Copy Markdown

Code coverage

Compared against the latest published coverage history from the code coverage gist.

Metric Baseline PR Δ Trend
Line 98.4% 98.4% 0 =
Branch 90.8% 90.9% +0.1
Method 100% 100% 0 =

No coverage metric dropped by more than 1 percentage point(s) versus baseline.

Benchmarks

Winners (chart subset)

Benchmark Best time Best memory
Array To List Mapperly (-8%) Mapperly, Mappa
List To Array Mapperly (-2.9%) Mapperly, Mappa
Fast List To Array Mapperly (-3.4%) Mapperly, Mappa
Dictionary Mapperly (-23.4%) Mapperly (-32%)
Objects mapping Mapperly (-3.2%) Mapperly (-5.4%)
IQueryable Projection Mapster (-1.1%) Mapster (-2.8%)
String To Enum Mappa n/a
Enum To String Mapperly (-7.2%) n/a
Reference Reusing Mappa Automapper (-17.3%)

AutoMapper is the BenchmarkDotNet ratio baseline. Absolute values are mean time in nanoseconds and allocated bytes. Ratio columns are competitor / Mappa as a percentage (n/a when either side is missing or Mappa is zero).

Benchmark Automapper Mean (ns) Automapper Allocated (B) Mapster Mean (ns) Mapster Allocated (B) Mapperly Mean (ns) Mapperly Allocated (B) Mappa Mean (ns) Mappa Allocated (B) Automapper/Mappa Time Automapper/Mappa Alloc Mapperly/Mappa Time Mapperly/Mappa Alloc Mapster/Mappa Time Mapster/Mappa Alloc
ArrayToListBenchmark 368310 592056.32 316430 648058.88 24580 128051.2 26730 128051.2 1377.9% 462.4% 92% 100% 1183.8% 506.1%
DictionaryBenchmark 387980 615014.4 361850 742277.12 35780 151019.52 46710 222218.24 830.6% 276.8% 76.6% 68% 774.7% 334%
EnumToStringBenchmark 69.132 24 20.092 24 0.684 0 0.737 0 9380.2% n/a 92.8% n/a 2726.2% n/a
FastListToArrayBenchmark 376850 592025.6 319450 648028.16 26460 128020.48 27400 128020.48 1375.4% 462.4% 96.6% 100% 1165.9% 506.2%
IQueryableProjectionBenchmark 643800 68034.56 620700 67266.56 631200 69201.92 627300 69201.92 102.6% 98.3% 100.6% 100% 98.9% 97.2%
ListToArrayBenchmark 375050 592025.6 314490 648028.16 24860 128020.48 25600 128020.48 1465% 462.4% 97.1% 100% 1228.5% 506.2%
NestedDtoBenchmark 416520 742809.6 374230 789555.2 39470 149401.6 40760 157900.8 1021.9% 470.4% 96.8% 94.6% 918.1% 500%
ReferenceReusingSharedDagBenchmark 322.3 344 196.5 400 309.3 800 108.6 416 296.8% 82.7% 284.8% 192.3% 180.9% 96.2%
StringToEnumBenchmark 57.153 0 91.547 216 3.606 0 3.548 0 1610.9% n/a 101.6% n/a 2580.2% n/a

@sanelli
sanelli merged commit 1d7c586 into main Aug 8, 2026
1 check passed
@sanelli
sanelli deleted the 319-fix-null-class-skip-using-return-instead-of-continue-in-mappageneratorclassalgorithm branch August 8, 2026 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant