Skip to content

Commit bd1231c

Browse files
authored
Document supports (#242)
1 parent 56bbdb2 commit bd1231c

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

Sources/TOMLDecoder/TOMLDecoder.docc/DevelopingTOMLDecoder.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,3 +117,32 @@ by the decoder,
117117
or requested by the user via,
118118
for example,
119119
``/TOMLDecoder/TOMLTable/string(forKey:)``.
120+
121+
## Supported versions
122+
123+
Versions could mean a few things.
124+
Here are the specifics.
125+
These should be tested in CI.
126+
127+
### Swift
128+
129+
Supporting Swift means the project should build with a minimum Swift release.
130+
This means the implementation may not strictly depend on a language feature
131+
that only exists in a new Swift release.
132+
In practice, this usually means the comment atop of `Package.swift` needs to
133+
reflect the minimum supported Swift version.
134+
135+
It may also mean qualifying in certain language modes.
136+
For example,
137+
* Swift 6 with full concurrency checking.
138+
* Embedded Swift
139+
140+
### Deployment target
141+
142+
Users should be able to build with the latest compiler/Xcode,
143+
and have the built executable run on an older OS with older runtimes.
144+
For the user,
145+
this is their minimum deployment target.
146+
For TOMLDecoder,
147+
this usually is controled by the `platforms` field in `Package.swift`.
148+
This usually doesn't apply to Linux.

0 commit comments

Comments
 (0)