Skip to content

Commit 37607f6

Browse files
committed
v8
1 parent 707652b commit 37607f6

File tree

4 files changed

+28
-69
lines changed

4 files changed

+28
-69
lines changed

.github/workflows/cd.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
token: ${{ secrets.GITHUB_TOKEN }}
1818
env: pods
1919

20-
- uses: actions/checkout@v2
20+
- uses: actions/checkout@v3
2121
with:
2222
submodules: true
2323

.github/workflows/ci.yml

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,21 @@
11
name: CI
2+
23
on:
34
workflow_dispatch:
5+
workflow_call:
46
pull_request:
57
paths:
68
- Sources/**
79
- Tests/**
810
- .github/workflows/ci.yml
911
- PromiseKit.xcodeproj/**
10-
jobs:
11-
auto-cancel:
12-
runs-on: ubuntu-latest
13-
steps:
14-
- uses: technote-space/auto-cancel-redundant-job@v1
1512

13+
concurrency:
14+
group: ${{ github.ref }}
15+
cancel-in-progress: true
16+
17+
jobs:
1618
linux:
17-
needs: auto-cancel
1819
runs-on: ubuntu-latest
1920
strategy:
2021
matrix:
@@ -31,7 +32,6 @@ jobs:
3132

3233
linux-code-cov:
3334
name: linux
34-
needs: auto-cancel
3535
runs-on: ubuntu-latest
3636
strategy:
3737
matrix:

.github/workflows/publish.yml

+13-14
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,32 @@
11
name: Publish
2+
23
on:
34
workflow_dispatch:
45
inputs:
56
version:
6-
description: Version to publish
7+
description: semantic version to publish
78
required: true
9+
10+
concurrency:
11+
group: publish-{{github.event.inputs.version}}
12+
cancel-in-progress: true
13+
814
jobs:
915
ci:
10-
runs-on: ubuntu-latest
11-
steps:
12-
- uses: aurelien-baudet/workflow-dispatch@v2
13-
with:
14-
workflow: CI
15-
token: ${{ secrets.JAZZY_PAT }}
16-
wait-for-completion: true
16+
uses: ./.github/workflows/ci.yml
1717

1818
lint:
19-
runs-on: macos-10.15
19+
runs-on: macos-latest
2020
strategy:
2121
matrix:
2222
xcode:
23-
- ^10
24-
- ^11
25-
- ^12
23+
- ^13
24+
- ^14
2625
steps:
2726
- uses: maxim-lobanov/setup-xcode@v1
2827
with:
2928
xcode-version: ${{ matrix.xcode }}
30-
- uses: actions/checkout@v2
29+
- uses: actions/checkout@v3
3130
with:
3231
submodules: true
3332
- run: pod lib lint --fail-fast --allow-warnings
@@ -38,7 +37,7 @@ jobs:
3837
env:
3938
v: ${{ github.event.inputs.version }}
4039
steps:
41-
- uses: actions/checkout@v2
40+
- uses: actions/checkout@v3
4241
with:
4342
fetch-depth: 0 # zero means “all” (or push fails)
4443
- name: Update committed versions

README.md

+7-47
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,6 @@ pod used in many of the most popular apps in the world.
3333

3434
[![codecov](https://codecov.io/gh/mxcl/PromiseKit/branch/master/graph/badge.svg)](https://codecov.io/gh/mxcl/PromiseKit)
3535

36-
# PromiseKit 6
37-
38-
[Release notes and migration guide][PMK6].
39-
4036
# Quick Start
4137

4238
In your [Podfile]:
@@ -45,11 +41,13 @@ In your [Podfile]:
4541
use_frameworks!
4642

4743
target "Change Me!" do
48-
pod "PromiseKit", "~> 6.8"
44+
pod "PromiseKit", "~> 8"
4945
end
5046
```
5147

52-
> The above gives an Xcode warning? See our [Installation Guide].
48+
PromiseKit 8 supports recent Xcodes (13+). Some Podspecs were
49+
[dropped as a result](https://github.com/mxcl/PromiseKit/pull/1318).
50+
Pull requests are welcome.
5351

5452
PromiseKit 6, 5 and 4 support Xcode 8.3, 9.x and 10.0; Swift 3.1,
5553
3.2, 3.3, 3.4, 4.0, 4.1, 4.2, 4.3 and 5.0 (development snapshots); iOS, macOS,
@@ -73,20 +71,6 @@ tools.
7371

7472
[Get Professional Support for PromiseKit with TideLift](https://tidelift.com/subscription/pkg/cocoapods-promisekit?utm_source=cocoapods-promisekit&utm_medium=referral&utm_campaign=readme).
7573

76-
# PromiseKit is Thousands of Hours of Work
77-
78-
Hey there, I’m Max Howell. I’m a prolific producer of open source software and
79-
probably you already use some of it (I created [`brew`]). I work full-time on
80-
open source and it’s hard; currently *I earn less than minimum wage*. Please
81-
help me continue my work, I appreciate it 🙏🏻
82-
83-
<a href="https://www.patreon.com/mxcl">
84-
<img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" width="160">
85-
</a>
86-
87-
[Other ways to say thanks](http://mxcl.dev/#donate).
88-
89-
[`brew`]: https://brew.sh
9074

9175
# Documentation
9276

@@ -121,12 +105,12 @@ All our extensions are separate repositories at the [PromiseKit organization].
121105
Then don’t have them:
122106

123107
```ruby
124-
pod "PromiseKit/CorePromise", "~> 6.8"
108+
pod "PromiseKit/CorePromise", "~> 8"
125109
```
126110

127111
> *Note:* Carthage installations come with no extensions by default.
128112
129-
## Choose Your Networking Library
113+
## Networking
130114

131115
Promise chains commonly start with a network operation. Thus, we offer
132116
extensions for `URLSession`:
@@ -155,32 +139,8 @@ func makeUrlRequest() throws -> URLRequest {
155139
}
156140
```
157141

158-
And [Alamofire]:
159-
160-
```swift
161-
// pod 'PromiseKit/Alamofire' # https://github.com/PromiseKit/Alamofire-
162-
163-
firstly {
164-
Alamofire
165-
.request("http://example.com", method: .post, parameters: params)
166-
.responseDecodable(Foo.self)
167-
}.done { foo in
168-
//
169-
}.catch { error in
170-
//
171-
}
172-
```
173-
174-
Nowadays, considering that:
175-
176-
* We almost always POST JSON
177-
* We now have `JSONDecoder`
178-
* PromiseKit now has `map` and other functional primitives
179-
* PromiseKit (like Alamofire, but not raw-`URLSession`) also defaults to having
180-
callbacks go to the main thread
142+
Support for Alamofire is welcome, please submit a PR.
181143

182-
We recommend vanilla `URLSession`. It uses fewer black boxes and sticks closer to the metal. Alamofire was essential until the three bullet points above
183-
became true, but nowadays it isn’t really necessary.
184144

185145
# Support
186146

0 commit comments

Comments
 (0)