Skip to content

Commit ee6d243

Browse files
Made requested changes for Contributing.md
1 parent db38cc7 commit ee6d243

File tree

1 file changed

+21
-64
lines changed

1 file changed

+21
-64
lines changed

Documentation/Contributing.md

Lines changed: 21 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,37 @@
1-
# Swift Package Manager: Quick Start
2-
Swift Package Manager (SwiftPM) is a tool for building, testing and managing Swift project dependencies.
3-
In order to use it you will need Swift 3.0 or greater.
4-
SwiftPM is also included in Xcode 8.0 and above.
5-
For usage getting started: [https://swift.org/getting-started/#using-the-package-manager](https://swift.org/getting-started/#using-the-package-manager)
6-
For overview and examples: [https://swift.org/package-manager](https://swift.org/package-manager/)
7-
81
## Code Contributions
9-
Everyone is welcome to contribute to SwiftPM, submitting fixes, enhancement etc.
10-
Find out how previous coding decisions for SwiftPM evolution have been made: https://github.com/apple/swift-package-manager/blob/main/Documentation/Internals/PackageManagerCommunityProposal.md
2+
There are several types of contributions one can make. Bug fixes, documentation and enhancements that do not materially change the user facing semantics of Swift Package Manager should be submitted directly as PR.
3+
4+
Larger changes that do materially change the semantics of Swift Package Manager (e.g. changes to the manifest format or behavior) are required to go through [Swift Evolution Process](https://github.com/apple/swift-evolution/blob/master/process.md).
5+
To see how previous evolution decisions for SwiftPM have been made check out https://github.com/apple/swift-package-manager/blob/main/Documentation/Internals/PackageManagerCommunityProposal.md.
6+
7+
For more information about making contributions to the Swift project in general see [Swift Contribution Guide](https://swift.org/contributing/)
8+
9+
### Ways to contribute
10+
Report a bug guide: https://github.com/apple/swift-package-manager/blob/main/Documentation/Resources.md#reporting-a-good-swiftpm-bug.
11+
JIRA Bug Tracker (a place where you can open bugs, enhancements to start to contribute): [https://bugs.swift.org/browse/SR-13640?jql=component%20%3D%20%22Package%20Manager%22](https://bugs.swift.org/browse/SR-13640?jql=component%20%3D%20%22Package%20Manager%22).
1112

1213
### Requirements
13-
You have multiple ways to setup your development environment, here we will focus on 2:
14-
A) *[Using Xcode](#using-xcode)* or B) [Using *the standalone Swift toolchain*](#using-standalone).
14+
You have multiple ways to setup your development environment, here we will focus on two:
15+
* [Using Xcode](#using-xcode)
16+
* [Using a standalone Swift toolchain](#using-standalone).
1517

1618
<a id="using-xcode">*A) _Use Xcode to setup what you need_*.</a>
1719
Xcode is only available for macOS.
1820

19-
1. Install Xcode 12 - [https://developer.apple.com/xcode](https://developer.apple.com/xcode/)
20-
2. Make sure you have at least SwiftPM 5.3:
21+
1. Install latest Xcode - [https://developer.apple.com/xcode](https://developer.apple.com/xcode/)
22+
2. Confirm you have the latest SwiftPM:
2123
```
2224
$> swift package --version
2325
Swift Package Manager - Swift 5.3.0
2426
```
25-
3. Make sure you have at least Swift 5.3:
27+
3. Confirm you have the latest Swift version:
2628
```
2729
$> swift --version
2830
Apple Swift version 5.3
2931
```
30-
If you were able to do and verify the steps above, go to [**Getting Started**](#getting-started)
31-
32-
<a id="using-standalone">*B) _Use standalone Swift toolchain</a>: 2a) [On macOS](#on-macos) or 2b) [On Linux](#on-linux)_*.
33-
34-
Procedure valid for macOS and Linux.
3532

36-
1. Pull the Swift repository:
37-
```
38-
git clone https://github.com/apple/swift.git
39-
```
40-
- 2 a. <a id="on-macos">On macOS</a>
41-
```
42-
PATH/TO/REPO/swift/utils/build-script --preset=buildbot_swiftpm_macos_platform,tools=RA,stdlib=RA
43-
```
44-
- 2b. <a id="on-linux">On Linux</a>
45-
```
46-
PATH/TO/REPO/swift/utils/build-script --preset=buildbot_swiftpm_linux_platform,tools=RA,stdlib=RA
47-
```
33+
<a id="using-standalone">*B) _Use standalone Swift toolchain_*</a>:
34+
Download the toolchain from https://swift.org/download/ (or use tools like swiftenv) and confirm its installed correctly like step 2 and 3.
4835

4936
### <a name="getting-started">Getting Started</a>
5037
1. Pull the SwiftPM repository:
@@ -56,11 +43,8 @@ git clone https://github.com/apple/swift-package-manager.git
5643
$> cd swift-package-manager
5744
$> swift build
5845
```
59-
If the build process ends with exit code 0, the build is successful (we have an Enhancement Radar to implement a message for successful build and a short output on where the generated binaries are: rdar://69970428).
60-
After a successful build (currently), you should see something like this:
61-
```
62-
[476/476] Linking swift-package
63-
```
46+
Make sure the build did not fail.
47+
6448
A `.build/` folder will be generated and it should have inside a similar structure (including build binaries):
6549
```
6650
artifacts/
@@ -82,23 +66,6 @@ If you need to build the generated binaries, run `swift-build` in inside `.build
8266
If you are contributing using macOS, the best option is to use Xcode to build and run test SwiftPM.
8367

8468
### Troubleshooting
85-
* If during `swift build` you encounter these outputs:
86-
```
87-
/../swift-package-manager/Sources/SPMTestSupport/misc.swift:93:35: warning: parameter 'file' with default argument '#file' passed to parameter 'file', whose default argument is '#filePath'
88-
XCTFail("\(error)", file: file, line: line)
89-
^
90-
/../swift-package-manager/Sources/SPMTestSupport/misc.swift:37:26: note: did you mean for parameter 'file' to default to '#filePath'?
91-
file: StaticString = #file,
92-
^~~~~
93-
#filePath
94-
/../swift-package-manager/Sources/SPMTestSupport/misc.swift:93:35: note: add parentheses to silence this warning
95-
XCTFail("\(error)", file: file, line: line)
96-
^
97-
( )
98-
```
99-
Do not worry, since those are known warnings that will be addressed at some point.
100-
Warnings differ depending on the platform and they can be seen from time to time due the amount of contributions.
101-
Our goal is to constantly monitor warnings and work on fix them (even if they are not affecting a successful implementation).
10269
* If during `swift build` you encounter this error:
10370
```
10471
/../apple-repos/swift-package-manager/.build/checkouts/swift-driver/Sources/SwiftDriver/Explicit Module Builds/InterModuleDependencyGraph.swift:102:3: error: unknown attribute '_spi'
@@ -123,10 +90,6 @@ swift package update
12390
Alternatively, if you are using Xcode, you can update to the latest version of all packages:
12491
**Xcode App** > *File* > *Swift Packages* > *Update to Latest Package Versions*
12592

126-
### Find your way to contribute
127-
Report a bug guide: https://github.com/apple/swift-package-manager/blob/main/Documentation/Resources.md#reporting-a-good-swiftpm-bug.
128-
JIRA Bug Tracker (a place where you can open bugs, enhancements to start to contribute): [https://bugs.swift.org/browse/SR-13640?jql=component%20%3D%20%22Package%20Manager%22](https://bugs.swift.org/browse/SR-13640?jql=component%20%3D%20%22Package%20Manager%22).
129-
13093
### Commits / PRs
13194
1. Fork: https://github.com/apple/swift-package-manager
13295
2. Clone a working copy of your fork
@@ -141,17 +104,11 @@ JIRA Bug Tracker (a place where you can open bugs, enhancements to start to cont
141104

142105
### Community and Support
143106
If you want to connect with the Swift community you can:
144-
* Use Swift Forums: [https://forums.swift.org](https://forums.swift.org/)
107+
* Use Swift Forums: [https://forums.swift.org/c/development/SwiftPM](https://forums.swift.org/c/development/SwiftPM)
145108
* Contact the CODEOWNERS: https://github.com/apple/swift-package-manager/blob/main/CODEOWNERS
146109
(mailing lists are usually the best place to go for help: [[email protected]](mailto:[email protected]), [[email protected]](mailto:[email protected]), [[email protected]](mailto:[email protected])
147110

148111
### Additional Links
149-
* Official Apple GitHub
150-
[https://github.com/apple](https://github.com/apple)
151-
* Swift Package Manager GitHub
152-
[https://github.com/apple/swift-package-manager](https://github.com/apple/swift-package-manager)
153-
* Setup Development
154-
[https://github.com/apple/swift-package-manager/blob/main/Documentation/Development.md](https://github.com/apple/swift-package-manager/blob/main/Documentation/Development.md)
155112
* `Swift.org` Contributing page
156113
[https://swift.org/contributing/](https://swift.org/contributing/)
157114
* License

0 commit comments

Comments
 (0)