Toggle navigation
Toggle navigation
This project
Loading...
Sign in
open-source
/
warply_sdk_framework
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Network
Create a new issue
Commits
Issue Boards
Authored by
Manos Chorianopoulos
2025-06-30 14:48:22 +0300
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
c058e345d55ee6ddf61fa78b03a4abd0e07ba46b
c058e345
1 parent
7d334162
version 2.3.0
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
40 additions
and
35 deletions
CLIENT_DOCUMENTATION.md
FRAMEWORK_MIGRATION_CHANGELOG.md
QUICK_REFERENCE.md
SwiftWarplyFramework.podspec
SwiftWarplyFramework/SwiftWarplyFramework.xcworkspace/xcuserdata/manos.xcuserdatad/UserInterfaceState.xcuserstate
framework_specifications.md
network_debug.md
CLIENT_DOCUMENTATION.md
View file @
c058e34
...
...
@@ -4,7 +4,7 @@
**Get started with SwiftWarplyFramework in just 5 minutes!**
**Version**
: 2.
2.1
0 |
**Minimum iOS**
: 17.0 |
**Swift**
: 5.0+
**Version**
: 2.
3.
0 |
**Minimum iOS**
: 17.0 |
**Swift**
: 5.0+
---
...
...
@@ -53,7 +53,7 @@ Choose your preferred installation method:
```
https://git.warp.ly/open-source/warply_sdk_framework.git
```
4. Select **Version**: `2.
2.1
0` or **Up to Next Major**
4. Select **Version**: `2.
3.
0` or **Up to Next Major**
5. Click **Add Package**
6. Select **SwiftWarplyFramework** and click **Add Package**
...
...
@@ -62,7 +62,7 @@ Add to your `Package.swift` dependencies:
```
swift
dependencies:
[
.package(url: "https://git.warp.ly/open-source/warply_sdk_framework.git", from: "2.
2.1
0")
.package(url: "https://git.warp.ly/open-source/warply_sdk_framework.git", from: "2.
3.
0")
]
```
...
...
@@ -89,7 +89,7 @@ platform :ios, '17.0'
target 'YourApp' do
use_frameworks!
pod 'SwiftWarplyFramework', :git => 'https://git@git.warp.ly/open-source/warply_sdk_framework.git', :tag => '2.
2.1
0'
pod 'SwiftWarplyFramework', :git => 'https://git@git.warp.ly/open-source/warply_sdk_framework.git', :tag => '2.
3.
0'
end
```
...
...
@@ -1572,29 +1572,34 @@ Start with the Quick Start guide and gradually adopt the advanced features as ne
## 📋 **Changelog**
### **Version 2.
2.10** - *June 23
, 2025*
### **Version 2.
3.0** - *June 30
, 2025*
#### **🆕 New Features**
-
**Language Configuration Support**
: Added configurable language parameter to SDK initialization
-
New
`language`
parameter in
`configure()`
method (defaults to "el")
-
Runtime language switching via
`applicationLocale`
property
-
Automatic configuration sync when language changes
#### **🔧 Network Improvements**
-
**Comprehensive Header System**
: Implemented complete HTTP header management based on original Objective-C implementation
-
Core loyalty headers:
`loyalty-web-id`
,
`loyalty-date`
,
`loyalty-signature`
-
Device identification headers:
`unique-device-id`
,
`vendor`
,
`platform`
,
`os_version`
-
App identification headers:
`loyalty-bundle-id`
,
`manufacturer`
,
`ios_device_model`
-
Authentication headers with proper Bearer token handling
-
Special endpoint headers for registration, and logout flows
-
**Dynamic BaseURL Management**
: Enhanced baseURL handling for improved configuration flexibility
-
Dynamic baseURL reading from Configuration on every request
-
Environment-aware URL switching (development/production)
-
Real-time configuration updates without restart
-
Fallback safety mechanisms with default stage URL
-
**SHA256 Signature Generation**
: Added secure signature generation for API authentication
-
**Device Info Utilities**
: Enhanced device information collection for headers
-
**Platform-Specific Headers**
: iOS-specific headers for better backend compatibility
-
**Complete Database Layer**
: New DatabaseManager with SQLite.swift integration
-
**Configuration System**
: 5 new configuration classes for modular settings management
-
**Security Enhancements**
: KeychainManager and FieldEncryption for secure data handling
-
**Enhanced Data Models**
: 4 new model classes (TokenModel, CardModel, TransactionModel, PointsHistoryModel)
#### **🔧 Architecture Improvements**
-
**Modern Database Operations**
: Raw SQL implementation with encryption support
-
**Token Management**
: Robust TokenRefreshManager with circuit breaker pattern
-
**Configuration Management**
: Environment-specific configurations (dev/prod)
-
**Security Integration**
: iOS Keychain Services and AES-256 encryption
-
**Network Enhancements**
: Central context response parsing and improved error handling
#### **🚨 Breaking Changes**
-
**None**
: Full backward compatibility maintained
#### **🔧 Internal Improvements**
-
**Legacy Credential Removal**
: Eliminated dependency on deprecated API credentials
-
**Compilation Fixes**
: Resolved all compilation errors and warnings
-
**Authentication Logic**
: Enhanced with graceful degradation for non-authenticated users
-
**Error Handling**
: Comprehensive error handling throughout the framework
#### **📦 Dependencies**
-
**Added**
: SQLite.swift (~> 0.12.2) for database operations
-
**Maintained**
: RSBarcodes_Swift (~> 5.2.0) and SwiftEventBus
---
...
...
FRAMEWORK_MIGRATION_CHANGELOG.md
View file @
c058e34
...
...
@@ -646,7 +646,7 @@ public class TokenRefreshManager {
**Key Changes**
:
```
swift
// Added SQLite.swift dependency
.
package
(
url
:
"https://github.com/stephencelis/SQLite.swift.git"
,
from
:
"0.1
4.1
"
),
.
package
(
url
:
"https://github.com/stephencelis/SQLite.swift.git"
,
from
:
"0.1
2.2
"
),
// Updated target dependencies
.
target
(
...
...
QUICK_REFERENCE.md
View file @
c058e34
...
...
@@ -2,7 +2,7 @@
## 🚀 Essential Guide for Developers
**Version**
: 2.
2.1
0 |
**iOS**
: 17.0+ |
**Swift**
: 5.0+
**Version**
: 2.
3.
0 |
**iOS**
: 17.0+ |
**Swift**
: 5.0+
---
...
...
@@ -10,7 +10,7 @@
```
ruby
# Podfile
pod
'SwiftWarplyFramework'
,
:git
=>
'https://git@git.warp.ly/open-source/warply_sdk_framework.git'
,
:tag
=>
‘
2
.
2
.
1
0
’
pod
'SwiftWarplyFramework'
,
:git
=>
'https://git@git.warp.ly/open-source/warply_sdk_framework.git'
,
:tag
=>
‘
2
.
3
.
0
’
```
---
...
...
@@ -323,7 +323,7 @@ func safeAPICall() {
## 🔍 Debug Info
```
swift
print
(
"SDK Version: 2.
2.1
0"
)
print
(
"SDK Version: 2.
3.
0"
)
print
(
"App UUID:
\(
WarplySDK
.
shared
.
appUuid
)
"
)
print
(
"Merchant ID:
\(
WarplySDK
.
shared
.
merchantId
)
"
)
print
(
"Language:
\(
WarplySDK
.
shared
.
applicationLocale
)
"
)
...
...
SwiftWarplyFramework.podspec
View file @
c058e34
Pod
::
Spec
.
new
do
|
spec
|
spec
.
name
=
"SwiftWarplyFramework"
spec
.
version
=
"2.
2.1
0"
spec
.
version
=
"2.
3.
0"
spec
.
summary
=
"A framework used for several functionalities."
spec
.
description
=
"This is the Warply framework used for react native or swift apps for analytics, push notifications and the functionality of the app."
...
...
@@ -17,7 +17,7 @@ Pod::Spec.new do |spec|
spec
.
platform
=
:ios
,
"17.0"
spec
.
source
=
{
:git
=>
"https://git.warp.ly/open-source/warply_sdk_framework.git"
,
:tag
=>
"2.
2.1
0"
}
spec
.
source
=
{
:git
=>
"https://git.warp.ly/open-source/warply_sdk_framework.git"
,
:tag
=>
"2.
3.
0"
}
# spec.public_header_files = "SwiftWarplyFramework.framework/Headers/*.h"
# ==> OLD
...
...
SwiftWarplyFramework/SwiftWarplyFramework.xcworkspace/xcuserdata/manos.xcuserdatad/UserInterfaceState.xcuserstate
View file @
c058e34
No preview for this file type
framework_specifications.md
View file @
c058e34
...
...
@@ -9,7 +9,7 @@ SwiftWarplyFramework is an iOS SDK that provides loyalty program functionality,
-
Minimum iOS Version: 17.0
-
Swift Version: 5.0+
-
Distribution: CocoaPods + Swift Package Manager (SPM)
-
Framework Version: 2.
2.1
0
-
Framework Version: 2.
3.
0
### Dependencies
-
RSBarcodes_Swift (~> 5.2.0) - Barcode scanning and generation
...
...
network_debug.md
View file @
c058e34
...
...
@@ -637,7 +637,7 @@ Use **SQLite.swift** (modern, pure Swift, type-safe) to implement the same datab
-
[
x
]
Update
`Package.swift`
to include SQLite.swift dependency:
```
swift
dependencies
:
[
.
package
(
url
:
"https://github.com/stephencelis/SQLite.swift"
,
from
:
"0.1
4.1
"
)
.
package
(
url
:
"https://github.com/stephencelis/SQLite.swift"
,
from
:
"0.1
2.2
"
)
]
```
-
[
x
]
Add
import
statements
in
relevant
files
...
...
@@ -645,7 +645,7 @@ Use **SQLite.swift** (modern, pure Swift, type-safe) to implement the same datab
-
[
x
]
Test
basic
SQLite
.
swift
functionality
**
Implementation
Details
:
**
-
✅
**
Package
.
swift
Updated
**
:
Added
SQLite
.
swift
dependency
(
version
0.1
4
.
1
+
)
-
✅
**
Package
.
swift
Updated
**
:
Added
SQLite
.
swift
dependency
(
version
0.1
2
.
2
+
)
-
✅
**
Dependency
Resolution
**
:
Successfully
fetched
and
resolved
SQLite
.
swift
and
dependencies
-
✅
**
DatabaseManager
Created
**
:
`
SwiftWarplyFramework
/
Database
/
DatabaseManager
.
swift
`
with
actor
pattern
-
✅
**
Database
Schema
Defined
**
:
Tables
for
`
requestVariables
`
,
`
events
`
,
and
`
pois
`
matching
original
Objective
-
C
...
...
@@ -1658,7 +1658,7 @@ This phase focuses on making the SwiftWarplyFramework production-ready for distr
### **Step 6.1.1: Swift Package Manager (SPM) Validation** ✅ **COMPLETED**
- [x] **Dependency Resolution Testing** ✅ **COMPLETED**
- [x] Test `swift package resolve` works correctly with all dependencies
- [x] Validate SQLite.swift dependency integration (0.1
4.1
+ - stable and compatible)
- [x] Validate SQLite.swift dependency integration (0.1
2.2
+ - stable and compatible)
- [x] Validate RSBarcodes_Swift dependency integration (5.2.0+ - stable and compatible)
- [x] Validate SwiftEventBus dependency integration (5.0.0+ - compatible, migration to internal EventDispatcher recommended)
- [x] Test dependency version compatibility and conflicts (no conflicts found)
...
...
@@ -1685,7 +1685,7 @@ This phase focuses on making the SwiftWarplyFramework production-ready for distr
### **Step 6.1.2: CocoaPods Distribution** ✅ **COMPLETED**
- [x] **Podspec Configuration** ✅ **COMPLETED**
- [x] Update SwiftWarplyFramework.podspec with new dependencies (SQLite.swift ~> 0.1
4.1
added)
- [x] Update SwiftWarplyFramework.podspec with new dependencies (SQLite.swift ~> 0.1
2.2
added)
- [x] Configure proper resource file inclusion (ResourcesBundle with xcassets and fonts)
- [x] Set correct iOS deployment target (17.0+ configured)
- [x] Define proper source file patterns (SwiftWarplyFramework/**/*.{h,m,swift,xib,storyboard})
...
...
Please
register
or
login
to post a comment