Add PromiseKit dependency

- Added PromiseKit dependency
This commit is contained in:
2018-11-15 22:08:00 -04:00
parent 2689d86c18
commit be7b6b5881
541 changed files with 46282 additions and 0 deletions

View File

@@ -0,0 +1,324 @@
branches:
only:
- master
- ^\d+\.\d+\.\d+$
stages:
- lint
- compile
- test
- deploy
jobs:
include:
- &macOS
stage: compile
osx_image: xcode8.3
env: SWIFT=3.1
name: macOS / Swift 3.1
os: osx
language: objective-c
install:
xcodebuild -scheme PromiseKit -target PromiseKit SWIFT_VERSION=$SWIFT -quiet SWIFT_TREAT_WARNINGS_AS_ERRORS=YES build
script: "true"
- <<: *macOS
osx_image: xcode9.2
env: SWIFT=3.2
name: macOS / Swift 3.2
- <<: *macOS
osx_image: xcode9.4
env: SWIFT=3.3
name: macOS / Swift 3.3
- <<: *macOS
osx_image: xcode10
env: SWIFT=3.4
name: macOS / Swift 3.4
- <<: *macOS
osx_image: xcode9.2
env: SWIFT=4.0
name: macOS / Swift 4.0
- <<: *macOS
osx_image: xcode9.4
env: SWIFT=4.1
name: macOS / Swift 4.1
- <<: *macOS
osx_image: xcode10
env: SWIFT=4.2
name: macOS / Swift 4.2
stage: test
script:
xcodebuild -scheme PromiseKit test -enableCodeCoverage YES
after_success:
bash <(curl -s https://codecov.io/bash)
- &iOS
stage: compile
osx_image: xcode8.3
env: SWIFT=3.1 DST="OS=10.3.1,name=iPhone SE"
name: iOS 10 / Swift 3.1
os: osx
language: objective-c
install:
xcodebuild -scheme PromiseKit -target PromiseKit SWIFT_VERSION=$SWIFT -destination "$DST" -quiet SWIFT_TREAT_WARNINGS_AS_ERRORS=YES build
script: "true"
- <<: *iOS
osx_image: xcode9.2
env: SWIFT=3.2 DST="OS=11.2,name=iPhone SE"
name: iOS 11 / Swift 3.2
- <<: *iOS
osx_image: xcode9.4
env: SWIFT=3.3 DST="OS=11.4,name=iPhone SE"
name: iOS 11 / Swift 3.3
- <<: *iOS
osx_image: xcode10
env: SWIFT=3.4 DST="OS=12.0,name=iPhone SE"
name: iOS 12 / Swift 3.4
- <<: *iOS
osx_image: xcode9.2
env: SWIFT=4.0 DST="OS=11.2,name=iPhone SE"
name: iOS 11 / Swift 4.0
- <<: *iOS
osx_image: xcode
env: SWIFT=4.1 DST="OS=8.4,name=iPhone 4s"
name: iOS 8 / Swift 4.1
- <<: *iOS
osx_image: xcode9.4
env: SWIFT=4.1 DST="OS=9.3,name=iPhone 5s"
name: iOS 9 / Swift 4.1
- <<: *iOS
osx_image: xcode9.4
env: SWIFT=4.1 DST="OS=10.3.1,name=iPhone SE"
name: iOS 10 / Swift 4.1
- <<: *iOS
osx_image: xcode9.4
env: SWIFT=4.1 DST="OS=11.4,name=iPhone SE"
name: iOS 11 / Swift 4.1
- <<: *iOS
osx_image: xcode10
env: SWIFT=4.2 DST="OS=12.0,name=iPhone SE"
name: iOS 12 / Swift 4.2
stage: test
script:
xcodebuild -scheme PromiseKit -destination "$DST" test -enableCodeCoverage YES
after_success:
bash <(curl -s https://codecov.io/bash)
- &tvOS
stage: compile
name: tvOS 10 / Swift 3.1
osx_image: xcode8.3
env: SWIFT=3.1 DST="OS=10.2,name=Apple TV 1080p"
os: osx
language: objective-c
install:
xcodebuild -scheme PromiseKit -target PromiseKit SWIFT_VERSION=$SWIFT -destination "$DST" -quiet SWIFT_TREAT_WARNINGS_AS_ERRORS=YES build
script: "true"
- <<: *tvOS
osx_image: xcode9.2
env: SWIFT=3.2 DST="OS=11.2,name=Apple TV"
name: tvOS 11 / Swift 3.2
- <<: *tvOS
osx_image: xcode9.4
env: SWIFT=3.3 DST="OS=11.4,name=Apple TV"
name: tvOS 11 / Swift 3.3
- <<: *tvOS
osx_image: xcode10
env: SWIFT=3.4 DST="OS=11.4,name=Apple TV"
name: tvOS 11 / Swift 3.4
- <<: *tvOS
osx_image: xcode9.2
env: SWIFT=4.0 DST="OS=11.2,name=Apple TV"
name: tvOS 11 / Swift 4.0
- <<: *tvOS
osx_image: xcode9.3
env: SWIFT=4.1 DST="OS=9.2,name=Apple TV 1080p"
name: tvOS 9 / Swift 4.1
- <<: *tvOS
osx_image: xcode9.3
env: SWIFT=4.1 DST="OS=10.2,name=Apple TV 1080p"
name: tvOS 10 / Swift 4.1
- <<: *tvOS
osx_image: xcode9.4
env: SWIFT=4.1 DST="OS=11.4,name=Apple TV"
name: tvOS 11 / Swift 4.1
- <<: *tvOS
osx_image: xcode10
env: SWIFT=4.2 DST="OS=12.0,name=Apple TV"
name: tvOS 12 / Swift 4.2
stage: test
script:
xcodebuild -scheme PromiseKit -destination "$DST" test -enableCodeCoverage YES
after_success:
bash <(curl -s https://codecov.io/bash)
- &watchOS
stage: compile
osx_image: xcode10
env: SWIFT=4.2 DST="OS=5.0,name=Apple Watch Series 3 - 42mm"
name: watchOS 5 / Swift 4.2
os: osx
language: objective-c
script:
xcodebuild -scheme PromiseKit SWIFT_VERSION=$SWIFT -destination "$DST" -quiet SWIFT_TREAT_WARNINGS_AS_ERRORS=YES build
- <<: *watchOS
osx_image: xcode8.3
env: SWIFT=3.1 DST="OS=3.2,name=Apple Watch - 38mm"
name: watchOS 3 / Swift 3.1
- <<: *watchOS
osx_image: xcode9.2
env: SWIFT=3.2 DST="OS=4.2,name=Apple Watch - 38mm"
name: watchOS 4 / Swift 3.2
- <<: *watchOS
osx_image: xcode9.4
env: SWIFT=3.3 DST="OS=4.3,name=Apple Watch - 38mm"
name: watchOS 4 / Swift 3.3
- <<: *watchOS
osx_image: xcode10
env: SWIFT=3.4 DST="OS=5.0,name=Apple Watch Series 3 - 42mm"
name: watchOS 5 / Swift 3.4
- <<: *watchOS
osx_image: xcode9.2
env: SWIFT=4.0 DST="OS=4.2,name=Apple Watch - 38mm"
name: watchOS 4 / Swift 4.0
- <<: *watchOS
osx_image: xcode9.3
env: SWIFT=4.1 DST="OS=2.2,name=Apple Watch - 38mm"
name: watchOS 2 / Swift 4.1
- <<: *watchOS
osx_image: xcode9.3
env: SWIFT=4.1 DST="OS=3.2,name=Apple Watch - 38mm"
name: watchOS 3 / Swift 4.1
- <<: *watchOS
osx_image: xcode9.4
env: SWIFT=4.1 DST="OS=4.3,name=Apple Watch - 38mm"
name: watchOS 4 / Swift 4.1
- <<: *watchOS
osx_image: xcode10
env: SWIFT=4.2 DST="OS=5.0,name=Apple Watch Series 3 - 42mm"
name: watchOS 5 / Swift 4.2
- &pod
stage: lint
osx_image: xcode10
env: SWIFT=4.2
name: pod lib lint --swift-version=4.2
os: osx
language: objective-c
before_install: |
mv .github/PromiseKit.podspec .
gem install cocoapods --prerelease --version 1.6.0.beta.1
script:
pod lib lint --subspec=PromiseKit/CorePromise --fail-fast --swift-version=$SWIFT
- <<: *pod
osx_image: xcode9.4
env: SWIFT=4.1
name: pod lib lint --swift-version=4.1
- <<: *pod
osx_image: xcode9.2
env: SWIFT=4.0
name: pod lib lint --swift-version=4.0
- <<: *pod
osx_image: xcode10
env: SWIFT=3.4
name: pod lib lint --swift-version=3.4
- <<: *pod
osx_image: xcode9.4
env: SWIFT=3.3
name: pod lib lint --swift-version=3.3
- <<: *pod
osx_image: xcode9.2
env: SWIFT=3.2
name: pod lib lint --swift-version=3.2
- <<: *pod
osx_image: xcode8.3
env: SWIFT=3.1
name: pod lib lint --swift-version=3.1
- &linux
stage: compile
env: SWIFT_BUILD_VERSION=3 SWIFT_VERSION=4.0.3
name: Linux / Swift 3.2
os: linux
dist: trusty
sudo: required
language: generic
before_install:
eval "$(curl -sL https://swiftenv.fuller.li/install.sh)"
install:
swift build -Xswiftc -swift-version -Xswiftc $SWIFT_BUILD_VERSION
- <<: *linux
env: SWIFT_BUILD_VERSION=3 SWIFT_VERSION=4.1.2
name: Linux / Swift 3.3
- <<: *linux
env: SWIFT_BUILD_VERSION=3 SWIFT_VERSION=4.2
name: Linux / Swift 3.4
- <<: *linux
env: SWIFT_BUILD_VERSION=4 SWIFT_VERSION=4.0.3
name: Linux / Swift 4.0
stage: test
install: swift test -Xswiftc -swift-version -Xswiftc 4
- <<: *linux
env: SWIFT_BUILD_VERSION=4 SWIFT_VERSION=4.1.2
name: Linux / Swift 4.1
stage: test
install: swift test -Xswiftc -swift-version -Xswiftc 4
- <<: *linux
env: SWIFT_BUILD_VERSION=4 SWIFT_VERSION=4.2
name: Linux / Swift 4.2
stage: test
install: swift test -Xswiftc -swift-version -Xswiftc 4
# only run one instance of these since they test behavior
- stage: test
name: Promises/A+ via Javascript Bridge
language: objective-c
os: osx
osx_image: xcode10
before_install:
npm install -g npm
# ^^ need newer npm than comes with the image
install: |
cd Tests/JS-A+
set -e
npm ci
npm run build
set +e
# ^^ `cd` on travis returns a non-zero exit code!
cd ../..
xcodebuild -scheme PromiseKit -quiet SWIFT_VERSION=4.2 SWIFT_TREAT_WARNINGS_AS_ERRORS=YES build
script:
xcodebuild -scheme PromiseKit SWIFT_VERSION=4.2 test
# TODO only run the A+ tests
# TODO shouldnt build twice! Be kind to Travis.
cache:
- Tests/JS-A+/build
- Tests/JS-A+/node_modules
- stage: deploy
if: tag IS present
script: |
set -euxo pipefail
pod trunk push --verbose --swift-version=4.2 | ruby -e 'ARGF.each{ print "." }'
# This pipe because Travis times us out if there is no output
# AND `pod` defaults to hardly any output
# BUT `--verbose` generates so much output that Travis kills our script due to *too much* output!
os: osx
osx_image: xcode10
language: objective-c