Skip to content

Commit d7474ec

Browse files
author
David Ungar
committed
Adjust handling after failure & ensure failed files get recompiled.
1 parent 6f65e0e commit d7474ec

11 files changed

+54
-20
lines changed

test/Driver/Dependencies/Inputs/chained-private-after-fine/main.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ allNodes:
66
aspect: interface
77
context: ''
88
name: main.swiftdeps
9-
fingerprint: f1055a5b16d15cf8a0662ebe1c5108fe
9+
fingerprint: after
1010
sequenceNumber: 0
1111
defsIDependUpon: [ 2, 4 ]
1212
isProvides: true
@@ -15,7 +15,7 @@ allNodes:
1515
aspect: implementation
1616
context: ''
1717
name: main.swiftdeps
18-
fingerprint: f1055a5b16d15cf8a0662ebe1c5108fe
18+
fingerprint: after
1919
sequenceNumber: 1
2020
defsIDependUpon: [ ]
2121
isProvides: true

test/Driver/Dependencies/Inputs/chained-private-after-fine/main.swiftdeps

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ allNodes:
66
aspect: interface
77
context: ''
88
name: main.swiftdeps
9-
fingerprint: f1055a5b16d15cf8a0662ebe1c5108fe
9+
fingerprint: before
1010
sequenceNumber: 0
1111
defsIDependUpon: [ 2 ]
1212
isProvides: true
@@ -15,7 +15,7 @@ allNodes:
1515
aspect: implementation
1616
context: ''
1717
name: main.swiftdeps
18-
fingerprint: f1055a5b16d15cf8a0662ebe1c5108fe
18+
fingerprint: before
1919
sequenceNumber: 1
2020
defsIDependUpon: [ 4 ]
2121
isProvides: true

test/Driver/Dependencies/chained-private-after-fine.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
/// other --> main ==> yet-another
22
/// other ==>+ main ==> yet-another
3-
/// Coarse and fine
43

54
// RUN: %empty-directory(%t)
65
// RUN: cp -r %S/Inputs/chained-private-after-fine/* %t

test/Driver/Dependencies/check-interface-implementation-fine.swift

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,11 @@
3030
// NEGATIVE-A-NOT: Handled c.swift
3131

3232
// CHECK-RECORD-A-DAG: "./a.swift": [
33-
// CHECK-RECORD-A-DAG: "./bad.swift": !dirty [
34-
// CHECK-RECORD-A-DAG: "./c.swift": !dirty [
33+
// CHECK-RECORD-A-DAG: "./bad.swift": !private [
34+
// CHECK-RECORD-A-DAG: "./c.swift": !private [
35+
36+
// RUN: cd %t && %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./a.swift ./bad.swift ./c.swift -module-name main -j1 -v -driver-show-incremental 2>&1 | %FileCheck -check-prefix CHECK-BC %s
37+
38+
// CHECK-BC-NOT: Handled a.swift
39+
// CHECK-BC-DAG: Handled bad.swift
40+
// CHECK-BC-DAG: Handled c.swift

test/Driver/Dependencies/crash-added-fine.swift

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
// CHECK-ADDED: Handled crash.swift
1818
// CHECK-ADDED-NOT: Handled
1919

20-
// CHECK-RECORD-ADDED-DAG: "./crash.swift": !dirty [
20+
// CHECK-RECORD-ADDED-DAG: "./crash.swift": !private [
2121
// CHECK-RECORD-ADDED-DAG: "./main.swift": [
2222
// CHECK-RECORD-ADDED-DAG: "./other.swift": [
2323

@@ -30,3 +30,10 @@
3030

3131
// RUN: cd %t && not %swiftc_driver -c -enable-fine-grained-dependencies -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies-bad.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./crash.swift ./main.swift ./other.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-ADDED %s
3232
// RUN: %FileCheck -check-prefix=CHECK-RECORD-ADDED %s < %t/main~buildrecord.swiftdeps
33+
34+
35+
// RUN: cd %t && %swiftc_driver -c -enable-fine-grained-dependencies -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./crash.swift ./main.swift ./other.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-FIXED %s
36+
37+
// CHECK-FIXED-DAG: Handled crash.swift
38+
// CHECK-FIXED-DAG: Handled main.swift
39+
// CHECK-FIXED-DAG: Handled other.swift

test/Driver/Dependencies/crash-simple-fine.swift

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,20 @@
1212
// CHECK-FIRST: Handled other.swift
1313

1414
// RUN: touch -t 201401240006 %t/crash.swift
15-
// RUN: cd %t && not %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies-bad.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./crash.swift ./main.swift ./other.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-SECOND %s
15+
// RUN: cd %t && not %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies-bad.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./crash.swift ./main.swift ./other.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-SECOND %s
1616

1717
// CHECK-SECOND: Handled crash.swift
1818
// CHECK-SECOND-NOT: Handled main.swift
1919
// CHECK-SECOND-NOT: Handled other.swift
2020

2121
// RUN: %FileCheck -check-prefix=CHECK-RECORD %s < %t/main~buildrecord.swiftdeps
2222

