Skip to content
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
4 changes: 2 additions & 2 deletions .github/workflows/continuous_integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
run: brew link --overwrite swiftlint || brew install swiftlint

- name: Set up XCode
run: sudo xcode-select --switch /Applications/Xcode_26.0.app
run: sudo xcode-select --switch /Applications/Xcode_26.2.app/Contents/Developer

- name: Bundle Install
run: bundle install
Expand All @@ -31,4 +31,4 @@ jobs:
run: bundle exec fastlane coverage

- name: Lint
run: bundle exec fastlane lint
run: bundle exec fastlane lint
81 changes: 0 additions & 81 deletions .github/workflows/prepare_release.yml

This file was deleted.

48 changes: 48 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Release

on:
workflow_dispatch: {}

env:
XCODE_VERSION: 26.2
NODE_VERSION: '24'

permissions:
contents: write
packages: write

jobs:
release:
runs-on: macos-15
steps:
- name: Checkout
uses: actions/checkout@v5
with:
fetch-depth: 0
token: ${{ secrets.CAP_GH_RELEASE_TOKEN }}

- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: ${{ env.NODE_VERSION }}

- name: Install dependencies
run: |
npm i

- name: Install CocoaPods
run: |
gem install cocoapods --no-document

- name: Set Xcode version
run: |
sudo xcode-select -s /Applications/Xcode_${{ env.XCODE_VERSION }}.app/Contents/Developer

- name: Run semantic-release
env:
GITHUB_TOKEN: ${{ secrets.CAP_GH_RELEASE_TOKEN }}
COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }}
run: |
npx semantic-release


67 changes: 0 additions & 67 deletions .github/workflows/release_and_publish.yml

This file was deleted.

7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,10 @@ fastlane/screenshots/**/*.png
fastlane/test_output

build/

# macOS system files
.DS_Store

# Node.js / npm
node_modules/
package-lock.json
54 changes: 54 additions & 0 deletions .releaserc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
{
"branches": ["main"],
"tagFormat": "${version}",
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
[
"@semantic-release/exec",
{
"prepareCmd": "bash ./scripts/update_xcodeproj_version.sh ${nextRelease.version} \"IONGeolocationLib.xcodeproj/project.pbxproj\" && bash ./scripts/update_readme_version.sh ${nextRelease.version} \"IONGeolocationLib\" \"README.md\" && bash ./scripts/build_framework.sh \"IONGeolocationLib\" \"LICENSE\""
}
],
"@semantic-release/changelog",
[
"@semantic-release/npm",
{
"npmPublish": false
}
],
[
"@semantic-release/git",
{
"assets": [
"CHANGELOG.md",
"IONGeolocationLib.xcodeproj/project.pbxproj",
"IONGeolocationLib.podspec",
"package.json",
"README.md"
],
"message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
}
],
[
"@semantic-release/github",
{
"assets": [
{
"path": "IONGeolocationLib.zip",
"label": "IONGeolocationLib XCFramework"
}
],
"successComment": false,
"failComment": false,
"releasedLabels": false
}
],
[
"@semantic-release/exec",
{
"publishCmd": "bash ./scripts/publish_cocoapods.sh ${nextRelease.version} \"IONGeolocationLib\""
}
]
]
}
8 changes: 1 addition & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,3 @@
# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## 2.0.0

### Breaking Changes
Expand Down Expand Up @@ -33,4 +27,4 @@ This change allows adding new configuration parameters in the future without bre

### Features
- Add complete implementation, including `getCurrentPosition`, `watchPosition`, and `clearWatch`.
- Create repository.
- Create repository.
19 changes: 11 additions & 8 deletions IONGeolocationLib.podspec
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
require 'json'
package = JSON.parse(File.read(File.join(__dir__, 'package.json')))

Pod::Spec.new do |spec|
spec.name = 'IONGeolocationLib'
spec.version = '2.0.0'
spec.name = package['name']
spec.version = package['version']

spec.summary = 'A native iOS library for Geolocation authorisation and monitoring.'
spec.summary = package['description']
spec.description = 'A Swift library for iOS that provides simple, reliable access to device GPS capabilities. Get location data, monitor position changes, and manage location services with a clean, modern API.'

spec.homepage = 'https://github.com/ionic-team/IONGeolocationLib-iOS'
spec.license = { :type => 'MIT', :file => 'LICENSE' }
spec.author = { 'OutSystems Mobile Ecosystem' => 'rd.mobileecosystem.team@outsystems.com' }
spec.homepage = 'https://github.com/ionic-team/ion-ios-geolocation'
spec.license = { :type => package['license'], :file => 'LICENSE' }
spec.author = { package['author'] => package['email'] }

spec.source = { :http => "https://github.com/ionic-team/IONGeolocationLib-iOS/releases/download/#{spec.version}/IONGeolocationLib.zip", :type => "zip" }
spec.source = { :http => "https://github.com/ionic-team/ion-ios-geolocation/releases/download/#{spec.version}/IONGeolocationLib.zip", :type => "zip" }
spec.vendored_frameworks = "IONGeolocationLib.xcframework"

spec.ios.deployment_target = '14.0'
spec.swift_versions = ['5.0', '5.1', '5.2', '5.3', '5.4', '5.5', '5.6', '5.7', '5.8', '5.9']
end
end
Binary file removed IONGeolocationLib.zip
Binary file not shown.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ A Swift library for iOS that provides simple, reliable access to device GPS capa
`ion-ios-geolocation` is available through [CocoaPods](https://cocoapods.org). Add this to your Podfile:

```ruby
pod 'IONGeolocationLib', '~> 2.0.0' # Use the latest 2.0.x version
pod 'IONGeolocationLib', '~> 2.0.0'
```

## Quick Start
Expand Down Expand Up @@ -285,4 +285,4 @@ Common issues and solutions:

## Support

- Report issues on our [Issue Tracker](https://github.com/ionic-team/ion-ios-geolocation/issues)
- Report issues on our [Issue Tracker](https://github.com/ionic-team/ion-ios-geolocation/issues)
26 changes: 26 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"name": "IONGeolocationLib",
"version": "2.0.0",
"description": "A native iOS library for Geolocation authorisation and monitoring.",
"author": "OutSystems Mobile Ecosystem",
"email": "rd.mobileecosystem.team@outsystems.com",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/ionic-team/ion-ios-geolocation.git"
},
"private": true,
"scripts": {
"semantic-release": "semantic-release"
},
"devDependencies": {
"@semantic-release/changelog": "^6.0.0",
"@semantic-release/commit-analyzer": "^13.0.0",
"@semantic-release/exec": "^7.0.0",
"@semantic-release/npm": "^13.0.0",
"@semantic-release/git": "^10.0.0",
"@semantic-release/github": "^12.0.0",
"@semantic-release/release-notes-generator": "^14.0.0",
"semantic-release": "^25.0.0"
}
}
Loading
Loading