Skip to content
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

Feature - Swift 4.0 Support #31

Merged
merged 3 commits into from
Aug 30, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion .swift-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.2
4.0
21 changes: 11 additions & 10 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
language: objective-c
osx_image: xcode8.3
osx_image: xcode9
branches:
only:
- master
Expand All @@ -12,17 +12,18 @@ env:
- MACOS_FRAMEWORK_SCHEME="Elevate macOS"
- TVOS_FRAMEWORK_SCHEME="Elevate tvOS"
- WATCHOS_FRAMEWORK_SCHEME="Elevate watchOS"
- IOS_SDK=iphonesimulator10.3
- OSX_SDK=macosx10.12
- TVOS_SDK=appletvsimulator10.2
- WATCHOS_SDK=watchsimulator3.2
- IOS_SDK=iphonesimulator11.0
- OSX_SDK=macosx10.13
- TVOS_SDK=appletvsimulator11.0
- WATCHOS_SDK=watchsimulator4.0
matrix:
- DESTINATION="OS=10.3.1,name=iPhone 7" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="YES"
- DESTINATION="OS=9.1,name=iPhone 5" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="OS=8.1,name=iPhone 4S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="OS=11.0,name=iPhone 7" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="YES"
- DESTINATION="OS=10.3.1,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="OS=9.3,name=iPhone 5" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="OS=8.4,name=iPhone 4S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="arch=x86_64" SCHEME="$MACOS_FRAMEWORK_SCHEME" SDK="$OSX_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="OS=10.2,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="OS=3.2,name=Apple Watch Series 2 - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" SDK="$WATCHOS_SDK" RUN_TESTS="NO" POD_LINT="NO"
- DESTINATION="OS=11.0,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" RUN_TESTS="YES" POD_LINT="NO"
- DESTINATION="OS=4.0,name=Apple Watch Series 2 - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" SDK="$WATCHOS_SDK" RUN_TESTS="NO" POD_LINT="NO"
script:
- set -o pipefail
- xcodebuild -version
Expand Down
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
`Elevate` adheres to [Semantic Versioning](http://semver.org/).

#### 3.x Releases

* `3.0.x` Releases = [3.0.0](#300)

#### 2.x Releases

* `2.2.x` Releases = [2.2.0](#220) | [2.2.1](#221) | [2.2.2](#222)
Expand All @@ -16,6 +20,19 @@ All notable changes to this project will be documented in this file.

---

## [3.0.0](https://github.com/Nike-Inc/Elevate/releases/tag/3.0.0)

Released on 2017-08-29. All issues associated with this milestone can be found using this
[filter](https://github.com/Nike-Inc/Elevate/milestone/6?closed=1).

#### Updated

- The Xcode project and all source and test code to compile against Swift 4.0.
- Updated by [Christian Noon](https://github.com/cnoon) in Pull Request
[#31](https://github.com/Nike-Inc/Elevate/pull/31).

---

## [2.2.2](https://github.com/Nike-Inc/Elevate/releases/tag/2.2.2)

Released on 2017-08-29. All issues associated with this milestone can be found using this
Expand Down
2 changes: 1 addition & 1 deletion Elevate.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = 'Elevate'
s.version = '2.2.2'
s.version = '3.0.0'
s.summary = 'Elevate is a JSON parsing framework that leverages Swift to make parsing simple, reliable and composable.'
s.homepage = 'https://github.com/Nike-Inc/Elevate'
s.license = 'MIT'
Expand Down
4 changes: 2 additions & 2 deletions Elevate.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -969,7 +969,7 @@
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 3.0;
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
TVOS_DEPLOYMENT_TARGET = 9.0;
VERSIONING_SYSTEM = "apple-generic";
Expand Down Expand Up @@ -1022,7 +1022,7 @@
MACOSX_DEPLOYMENT_TARGET = 10.10;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SWIFT_VERSION = 3.0;
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
TVOS_DEPLOYMENT_TARGET = 9.0;
VALIDATE_PRODUCT = YES;
Expand Down
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@

import PackageDescription

let package = Package(name: "Elevate", swiftLanguageVersions : [3], exclude: ["Tests"])
let package = Package(name: "Elevate", swiftLanguageVersions : [4], exclude: ["Tests"])
15 changes: 9 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@

Elevate is a JSON parsing framework that leverages Swift to make parsing simple, reliable and composable.

> Elevate has been **OFFICIALLY DEPRECATED** in favor of the `Codable` protocol provided by Apple in the `Foundation` framework.
We will continue to support Elevate throughout the Xcode 9 lifespan.

## Features

- [X] Validation of full JSON payload
Expand All @@ -19,8 +22,8 @@ Elevate is a JSON parsing framework that leverages Swift to make parsing simple,
## Requirements

- iOS 8.0+ / macOS 10.10+ / tvOS 9.0+ / watchOS 2.0+
- Xcode 8.2+
- Swift 3.0+
- Xcode 9.0+
- Swift 4.0+

## Communication

Expand All @@ -40,16 +43,16 @@ You can install it with the following command:
[sudo] gem install cocoapods
```

> CocoaPods 1.0+ is required.
> CocoaPods 1.3+ is required.

To integrate Elevate into your Xcode project using CocoaPods, specify it in your [Podfile](http://guides.cocoapods.org/using/the-podfile.html):

```ruby
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
platform :ios, '11.0'
use_frameworks!

pod 'Elevate', '~> 2.2'
pod 'Elevate', '~> 3.0'
```

### Carthage
Expand All @@ -66,7 +69,7 @@ brew install carthage
To integrate Elevate into your Xcode project using Carthage, specify it in your [Cartfile](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfile):

```bash
github "Nike-Inc/Elevate" ~> 2.2
github "Nike-Inc/Elevate" ~> 3.0
```

To build Elevate on iOS only, use the following Carthage command:
Expand Down
2 changes: 1 addition & 1 deletion Source/Info-tvOS.plist
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>2.2.2</string>
<string>3.0.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
Expand Down
2 changes: 1 addition & 1 deletion Source/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>2.2.2</string>
<string>3.0.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
Expand Down