23-
// CHECK-RECORD-DAG: "./crash.swift": !dirty [
24-
// CHECK-RECORD-DAG: "./main.swift": !dirty [
23+
// CHECK-RECORD-DAG: "./crash.swift": !private [
24+
// CHECK-RECORD-DAG: "./main.swift": !private [
2525
// CHECK-RECORD-DAG: "./other.swift": !private [
26+
27+
// RUN: cd %t && %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./crash.swift ./main.swift ./other.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-THIRD %s
28+
29+
// CHECK-THIRD-DAG: Handled main.swift
30+
// CHECK-THIRD-DAG: Handled crash.swift
31+
// CHECK-THIRD-DAG: Handled other.swift

test/Driver/Dependencies/fail-added-fine.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
// CHECK-ADDED: Handled bad.swift
1818
// CHECK-ADDED-NOT: Handled
1919

20-
// CHECK-RECORD-ADDED-DAG: "./bad.swift": !dirty [
20+
// CHECK-RECORD-ADDED-DAG: "./bad.swift": !private [
2121
// CHECK-RECORD-ADDED-DAG: "./main.swift": [
2222
// CHECK-RECORD-ADDED-DAG: "./other.swift": [
2323

test/Driver/Dependencies/fail-chained-fine.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@
4141

4242
// CHECK-RECORD-A-DAG: "./a.swift": [
4343
// CHECK-RECORD-A-DAG: "./b.swift": [
44-
// CHECK-RECORD-A-DAG: "./c.swift": !dirty [
45-
// CHECK-RECORD-A-DAG: "./d.swift": !dirty [
44+
// CHECK-RECORD-A-DAG: "./c.swift": !private [
45+
// CHECK-RECORD-A-DAG: "./d.swift": !private [
4646
// CHECK-RECORD-A-DAG: "./e.swift": !private [
4747
// CHECK-RECORD-A-DAG: "./f.swift": [
48-
// CHECK-RECORD-A-DAG: "./bad.swift": !dirty [
48+
// CHECK-RECORD-A-DAG: "./bad.swift": !private [
4949

5050
// RUN: cd %t && %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./a.swift ./b.swift ./c.swift ./d.swift ./e.swift ./f.swift ./bad.swift -module-name main -j1 -v > %t/a2.txt 2>&1
5151
// RUN: %FileCheck -check-prefix=CHECK-A2 %s < %t/a2.txt

test/Driver/Dependencies/fail-interface-hash-fine.swift

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,15 @@
2424
// CHECK-SECOND: Handled bad.swift
2525
// CHECK-SECOND-NOT: Handled depends
2626

27-
// CHECK-RECORD-DAG: "./bad.swift": !dirty [
27+
// CHECK-RECORD-DAG: "./bad.swift": !private [
2828
// CHECK-RECORD-DAG: "./main.swift": [
29-
// CHECK-RECORD-DAG: "./depends-on-main.swift": !dirty [
29+
// CHECK-RECORD-DAG: "./depends-on-main.swift": !private [
3030
// CHECK-RECORD-DAG: "./depends-on-bad.swift": [
31+
32+
// RUN: cd %t && %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies.py" -output-file-map %t/output.json -incremental ./main.swift ./bad.swift ./depends-on-main.swift ./depends-on-bad.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-THIRD %s
33+
34+
// CHECK-THIRD-DAG: Handled bad
35+
// CHECK-THIRD-DAG: Handled depends-on-bad
36+
// CHECK-THIRD-DAG: Handled depends-on-main
37+
// CHECK-THIRD-DAG: Handled main
38+

test/Driver/Dependencies/fail-simple-fine.swift

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,12 @@
1919
// CHECK-SECOND-NOT: Handled main.swift
2020
// CHECK-SECOND-NOT: Handled other.swift
2121

22-
// CHECK-RECORD-DAG: "./bad.swift": !dirty [
23-
// CHECK-RECORD-DAG: "./main.swift": !dirty [
22+
// CHECK-RECORD-DAG: "./bad.swift": !private [
23+
// CHECK-RECORD-DAG: "./main.swift": !private [
2424
// CHECK-RECORD-DAG: "./other.swift": !private [
25+
26+
// RUN: cd %t && %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies.py" -output-file-map %t/output.json -incremental -driver-always-rebuild-dependents ./bad.swift ./main.swift ./other.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-THIRD %s
27+
28+
// CHECK-THIRD-DAG: Handled main.swift
29+
// CHECK-THIRD-DAG: Handled bad.swift
30+
// CHECK-THIRD-DAG: Handled other.swift

test/Driver/Dependencies/fail-with-bad-deps-fine.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,7 @@
4444

4545
// CHECK-RECORD-DAG: "./bad.swift": !private [
4646
// CHECK-RECORD-DAG: "./main.swift": [
47-
// CHECK-RECORD-DAG: "./depends-on-main.swift": !dirty [
47+
// CHECK-RECORD-DAG: "./depends-on-main.swift": !private [
4848
// CHECK-RECORD-DAG: "./depends-on-bad.swift": [
49+
50+
// RUN: cd %t && %swiftc_driver -enable-fine-grained-dependencies -c -driver-use-frontend-path "%{python};%S/Inputs/update-dependencies.py" -output-file-map %t/output.json -incremental ./bad.swift ./main.swift ./depends-on-main.swift ./depends-on-bad.swift -module-name main -j1 -v 2>&1 | %FileCheck -check-prefix=CHECK-BUILD-ALL %s

0 commit comments

Comments
 (0)