Skip to content

Commit 7f537b4

Browse files
authored
Merge pull request #37119 from lorentey/abi-tests-clarifications
[stdlib][test] Update stdlib abi test docs
2 parents dfec9e6 + 40529fb commit 7f537b4

File tree

2 files changed

+56
-23
lines changed

2 files changed

+56
-23
lines changed

test/api-digester/stability-stdlib-abi-with-asserts.test

Lines changed: 30 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,41 @@
77
// RUN: %clang -E -P -x c %t.tmp/changes.txt -o - | sed '/^\s*$/d' | sort > %t.tmp/changes.txt.tmp
88
// RUN: diff -u %t.tmp/stability-stdlib-abi.swift.expected.sorted %t.tmp/changes.txt.tmp
99

10+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment below.)
11+
1012
// Welcome, Build Wrangler!
1113
//
12-
// A failure in this test indicates that there is a potential ABI breaking
13-
// change in the Standard Library. If you observe a failure, please reach out to
14-
// the Standard Library team directly to make sure we resolve this quickly!
14+
// This file lists APIs that are unique to stdlib builds with assertions.
15+
// (It is combined with the stability-stdlib-abi-without-asserts.test file
16+
// to generate a full list of potentially breaking API changes. In most cases
17+
// you'll want to edit that file instead of this one.)
18+
//
19+
// A failure in this test indicates that there is a potential breaking change in
20+
// the Standard Library. If you observe a failure outside of a PR test, please
21+
// reach out to the Standard Library team directly to make sure this gets
22+
// resolved quickly! If your own PR fails in this test, you probably have an
23+
// ABI- or source-breaking change in your commits. Please go and fix it.
1524
//
16-
// Please DO NOT XFAIL THIS TEST. In addition to ignoring the current set of ABI
17-
// breaks, XFAILing this test also silences any future ABI breaks that may land
18-
// on this branch, which isn't ideal.
25+
// Please DO NOT DISABLE THIS TEST. In addition to ignoring the current set of
26+
// ABI breaks, XFAILing this test also silences any future ABI breaks that may
27+
// land on this branch, which simply generates extra work for the next person
28+
// that picks up the mess.
1929
//
20-
// Instead, consider extending the list of expected changes at the bottom. You
21-
// can find a diff of what needs to be added in the output of the failed test
22-
// run. The order of lines doesn't matter, and you can also include comments to
23-
// refer to any bugs you filed.
30+
// Instead of disabling this test, consider extending the list of expected
31+
// changes at the bottom. (You'll also need to do this if your own PR triggers
32+
// false positives, or if you have special permission to break things.) You can
33+
// find a diff of what needs to be added in the output of the failed test run.
34+
// The order of lines doesn't matter, and you can also include comments to refer
35+
// to any bugs you filed. Remember that in almost all cases you'll want to edit
36+
// the stability-stdlib-abi-without-asserts.test file instead of this one.
2437
//
25-
// Thanks! -- Your friendly stdlib engineers
38+
// Thank you for your help ensuring the stdlib remains compatible with its past!
39+
// -- Your friendly stdlib engineers
2640

2741
// REQUIRES: swift_stdlib_asserts
2842

43+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment above.)
44+
2945
// SR-13362
3046
// We currently only have a baseline for Intel CPUs on macOS.
3147
// REQUIRES: OS=macosx
@@ -35,7 +51,7 @@
3551
// declarations are shuffled. rdar://problem/46618883
3652
// UNSUPPORTED: swift_evolve
3753

38-
// *** DO NOT XFAIL THIS TEST *** (See comment above.)
54+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment above.)
3955

4056
Func _collectReferencesInsideObject(_:) is a new API without @available attribute
4157
Func _loadDestroyTLSCounter() is a new API without @available attribute
@@ -44,3 +60,5 @@ Protocol _RuntimeFunctionCountersStats is a new API without @available attribute
4460
Struct _GlobalRuntimeFunctionCountersState is a new API without @available attribute
4561
Struct _ObjectRuntimeFunctionCountersState is a new API without @available attribute
4662
Struct _RuntimeFunctionCounters is a new API without @available attribute
63+
64+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment above.)

