tangled
alpha
login
or
join now
khanwinter.com
/
CBOR
A fast, safe, and efficient CBOR serialization library for Swift on any platform.
swiftpackageindex.com/thecoolwinter/CBOR/1.1.1/documentation/cbor
atproto
swift
cbor
2
fork
atom
overview
issues
pulls
pipelines
Lets try caching build things
Khan Winter
5 months ago
e93eb58e
9aae121a
+34
-6
1 changed file
expand all
collapse all
unified
split
.github
workflows
ci.yml
+34
-6
.github/workflows/ci.yml
···
29
- uses: swift-actions/setup-swift@v2
30
with:
31
swift-version: "6.1"
0
0
0
0
0
0
0
32
- name: Testing Package
33
-
run: swift test
0
0
0
0
0
0
0
0
34
35
test-macos:
36
name: Testing and Fuzzing CBOR (macOS)
···
42
- uses: swift-actions/setup-swift@next
43
with:
44
swift-version: "6.1"
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
- name: Testing Package
46
-
run: set -o pipefail && swift test | xcbeautify
47
-
- name: Building Fuzzing Target
48
-
run: set -o pipefail && swift build -c release --sanitize fuzzer,address | xcbeautify
49
-
- name: Fuzzing For 30 Seconds
50
run: |
51
mkdir -p .fuzz
52
mkdir -p .fuzz/new-corpus
53
mkdir -p .fuzz/corpus
54
mkdir -p .fuzz/artifacts
55
-
./.build/release/Fuzzing .fuzz/new-corpus .fuzz/corpus -max_total_time=10 -artifact_prefix=.fuzz/artifacts -max_len=1000000
56
- name: "Upload Fuzzing Artifacts (if available)"
57
uses: actions/upload-artifact@v4
58
with:
···
29
- uses: swift-actions/setup-swift@v2
30
with:
31
swift-version: "6.1"
32
+
- name: Restore .build
33
+
id: "restore-build"
34
+
uses: actions/cache/restore@v4
35
+
with:
36
+
path: .build
37
+
key: "swiftpm-tests-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}"
38
+
restore-keys: "swiftpm-tests-build-${{ runner.os }}-"
39
- name: Testing Package
40
+
run: swift build --build-tests
41
+
- name: Cache .build
42
+
if: steps.restore-build.outputs.cache-hit != 'true'
43
+
uses: actions/cache/save@v4
44
+
with:
45
+
path: .build
46
+
key: "swiftpm-tests-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}"
47
+
- name: Testing Package
48
+
run: swift test --skip-build
49
50
test-macos:
51
name: Testing and Fuzzing CBOR (macOS)
···
57
- uses: swift-actions/setup-swift@next
58
with:
59
swift-version: "6.1"
60
+
- name: Restore .build
61
+
id: "restore-build"
62
+
uses: actions/cache/restore@v4
63
+
with:
64
+
path: .build
65
+
key: "swiftpm-tests-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}"
66
+
restore-keys: "swiftpm-tests-build-${{ runner.os }}-"
67
+
- name: Building Package
68
+
run: set -o pipefail && xcrun --toolchain swift 6.1 --run swift build --build-tests --sanitize fuzzer | xcbeautify
69
+
- name: Cache .build
70
+
if: steps.restore-build.outputs.cache-hit != 'true'
71
+
uses: actions/cache/save@v4
72
+
with:
73
+
path: .build
74
+
key: "swiftpm-tests-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}"
75
- name: Testing Package
76
+
run: set -o pipefail && xcrun --toolchain swift 6.1 --run swift test --skip-build | xcbeautify
77
+
- name: Fuzzing For 15 Seconds
0
0
78
run: |
79
mkdir -p .fuzz
80
mkdir -p .fuzz/new-corpus
81
mkdir -p .fuzz/corpus
82
mkdir -p .fuzz/artifacts
83
+
./.build/debug/Fuzzing .fuzz/new-corpus .fuzz/corpus -max_total_time=15 -artifact_prefix=.fuzz/artifacts -max_len=1000000
84
- name: "Upload Fuzzing Artifacts (if available)"
85
uses: actions/upload-artifact@v4
86
with: