Skip to content

Commit

Permalink
Commit changes to platforms compatibility
Browse files Browse the repository at this point in the history
  • Loading branch information
malcommac committed Nov 14, 2023
1 parent dd03f68 commit 88bbe5e
Show file tree
Hide file tree
Showing 20 changed files with 470 additions and 97 deletions.
31 changes: 0 additions & 31 deletions .github/workflows/all.yml

This file was deleted.

63 changes: 63 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: "SwiftLocation CI"

on:
push:
branches:
- master
pull_request:
branches:
- '*'

concurrency:
group: ci
cancel-in-progress: true

jobs:
ios-latest:
name: Unit Tests (iOS 16.4, Xcode 14.3.1)
runs-on: macOS-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
steps:
- uses: actions/checkout@v2
- name: Run Tests
run: |
Scripts/test.sh -s "SwiftLocation" -d "OS=16.4,name=iPhone 14 Pro"
macos-latest:
name: Unit Tests (macOS, Xcode 14.3.1)
runs-on: macOS-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
steps:
- uses: actions/checkout@v2
- name: Run Tests
run: Scripts/test.sh -d "platform=macOS"
tvos-latest:
name: Unit Tests (tvOS 16.4, Xcode 14.3.1)
runs-on: macOS-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
steps:
- uses: actions/checkout@v2
- name: Run Tests
run: |
Scripts/test.sh -s "SwiftLocation" -d "OS=16.4,name=Apple TV"
watchos-latest:
name: Run Build (watchOS 9.2, Xcode 14.2)
runs-on: macOS-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.2.app/Contents/Developer
steps:
- uses: actions/checkout@v2
- name: Run Tests
run: |
Scripts/build.sh -s "SwiftLocation" -d "OS=9.2,name=Apple Watch Series 8 (45mm)"
swift-build:
name: Swift Build (SPM)
runs-on: macOS-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
steps:
- uses: actions/checkout@v2
- name: Build
run: swift build
89 changes: 89 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# 💻 Contributing to SwiftLocation

First of all, thanks for your interest in SwiftLocation.

There are several ways to contribute to this project. We welcome contributions in all ways.
We have made some contribution guidelines to smoothly incorporate your opinions and code into this project.

## 📝 Open Issue

When you found a bug or having a feature request, search for the issue from the [existing](https://github.com/malcommac/SwiftLocation/issues) and feel free to open the issue after making sure it isn't already reported.

In order to we understand your issue accurately, please include as much information as possible in the issue template.
The screenshot are also big clue to understand the issue.

If you know exactly how to fix the bug you report or implement the feature you propose, please pull request instead of an issue.

## 🚀 Pull Request

We are waiting for a pull request to make this project more better with us.
If you want to add a new feature, let's discuss about it first on issue.

```bash
$ git clone https://github.com/malcommac/SwiftLocation.git
$ cd SwiftLocation/
$ open SwiftLocation
```

### Test

The test will tells us the validity of your code.
All codes entering the master must pass the all tests.
If you change the code or add new features, you should add tests.

### Documentation

Please write the document using [Xcode markup](https://developer.apple.com/library/archive/documentation/Xcode/Reference/xcode_markup_formatting_ref/) to the code you added.
Documentation template is inserted automatically by using Xcode shortcut **⌥⌘/**.
Our document style is slightly different from the template. The example is below.
```swift
/// The example class for documentation.
final class Foo {
/// A property value.
let prop: Int

/// Create a new foo with a param.
///
/// - Parameters:
/// - param: An Int value for prop.
init(param: Int) {
prop = param
}

/// Returns a string value concatenating `param1` and `param2`.
///
/// - Parameters:
/// - param1: An Int value for prefix.
/// - param2: A String value for suffix.
///
/// - Returns: A string concatenating given params.
func bar(param1: Int, param2: String) -> String {
return "\(param1)" + param2
}
}
```

## [Developer's Certificate of Origin 1.1](https://elinux.org/Developer_Certificate_Of_Origin)
By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
20 changes: 20 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@

Copyright (c) 2023 Daniele Margutti

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
5 changes: 1 addition & 4 deletions Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,13 @@ import PackageDescription

let package = Package(
name: "SwiftLocation",
platforms: [.iOS(.v14)],
platforms: [.iOS(.v14), .macOS(.v11), .watchOS(.v7), .tvOS(.v14)],
products: [
// Products define the executables and libraries a package produces, making them visible to other packages.
.library(
name: "SwiftLocation",
targets: ["SwiftLocation"]),
],
targets: [
// Targets are the basic building blocks of a package, defining a module or a test suite.
// Targets can depend on other targets in this package and products from dependencies.
.target(
name: "SwiftLocation"),
.testTarget(
Expand Down

0 comments on commit 88bbe5e

Please sign in to comment.