test/api-digester/stability-stdlib-abi-without-asserts.test

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,38 @@
55
// RUN: %clang -E -P -x c %t.tmp/changes.txt -o - | sed '/^\s*$/d' | sort > %t.tmp/changes.txt.tmp
66
// RUN: diff -u %t.tmp/stability-stdlib-abi.swift.expected %t.tmp/changes.txt.tmp
77

8+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment below.)
9+
810
// Welcome, Build Wrangler!
911
//
10-
// A failure in this test indicates that there is a potential ABI breaking
11-
// change in the Standard Library. If you observe a failure, please reach out to
12-
// the Standard Library team directly to make sure we resolve this quickly!
12+
// This file lists APIs that have recently changed in a way that potentially
13+
// indicates an ABI- or source-breaking problem.
14+
//
15+
// A failure in this test indicates that there is a potential breaking change in
16+
// the Standard Library. If you observe a failure outside of a PR test, please
17+
// reach out to the Standard Library team directly to make sure this gets
18+
// resolved quickly! If your own PR fails in this test, you probably have an
19+
// ABI- or source-breaking change in your commits. Please go and fix it.
1320
//
14-
// Please DO NOT XFAIL THIS TEST. (In addition to ignoring the current set of
21+
// Please DO NOT DISABLE THIS TEST. In addition to ignoring the current set of
1522
// ABI breaks, XFAILing this test also silences any future ABI breaks that may
16-
// land on this branch, which isn't ideal.)
23+
// land on this branch, which simply generates extra work for the next person
24+
// that picks up the mess.
1725
//
18-
// Instead, consider extending the list of expected changes at the bottom. You
19-
// can find a diff of what needs to be added in the output of the failed test
20-
// run. The order of lines doesn't matter, and you can also include comments to
21-
// refer to any bugs you filed.
26+
// Instead of disabling this test, you'll need to extend the list of expected
27+
// changes at the bottom. (You'll also need to do this if your own PR triggers
28+
// false positives, or if you have special permission to break things.) You can
29+
// find a diff of what needs to be added in the output of the failed test run.
30+
// The order of lines doesn't matter, and you can also include comments to refer
31+
// to any bugs you filed.
2232
//
23-
// Thanks! -- Your friendly stdlib engineers
33+
// Thank you for your help ensuring the stdlib remains compatible with its past!
34+
// -- Your friendly stdlib engineers
2435

2536
// REQUIRES: swift_stdlib_no_asserts
2637

38+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment above.)
39+
2740
// SR-13362
2841
// We currently only have a baseline for Intel CPUs on macOS.
2942
// REQUIRES: OS=macosx && CPU=x86_64
@@ -32,7 +45,7 @@
3245
// declarations are shuffled. rdar://problem/46618883
3346
// UNSUPPORTED: swift_evolve
3447

35-
// *** DO NOT XFAIL THIS TEST. *** See comment above.
48+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment above.)
3649

3750
Func _prespecialize() is a new API without @available attribute
3851
Func _stdlib_isOSVersionAtLeastOrVariantVersionAtLeast(_:_:_:_:_:_:) is a new API without @available attribute
@@ -57,3 +70,5 @@ Protocol CodingKey has added inherited protocol Sendable
5770
Protocol CodingKey has generic signature change from <Self : Swift.CustomDebugStringConvertible, Self : Swift.CustomStringConvertible> to <Self : Swift.CustomDebugStringConvertible, Self : Swift.CustomStringConvertible, Self : Swift.Sendable>
5871
Protocol Error has added inherited protocol Sendable
5972
Protocol Error has generic signature change from to <Self : Swift.Sendable>
73+
74+
// *** DO NOT DISABLE OR XFAIL THIS TEST. *** (See comment above.)

0 commit comments

Comments
 (0)