Commit 92bba06
feat(r8): Make startline, endline and original_startline optional (#84)
## Summary
- Make `startline`, `endline`, and `original_startline` fields
`Option`-typed on both `Member` (builder) and `MemberMapping` (mapper)
structs
- Replaces the earlier boolean flags (`has_minified_range`,
`has_line_mapping`) — presence/absence is now encoded directly:
`startline.is_some()` means a minified range was present,
`original_startline.is_some()`
means a line mapping existed
- In the binary cache format, `u32::MAX` is used as a sentinel for
absent values (via `NONE_VALUE` constant)
- Change `StackFrame.line` from `usize` to `Option<usize>` to
distinguish "no line provided" from "line 0"
- Fix inverted line ranges in mapping parser (swap start/end when start
> end)
- Bumps cache version 4 → 5
## Test plan
- [x] All existing tests pass (no regressions)
- [x] Same 5 known-failing r8-line-number-handling tests remain (will be
fixed in subsequent PRs)
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>1 parent f132a33 commit 92bba06
File tree
6 files changed
+138
-106
lines changed- src
- cache
6 files changed
+138
-106
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
149 | 149 | | |
150 | 150 | | |
151 | 151 | | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
158 | 158 | | |
159 | 159 | | |
160 | 160 | | |
| |||
291 | 291 | | |
292 | 292 | | |
293 | 293 | | |
294 | | - | |
295 | | - | |
296 | | - | |
297 | | - | |
298 | | - | |
299 | | - | |
300 | | - | |
301 | | - | |
302 | | - | |
303 | | - | |
304 | | - | |
305 | | - | |
306 | | - | |
307 | | - | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
308 | 305 | | |
309 | 306 | | |
310 | | - | |
311 | | - | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
312 | 312 | | |
313 | | - | |
314 | | - | |
315 | | - | |
316 | | - | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
317 | 317 | | |
318 | 318 | | |
319 | 319 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
390 | 390 | | |
391 | 391 | | |
392 | 392 | | |
393 | | - | |
394 | | - | |
395 | | - | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
396 | 396 | | |
397 | 397 | | |
398 | 398 | | |
| |||
405 | 405 | | |
406 | 406 | | |
407 | 407 | | |
408 | | - | |
| 408 | + | |
409 | 409 | | |
410 | 410 | | |
411 | 411 | | |
| |||
631 | 631 | | |
632 | 632 | | |
633 | 633 | | |
634 | | - | |
635 | | - | |
636 | | - | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
637 | 637 | | |
638 | 638 | | |
639 | 639 | | |
| |||
917 | 917 | | |
918 | 918 | | |
919 | 919 | | |
920 | | - | |
| 920 | + | |
921 | 921 | | |
922 | 922 | | |
923 | 923 | | |
| |||
985 | 985 | | |
986 | 986 | | |
987 | 987 | | |
| 988 | + | |
| 989 | + | |
988 | 990 | | |
989 | | - | |
| 991 | + | |
990 | 992 | | |
991 | 993 | | |
992 | 994 | | |
993 | | - | |
| 995 | + | |
994 | 996 | | |
995 | 997 | | |
996 | 998 | | |
997 | | - | |
998 | | - | |
999 | | - | |
| 999 | + | |
1000 | 1000 | | |
1001 | 1001 | | |
| 1002 | + | |
1002 | 1003 | | |
1003 | 1004 | | |
1004 | 1005 | | |
1005 | | - | |
| 1006 | + | |
1006 | 1007 | | |
1007 | | - | |
| 1008 | + | |
1008 | 1009 | | |
1009 | | - | |
| 1010 | + | |
1010 | 1011 | | |
1011 | 1012 | | |
1012 | 1013 | | |
| |||
1058 | 1059 | | |
1059 | 1060 | | |
1060 | 1061 | | |
1061 | | - | |
| 1062 | + | |
1062 | 1063 | | |
1063 | 1064 | | |
1064 | 1065 | | |
| |||
1097 | 1098 | | |
1098 | 1099 | | |
1099 | 1100 | | |
1100 | | - | |
1101 | | - | |
1102 | | - | |
1103 | | - | |
| 1101 | + | |
1104 | 1102 | | |
1105 | 1103 | | |
1106 | 1104 | | |
| |||
1109 | 1107 | | |
1110 | 1108 | | |
1111 | 1109 | | |
1112 | | - | |
1113 | | - | |
| 1110 | + | |
| 1111 | + | |
1114 | 1112 | | |
1115 | 1113 | | |
1116 | 1114 | | |
| |||
1134 | 1132 | | |
1135 | 1133 | | |
1136 | 1134 | | |
1137 | | - | |
1138 | | - | |
1139 | | - | |
1140 | | - | |
| 1135 | + | |
1141 | 1136 | | |
1142 | 1137 | | |
1143 | 1138 | | |
| |||
1146 | 1141 | | |
1147 | 1142 | | |
1148 | 1143 | | |
1149 | | - | |
1150 | | - | |
| 1144 | + | |
| 1145 | + | |
1151 | 1146 | | |
1152 | 1147 | | |
1153 | 1148 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
98 | 98 | | |
99 | 99 | | |
100 | 100 | | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
101 | 104 | | |
102 | 105 | | |
103 | 106 | | |
104 | 107 | | |
105 | 108 | | |
106 | 109 | | |
107 | | - | |
| 110 | + | |
108 | 111 | | |
109 | | - | |
| 112 | + | |
110 | 113 | | |
111 | 114 | | |
112 | 115 | | |
113 | 116 | | |
114 | 117 | | |
115 | 118 | | |
116 | 119 | | |
117 | | - | |
| 120 | + | |
118 | 121 | | |
119 | 122 | | |
120 | 123 | | |
| |||
136 | 139 | | |
137 | 140 | | |
138 | 141 | | |
| 142 | + | |
139 | 143 | | |
140 | 144 | | |
141 | 145 | | |
| |||
149 | 153 | | |
150 | 154 | | |
151 | 155 | | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
152 | 180 | | |
153 | 181 | | |
154 | 182 | | |
| |||
616 | 644 | | |
617 | 645 | | |
618 | 646 | | |
619 | | - | |
620 | | - | |
| 647 | + | |
| 648 | + | |
621 | 649 | | |
622 | 650 | | |
623 | 651 | | |
624 | | - | |
625 | | - | |
| 652 | + | |
| 653 | + | |
626 | 654 | | |
627 | 655 | | |
628 | 656 | | |
629 | 657 | | |
| 658 | + | |
630 | 659 | | |
631 | 660 | | |
632 | 661 | | |
633 | 662 | | |
634 | | - | |
635 | 663 | | |
636 | 664 | | |
637 | 665 | | |
| |||
0 commit comments