Files
mdg-filius/packages/core/test/strings.swift.json
T
julian.kiedaischandClaude Opus 5.5 a198d10b4a feat(core): virtual file system and Swift string semantics
The core gains Swift's virtual file system (paths, case-insensitive
lookup that keeps the spelling, quotas, atomic changes, the defaults of
a new device) and the string behaviour the ported code relies on without
saying so. Both are measured in the Swift oracle: 11 file system cases
(the three Swift tests among them) step by step, and trimming, lower
case, equality, ordering and Base64 case by case — whitespace and control
characters over all of Unicode.

Found by measuring:
- Swift trims NEL and ZERO WIDTH SPACE, not the BOM; JS trim() does the
  opposite. The .fls import now trims with swiftTrim.
- lowercased() maps scalar by scalar: a word-final sigma stays σ.
- Foundation decodes "====" and "Y===" as empty data.
- Foundation on Linux counts 24,735 plane-14 scalars as control
  characters, a table artefact; the port keeps Unicode Cc+Cf.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 21:23:45 +00:00

2341 lines
23 KiB
JSON
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"base64" : [
[
104,
101,
108,
108,
111
],
null,
[
104,
101,
108,
108,
111
],
[
104,
101,
108,
108,
111
],
null,
[
],
[
],
null,
[
97
],
null,
null,
[
97
],
null,
[
97,
98,
99
],
[
97
],
[
97
],
[
],
null,
[
97,
98
],
[
97
],
null,
[
],
[
0
],
[
0,
0
],
[
0
],
[
0,
16
],
null,
[
97
],
null,
null,
null,
null,
null,
null
],
"controlCharacters" : [
false,
true,
true,
true,
true,
true,
false,
false
],
"controlCharactersSet" : [
[
0,
31
],
[
127,
159
],
[
173,
173
],
[
1536,
1541
],
[
1564,
1564
],
[
1757,
1757
],
[
1807,
1807
],
[
2192,
2193
],
[
2274,
2274
],
[
6158,
6158
],
[
8203,
8207
],
[
8234,
8238
],
[
8288,
8292
],
[
8294,
8303
],
[
65279,
65279
],
[
65529,
65531
],
[
69821,
69821
],
[
69837,
69837
],
[
78896,
78911
],
[
113824,
113827
],
[
119155,
119162
],
[
917505,
917505
],
[
917536,
917631
],
[
917761,
917761
],
[
917792,
917887
],
[
918017,
918017
],
[
918048,
918143
],
[
918273,
918273
],
[
918304,
918399
],
[
918529,
918529
],
[
918560,
918655
],
[
918785,
918785
],
[
918816,
918911
],
[
919041,
919041
],
[
919072,
919167
],
[
919297,
919297
],
[
919328,
919423
],
[
919553,
919553
],
[
919584,
919679
],
[
919809,
919809
],
[
919840,
919935
],
[
920065,
920065
],
[
920096,
920191
],
[
920321,
920321
],
[
920352,
920447
],
[
920577,
920577
],
[
920608,
920703
],
[
920833,
920833
],
[
920864,
920959
],
[
921089,
921089
],
[
921120,
921215
],
[
921345,
921345
],
[
921376,
921471
],
[
921601,
921601
],
[
921632,
921727
],
[
921857,
921857
],
[
921888,
921983
],
[
922113,
922113
],
[
922144,
922239
],
[
922369,
922369
],
[
922400,
922495
],
[
922625,
922625
],
[
922656,
922751
],
[
922881,
922881
],
[
922912,
923007
],
[
923137,
923137
],
[
923168,
923263
],
[
923393,
923393
],
[
923424,
923519
],
[
923649,
923649
],
[
923680,
923775
],
[
923905,
923905
],
[
923936,
924031
],
[
924161,
924161
],
[
924192,
924287
],
[
924417,
924417
],
[
924448,
924543
],
[
924673,
924673
],
[
924704,
924799
],
[
924929,
924929
],
[
924960,
925055
],
[
925185,
925185
],
[
925216,
925311
],
[
925441,
925441
],
[
925472,
925567
],
[
925697,
925697
],
[
925728,
925823
],
[
925953,
925953
],
[
925984,
926079
],
[
926209,
926209
],
[
926240,
926335
],
[
926465,
926465
],
[
926496,
926591
],
[
926721,
926721
],
[
926752,
926847
],
[
926977,
926977
],
[
927008,
927103
],
[
927233,
927233
],
[
927264,
927359
],
[
927489,
927489
],
[
927520,
927615
],
[
927745,
927745
],
[
927776,
927871
],
[
928001,
928001
],
[
928032,
928127
],
[
928257,
928257
],
[
928288,
928383
],
[
928513,
928513
],
[
928544,
928639
],
[
928769,
928769
],
[
928800,
928895
],
[
929025,
929025
],
[
929056,
929151
],
[
929281,
929281
],
[
929312,
929407
],
[
929537,
929537
],
[
929568,
929663
],
[
929793,
929793
],
[
929824,
929919
],
[
930049,
930049
],
[
930080,
930175
],
[
930305,
930305
],
[
930336,
930431
],
[
930561,
930561
],
[
930592,
930687
],
[
930817,
930817
],
[
930848,
930943
],
[
931073,
931073
],
[
931104,
931199
],
[
931329,
931329
],
[
931360,
931455
],
[
931585,
931585
],
[
931616,
931711
],
[
931841,
931841
],
[
931872,
931967
],
[
932097,
932097
],
[
932128,
932223
],
[
932353,
932353
],
[
932384,
932479
],
[
932609,
932609
],
[
932640,
932735
],
[
932865,
932865
],
[
932896,
932991
],
[
933121,
933121
],
[
933152,
933247
],
[
933377,
933377
],
[
933408,
933503
],
[
933633,
933633
],
[
933664,
933759
],
[
933889,
933889
],
[
933920,
934015
],
[
934145,
934145
],
[
934176,
934271
],
[
934401,
934401
],
[
934432,
934527
],
[
934657,
934657
],
[
934688,
934783
],
[
934913,
934913
],
[
934944,
935039
],
[
935169,
935169
],
[
935200,
935295
],
[
935425,
935425
],
[
935456,
935551
],
[
935681,
935681
],
[
935712,
935807
],
[
935937,
935937
],
[
935968,
936063
],
[
936193,
936193
],
[
936224,
936319
],
[
936449,
936449
],
[
936480,
936575
],
[
936705,
936705
],
[
936736,
936831
],
[
936961,
936961
],
[
936992,
937087
],
[
937217,
937217
],
[
937248,
937343
],
[
937473,
937473
],
[
937504,
937599
],
[
937729,
937729
],
[
937760,
937855
],
[
937985,
937985
],
[
938016,
938111
],
[
938241,
938241
],
[
938272,
938367
],
[
938497,
938497
],
[
938528,
938623
],
[
938753,
938753
],
[
938784,
938879
],
[
939009,
939009
],
[
939040,
939135
],
[
939265,
939265
],
[
939296,
939391
],
[
939521,
939521
],
[
939552,
939647
],
[
939777,
939777
],
[
939808,
939903
],
[
940033,
940033
],
[
940064,
940159
],
[
940289,
940289
],
[
940320,
940415
],
[
940545,
940545
],
[
940576,
940671
],
[
940801,
940801
],
[
940832,
940927
],
[
941057,
941057
],
[
941088,
941183
],
[
941313,
941313
],
[
941344,
941439
],
[
941569,
941569
],
[
941600,
941695
],
[
941825,
941825
],
[
941856,
941951
],
[
942081,
942081
],
[
942112,
942207
],
[
942337,
942337
],
[
942368,
942463
],
[
942593,
942593
],
[
942624,
942719
],
[
942849,
942849
],
[
942880,
942975
],
[
943105,
943105
],
[
943136,
943231
],
[
943361,
943361
],
[
943392,
943487
],
[
943617,
943617
],
[
943648,
943743
],
[
943873,
943873
],
[
943904,
943999
],
[
944129,
944129
],
[
944160,
944255
],
[
944385,
944385
],
[
944416,
944511
],
[
944641,
944641
],
[
944672,
944767
],
[
944897,
944897
],
[
944928,
945023
],
[
945153,
945153
],
[
945184,
945279
],
[
945409,
945409
],
[
945440,
945535
],
[
945665,
945665
],
[
945696,
945791
],
[
945921,
945921
],
[
945952,
946047
],
[
946177,
946177
],
[
946208,
946303
],
[
946433,
946433
],
[
946464,
946559
],
[
946689,
946689
],
[
946720,
946815
],
[
946945,
946945
],
[
946976,
947071
],
[
947201,
947201
],
[
947232,
947327
],
[
947457,
947457
],
[
947488,
947583
],
[
947713,
947713
],
[
947744,
947839
],
[
947969,
947969
],
[
948000,
948095
],
[
948225,
948225
],
[
948256,
948351
],
[
948481,
948481
],
[
948512,
948607
],
[
948737,
948737
],
[
948768,
948863
],
[
948993,
948993
],
[
949024,
949119
],
[
949249,
949249
],
[
949280,
949375
],
[
949505,
949505
],
[
949536,
949631
],
[
949761,
949761
],
[
949792,
949887
],
[
950017,
950017
],
[
950048,
950143
],
[
950273,
950273
],
[
950304,
950399
],
[
950529,
950529
],
[
950560,
950655
],
[
950785,
950785
],
[
950816,
950911
],
[
951041,
951041
],
[
951072,
951167
],
[
951297,
951297
],
[
951328,
951423
],
[
951553,
951553
],
[
951584,
951679
],
[
951809,
951809
],
[
951840,
951935
],
[
952065,
952065
],
[
952096,
952191
],
[
952321,
952321
],
[
952352,
952447
],
[
952577,
952577
],
[
952608,
952703
],
[
952833,
952833
],
[
952864,
952959
],
[
953089,
953089
],
[
953120,
953215
],
[
953345,
953345
],
[
953376,
953471
],
[
953601,
953601
],
[
953632,
953727
],
[
953857,
953857
],
[
953888,
953983
],
[
954113,
954113
],
[
954144,
954239
],
[
954369,
954369
],
[
954400,
954495
],
[
954625,
954625
],
[
954656,
954751
],
[
954881,
954881
],
[
954912,
955007
],
[
955137,
955137
],
[
955168,
955263
],
[
955393,
955393
],
[
955424,
955519
],
[
955649,
955649
],
[
955680,
955775
],
[
955905,
955905
],
[
955936,
956031
],
[
956161,
956161
],
[
956192,
956287
],
[
956417,
956417
],
[
956448,
956543
],
[
956673,
956673
],
[
956704,
956799
],
[
956929,
956929
],
[
956960,
957055
],
[
957185,
957185
],
[
957216,
957311
],
[
957441,
957441
],
[
957472,
957567
],
[
957697,
957697
],
[
957728,
957823
],
[
957953,
957953
],
[
957984,
958079
],
[
958209,
958209
],
[
958240,
958335
],
[
958465,
958465
],
[
958496,
958591
],
[
958721,
958721
],
[
958752,
958847
],
[
958977,
958977
],
[
959008,
959103
],
[
959233,
959233
],
[
959264,
959359
],
[
959489,
959489
],
[
959520,
959615
],
[
959745,
959745
],
[
959776,
959871
],
[
960001,
960001
],
[
960032,
960127
],
[
960257,
960257
],
[
960288,
960383
],
[
960513,
960513
],
[
960544,
960639
],
[
960769,
960769
],
[
960800,
960895
],
[
961025,
961025
],
[
961056,
961151
],
[
961281,
961281
],
[
961312,
961407
],
[
961537,
961537
],
[
961568,
961663
],
[
961793,
961793
],
[
961824,
961919
],
[
962049,
962049
],
[
962080,
962175
],
[
962305,
962305
],
[
962336,
962431
],
[
962561,
962561
],
[
962592,
962687
],
[
962817,
962817
],
[
962848,
962943
],
[
963073,
963073
],
[
963104,
963199
],
[
963329,
963329
],
[
963360,
963455
],
[
963585,
963585
],
[
963616,
963711
],
[
963841,
963841
],
[
963872,
963967
],
[
964097,
964097
],
[
964128,
964223
],
[
964353,
964353
],
[
964384,
964479
],
[
964609,
964609
],
[
964640,
964735
],
[
964865,
964865
],
[
964896,
964991
],
[
965121,
965121
],
[
965152,
965247
],
[
965377,
965377
],
[
965408,
965503
],
[
965633,
965633
],
[
965664,
965759
],
[
965889,
965889
],
[
965920,
966015
],
[
966145,
966145
],
[
966176,
966271
],
[
966401,
966401
],
[
966432,
966527
],
[
966657,
966657
],
[
966688,
966783
],
[
966913,
966913
],
[
966944,
967039
],
[
967169,
967169
],
[
967200,
967295
],
[
967425,
967425
],
[
967456,
967551
],
[
967681,
967681
],
[
967712,
967807
],
[
967937,
967937
],
[
967968,
968063
],
[
968193,
968193
],
[
968224,
968319
],
[
968449,
968449
],
[
968480,
968575
],
[
968705,
968705
],
[
968736,
968831
],
[
968961,
968961
],
[
968992,
969087
],
[
969217,
969217
],
[
969248,
969343
],
[
969473,
969473
],
[
969504,
969599
],
[
969729,
969729
],
[
969760,
969855
],
[
969985,
969985
],
[
970016,
970111
],
[
970241,
970241
],
[
970272,
970367
],
[
970497,
970497
],
[
970528,
970623
],
[
970753,
970753
],
[
970784,
970879
],
[
971009,
971009
],
[
971040,
971135
],
[
971265,
971265
],
[
971296,
971391
],
[
971521,
971521
],
[
971552,
971647
],
[
971777,
971777
],
[
971808,
971903
],
[
972033,
972033
],
[
972064,
972159
],
[
972289,
972289
],
[
972320,
972415
],
[
972545,
972545
],
[
972576,
972671
],
[
972801,
972801
],
[
972832,
972927
],
[
973057,
973057
],
[
973088,
973183
],
[
973313,
973313
],
[
973344,
973439
],
[
973569,
973569
],
[
973600,
973695
],
[
973825,
973825
],
[
973856,
973951
],
[
974081,
974081
],
[
974112,
974207
],
[
974337,
974337
],
[
974368,
974463
],
[
974593,
974593
],
[
974624,
974719
],
[
974849,
974849
],
[
974880,
974975
],
[
975105,
975105
],
[
975136,
975231
],
[
975361,
975361
],
[
975392,
975487
],
[
975617,
975617
],
[
975648,
975743
],
[
975873,
975873
],
[
975904,
975999
],
[
976129,
976129
],
[
976160,
976255
],
[
976385,
976385
],
[
976416,
976511
],
[
976641,
976641
],
[
976672,
976767
],
[
976897,
976897
],
[
976928,
977023
],
[
977153,
977153
],
[
977184,
977279
],
[
977409,
977409
],
[
977440,
977535
],
[
977665,
977665
],
[
977696,
977791
],
[
977921,
977921
],
[
977952,
978047
],
[
978177,
978177
],
[
978208,
978303
],
[
978433,
978433
],
[
978464,
978559
],
[
978689,
978689
],
[
978720,
978815
],
[
978945,
978945
],
[
978976,
979071
],
[
979201,
979201
],
[
979232,
979327
],
[
979457,
979457
],
[
979488,
979583
],
[
979713,
979713
],
[
979744,
979839
],
[
979969,
979969
],
[
980000,
980095
],
[
980225,
980225
],
[
980256,
980351
],
[
980481,
980481
],
[
980512,
980607
],
[
980737,
980737
],
[
980768,
980863
],
[
980993,
980993
],
[
981024,
981119
],
[
981249,
981249
],
[
981280,
981375
],
[
981505,
981505
],
[
981536,
981631
],
[
981761,
981761
],
[
981792,
981887
],
[
982017,
982017
],
[
982048,
982143
],
[
982273,
982273
],
[
982304,
982399
],
[
982529,
982529
],
[
982560,
982655
],
[
982785,
982785
],
[
982816,
982911
]
],
"equal" : [
true,
true,
false,
true,
true,
false,
true
],
"lowercased" : [
"abc",
"σασ",
"ασ x",
"i̇",
"ß",
"dž",
"äöü",
"k"
],
"sort" : [
[
"B",
"a",
"b"
],
[
"~",
"😀"
],
[
"éa",
"éx"
],
[
"A",
"Z",
"a",
"á"
],
[
"File1",
"file10",
"file2"
]
],
"trim" : [
"a",
"a",
"a",
"a",
"a",
"a",
"a",
"a",
"\u001ca",
"a",
"́a",
"a ́",
"᠎a",
"a"
],
"whitespacesAndNewlinesSet" : [
[
9,
13
],
[
32,
32
],
[
133,
133
],
[
160,
160
],
[
5760,
5760
],
[
8192,
8203
],
[
8232,
8233
],
[
8239,
8239
],
[
8287,
8287
],
[
12288,
12288
]
]
}