Skip to content

Commit

Permalink
Merge pull request #2 from groue/development
Browse files Browse the repository at this point in the history
Down merge changes from @groue
  • Loading branch information
Marus authored Mar 6, 2019
2 parents f2462d4 + 605b6f7 commit 1a51eb6
Show file tree
Hide file tree
Showing 389 changed files with 48,861 additions and 12,250 deletions.
31 changes: 31 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<!--
ℹ We use Github issues for bug reports, feature requests, general support, and questions about the library.
Please fill out this template when filing an issue.
-->

### What did you do?

<!-- Please replace this with what you did. -->

### What did you expect to happen?

<!-- Please replace this with what you expected to happen. -->

### What happened instead?

<!-- Please replace this with of what happened instead. -->

### Environment

**GRDB flavor(s):** (GRDB, GRDBCipher, GRDBCustom?)
**GRDB version:**
**Installation method:** (CocoaPods, SPM, manual?)
**Xcode version:**
**Swift version:**
**Platform(s) running GRDB:** (iOS, macOS, watchOS?)
**macOS version running Xcode:**

### Demo Project

<!-- Please link to or upload a project we can download that reproduces the issue. -->
13 changes: 13 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!-- Please describe your pull request here. -->

### Pull Request Checklist

<!--
Please verify that your pull request checks those boxes:
-->

