Skip to content

Swift 6.1 #1410

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9,123 commits into from
Apr 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
9123 commits
Select commit Hold shift + click to select a range
bfceead
Remove the beta banner, for 5.9.2 FCS.
amartini51 Dec 1, 2023
d4624e6
Update the book's title for FCS.
amartini51 Dec 4, 2023
ce6115d
Fix link markup.
amartini51 Dec 4, 2023
b300d9c
Fill in the release date.
amartini51 Dec 4, 2023
1443e53
Merge branch 'release/5.9.2_fcs'
amartini51 Dec 12, 2023
447fb99
Frame closures less in terms of C.
amartini51 Dec 15, 2023
e67dfbf
Lead with names that are most likely to be familiar.
amartini51 Dec 15, 2023
f1b1dec
Avoid wording it as if closures are unique to Swift.
amartini51 Dec 20, 2023
29f0872
Frame closures less in terms of Obj-C and C blocks (#213)
amartini51 Dec 20, 2023
4fb6e5d
Fix typo
ldct Dec 24, 2023
7f7e624
Update TheBasics.md
urcades Dec 24, 2023
b7bf4f7
Merge pull request #1 from urcades/urcades-grammar-patch
urcades Dec 24, 2023
572bfa0
Fix typo in description of convertFarenheitToCelsius() (#222)
amartini51 Jan 2, 2024
94b3aeb
Fix typo in link markup.
amartini51 Jan 2, 2024
c7bcb44
Fix typo in link markup.
amartini51 Jan 2, 2024
4a296e8
Fix grammar error in The Basics (#223)
amartini51 Jan 2, 2024
f6c92dc
Add visionOS extension to platform lists.
amartini51 Jan 3, 2024
7b40a13
Fix prose to match code listing.
amartini51 Jan 3, 2024
d3d9bc3
Update old/unused test to match listing.
amartini51 Jan 3, 2024
92ea0bf
Incorporate edits from Chuck.
amartini51 Jan 4, 2024
63d62a6
Update the reference for nested protocols.
amartini51 Jan 5, 2024
a45e8c3
Nest the example delegate protocol.
amartini51 Jan 5, 2024
659ee33
Cross reference with Nested Types chapter.
amartini51 Jan 8, 2024
70e3506
Add #unavailable to the list of keywords.
amartini51 Jan 11, 2024
5d896ab
Fix alphabetical order.
amartini51 Jan 11, 2024
a6426d4
Copy this approach into the style guide.
amartini51 Jan 11, 2024
8022a41
Add #unavailable to list of keywords (#243)
amartini51 Jan 12, 2024
7e05f31
Match code listing for nonsendable example (#228)
amartini51 Jan 12, 2024
95273ae
Add visionOS extension to platform lists (#227)
amartini51 Jan 12, 2024
e110e20
Track 'main' to resolve merge conflict.
amartini51 Jan 17, 2024
1132491
Rough in a new code example.
amartini51 Jan 17, 2024
e430a1a
GuidedTour: Fixed while and repeat-while experiment description
ChristophKaser Jan 19, 2024
27da1bf
Fix logic error in while and repeat-while experiment description (#249)
amartini51 Jan 19, 2024
9d2b921
WIP: Update prose to match new code.
amartini51 Jan 20, 2024
1420f25
Deprecate UIApplicationMain & NSApplicationMain (#212)
amartini51 Jan 29, 2024
198f13c
Fix up whitespace.
amartini51 Jan 30, 2024
a5bb677
Add cross reference.
amartini51 Jan 31, 2024
7b64ca5
Update prose for the new delegate example.
amartini51 Jan 31, 2024
da17c1b
Correct wording.
amartini51 Feb 1, 2024
7a4a290
Remove Info.plist keys that are never used by DocC
d-ronnqvist Feb 2, 2024
1f5ce57
Remove Info.plist keys that are never used by DocC (#264)
amartini51 Feb 2, 2024
c09008f
Update Concurrency.md
stzn Feb 4, 2024
538ea52
Fix spelling of Fahrenheit in example method (#266)
amartini51 Feb 5, 2024
d34032d
Incorporate edits from Chuck
amartini51 Feb 6, 2024
f6c1070
Show example of nested protocols [SE-0404] (#235)
amartini51 Feb 7, 2024
6a9a9de
Add a revision history entry for 5.10 beta 3
amartini51 Feb 5, 2024
9bac190
Restore the beta banner, for 5.10 beta 3
amartini51 Feb 6, 2024
b23f6ba
Enable tracing, for debugging & progress
amartini51 Feb 7, 2024
843577d
Update version number to Swift 5.10
amartini51 Feb 7, 2024
73c8dfd
Remove and old check that's no longer useful
amartini51 Feb 7, 2024
13befb2
Update version number to Xcode 15.3
amartini51 Feb 7, 2024
d4d9481
Include "beta" in the version number until FCS
amartini51 Feb 8, 2024
cf89542
Fill in release date
amartini51 Feb 7, 2024
64bbdf2
Remove async usage
mattmassicotte Feb 8, 2024
f9e231e
Merge branch 'release/5.10_beta_3'
amartini51 Feb 13, 2024
38eb815
Remove disused grammar production
amartini51 Feb 15, 2024
4487819
Remove disused grammar production (#275)
amartini51 Feb 16, 2024
72f6eb7
Fix code in Result example (#269)
amartini51 Feb 22, 2024
e8a2d45
Remove the beta banner, for 5.10 FCS
amartini51 Feb 22, 2024
a93aa38
Update the version number for 5.10 FCS
amartini51 Feb 22, 2024
8aca7f9
Add placeholder for 5.10 FCS date
amartini51 Feb 22, 2024
a95a1d5
Fill in the 5.10 FCS release date
amartini51 Feb 22, 2024
2140ed7
Update grammar to include typed throws
amartini51 Feb 26, 2024
10b2abf
Start roughing in reference for typed throws
amartini51 Feb 29, 2024
ad097b3
Fixes task cancellation sample code
Diggory Feb 29, 2024
be75b85
Call out instance vs type APIs
amartini51 Feb 29, 2024
be6577a
Fix minor code listing issues
amartini51 Feb 29, 2024
7ecd269
Start outlining typed throws in the guide
amartini51 Feb 29, 2024
2bcbf22
Fixes task cancellation sample code (#279)
amartini51 Mar 2, 2024
5935a37
Fixes a dynamic type used in an example code in opaquetypes
Mar 3, 2024
9cfb993
Merge branch 'release/5.10'
amartini51 Mar 5, 2024
cc424f4
Fix prose to match code listing for opaque type (#280)
amartini51 Mar 6, 2024
af488cd
Add missing closing bracket
CMDJojo Mar 8, 2024
661f841
Add missing parenthesis in reference for macro names (#283)
amartini51 Mar 8, 2024
efefc23
Mark updates needed in the reference
amartini51 Mar 8, 2024
7e76588
Expand outline of the new section in the guide
amartini51 Mar 8, 2024
19b30eb
Add initial docs for 'package' access.
amartini51 Jan 4, 2024
6a8d0ce
Describe packages in the guide.
amartini51 Jan 4, 2024
29cadb2
List 'throws' variant spellings
amartini51 Mar 13, 2024
1d50797
Mention 'open' in discussion of inlinable code
amartini51 Mar 20, 2024
aaec275
Add 'package(set)' to the list
amartini51 Mar 20, 2024
40fbd2f
Define 'package' in the reference
amartini51 Mar 20, 2024
7801a94
Revise package explanation for clarity
amartini51 Mar 20, 2024
48c257a
Standardize on ordering in PRs
amartini51 Mar 20, 2024
8b7826c
Standardize ordering of pieces in PR template (#289)
amartini51 Mar 21, 2024
8aafa21
Add the build setting in Xcode as another example
amartini51 Mar 21, 2024
16a4135
Describe subtyping rules for throwing functions
amartini51 Mar 25, 2024
d724f48
Frame function subtypes in terms of error subtypes
amartini51 Mar 27, 2024
caf42a5
Fix cross reference and wording
amartini51 Mar 27, 2024
b99d8f4
Add the inference rules for throw error types
amartini51 Mar 28, 2024
ac8a86d
Add cross reference
amartini51 Mar 28, 2024
3c2816a
Add inference rule for generics/associated types
amartini51 Mar 28, 2024
a6a6af2
Align comments vertically
amartini51 Apr 10, 2024
2f1d35b
Fix one more indentation issue
amartini51 Apr 10, 2024
041e24b
Align comments vertically (#290)
amartini51 Apr 10, 2024
3ea9edd
Incorporate feedback from pitch
amartini51 Apr 10, 2024
a029497
Start expanding the outline
amartini51 Apr 18, 2024
0812c6e
Continue expanding the outline
amartini51 Apr 20, 2024
356f018
Expand the rest of the outline
amartini51 Apr 21, 2024
d733c2f
Start adding Swift 6 to the intro chapter
amartini51 Apr 12, 2024
da2ca7a
Add missing "Protocol" to the title
stzn Apr 24, 2024
2f0b1c5
Incorporate editorial feedback
amartini51 Apr 26, 2024
8781b5d
Iterate on punctuation
amartini51 Apr 26, 2024
8e8520d
Add missing "Protocol" to chapter title (#297)
amartini51 Apr 26, 2024
ccaf847
Add package access modifier [SE-0386] (#288)
amartini51 Apr 26, 2024
0730ff9
Add consuming and borrowing to lexicalstructure
yemibox51 May 8, 2024
c6a1813
Add 'borrowing' and 'consuming' to list of keywords (#303)
amartini51 May 8, 2024
fce624e
Add 'nonisolated' to list of keywords
amartini51 May 8, 2024
4baad40
Start incorporating editorial feedback
amartini51 May 15, 2024
8e906f2
Start sketching reference for @preconcurrency
amartini51 May 16, 2024
5b4a611
Name the ~= operator when introducing it
amartini51 May 16, 2024
a0ee3a9
Iterate on editorial feedback
amartini51 May 16, 2024
a5f8584
Name the ~= operator when introducing it (#306)
amartini51 May 17, 2024
206b29a
Expand remaining placeholders
amartini51 May 29, 2024
b79a599
Remove double space
amartini51 May 29, 2024
2fe85ff
Incorporate tech review.
amartini51 May 30, 2024
66287ca
Add example of throws(E) vs rethrows
amartini51 May 30, 2024
9f6a1bc
Revise wording around upcoming features
amartini51 May 30, 2024
74fd2d0
Call out strict concurrency as Swift 6 only
amartini51 May 31, 2024
a0e0ebd
Focus on the Swift version, not the Xcode version
amartini51 May 31, 2024
4805de5
Incorporate tech review
amartini51 May 31, 2024
275d1dd
Lead with the list
amartini51 Jun 4, 2024
d3bb2ea
Update error handling for typed throws [SE-0413] (#296)
amartini51 Jun 4, 2024
26bb01c
Fill in Swift 6 beta 1 date
amartini51 Jun 4, 2024
bf8c7cc
Add reference for @preconcurrency (#307)
amartini51 Jun 5, 2024
31beef1
Fix wording for Swift language mode
amartini51 Jun 5, 2024
adbee7d
Update compatibility chapter for Swift 6 (#308)
amartini51 Jun 5, 2024
26b9e20
Add a revision history entry
amartini51 May 31, 2024
bf1f666
Fix link markup error
amartini51 Jun 5, 2024
a4668f3
Avoid using a code voice ) next to a plain one.
amartini51 Jun 5, 2024
87d66f1
Fix links whose destination name changed
amartini51 Jun 5, 2024
50e65ed
Update version number for the Swift 6 beta period
amartini51 Jun 5, 2024
405ac5d
Add the beta banner, for 6.0 beta 1
amartini51 Jun 5, 2024
21f8387
Fill in Xcode version number
amartini51 May 31, 2024
6732133
Merge branch 'release/6.0_beta_1'
amartini51 Jun 10, 2024
aa571a0
Omit trailing "dot zero"
amartini51 Jun 10, 2024
3c61024
Normalize spelling of Swift version number in title (#312)
amartini51 Jun 11, 2024
4687956
Add visionOS operating-system
Jun 11, 2024
d8138f7
Add visionOS in some places it was missing (#313)
amartini51 Jun 11, 2024
e5e2726
Revise discussion of extensions and access control
amartini51 Jun 12, 2024
cf86ef1
Fix link syntax
amartini51 Jun 12, 2024
94fd7f9
Fix minor typo in Macros.md
Jun 13, 2024
ef8232d
Fix typo in macro name (#316)
amartini51 Jun 13, 2024
6943d5f
Reword extensions in access control (#315)
amartini51 Jun 13, 2024
352a44d
Attempt to explain buildLimitedAvailability better
ApolloZhu Jun 18, 2024
07a27aa
Add 'nonisolated' to list of keywords (#318)
amartini51 Jun 26, 2024
9abe4c6
Clarify the definition of a conflicting access
amartini51 Jun 27, 2024
3cfdb5c
The APIs from Synchronization are also atomic
amartini51 Jun 27, 2024
78d2092
Iterate on wording
amartini51 Jul 5, 2024
7b67a55
Ignore formatting clean-up on term/def lists
amartini51 Jul 5, 2024
f02472d
Emphasize type erasure in buildLimitedAvailability (#320)
amartini51 Jul 23, 2024
4094d03
Delete CODE_OF_CONDUCT.md
parispittman Jul 23, 2024
11a2b29
Remove code of conduct (#325)
amartini51 Jul 25, 2024
ee5d8bc
Start a revision history
amartini51 Jul 31, 2024
a67511c
Fill in Swift 6 beta 5 date
amartini51 Jun 26, 2024
b98d8ce
Update discussion of macros as default values
amartini51 Aug 7, 2024
88bfa3d
Add information about type checking
amartini51 Aug 8, 2024
2e71828
Merge branch 'release/6_beta_5'
amartini51 Aug 12, 2024
f315812
Put new term in italics
amartini51 Aug 16, 2024
d8a9c99
Incorporate TR correction
amartini51 Aug 19, 2024
f33f7a7
Clarify conflicting access (#319)
amartini51 Aug 22, 2024
00ea74d
Update discussion of macros as default values [SE-0422] (#328)
amartini51 Aug 22, 2024
7978971
Remove the beta banner, for Swift 6 FCS
amartini51 Sep 4, 2024
525c210
Merge & expand revision history
amartini51 Sep 4, 2024
95d4af5
Update language version number
amartini51 Sep 4, 2024
f06cfe5
Track a change in the stdlib
amartini51 Sep 6, 2024
8fc9ef0
Fill in Swift 6 FCS date
amartini51 Sep 10, 2024
6911440
Merge branch 'release/6'
amartini51 Sep 16, 2024
a1b9af9
Remove stray \ from grammar of an expression
amartini51 Sep 17, 2024
8ded8de
Remove stray \ from grammar of a declaration
amartini51 Sep 17, 2024
e0baff5
Remove stray hard breaks in the formal grammar (#1)
amartini51 Sep 18, 2024
612d3d8
Fix filename that doesn't follow convention
amartini51 Sep 23, 2024
c072c9e
Fix image name with incorrect suffix (#2)
amartini51 Sep 23, 2024
738372e
Alphabetized keywords in LexicalStructure.md
InsertCreativityHere Sep 24, 2024
963afa6
Add 'async' to the list of reserved keyword
InsertCreativityHere Sep 24, 2024
eb096cd
Alphabetize keywords in Lexical Structure (#330)
amartini51 Sep 24, 2024
8f7c1b7
Add 'async' to list of reserved keywords (#331)
amartini51 Sep 24, 2024
93d510d
Follow redirects, to detect more broken links
amartini51 Sep 26, 2024
ed73d15
Switch HTTP links to use HTTPS
amartini51 Sep 26, 2024
0933d39
Fix links whose USRs have changed
amartini51 Sep 26, 2024
ae76eef
Fix incorrect link URLs
amartini51 Sep 26, 2024
04b5fdc
Update links that are now in the Swiftlang org
amartini51 Sep 27, 2024
2e4f677
Specify code listing language as Swift
amartini51 Sep 27, 2024
1d0e452
Fix invalid HTML comments
amartini51 Sep 27, 2024
067a2e3
Add a redirect at the top level of DocC output
amartini51 Oct 2, 2024
5ad405d
Add missing apostrophe
lawrence-forooghian Oct 11, 2024
8e7ce3e
Use straight quote, matching existing content
amartini51 Oct 11, 2024
cb2fa41
Add missing apostrophe (#335)
amartini51 Oct 11, 2024
9c38553
Fix minor grammatical issue in Attributes.md
egrim Nov 13, 2024
fe0121d
Fix missing word in result builders reference (#339)
amartini51 Nov 13, 2024
52ae907
Adjust wording and punctuation
amartini51 Nov 21, 2024
27943ba
Fix type inference example in "Creating an Empty Array"
bohdany-cricut Nov 22, 2024
cca0641
Update the rendered version of the content
bohdany-cricut Nov 25, 2024
21215ce
Improve "Creating an Empty Array" section in Language Guide
bohdany-cricut Nov 25, 2024
4bf15fa
Fix terminology for string literal in example explanation
bohdany-cricut Nov 28, 2024
0e2e118
Fix terminology for string literal vs constant in explanation (#342)
amartini51 Dec 4, 2024
c331d12
Fix HTML end tag
amartini51 Dec 4, 2024
9adac21
Fix some broken links (#332)
amartini51 Dec 4, 2024
4f161b0
Specify code listings are Swift (#333)
amartini51 Dec 4, 2024
1b663f7
Fix invalid HTML comments (#334)
amartini51 Dec 4, 2024
95945de
Add a redirect at the top level (#336)
amartini51 Dec 4, 2024
6aea603
Fix HTML end tag
amartini51 Dec 9, 2024
b94cff7
Use an example that has more obvious invalid state
amartini51 Dec 18, 2024
d293687
Collapse adjacent blank lines
amartini51 Dec 19, 2024
cc24ca4
Minor clean-up to Git support files (#343)
amartini51 Jan 6, 2025
80c7f4a
Remove new trailing whitespace
amartini51 Jan 10, 2025
bd2914f
No need to duplicate pre-DocC tests
amartini51 Jan 10, 2025
d3819ea
Adjust phrasing
amartini51 Jan 10, 2025
da90103
Outline what 'some' means in parameters
amartini51 Jan 21, 2025
0f2144e
Fix em dash
amartini51 Jan 21, 2025
e0493a4
Fix em dash (#349)
amartini51 Jan 22, 2025
ab5fba0
Mention opaque parameters in the reference
amartini51 Jan 21, 2025
b0f35ec
Improve flow and make some details explicit
amartini51 Jan 22, 2025
8f37584
Add a forward reference for the sugar syntax
amartini51 Jan 22, 2025
61a6116
Expand the outline in the guide
amartini51 Jan 23, 2025
c51f443
Fill in the discussion in the guide
amartini51 Jan 24, 2025
7d77240
Clean up introductory wording
amartini51 Jan 29, 2025
66fa7be
Remove stray space
amartini51 Jan 29, 2025
808839a
Fix type inference example in "Creating an Empty Array" (#341)
amartini51 Jan 29, 2025
6a078bf
Improve concurrency example of transient invalid states (#344)
amartini51 Jan 29, 2025
a553108
Added reference documentation for the `available` attribute's `noasyn…
Rich-Warren Jan 29, 2025
d2e47c6
Merge branch 'swiftlang:main' into noasync-142580634
Rich-Warren Jan 30, 2025
094837e
Test commit.
Rich-Warren Jan 30, 2025
6bb2bd2
Incorporated Alex's feedback.
Rich-Warren Feb 4, 2025
0d21163
Tightened up the language and aimed it at a more advanced audience.
Rich-Warren Feb 5, 2025
f4a6479
- Additional modifications to the code listings.
Rich-Warren Feb 8, 2025
aabf428
Changed discussion of "destructors" to "deinitializers".
Rich-Warren Feb 12, 2025
dda90ab
Clarify platform comment & link to Swift.org
amartini51 Feb 17, 2025
69c71fd
Remove trailing spaces and hard tabs
amartini51 Feb 17, 2025
bbad415
Incorporated Colleen's Edits.
Rich-Warren Feb 17, 2025
6886c41
Incorporating Alex's feedback.
Rich-Warren Feb 17, 2025
927eaba
Rewrap long lines
amartini51 Feb 18, 2025
8b62dbf
Rewrite to use "noasync" only in code voice
amartini51 Feb 18, 2025
b000792
Add reference for noasync in @available [SE-0340] (#352)
amartini51 Feb 18, 2025
730309b
Remove trailing spaces and all hard tabs (#355)
amartini51 Feb 21, 2025
7e8b12c
Incorporate tech review from Slava
amartini51 Feb 24, 2025
bfd1d8f
Incorporate edits from Chuck
amartini51 Feb 25, 2025
adf4165
Use the DocC binary that ships with Xcode
amartini51 Mar 3, 2025
f451001
Fix incorrect throws syntax in error handling documentation
timakovao Mar 20, 2025
d4b33e2
Fix placement of 'throws' in function signatures (#359)
amartini51 Mar 24, 2025
a26a37b
Clarify in-source comment about platforms (#354)
amartini51 Mar 27, 2025
88ea77e
Use the DocC from Xcode (#357)
amartini51 Mar 27, 2025
ba907e5
Add discussion of 'some' on parameter types [SE-0341] (#350)
amartini51 Mar 27, 2025
d03b43d
Add a revision history entry for 6.1 FCS
amartini51 Mar 28, 2025
02abfec
Update Swift and Xcode versions
amartini51 Mar 28, 2025
bc3cefb
Fix link markup
amartini51 Mar 28, 2025
378f76a
Merge branch 'release/6.1'
amartini51 Mar 31, 2025
2c399f8
Merge remote-tracking branch 'upstream/main' into Swift-6.1
Apr 8, 2025
9472a81
Update TSPL to 6.1
Apr 8, 2025
97a9baf
Update TSPL to 6.1
Apr 8, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# This file is a list of commits that made uninteresting formatting
# changes, which should be ignored by git-blame, so that it can instead
# display more the relevant history and attribution information.
#
# To use this file for a single command, pass it as follows:
#
# git blame --ignore-revs-file .git-blame-ignore-revs <somefile>
#
# To use this file for all blame operations, run the following command:
#
# git config --local blame.ignoreRevsFile .git-blame-ignore-revs
#
# For more information, see the git-blame(1) man page's discussion of
# the --ignore-revs-file option, and the git-config(1) man page's
# discussion of the blame.ignoreRevsFile option.

# Convert RST to markdown
96f0925407c6bd9eadd9d58d253bad3e1ef7a9f2

# Convert the formal grammar to markdown
4039ee0ef4e69d2cf6460861f9444a499503db16

# Clean up formatting of term-definition lists
c914c44ccdbbda757ee43e5d4c777abf24391a1a
66 changes: 66 additions & 0 deletions .git-order-file
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# This file lists the chapters of TSPL, in the order they appear in the
# book. When reviewing changes, the diff can be easier to read when it
# appears in this order.
#
# To use this file for single command, run a command like the following:
#
# git log -O .git-order-file
# git diff -O .git-order-file
#
# To use it for all diffs, run the following command:
#
# git config --local diff.orderFile .git-order-file
#
# For more information, see the git-log(1) and git-diff(1) man pages'
# discussions of the -O option, and the git-config(1) man page's
# discussion of diff.orderFile option.

TSPL.docc/GuidedTour/AboutSwift.md
TSPL.docc/GuidedTour/Compatibility.md
TSPL.docc/GuidedTour/GuidedTour.md

TSPL.docc/LanguageGuide/TheBasics.md
TSPL.docc/LanguageGuide/BasicOperators.md
TSPL.docc/LanguageGuide/StringsAndCharacters.md
TSPL.docc/LanguageGuide/CollectionTypes.md
TSPL.docc/LanguageGuide/ControlFlow.md
TSPL.docc/LanguageGuide/Functions.md
TSPL.docc/LanguageGuide/Closures.md
TSPL.docc/LanguageGuide/Enumerations.md
TSPL.docc/LanguageGuide/ClassesAndStructures.md
TSPL.docc/LanguageGuide/Properties.md
TSPL.docc/LanguageGuide/Methods.md
TSPL.docc/LanguageGuide/Subscripts.md
TSPL.docc/LanguageGuide/Inheritance.md
TSPL.docc/LanguageGuide/Initialization.md
TSPL.docc/LanguageGuide/Deinitialization.md
TSPL.docc/LanguageGuide/OptionalChaining.md
TSPL.docc/LanguageGuide/ErrorHandling.md
TSPL.docc/LanguageGuide/Concurrency.md
TSPL.docc/LanguageGuide/Macros.md
TSPL.docc/LanguageGuide/TypeCasting.md
TSPL.docc/LanguageGuide/NestedTypes.md
TSPL.docc/LanguageGuide/Extensions.md
TSPL.docc/LanguageGuide/Protocols.md
TSPL.docc/LanguageGuide/Generics.md
TSPL.docc/LanguageGuide/OpaqueTypes.md
TSPL.docc/LanguageGuide/AutomaticReferenceCounting.md
TSPL.docc/LanguageGuide/MemorySafety.md
TSPL.docc/LanguageGuide/AccessControl.md
TSPL.docc/LanguageGuide/AdvancedOperators.md

TSPL.docc/ReferenceManual/AboutTheLanguageReference.md
TSPL.docc/ReferenceManual/LexicalStructure.md
TSPL.docc/ReferenceManual/Types.md
TSPL.docc/ReferenceManual/Expressions.md
TSPL.docc/ReferenceManual/Statements.md
TSPL.docc/ReferenceManual/Declarations.md
TSPL.docc/ReferenceManual/Attributes.md
TSPL.docc/ReferenceManual/Patterns.md
TSPL.docc/ReferenceManual/GenericParametersAndArguments.md
TSPL.docc/ReferenceManual/SummaryOfTheGrammar.md

TSPL.docc/RevisionHistory/RevisionHistory.md

# Files that don't match a pattern listed above, such as assets and
# build scripts, will appear at the end of the diff.
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
*.md linguist-detectable=true
*.md linguist-documentation=false
*.md diff=markdown
31 changes: 31 additions & 0 deletions .github/ISSUE_TEMPLATE/BUG_REPORT.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Content Issue
description: Something is missing or incorrect
labels: ["Content Issue"]
body:
- type: markdown
attributes:
value: |
Thank you for contributing to "The Swift Programming Language"!

Before you submit your issue, please provide the relevant details in the text areas below.
- type: textarea
attributes:
label: Location
description: |
The URL of the content that has a problem.
validations:
required: false
- type: textarea
attributes:
label: Description
description: |
A short description of what's wrong.
validations:
required: true
- type: textarea
attributes:
label: Correction
description: |
What should the documentation say instead?
validations:
required: false
36 changes: 36 additions & 0 deletions .github/ISSUE_TEMPLATE/FEATURE_REQUEST.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Enhancement
description: A suggestion for new content
labels: [Enhancement]
body:
- type: markdown
attributes:
value: |
Thank you for contributing to "The Swift Programming Language"!

Before you submit your issue, please provide the relevant details in the text areas below.
- type: textarea
attributes:
label: Location
description: |
The URL of the chapter or section where the new content would go.
validations:
required: false
- type: textarea
attributes:
label: Description
description: |
A short description of your proposed addition.
validations:
required: true
- type: textarea
attributes:
label: Motivation
description: A description of the use-case this proposed documentation will serve.
validations:
required: false
- type: textarea
attributes:
label: Alternatives Considered
description: If you considered alternative approaches, please include them here.
validations:
required: false
12 changes: 12 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
blank_issues_enabled: yes

contact_links:
- name: Documentation Forums Category
url: https://forums.swift.org/c/92
about: Ask and answer questions about writing documentation
- name: Swift-DocC Forums Category
url: https://forums.swift.org/c/80
about: Ask and answer questions about using Swift-DocC
- name: Swift-DocC Documentation
url: https://www.swift.org/documentation/docc/
about: Learn about how to use Swift-DocC for authoring documentation
8 changes: 8 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<!-- If this pull request incorporates language changes from a Swift Evolution proposal, add the SE number in square brackets at the end of the PR title. -->

<!-- What's in this pull request? -->
Replace this paragraph with your rationale and a brief summary of what changed.

<!-- Link to the issue that this pull request fixes, if applicable. -->
Fixes: https://github.com/apple/swift-book/issues/####
Fixes: rdar://####
8 changes: 6 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
.DS_Store
.docc-build
.swiftpm
/.build
/Package.resolved
/TSPL.docc/header.html
/swift-book
node_modules
package-lock.json
**/.docc-build
docs

103 changes: 103 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
# Contributing to *The Swift Programming Language* book

By submitting a pull request,
you represent that you have the right to license your contribution
to Apple and the community,
and agree by submitting the patch
that your contributions are licensed under
the [Swift license](https://swift.org/LICENSE.txt).

For small changes,
like typo fixes and revisions within a few paragraphs,
the discussion of those changes is usually small enough
to be part of the pull request.
For large changes,
like new chapters and sections,
start a thread in the [Swift forums][forum]
to discuss your approach and identify possible issues
before you invest a lot of time in writing.
In general,
the amount of discussion around a change before making a pull request
corresponds to the size of that change.

Content in this book follows [Apple Style Guide][asg]
and [this book’s style guide][tspl-style].

[asg]: https://help.apple.com/applestyleguide/
[forum]: https://forums.swift.org/c/swift-documentation/92
[tspl-style]: /Style.md

## Working on a feature branch

If this is your first contribution,
start by making a fork of the Git repository.

In your fork,
make a new branch starting at `main`
with a brief, descriptive name.
Branch names are ephemeral:
When a pull request is merged,
the merge commit doesn’t include name of your feature branch.

If you need to incorporate changes from `main` or resolve a merge conflict,
merge `main` into your feature branch.
Before creating a pull request,
you can instead rebase your feature branch onto `main` if you prefer,
but don't rebase commits that are part of a pull request.

## Writing commit messages

Use the Git commit message to communicate with other contributors —
both the people working on the project now
who are reviewing your changes,
and people who join the project in the future
who will need to understand what you changed and why.

Every commit starts with a one-sentence summary.
The summary usually fits in 50 characters,
but it's ok to exceed that amount occasionally
if rewriting for brevity would make it too hard to read.
If it's hard to write a good summary,
try breaking your changes into multiple smaller commits.

If you can't explain the commit entirely in its summary,
skip one line and add additional information.
This additional information includes information like
the reasons for the change,
the approach you took when making it,
alternatives you considered,
and a summary of what you changed.
Hard wrap these lines at 72 characters
and leave a blank line between paragraphs.
The body of a commit is plain text,
not markdown like the content of the book.

Following these formatting conventions in your commit
makes it easier to read
in places like the output from `git` and notification emails.
Most text editors can help you write a commit message
by marking lines that are too long
and hard wrapping text automatically.

## Submitting a pull request

Use the following steps when creating a new pull request:

1. Test that your changes build locally by running `docc preview TSPL.docc`.
2. Create a pull request in this repository.
3. Write a brief message in the pull request to introduce your work in context.

Within a few days,
someone will assign reviewers and start a build in CI.

During the review of the pull request,
add new commits on your branch to incorporate feedback,
but don’t rebase or force push.
Rewriting the branch's history
makes it hard for reviewers to see
what changed since the last time they reviewed your changes.
If there are merge conflicts,
merge `main` into your branch or use the GitHub web UI
to resolve the conflicts when accepting the pull request.

After a pull request is merged, delete the feature branch.
Loading