Skip to content

Commit

Permalink
Xcode 16 (#199)
Browse files Browse the repository at this point in the history
* CircleCI - Run tests on `Xcode 16`
* CircleCI - Update job reference
* CircleCI - Update `Xcode 15` simulator
* Increase waiting time in tests
* Use `iOS 18.0` to run CI tests with `Xcode 16`
* Update `PackageDescription` for `spm` to `5.7`
* Use `iOS 18.0` and `iPhone 16` to run tests
* Update `README` and `CHANGELOG` with `Xcode 16` details
* Use `Flow` version `1.12.1`
* Update `spm` files
* Update `README` with new `Xcode` requirments

---------

Co-authored-by: bartszczepaniak <[email protected]>
  • Loading branch information
astenvall and bartszczepaniak authored Sep 26, 2024
1 parent 4135001 commit a40d141
Show file tree
Hide file tree
Showing 8 changed files with 55 additions and 52 deletions.
32 changes: 16 additions & 16 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
version: 2.1

anchors:
- &test_device "iPhone 15"
- &test_device_os "17.2"
- &test_device "iPhone 16"
- &test_device_os "18.0"
- &clean_before_build true
- &test_output_folder test_output
- &default_executor
macos:
xcode: "15.1.0"
xcode: "16.0.0"
resource_class: macos.m1.large.gen1

env:
Expand Down Expand Up @@ -56,8 +56,8 @@ commands:
scheme: "Example"
path: <<parameters.path>>
test_output_folder: *test_output_folder
simulator: "iPhone 15"
os_version: "17.2"
simulator: *test_device
os_version: *test_device_os

# We introduced two separate commands for projects and workspaces because we didnt find a generic and non-confusing way to introduce
# a condition to only pass either the project or the workspace environment argument to the fxcodebuild
Expand Down Expand Up @@ -144,25 +144,25 @@ jobs:
- store_test_results:
path: swiftlint.html

test-xcode14-ios16:
macos:
xcode: "14.0.0"
test-xcode16-ios18:
<<: *default_executor
steps:
- test_main_project:
simulator: "iPhone 14"
os_version: "16.0"
- test_main_project

test-xcode15-ios17:
<<: *default_executor
macos:
xcode: "15.4.0"
steps:
- test_main_project
- test_main_project:
simulator: "iPhone 15"
os_version: "17.5"

test-example-messages:
# can not use xcode > 14 since we have this error.
# deprecate to_default_s: :to_s, deprecator: ActiveSupport.deprecator
# to solve it we need to update the podspec.
macos:
xcode: "15.1.0"
xcode: "16.0.0"
steps:
- test_example_project:
path: Examples/Messages
Expand All @@ -172,7 +172,7 @@ jobs:
# deprecate to_default_s: :to_s, deprecator: ActiveSupport.deprecator
# to solve it we need to update the podspec.
macos:
xcode: "15.1.0"
xcode: "16.0.0"
steps:
- test_example_project:
path: Examples/Demo
Expand All @@ -183,8 +183,8 @@ workflows:
jobs:
- swiftlint:
version: 0.49.1
- test-xcode14-ios16
# Disable untill we fix test for Xcode 15
- test-xcode16-ios18
- test-xcode15-ios17
- test-example-messages
- test-example-demo
Expand Down
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# 4.1.0
- Support `Xcode 16`

# 4.0.3
- Support Xcode 15
- Support `Xcode 15`

# 4.0.0
- Replaced `Carthage` with `SPM`
Expand Down
4 changes: 2 additions & 2 deletions Form.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 52;
objectVersion = 54;
objects = {

/* Begin PBXBuildFile section */
Expand Down Expand Up @@ -938,7 +938,7 @@
repositoryURL = "https://github.com/iZettle/Flow.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 1.10.1;
minimumVersion = 1.12.1;
};
};
/* End XCRemoteSwiftPackageReference section */
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
{
"object": {
"pins": [
{
"package": "Flow",
"repositoryURL": "https://github.com/iZettle/Flow.git",
"state": {
"branch": null,
"revision": "ad38c734f16a404de8895236424bc4acc5355a3d",
"version": "1.10.1"
}
"originHash" : "af8820cba803a4990a87c58fd7afcb8f3aaf40249a6881c2c5b1e0a7921389a5",
"pins" : [
{
"identity" : "flow",
"kind" : "remoteSourceControl",
"location" : "https://github.com/iZettle/Flow.git",
"state" : {
"revision" : "c3e69f924f046207487948dcad55826343a122d5",
"version" : "1.12.1"
}
]
},
"version": 1
}
],
"version" : 3
}
2 changes: 1 addition & 1 deletion FormTests/ValueFieldTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ class ValueFieldTests: XCTestCase {
}
)

wait(for: [fieldBecameFirstResponder, fieldResignedFirstResponder], timeout: 2)
wait(for: [fieldBecameFirstResponder, fieldResignedFirstResponder], timeout: 10)
}

// Since iOS 16 a permission dialog pops up when the pasteboard is used so this results with
Expand Down
24 changes: 11 additions & 13 deletions Package.resolved
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
{
"object": {
"pins": [
{
"package": "Flow",
"repositoryURL": "https://github.com/izettle/Flow.git",
"state": {
"branch": null,
"revision": "3bc56e13c29cfbcc77cdae6193bbad697ee95799",
"version": "1.10.0"
}
"pins" : [
{
"identity" : "flow",
"kind" : "remoteSourceControl",
"location" : "https://github.com/iZettle/Flow.git",
"state" : {
"revision" : "c3e69f924f046207487948dcad55826343a122d5",
"version" : "1.12.1"
}
]
},
"version": 1
}
],
"version" : 2
}
9 changes: 6 additions & 3 deletions Package.swift
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
// swift-tools-version:5.1
// swift-tools-version:5.7

import PackageDescription

let package = Package(
name: "Form",
platforms: [
.iOS(.v10)
.iOS(.v12)
],
products: [
.library(
name: "Form",
targets: ["Form"]),
],
dependencies: [
.package(url: "https://github.com/izettle/Flow.git", .upToNextMajor(from: "1.10.0"))
.package(
url: "https://github.com/iZettle/Flow.git",
.upToNextMajor(from: "1.12.1")
)
],
targets: [
.target(
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
[![Build Status](https://travis-ci.org/iZettle/Form.svg?branch=master)](https://travis-ci.org/iZettle/Form)
[![Platforms](https://img.shields.io/badge/platform-%20iOS-gray.svg)](https://img.shields.io/badge/platform-%20iOS-gray.svg)
[![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
![Xcode version](https://img.shields.io/badge/Xcode-13.2.0-green)
![Xcode version](https://img.shields.io/badge/Xcode-16.0.0-green)

Form is an iOS Swift library for building and styling UIs. A toolbox of highly composable utilities for solving common UI related problems, such as:

Expand Down Expand Up @@ -125,9 +125,9 @@ Both forms and tables are using the same styling allowing you to seamlessly inte

## Requirements

- Xcode `9.3+`
- Xcode `10.0+`
- Swift 5
- iOS `9.0+`
- iOS `12.0+`

## Installation

Expand Down

0 comments on commit a40d141

Please sign in to comment.