- [ ] This pull request is submitted against the `development` branch.
- [ ] Inline documentation has been updated.
- [ ] README.md or another dedicated guide has been updated.
- [ ] Changes are tested, for all flavors of GRDB, GRDBCipher, and GRDBCustomSQLite.
- [ ] CHANGELOG.md has been updated.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@ SQLiteCustom/GRDBCustomSQLite-USER.xcconfig
# CocoaPods test
Podfile.lock
Pods
Tests/CocoaPods/*/*.xcworkspace

# SPM
.build
Expand Down
2 changes: 1 addition & 1 deletion .swift-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.0
4.1
225 changes: 125 additions & 100 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# The OS X Build Environment
# https://docs.travis-ci.com/user/reference/osx/#Xcode-version
# https://docs.travis-ci.com/user/reference/osx/#xcode-version

language: objective-c
xcode_project: GRDB.xcodeproj
Expand All @@ -15,201 +15,226 @@ jobs:
###########################################
## Test GRDB

# Test GRDBOSX (Xcode 9.2)
# Test GRDBOSX (Xcode 10)
- stage: Test GRDB
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBOSX (Xcode 9.2, macOS)
script: make test_framework_GRDBOSX
- TID=GRDBOSX (Xcode 10, Swift 4.2, macOS)
script: make test_framework_GRDBOSX_maxSwift

# Test GRDBWatchOS (Xcode 9.2)
# Test GRDBOSX (Xcode 10)
- stage: Test GRDB
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBWatchOS (Xcode 9.2, watchOS)
script: make test_framework_GRDBWatchOS
- TID=GRDBOSX (Xcode 10, Swift 4.0, macOS)
script: make test_framework_GRDBOSX_minSwift

# Test GRDBiOS (Xcode 9.2, iOS <MAXIMUM VERSION>)
# Test GRDBWatchOS (Xcode 10)
- stage: Test GRDB
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBiOS (Xcode 9.2, iOS <MAX>)
script: make test_framework_GRDBiOS_maxTarget
- TID=GRDBWatchOS (Xcode 10, watchOS)
script: make test_framework_GRDBWatchOS

# Test GRDBiOS (Xcode 9.2, iOS <MINIMUM VERSION>))
# Test GRDBiOS (Xcode 10, iOS <MAXIMUM VERSION>)
- stage: Test GRDB
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBiOS (Xcode 9.2, iOS <MIN>)
script: make test_framework_GRDBiOS_minTarget
- TID=GRDBiOS (Xcode 10, Swift 4.2, iOS <MAX>)
script: make test_framework_GRDBiOS_maxTarget_maxSwift

# Test GRDB [SPM] (Xcode 9.2, macOS)
# Test GRDBiOS (Xcode 9.4, iOS <MAXIMUM VERSION>)
- stage: Test GRDB
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode9.4
env:
- TID=GRDB [SPM] (Xcode 9.2, macOS)
script: make test_SPM
- TID=GRDBiOS (Xcode 9.4, iOS <MAX>)
script: make test_framework_GRDBiOS_maxTarget_maxSwift

# Test GRDBOSX (Xcode 9.0)
# Test GRDBiOS (Xcode 9.3, iOS <MINIMUM VERSION>))
- stage: Test GRDB
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9
osx_image: xcode9.3
env:
- TID=GRDBOSX (Xcode 9.0, macOS)
script: make test_framework_GRDBOSX
- TID=GRDBiOS (Xcode 9.3, iOS <MIN>)
script: make test_framework_GRDBiOS_minTarget

# Test GRDBiOS (Xcode 9.0, iOS <MAXIMUM VERSION>)
# Test GRDB [SPM] (Xcode 10, macOS)
- stage: Test GRDB
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9
osx_image: xcode10
env:
- TID=GRDBiOS (Xcode 9.0, iOS <MAX>)
script: make test_framework_GRDBiOS_maxTarget
- TID=GRDB [SPM] (Xcode 10, macOS)
script: make test_SPM

###########################################
## Test GRDB (Custom SQLite)

# Test GRDBCustomSQLiteOSX (Xcode 9.2)
# Test GRDBCustomSQLiteOSX (Xcode 10)
- stage: Test GRDB + Custom SQLite
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBCustomSQLiteOSX (Xcode 9.2, macOS)
- TID=GRDBCustomSQLiteOSX (Xcode 10, macOS)
script: make test_framework_GRDBCustomSQLiteOSX

# Test GRDBCustomSQLiteiOS (Xcode 9.2, iOS <MAXIMUM VERSION>)
# Test GRDBCustomSQLiteiOS (Xcode 10, iOS <MAXIMUM VERSION>)
- stage: Test GRDB + Custom SQLite
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBCustomSQLiteiOS (Xcode 9.2, iOS <MAX>)
script: make test_framework_GRDBCustomSQLiteiOS_maxTarget
- TID=GRDBCustomSQLiteiOS (Xcode 10, Swift 4.2, iOS <MAX>)
script: make test_framework_GRDBCustomSQLiteiOS_maxTarget_maxSwift

# Test GRDBCustomSQLiteiOS (Xcode 9.2, iOS <MINIMUM VERSION>))
# Test GRDBCustomSQLiteiOS (Xcode 10, iOS <MAXIMUM VERSION>)
- stage: Test GRDB + Custom SQLite
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBCustomSQLiteiOS (Xcode 9.2, iOS <MIN>)
script: make test_framework_GRDBCustomSQLiteiOS_minTarget
- TID=GRDBCustomSQLiteiOS (Xcode 10, Swift 4.0, iOS <MAX>)
script: make test_framework_GRDBCustomSQLiteiOS_maxTarget_minSwift

# Test GRDBCustomSQLiteOSX (Xcode 9.0)
# Test GRDBCustomSQLiteiOS (Xcode 9.4, iOS <MAXIMUM VERSION>)
- stage: Test GRDB + Custom SQLite
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9
osx_image: xcode9.4
env:
- TID=GRDBCustomSQLiteOSX (Xcode 9.0, macOS)
script: make test_framework_GRDBCustomSQLiteOSX
- TID=GRDBCustomSQLiteiOS (Xcode 9.4, iOS <MAX>)
script: make test_framework_GRDBCustomSQLiteiOS_maxTarget

# Test GRDBCustomSQLiteiOS (Xcode 9.0, iOS <MAXIMUM VERSION>)
# Test GRDBCustomSQLiteiOS (Xcode 9.3, iOS <MINIMUM VERSION>))
- stage: Test GRDB + Custom SQLite
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9
osx_image: xcode9.3
env:
- TID=GRDBCustomSQLiteiOS (Xcode 9.0, iOS <MAX>)
script: make test_framework_GRDBCustomSQLiteiOS_maxTarget
- TID=GRDBCustomSQLiteiOS (Xcode 9.3, iOS <MIN>)
script: make test_framework_GRDBCustomSQLiteiOS_minTarget

###########################################
## Test GRDB (SQLCipher)

# Test GRDBCipherOSX (Xcode 9.2)
# Test GRDBCipherOSX (Xcode 10)
- stage: Test GRDB + SQLCipher
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBCipherOSX (Xcode 9.2, macOS)
- TID=GRDBCipherOSX (Xcode 10, macOS)
script: make test_framework_GRDBCipherOSX

# Test GRDBCipheriOS (Xcode 9.2, iOS <MAXIMUM VERSION>)
# Test GRDBCipheriOS (Xcode 10, iOS <MAXIMUM VERSION>)
- stage: Test GRDB + SQLCipher
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=GRDBCipheriOS (Xcode 9.2, iOS <MAX>)
- TID=GRDBCipheriOS (Xcode 10, iOS <MAX>)
script: make test_framework_GRDBCipheriOS_maxTarget

# Test GRDBCipheriOS (Xcode 9.2, iOS <MINIMUM VERSION>))
- stage: Test GRDB + SQLCipher
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
env:
- TID=GRDBCipheriOS (Xcode 9.2, iOS <MIN>)
script: make test_framework_GRDBCipheriOS_minTarget

# Test GRDBCipherOSX (Xcode 9.0)
# Test GRDBCipheriOS (Xcode 9.4, iOS <MAXIMUM VERSION>)
- stage: Test GRDB + SQLCipher
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9
osx_image: xcode9.4
env:
- TID=GRDBCipherOSX (Xcode 9.0, macOS)
script: make test_framework_GRDBCipherOSX
- TID=GRDBCipheriOS (Xcode 9.4, iOS <MAX>)
script: make test_framework_GRDBCipheriOS_maxTarget

# Test GRDBCipheriOS (Xcode 9.0, iOS <MAXIMUM VERSION>)
# Test GRDBCipheriOS (Xcode 9.3, iOS <MINIMUM VERSION>))
- stage: Test GRDB + SQLCipher
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9
osx_image: xcode9.3
env:
- TID=GRDBCipheriOS (Xcode 9.0, iOS <MAX>)
script: make test_framework_GRDBCipheriOS_maxTarget

- TID=GRDBCipheriOS (Xcode 9.3, iOS <MIN>)
script: make test_framework_GRDBCipheriOS_minTarget

###########################################
## Test Installation Methods

# Manual Install (Xcode 9.2)
# Manual Install (Xcode 10)
- stage: Test Installation
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=Manual Install (Xcode 9.2)
- TID=Manual Install (Xcode 10)
script: make test_install_manual

# Manual Install (GRDBCipher, Xcode 9.2)
# Manual Install (GRDBCipher, Xcode 10)
- stage: Test Installation
gemfile: .ci/gemfiles/Gemfile.travis
osx_image: xcode9.2
osx_image: xcode10
env:
- TID=Manual Install (GRDBCipher, Xcode 9.2)
- TID=Manual Install (GRDBCipher, Xcode 10)
script: make test_install_GRDBCipher

# Cocoapods Lint (Xcode 9.2)
# CocoaPods Lint (Xcode 10)
- stage: Test Installation
osx_image: xcode10
install:
- gem install cocoapods --pre # >= 1.6.0.beta.1 for cocoapods lint
env:
- TID=CocoaPods Lint GRDB.swift (Xcode 10)
script: make test_CocoaPodsLint_GRDB

# CocoaPods Lint (Xcode 10)
- stage: Test Installation
osx_image: xcode10
install:
- gem install cocoapods --pre # >= 1.6.0.beta.1 for cocoapods lint
env:
- TID=CocoaPods Lint GRDBPlus (Xcode 10)
script: make test_CocoaPodsLint_GRDBPlus

# CocoaPods Lint (Xcode 10)
- stage: Test Installation
osx_image: xcode9.2
osx_image: xcode10
install:
- gem install cocoapods # Since Travis is not always on latest version
- gem install cocoapods --pre # >= 1.6.0.beta.1 for cocoapods lint
env:
- TID=Cocoapods (Xcode 9.2)
script: make test_CocoaPodsLint
- TID=CocoaPods Lint GRDBCipher (Xcode 10)
script: make test_CocoaPodsLint_GRDBCipher

# Cocoapods Lint (Xcode 9.0)
# CocoaPods Install (Xcode 10)
- stage: Test Installation
osx_image: xcode9
osx_image: xcode10
install:
- gem install cocoapods # Since Travis is not always on latest version
- gem install cocoapods --pre # >= 1.6.0.beta.1 for cocoapods lint
env:
- TID=Cocoapods (Xcode 9.0)
script: make test_CocoaPodsLint
- TID=CocoaPods GRDB (Xcode 10)
script: make test_install_GRDB_CocoaPods

# SPM Install (Xcode 9.2)
# CocoaPods Install (Xcode 10)
- stage: Test Installation
osx_image: xcode9.2
osx_image: xcode10
install:
- gem install cocoapods --pre # >= 1.6.0.beta.1 for cocoapods lint
env:
- TID=CocoaPods GRDB+FTS5 (Xcode 10)
script: make test_install_GRDBFTS5_CocoaPods

# CocoaPods Install (Xcode 10)
- stage: Test Installation
osx_image: xcode10
install:
- gem install cocoapods --pre # >= 1.6.0.beta.1 for cocoapods lint
env:
- TID=SPM (Xcode 9.2)
- TID=CocoaPods GRDBCipher (Xcode 10)
script: make test_install_GRDBCipher_CocoaPods

# SPM Install (Xcode 10)
- stage: Test Installation
osx_image: xcode10
env:
- TID=SPM (Xcode 10)
script: make test_install_SPM

## Carthage Build
## Commented out until `make test_CarthageBuild` performs *reliably*.
## See https://github.com/groue/GRDB.swift/pull/262
# - stage: Test Installation
# osx_image: xcode9.2
# before_install:
# - brew update
# - brew outdated carthage || brew upgrade carthage
# env:
# - TID=Carthages
# script: make test_CarthageBuild
- stage: Test Installation
osx_image: xcode10
before_install:
- brew update
- brew outdated carthage || brew upgrade carthage
env:
- TID=Carthages
script: make test_CarthageBuild
Loading

0 comments on commit 1a51eb6

Please sign in to comment.